Generated C files for E2AP v2.0

Generated C files for E2AP v2.0.

Signed-off-by: subhash kumar singh <subh.singh@samsung.com>
Change-Id: Id0e930f681c84a397b91c4e16b7390993e804307
Signed-off-by: subhash kumar singh <subh.singh@samsung.com>
diff --git a/e2sim/src/ASN1c/AMFName.c b/e2sim/src/ASN1c/AMFName.c
new file mode 100644
index 0000000..77dc9c6
--- /dev/null
+++ b/e2sim/src/ASN1c/AMFName.c
@@ -0,0 +1,106 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#include "AMFName.h"
+
+static const int permitted_alphabet_table_1[256] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,	/*                  */
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,	/*                  */
+ 1, 0, 0, 0, 0, 0, 0, 2, 3, 4, 0, 5, 6, 7, 8, 9,	/* .      '() +,-./ */
+10,11,12,13,14,15,16,17,18,19,20, 0, 0,21, 0,22,	/* 0123456789:  = ? */
+ 0,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,	/*  ABCDEFGHIJKLMNO */
+38,39,40,41,42,43,44,45,46,47,48, 0, 0, 0, 0, 0,	/* PQRSTUVWXYZ      */
+ 0,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,	/*  abcdefghijklmno */
+64,65,66,67,68,69,70,71,72,73,74, 0, 0, 0, 0, 0,	/* pqrstuvwxyz      */
+};
+static const int permitted_alphabet_code2value_1[74] = {
+32,39,40,41,43,44,45,46,47,48,49,50,51,52,53,54,
+55,56,57,58,61,63,65,66,67,68,69,70,71,72,73,74,
+75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,
+97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,
+113,114,115,116,117,118,119,120,121,122,};
+
+
+static int check_permitted_alphabet_1(const void *sptr) {
+	const int *table = permitted_alphabet_table_1;
+	/* The underlying type is PrintableString */
+	const PrintableString_t *st = (const PrintableString_t *)sptr;
+	const uint8_t *ch = st->buf;
+	const uint8_t *end = ch + st->size;
+	
+	for(; ch < end; ch++) {
+		uint8_t cv = *ch;
+		if(!table[cv]) return -1;
+	}
+	return 0;
+}
+
+int
+AMFName_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
+			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
+	const PrintableString_t *st = (const PrintableString_t *)sptr;
+	size_t size;
+	
+	if(!sptr) {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: value not given (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+	
+	size = st->size;
+	
+	if((size >= 1 && size <= 150)
+		 && !check_permitted_alphabet_1(st)) {
+		/* Constraint check succeeded */
+		return 0;
+	} else {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: constraint failed (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+}
+
+static int asn_PER_MAP_AMFName_1_v2c(unsigned int value) {
+	if(value >= sizeof(permitted_alphabet_table_1)/sizeof(permitted_alphabet_table_1[0]))
+		return -1;
+	return permitted_alphabet_table_1[value] - 1;
+}
+static int asn_PER_MAP_AMFName_1_c2v(unsigned int code) {
+	if(code >= sizeof(permitted_alphabet_code2value_1)/sizeof(permitted_alphabet_code2value_1[0]))
+		return -1;
+	return permitted_alphabet_code2value_1[code];
+}
+/*
+ * This type is implemented using PrintableString,
+ * so here we adjust the DEF accordingly.
+ */
+asn_per_constraints_t asn_PER_type_AMFName_constr_1 CC_NOTUSED = {
+	{ APC_CONSTRAINED,	 7,  7,  32,  122 }	/* (32..122) */,
+	{ APC_CONSTRAINED | APC_EXTENSIBLE,  8,  8,  1,  150 }	/* (SIZE(1..150,...)) */,
+	asn_PER_MAP_AMFName_1_v2c,	/* Value to PER code map */
+	asn_PER_MAP_AMFName_1_c2v	/* PER code to value map */
+};
+static const ber_tlv_tag_t asn_DEF_AMFName_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (19 << 2))
+};
+asn_TYPE_descriptor_t asn_DEF_AMFName = {
+	"AMFName",
+	"AMFName",
+	&asn_OP_PrintableString,
+	asn_DEF_AMFName_tags_1,
+	sizeof(asn_DEF_AMFName_tags_1)
+		/sizeof(asn_DEF_AMFName_tags_1[0]), /* 1 */
+	asn_DEF_AMFName_tags_1,	/* Same as above */
+	sizeof(asn_DEF_AMFName_tags_1)
+		/sizeof(asn_DEF_AMFName_tags_1[0]), /* 1 */
+	{ 0, &asn_PER_type_AMFName_constr_1, AMFName_constraint },
+	0, 0,	/* No members */
+	0	/* No specifics */
+};
+
diff --git a/e2sim/src/ASN1c/AMFName.h b/e2sim/src/ASN1c/AMFName.h
new file mode 100644
index 0000000..1c6d3d0
--- /dev/null
+++ b/e2sim/src/ASN1c/AMFName.h
@@ -0,0 +1,44 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#ifndef	_AMFName_H_
+#define	_AMFName_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "PrintableString.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* AMFName */
+typedef PrintableString_t	 AMFName_t;
+
+/* Implementation */
+extern asn_per_constraints_t asn_PER_type_AMFName_constr_1;
+extern asn_TYPE_descriptor_t asn_DEF_AMFName;
+asn_struct_free_f AMFName_free;
+asn_struct_print_f AMFName_print;
+asn_constr_check_f AMFName_constraint;
+ber_type_decoder_f AMFName_decode_ber;
+der_type_encoder_f AMFName_encode_der;
+xer_type_decoder_f AMFName_decode_xer;
+xer_type_encoder_f AMFName_encode_xer;
+per_type_decoder_f AMFName_decode_uper;
+per_type_encoder_f AMFName_encode_uper;
+per_type_decoder_f AMFName_decode_aper;
+per_type_encoder_f AMFName_encode_aper;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _AMFName_H_ */
+#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/BIT_STRING_oer.c b/e2sim/src/ASN1c/BIT_STRING_oer.c
deleted file mode 100644
index aff5075..0000000
--- a/e2sim/src/ASN1c/BIT_STRING_oer.c
+++ /dev/null
@@ -1,174 +0,0 @@
-/*
- * Copyright (c) 2017 Lev Walkin <vlm@lionet.info>.
- * All rights reserved.
- * Redistribution and modifications are permitted subject to BSD license.
- */
-#ifndef ASN_DISABLE_OER_SUPPORT
-
-#include <asn_internal.h>
-#include <BIT_STRING.h>
-#include <errno.h>
-
-asn_dec_rval_t
-BIT_STRING_decode_oer(const asn_codec_ctx_t *opt_codec_ctx,
-                      const asn_TYPE_descriptor_t *td,
-                      const asn_oer_constraints_t *constraints, void **sptr,
-                      const void *ptr, size_t size) {
-    BIT_STRING_t *st = (BIT_STRING_t *)*sptr;
-    const asn_oer_constraints_t *cts =
-        constraints ? constraints : td->encoding_constraints.oer_constraints;
-    ssize_t ct_size = cts ? cts->size : -1;
-    asn_dec_rval_t rval = {RC_OK, 0};
-    size_t expected_length = 0;
-
-    (void)opt_codec_ctx;
-
-    if(!st) {
-        st = (BIT_STRING_t *)(*sptr = CALLOC(1, sizeof(*st)));
-        if(!st) ASN__DECODE_FAILED;
-    }
-
-    if(ct_size >= 0) {
-        expected_length = (ct_size + 7) >> 3;
-        st->bits_unused = (8 - (ct_size & 7)) & 7;
-    } else {
-        /*
-         * X.696 (08/2015) #13.3.1
-         * Encode length determinant as _number of octets_, but only
-         * if upper bound is not equal to lower bound.
-         */
-        ssize_t len_len = oer_fetch_length(ptr, size, &expected_length);
-        if(len_len > 0) {
-            ptr = (const char *)ptr + len_len;
-            size -= len_len;
-        } else if(len_len == 0) {
-            ASN__DECODE_STARVED;
-        } else if(len_len < 0) {
-            ASN__DECODE_FAILED;
-        }
-
-        if(expected_length < 1) {
-            ASN__DECODE_FAILED;
-        } else if(expected_length > size) {
-            ASN__DECODE_STARVED;
-        }
-
-        st->bits_unused = ((const uint8_t *)ptr)[0];
-        if(st->bits_unused & ~7) {
-            ASN_DEBUG("%s: unused bits outside of 0..7 range", td->name);
-            ASN__DECODE_FAILED;
-        }
-        ptr = (const char *)ptr + 1;
-        size--;
-        expected_length--;
-        rval.consumed = len_len + 1;
-    }
-
-    if(size < expected_length) {
-        ASN__DECODE_STARVED;
-    } else {
-        uint8_t *buf = MALLOC(expected_length + 1);
-        if(buf == NULL) {
-            ASN__DECODE_FAILED;
-        } else {
-            memcpy(buf, ptr, expected_length);
-            buf[expected_length] = '\0';
-        }
-        FREEMEM(st->buf);
-        st->buf = buf;
-        st->size = expected_length;
-        if(expected_length > 0) {
-            buf[expected_length - 1] &= (0xff << st->bits_unused);
-        }
-
-        rval.consumed += expected_length;
-        return rval;
-    }
-}
-
-/*
- * Encode as Canonical OER.
- */
-asn_enc_rval_t
-BIT_STRING_encode_oer(const asn_TYPE_descriptor_t *td,
-                      const asn_oer_constraints_t *constraints,
-                      const void *sptr, asn_app_consume_bytes_f *cb,
-                      void *app_key) {
-    const BIT_STRING_t *st = (const BIT_STRING_t *)sptr;
-    asn_enc_rval_t erval = {0, 0, 0};
-    const asn_oer_constraints_t *cts =
-        constraints ? constraints : td->encoding_constraints.oer_constraints;
-    ssize_t ct_size = cts ? cts->size : -1;
-    size_t trailing_zeros = 0;
-    int fix_last_byte = 0;
-
-    if(!st) ASN__ENCODE_FAILED;
-
-    if(st->bits_unused & ~7) {
-        ASN_DEBUG("BIT STRING unused bits %d out of 0..7 range",
-                  st->bits_unused);
-        ASN__ENCODE_FAILED;
-    }
-    if(st->bits_unused && !(st->size && st->buf)) {
-        ASN_DEBUG("BIT STRING %s size 0 can't support unused bits %d", td->name,
-                  st->bits_unused);
-        ASN__ENCODE_FAILED;
-    }
-
-    if(ct_size >= 0) {
-        size_t ct_bytes = (ct_size + 7) >> 3;
-        if(st->size > ct_bytes) {
-            ASN_DEBUG("More bits in BIT STRING %s (%" ASN_PRI_SSIZE ") than constrained %" ASN_PRI_SSIZE "",
-                      td->name, 8 * st->size - st->bits_unused, ct_size);
-            ASN__ENCODE_FAILED;
-        }
-        trailing_zeros = ct_bytes - st->size;   /* Allow larger constraint */
-    } else {
-        uint8_t ub = st->bits_unused & 7;
-        ssize_t len_len = oer_serialize_length(1 + st->size, cb, app_key);
-        if(len_len < 0) ASN__ENCODE_FAILED;
-        if(cb(&ub, 1, app_key) < 0) {
-            ASN__ENCODE_FAILED;
-        }
-        erval.encoded += len_len + 1;
-    }
-
-    if(st->bits_unused) {
-        if(st->buf[st->size - 1] & (0xff << st->bits_unused)) {
-            fix_last_byte = 1;
-        }
-    }
-
-    if(cb(st->buf, st->size - fix_last_byte, app_key) < 0) {
-        ASN__ENCODE_FAILED;
-    }
-
-    if(fix_last_byte) {
-        uint8_t b = st->buf[st->size - 1] & (0xff << st->bits_unused);
-        if(cb(&b, 1, app_key) < 0) {
-            ASN__ENCODE_FAILED;
-        }
-    }
-
-    erval.encoded += st->size;
-
-    if(trailing_zeros) {
-        static uint8_t zeros[16];
-        while(trailing_zeros > 0) {
-            int ret;
-            if(trailing_zeros < sizeof(zeros)) {
-                ret = cb(zeros, trailing_zeros, app_key);
-                erval.encoded += trailing_zeros;
-            } else {
-                ret = cb(zeros, sizeof(zeros), app_key);
-                erval.encoded += sizeof(zeros);
-            }
-            if(ret < 0) ASN__ENCODE_FAILED;
-        }
-    }
-
-    return erval;
-}
-
-
-#endif  /* ASN_DISABLE_OER_SUPPORT */
diff --git a/e2sim/src/ASN1c/Cause.c b/e2sim/src/ASN1c/Cause.c
index 2943b94..1f084cd 100644
--- a/e2sim/src/ASN1c/Cause.c
+++ b/e2sim/src/ASN1c/Cause.c
@@ -1,14 +1,14 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "Cause.h"
 
 asn_per_constraints_t asn_PER_type_Cause_constr_1 CC_NOTUSED = {
-	{ APC_CONSTRAINED | APC_EXTENSIBLE,  3,  3,  0,  4 }	/* (0..4,...) */,
+	{ APC_CONSTRAINED | APC_EXTENSIBLE,  3,  3,  0,  5 }	/* (0..5,...) */,
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	0, 0	/* No PER value map */
 };
@@ -16,7 +16,7 @@
 	{ ATF_NOFLAGS, 0, offsetof(struct Cause, choice.ricRequest),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_CauseRIC,
+		&asn_DEF_CauseRICrequest,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
@@ -31,9 +31,18 @@
 		0, 0, /* No default value */
 		"ricService"
 		},
-	{ ATF_NOFLAGS, 0, offsetof(struct Cause, choice.transport),
+	{ ATF_NOFLAGS, 0, offsetof(struct Cause, choice.e2Node),
 		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
 		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_CauseE2node,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"e2Node"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct Cause, choice.transport),
+		(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_CauseTransport,
 		0,
 		{ 0, 0, 0 },
@@ -41,7 +50,7 @@
 		"transport"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct Cause, choice.protocol),
-		(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
+		(ASN_TAG_CLASS_CONTEXT | (4 << 2)),
 		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_CauseProtocol,
 		0,
@@ -50,7 +59,7 @@
 		"protocol"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct Cause, choice.misc),
-		(ASN_TAG_CLASS_CONTEXT | (4 << 2)),
+		(ASN_TAG_CLASS_CONTEXT | (5 << 2)),
 		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_CauseMisc,
 		0,
@@ -62,9 +71,10 @@
 static const asn_TYPE_tag2member_t asn_MAP_Cause_tag2el_1[] = {
     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ricRequest */
     { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ricService */
-    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* transport */
-    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* protocol */
-    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* misc */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* e2Node */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* transport */
+    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* protocol */
+    { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* misc */
 };
 asn_CHOICE_specifics_t asn_SPC_Cause_specs_1 = {
 	sizeof(struct Cause),
@@ -72,9 +82,9 @@
 	offsetof(struct Cause, present),
 	sizeof(((struct Cause *)0)->present),
 	asn_MAP_Cause_tag2el_1,
-	5,	/* Count of tags in the map */
+	6,	/* Count of tags in the map */
 	0, 0,
-	5	/* Extensions start */
+	6	/* Extensions start */
 };
 asn_TYPE_descriptor_t asn_DEF_Cause = {
 	"Cause",
@@ -86,7 +96,7 @@
 	0,	/* No tags (count) */
 	{ 0, &asn_PER_type_Cause_constr_1, CHOICE_constraint },
 	asn_MBR_Cause_1,
-	5,	/* Elements count */
+	6,	/* Elements count */
 	&asn_SPC_Cause_specs_1	/* Additional specs */
 };
 
diff --git a/e2sim/src/ASN1c/Cause.h b/e2sim/src/ASN1c/Cause.h
index d4a5362..16d4373 100644
--- a/e2sim/src/ASN1c/Cause.h
+++ b/e2sim/src/ASN1c/Cause.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_Cause_H_
@@ -12,8 +12,9 @@
 #include "asn_application.h"
 
 /* Including external dependencies */
-#include "CauseRIC.h"
+#include "CauseRICrequest.h"
 #include "CauseRICservice.h"
+#include "CauseE2node.h"
 #include "CauseTransport.h"
 #include "CauseProtocol.h"
 #include "CauseMisc.h"
@@ -28,6 +29,7 @@
 	Cause_PR_NOTHING,	/* No components present */
 	Cause_PR_ricRequest,
 	Cause_PR_ricService,
+	Cause_PR_e2Node,
 	Cause_PR_transport,
 	Cause_PR_protocol,
 	Cause_PR_misc
@@ -39,8 +41,9 @@
 typedef struct Cause {
 	Cause_PR present;
 	union Cause_u {
-		CauseRIC_t	 ricRequest;
+		CauseRICrequest_t	 ricRequest;
 		CauseRICservice_t	 ricService;
+		CauseE2node_t	 e2Node;
 		CauseTransport_t	 transport;
 		CauseProtocol_t	 protocol;
 		CauseMisc_t	 misc;
@@ -57,7 +60,7 @@
 /* Implementation */
 extern asn_TYPE_descriptor_t asn_DEF_Cause;
 extern asn_CHOICE_specifics_t asn_SPC_Cause_specs_1;
-extern asn_TYPE_member_t asn_MBR_Cause_1[5];
+extern asn_TYPE_member_t asn_MBR_Cause_1[6];
 extern asn_per_constraints_t asn_PER_type_Cause_constr_1;
 
 #ifdef __cplusplus
diff --git a/e2sim/src/ASN1c/CauseE2node.c b/e2sim/src/ASN1c/CauseE2node.c
new file mode 100644
index 0000000..8fcb57b
--- /dev/null
+++ b/e2sim/src/ASN1c/CauseE2node.c
@@ -0,0 +1,53 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#include "CauseE2node.h"
+
+/*
+ * This type is implemented using NativeEnumerated,
+ * so here we adjust the DEF accordingly.
+ */
+asn_per_constraints_t asn_PER_type_CauseE2node_constr_1 CC_NOTUSED = {
+	{ APC_CONSTRAINED | APC_EXTENSIBLE,  0,  0,  0,  0 }	/* (0..0,...) */,
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	0, 0	/* No PER value map */
+};
+static const asn_INTEGER_enum_map_t asn_MAP_CauseE2node_value2enum_1[] = {
+	{ 0,	24,	"e2node-component-unknown" }
+	/* This list is extensible */
+};
+static const unsigned int asn_MAP_CauseE2node_enum2value_1[] = {
+	0	/* e2node-component-unknown(0) */
+	/* This list is extensible */
+};
+const asn_INTEGER_specifics_t asn_SPC_CauseE2node_specs_1 = {
+	asn_MAP_CauseE2node_value2enum_1,	/* "tag" => N; sorted by tag */
+	asn_MAP_CauseE2node_enum2value_1,	/* N => "tag"; sorted by N */
+	1,	/* Number of elements in the maps */
+	2,	/* Extensions before this member */
+	1,	/* Strict enumeration */
+	0,	/* Native long size */
+	0
+};
+static const ber_tlv_tag_t asn_DEF_CauseE2node_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
+};
+asn_TYPE_descriptor_t asn_DEF_CauseE2node = {
+	"CauseE2node",
+	"CauseE2node",
+	&asn_OP_NativeEnumerated,
+	asn_DEF_CauseE2node_tags_1,
+	sizeof(asn_DEF_CauseE2node_tags_1)
+		/sizeof(asn_DEF_CauseE2node_tags_1[0]), /* 1 */
+	asn_DEF_CauseE2node_tags_1,	/* Same as above */
+	sizeof(asn_DEF_CauseE2node_tags_1)
+		/sizeof(asn_DEF_CauseE2node_tags_1[0]), /* 1 */
+	{ 0, &asn_PER_type_CauseE2node_constr_1, NativeEnumerated_constraint },
+	0, 0,	/* Defined elsewhere */
+	&asn_SPC_CauseE2node_specs_1	/* Additional specs */
+};
+
diff --git a/e2sim/src/ASN1c/CauseE2node.h b/e2sim/src/ASN1c/CauseE2node.h
new file mode 100644
index 0000000..8c818fb
--- /dev/null
+++ b/e2sim/src/ASN1c/CauseE2node.h
@@ -0,0 +1,53 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#ifndef	_CauseE2node_H_
+#define	_CauseE2node_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "NativeEnumerated.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* Dependencies */
+typedef enum CauseE2node {
+	CauseE2node_e2node_component_unknown	= 0
+	/*
+	 * Enumeration is extensible
+	 */
+} e_CauseE2node;
+
+/* CauseE2node */
+typedef long	 CauseE2node_t;
+
+/* Implementation */
+extern asn_per_constraints_t asn_PER_type_CauseE2node_constr_1;
+extern asn_TYPE_descriptor_t asn_DEF_CauseE2node;
+extern const asn_INTEGER_specifics_t asn_SPC_CauseE2node_specs_1;
+asn_struct_free_f CauseE2node_free;
+asn_struct_print_f CauseE2node_print;
+asn_constr_check_f CauseE2node_constraint;
+ber_type_decoder_f CauseE2node_decode_ber;
+der_type_encoder_f CauseE2node_encode_der;
+xer_type_decoder_f CauseE2node_decode_xer;
+xer_type_encoder_f CauseE2node_encode_xer;
+per_type_decoder_f CauseE2node_decode_uper;
+per_type_encoder_f CauseE2node_encode_uper;
+per_type_decoder_f CauseE2node_decode_aper;
+per_type_encoder_f CauseE2node_encode_aper;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _CauseE2node_H_ */
+#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/CauseMisc.c b/e2sim/src/ASN1c/CauseMisc.c
index 01b6dbd..9ed8c24 100644
--- a/e2sim/src/ASN1c/CauseMisc.c
+++ b/e2sim/src/ASN1c/CauseMisc.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "CauseMisc.h"
diff --git a/e2sim/src/ASN1c/CauseMisc.h b/e2sim/src/ASN1c/CauseMisc.h
index 6432f33..bd12d02 100644
--- a/e2sim/src/ASN1c/CauseMisc.h
+++ b/e2sim/src/ASN1c/CauseMisc.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_CauseMisc_H_
diff --git a/e2sim/src/ASN1c/CauseProtocol.c b/e2sim/src/ASN1c/CauseProtocol.c
index bc0b0da..0fdb788 100644
--- a/e2sim/src/ASN1c/CauseProtocol.c
+++ b/e2sim/src/ASN1c/CauseProtocol.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "CauseProtocol.h"
diff --git a/e2sim/src/ASN1c/CauseProtocol.h b/e2sim/src/ASN1c/CauseProtocol.h
index b985a17..e4534f8 100644
--- a/e2sim/src/ASN1c/CauseProtocol.h
+++ b/e2sim/src/ASN1c/CauseProtocol.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_CauseProtocol_H_
diff --git a/e2sim/src/ASN1c/CauseRIC.c b/e2sim/src/ASN1c/CauseRIC.c
deleted file mode 100644
index dd41ce5..0000000
--- a/e2sim/src/ASN1c/CauseRIC.c
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
- * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
- */
-
-#include "CauseRIC.h"
-
-/*
- * This type is implemented using NativeEnumerated,
- * so here we adjust the DEF accordingly.
- */
-asn_per_constraints_t asn_PER_type_CauseRIC_constr_1 CC_NOTUSED = {
-	{ APC_CONSTRAINED | APC_EXTENSIBLE,  4,  4,  0,  10 }	/* (0..10,...) */,
-	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
-	0, 0	/* No PER value map */
-};
-static const asn_INTEGER_enum_map_t asn_MAP_CauseRIC_value2enum_1[] = {
-	{ 0,	23,	"ran-function-id-Invalid" },
-	{ 1,	20,	"action-not-supported" },
-	{ 2,	17,	"excessive-actions" },
-	{ 3,	16,	"duplicate-action" },
-	{ 4,	15,	"duplicate-event" },
-	{ 5,	23,	"function-resource-limit" },
-	{ 6,	18,	"request-id-unknown" },
-	{ 7,	46,	"inconsistent-action-subsequent-action-sequence" },
-	{ 8,	23,	"control-message-invalid" },
-	{ 9,	23,	"call-process-id-invalid" },
-	{ 10,	11,	"unspecified" }
-	/* This list is extensible */
-};
-static const unsigned int asn_MAP_CauseRIC_enum2value_1[] = {
-	1,	/* action-not-supported(1) */
-	9,	/* call-process-id-invalid(9) */
-	8,	/* control-message-invalid(8) */
-	3,	/* duplicate-action(3) */
-	4,	/* duplicate-event(4) */
-	2,	/* excessive-actions(2) */
-	5,	/* function-resource-limit(5) */
-	7,	/* inconsistent-action-subsequent-action-sequence(7) */
-	0,	/* ran-function-id-Invalid(0) */
-	6,	/* request-id-unknown(6) */
-	10	/* unspecified(10) */
-	/* This list is extensible */
-};
-const asn_INTEGER_specifics_t asn_SPC_CauseRIC_specs_1 = {
-	asn_MAP_CauseRIC_value2enum_1,	/* "tag" => N; sorted by tag */
-	asn_MAP_CauseRIC_enum2value_1,	/* N => "tag"; sorted by N */
-	11,	/* Number of elements in the maps */
-	12,	/* Extensions before this member */
-	1,	/* Strict enumeration */
-	0,	/* Native long size */
-	0
-};
-static const ber_tlv_tag_t asn_DEF_CauseRIC_tags_1[] = {
-	(ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
-};
-asn_TYPE_descriptor_t asn_DEF_CauseRIC = {
-	"CauseRIC",
-	"CauseRIC",
-	&asn_OP_NativeEnumerated,
-	asn_DEF_CauseRIC_tags_1,
-	sizeof(asn_DEF_CauseRIC_tags_1)
-		/sizeof(asn_DEF_CauseRIC_tags_1[0]), /* 1 */
-	asn_DEF_CauseRIC_tags_1,	/* Same as above */
-	sizeof(asn_DEF_CauseRIC_tags_1)
-		/sizeof(asn_DEF_CauseRIC_tags_1[0]), /* 1 */
-	{ 0, &asn_PER_type_CauseRIC_constr_1, NativeEnumerated_constraint },
-	0, 0,	/* Defined elsewhere */
-	&asn_SPC_CauseRIC_specs_1	/* Additional specs */
-};
-
diff --git a/e2sim/src/ASN1c/CauseRIC.h b/e2sim/src/ASN1c/CauseRIC.h
deleted file mode 100644
index f523945..0000000
--- a/e2sim/src/ASN1c/CauseRIC.h
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
- * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
- */
-
-#ifndef	_CauseRIC_H_
-#define	_CauseRIC_H_
-
-
-#include "asn_application.h"
-
-/* Including external dependencies */
-#include "NativeEnumerated.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* Dependencies */
-typedef enum CauseRIC {
-	CauseRIC_ran_function_id_Invalid	= 0,
-	CauseRIC_action_not_supported	= 1,
-	CauseRIC_excessive_actions	= 2,
-	CauseRIC_duplicate_action	= 3,
-	CauseRIC_duplicate_event	= 4,
-	CauseRIC_function_resource_limit	= 5,
-	CauseRIC_request_id_unknown	= 6,
-	CauseRIC_inconsistent_action_subsequent_action_sequence	= 7,
-	CauseRIC_control_message_invalid	= 8,
-	CauseRIC_call_process_id_invalid	= 9,
-	CauseRIC_unspecified	= 10
-	/*
-	 * Enumeration is extensible
-	 */
-} e_CauseRIC;
-
-/* CauseRIC */
-typedef long	 CauseRIC_t;
-
-/* Implementation */
-extern asn_per_constraints_t asn_PER_type_CauseRIC_constr_1;
-extern asn_TYPE_descriptor_t asn_DEF_CauseRIC;
-extern const asn_INTEGER_specifics_t asn_SPC_CauseRIC_specs_1;
-asn_struct_free_f CauseRIC_free;
-asn_struct_print_f CauseRIC_print;
-asn_constr_check_f CauseRIC_constraint;
-ber_type_decoder_f CauseRIC_decode_ber;
-der_type_encoder_f CauseRIC_encode_der;
-xer_type_decoder_f CauseRIC_decode_xer;
-xer_type_encoder_f CauseRIC_encode_xer;
-per_type_decoder_f CauseRIC_decode_uper;
-per_type_encoder_f CauseRIC_encode_uper;
-per_type_decoder_f CauseRIC_decode_aper;
-per_type_encoder_f CauseRIC_encode_aper;
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif	/* _CauseRIC_H_ */
-#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/CauseRICrequest.c b/e2sim/src/ASN1c/CauseRICrequest.c
new file mode 100644
index 0000000..7bceca5
--- /dev/null
+++ b/e2sim/src/ASN1c/CauseRICrequest.c
@@ -0,0 +1,79 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#include "CauseRICrequest.h"
+
+/*
+ * This type is implemented using NativeEnumerated,
+ * so here we adjust the DEF accordingly.
+ */
+asn_per_constraints_t asn_PER_type_CauseRICrequest_constr_1 CC_NOTUSED = {
+	{ APC_CONSTRAINED | APC_EXTENSIBLE,  4,  4,  0,  13 }	/* (0..13,...) */,
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	0, 0	/* No PER value map */
+};
+static const asn_INTEGER_enum_map_t asn_MAP_CauseRICrequest_value2enum_1[] = {
+	{ 0,	23,	"ran-function-id-invalid" },
+	{ 1,	20,	"action-not-supported" },
+	{ 2,	17,	"excessive-actions" },
+	{ 3,	16,	"duplicate-action" },
+	{ 4,	23,	"duplicate-event-trigger" },
+	{ 5,	23,	"function-resource-limit" },
+	{ 6,	18,	"request-id-unknown" },
+	{ 7,	46,	"inconsistent-action-subsequent-action-sequence" },
+	{ 8,	23,	"control-message-invalid" },
+	{ 9,	27,	"ric-call-process-id-invalid" },
+	{ 10,	21,	"control-timer-expired" },
+	{ 11,	25,	"control-failed-to-execute" },
+	{ 12,	16,	"system-not-ready" },
+	{ 13,	11,	"unspecified" }
+	/* This list is extensible */
+};
+static const unsigned int asn_MAP_CauseRICrequest_enum2value_1[] = {
+	1,	/* action-not-supported(1) */
+	11,	/* control-failed-to-execute(11) */
+	8,	/* control-message-invalid(8) */
+	10,	/* control-timer-expired(10) */
+	3,	/* duplicate-action(3) */
+	4,	/* duplicate-event-trigger(4) */
+	2,	/* excessive-actions(2) */
+	5,	/* function-resource-limit(5) */
+	7,	/* inconsistent-action-subsequent-action-sequence(7) */
+	0,	/* ran-function-id-invalid(0) */
+	6,	/* request-id-unknown(6) */
+	9,	/* ric-call-process-id-invalid(9) */
+	12,	/* system-not-ready(12) */
+	13	/* unspecified(13) */
+	/* This list is extensible */
+};
+const asn_INTEGER_specifics_t asn_SPC_CauseRICrequest_specs_1 = {
+	asn_MAP_CauseRICrequest_value2enum_1,	/* "tag" => N; sorted by tag */
+	asn_MAP_CauseRICrequest_enum2value_1,	/* N => "tag"; sorted by N */
+	14,	/* Number of elements in the maps */
+	15,	/* Extensions before this member */
+	1,	/* Strict enumeration */
+	0,	/* Native long size */
+	0
+};
+static const ber_tlv_tag_t asn_DEF_CauseRICrequest_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
+};
+asn_TYPE_descriptor_t asn_DEF_CauseRICrequest = {
+	"CauseRICrequest",
+	"CauseRICrequest",
+	&asn_OP_NativeEnumerated,
+	asn_DEF_CauseRICrequest_tags_1,
+	sizeof(asn_DEF_CauseRICrequest_tags_1)
+		/sizeof(asn_DEF_CauseRICrequest_tags_1[0]), /* 1 */
+	asn_DEF_CauseRICrequest_tags_1,	/* Same as above */
+	sizeof(asn_DEF_CauseRICrequest_tags_1)
+		/sizeof(asn_DEF_CauseRICrequest_tags_1[0]), /* 1 */
+	{ 0, &asn_PER_type_CauseRICrequest_constr_1, NativeEnumerated_constraint },
+	0, 0,	/* Defined elsewhere */
+	&asn_SPC_CauseRICrequest_specs_1	/* Additional specs */
+};
+
diff --git a/e2sim/src/ASN1c/CauseRICrequest.h b/e2sim/src/ASN1c/CauseRICrequest.h
new file mode 100644
index 0000000..76294b6
--- /dev/null
+++ b/e2sim/src/ASN1c/CauseRICrequest.h
@@ -0,0 +1,66 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#ifndef	_CauseRICrequest_H_
+#define	_CauseRICrequest_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "NativeEnumerated.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* Dependencies */
+typedef enum CauseRICrequest {
+	CauseRICrequest_ran_function_id_invalid	= 0,
+	CauseRICrequest_action_not_supported	= 1,
+	CauseRICrequest_excessive_actions	= 2,
+	CauseRICrequest_duplicate_action	= 3,
+	CauseRICrequest_duplicate_event_trigger	= 4,
+	CauseRICrequest_function_resource_limit	= 5,
+	CauseRICrequest_request_id_unknown	= 6,
+	CauseRICrequest_inconsistent_action_subsequent_action_sequence	= 7,
+	CauseRICrequest_control_message_invalid	= 8,
+	CauseRICrequest_ric_call_process_id_invalid	= 9,
+	CauseRICrequest_control_timer_expired	= 10,
+	CauseRICrequest_control_failed_to_execute	= 11,
+	CauseRICrequest_system_not_ready	= 12,
+	CauseRICrequest_unspecified	= 13
+	/*
+	 * Enumeration is extensible
+	 */
+} e_CauseRICrequest;
+
+/* CauseRICrequest */
+typedef long	 CauseRICrequest_t;
+
+/* Implementation */
+extern asn_per_constraints_t asn_PER_type_CauseRICrequest_constr_1;
+extern asn_TYPE_descriptor_t asn_DEF_CauseRICrequest;
+extern const asn_INTEGER_specifics_t asn_SPC_CauseRICrequest_specs_1;
+asn_struct_free_f CauseRICrequest_free;
+asn_struct_print_f CauseRICrequest_print;
+asn_constr_check_f CauseRICrequest_constraint;
+ber_type_decoder_f CauseRICrequest_decode_ber;
+der_type_encoder_f CauseRICrequest_encode_der;
+xer_type_decoder_f CauseRICrequest_decode_xer;
+xer_type_encoder_f CauseRICrequest_encode_xer;
+per_type_decoder_f CauseRICrequest_decode_uper;
+per_type_encoder_f CauseRICrequest_encode_uper;
+per_type_decoder_f CauseRICrequest_decode_aper;
+per_type_encoder_f CauseRICrequest_encode_aper;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _CauseRICrequest_H_ */
+#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/CauseRICservice.c b/e2sim/src/ASN1c/CauseRICservice.c
index a2ede9b..9c08e57 100644
--- a/e2sim/src/ASN1c/CauseRICservice.c
+++ b/e2sim/src/ASN1c/CauseRICservice.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "CauseRICservice.h"
@@ -17,14 +17,14 @@
 	0, 0	/* No PER value map */
 };
 static const asn_INTEGER_enum_map_t asn_MAP_CauseRICservice_value2enum_1[] = {
-	{ 0,	21,	"function-not-required" },
+	{ 0,	26,	"ran-function-not-supported" },
 	{ 1,	19,	"excessive-functions" },
 	{ 2,	18,	"ric-resource-limit" }
 	/* This list is extensible */
 };
 static const unsigned int asn_MAP_CauseRICservice_enum2value_1[] = {
 	1,	/* excessive-functions(1) */
-	0,	/* function-not-required(0) */
+	0,	/* ran-function-not-supported(0) */
 	2	/* ric-resource-limit(2) */
 	/* This list is extensible */
 };
diff --git a/e2sim/src/ASN1c/CauseRICservice.h b/e2sim/src/ASN1c/CauseRICservice.h
index 8840d56..d9b27ef 100644
--- a/e2sim/src/ASN1c/CauseRICservice.h
+++ b/e2sim/src/ASN1c/CauseRICservice.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_CauseRICservice_H_
@@ -20,7 +20,7 @@
 
 /* Dependencies */
 typedef enum CauseRICservice {
-	CauseRICservice_function_not_required	= 0,
+	CauseRICservice_ran_function_not_supported	= 0,
 	CauseRICservice_excessive_functions	= 1,
 	CauseRICservice_ric_resource_limit	= 2
 	/*
diff --git a/e2sim/src/ASN1c/CauseTransport.c b/e2sim/src/ASN1c/CauseTransport.c
index cbbd239..ce9d605 100644
--- a/e2sim/src/ASN1c/CauseTransport.c
+++ b/e2sim/src/ASN1c/CauseTransport.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "CauseTransport.h"
diff --git a/e2sim/src/ASN1c/CauseTransport.h b/e2sim/src/ASN1c/CauseTransport.h
index eec71d1..8e926f3 100644
--- a/e2sim/src/ASN1c/CauseTransport.h
+++ b/e2sim/src/ASN1c/CauseTransport.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_CauseTransport_H_
diff --git a/e2sim/src/ASN1c/Criticality.c b/e2sim/src/ASN1c/Criticality.c
index 59ba9d8..5b8c367 100644
--- a/e2sim/src/ASN1c/Criticality.c
+++ b/e2sim/src/ASN1c/Criticality.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-CommonDataTypes"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "Criticality.h"
diff --git a/e2sim/src/ASN1c/Criticality.h b/e2sim/src/ASN1c/Criticality.h
index b2a0acc..64e46bb 100644
--- a/e2sim/src/ASN1c/Criticality.h
+++ b/e2sim/src/ASN1c/Criticality.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-CommonDataTypes"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_Criticality_H_
diff --git a/e2sim/src/ASN1c/CriticalityDiagnostics-IE-Item.c b/e2sim/src/ASN1c/CriticalityDiagnostics-IE-Item.c
index 52c8388..5b5c32a 100644
--- a/e2sim/src/ASN1c/CriticalityDiagnostics-IE-Item.c
+++ b/e2sim/src/ASN1c/CriticalityDiagnostics-IE-Item.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "CriticalityDiagnostics-IE-Item.h"
diff --git a/e2sim/src/ASN1c/CriticalityDiagnostics-IE-Item.h b/e2sim/src/ASN1c/CriticalityDiagnostics-IE-Item.h
index ede043e..e0b769b 100644
--- a/e2sim/src/ASN1c/CriticalityDiagnostics-IE-Item.h
+++ b/e2sim/src/ASN1c/CriticalityDiagnostics-IE-Item.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_CriticalityDiagnostics_IE_Item_H_
diff --git a/e2sim/src/ASN1c/CriticalityDiagnostics-IE-List.c b/e2sim/src/ASN1c/CriticalityDiagnostics-IE-List.c
index 50f163a..f8a7630 100644
--- a/e2sim/src/ASN1c/CriticalityDiagnostics-IE-List.c
+++ b/e2sim/src/ASN1c/CriticalityDiagnostics-IE-List.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "CriticalityDiagnostics-IE-List.h"
diff --git a/e2sim/src/ASN1c/CriticalityDiagnostics-IE-List.h b/e2sim/src/ASN1c/CriticalityDiagnostics-IE-List.h
index 3631dbf..65d4ef0 100644
--- a/e2sim/src/ASN1c/CriticalityDiagnostics-IE-List.h
+++ b/e2sim/src/ASN1c/CriticalityDiagnostics-IE-List.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_CriticalityDiagnostics_IE_List_H_
diff --git a/e2sim/src/ASN1c/CriticalityDiagnostics.c b/e2sim/src/ASN1c/CriticalityDiagnostics.c
index 732642d..5a9e07d 100644
--- a/e2sim/src/ASN1c/CriticalityDiagnostics.c
+++ b/e2sim/src/ASN1c/CriticalityDiagnostics.c
@@ -1,15 +1,15 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "CriticalityDiagnostics.h"
 
 #include "RICrequestID.h"
 #include "CriticalityDiagnostics-IE-List.h"
-asn_TYPE_member_t asn_MBR_CriticalityDiagnostics_1[] = {
+static asn_TYPE_member_t asn_MBR_CriticalityDiagnostics_1[] = {
 	{ ATF_POINTER, 5, offsetof(struct CriticalityDiagnostics, procedureCode),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
@@ -67,7 +67,7 @@
     { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* ricRequestorID */
     { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* iEsCriticalityDiagnostics */
 };
-asn_SEQUENCE_specifics_t asn_SPC_CriticalityDiagnostics_specs_1 = {
+static asn_SEQUENCE_specifics_t asn_SPC_CriticalityDiagnostics_specs_1 = {
 	sizeof(struct CriticalityDiagnostics),
 	offsetof(struct CriticalityDiagnostics, _asn_ctx),
 	asn_MAP_CriticalityDiagnostics_tag2el_1,
diff --git a/e2sim/src/ASN1c/CriticalityDiagnostics.h b/e2sim/src/ASN1c/CriticalityDiagnostics.h
index 67d4802..cf33265 100644
--- a/e2sim/src/ASN1c/CriticalityDiagnostics.h
+++ b/e2sim/src/ASN1c/CriticalityDiagnostics.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_CriticalityDiagnostics_H_
@@ -43,8 +43,6 @@
 
 /* Implementation */
 extern asn_TYPE_descriptor_t asn_DEF_CriticalityDiagnostics;
-extern asn_SEQUENCE_specifics_t asn_SPC_CriticalityDiagnostics_specs_1;
-extern asn_TYPE_member_t asn_MBR_CriticalityDiagnostics_1[5];
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/E2AP-PDU.c b/e2sim/src/ASN1c/E2AP-PDU.c
index 87b3320..5042ad2 100644
--- a/e2sim/src/ASN1c/E2AP-PDU.c
+++ b/e2sim/src/ASN1c/E2AP-PDU.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Descriptions"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "E2AP-PDU.h"
diff --git a/e2sim/src/ASN1c/E2AP-PDU.h b/e2sim/src/ASN1c/E2AP-PDU.h
index 9edfbf3..977ba71 100644
--- a/e2sim/src/ASN1c/E2AP-PDU.h
+++ b/e2sim/src/ASN1c/E2AP-PDU.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Descriptions"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_E2AP_PDU_H_
diff --git a/e2sim/src/ASN1c/E2connectionSetupFailed-Item.c b/e2sim/src/ASN1c/E2connectionSetupFailed-Item.c
index 5792f7f..1bc9bb9 100644
--- a/e2sim/src/ASN1c/E2connectionSetupFailed-Item.c
+++ b/e2sim/src/ASN1c/E2connectionSetupFailed-Item.c
@@ -1,13 +1,13 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "E2connectionSetupFailed-Item.h"
 
-asn_TYPE_member_t asn_MBR_E2connectionSetupFailed_Item_1[] = {
+static asn_TYPE_member_t asn_MBR_E2connectionSetupFailed_Item_1[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionSetupFailed_Item, tnlInformation),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
@@ -34,7 +34,7 @@
     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* tnlInformation */
     { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* cause */
 };
-asn_SEQUENCE_specifics_t asn_SPC_E2connectionSetupFailed_Item_specs_1 = {
+static asn_SEQUENCE_specifics_t asn_SPC_E2connectionSetupFailed_Item_specs_1 = {
 	sizeof(struct E2connectionSetupFailed_Item),
 	offsetof(struct E2connectionSetupFailed_Item, _asn_ctx),
 	asn_MAP_E2connectionSetupFailed_Item_tag2el_1,
diff --git a/e2sim/src/ASN1c/E2connectionSetupFailed-Item.h b/e2sim/src/ASN1c/E2connectionSetupFailed-Item.h
index e062ce9..0109037 100644
--- a/e2sim/src/ASN1c/E2connectionSetupFailed-Item.h
+++ b/e2sim/src/ASN1c/E2connectionSetupFailed-Item.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_E2connectionSetupFailed_Item_H_
@@ -35,8 +35,6 @@
 
 /* Implementation */
 extern asn_TYPE_descriptor_t asn_DEF_E2connectionSetupFailed_Item;
-extern asn_SEQUENCE_specifics_t asn_SPC_E2connectionSetupFailed_Item_specs_1;
-extern asn_TYPE_member_t asn_MBR_E2connectionSetupFailed_Item_1[2];
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/E2connectionSetupFailed-List.c b/e2sim/src/ASN1c/E2connectionSetupFailed-List.c
index 502490b..d06cdfd 100644
--- a/e2sim/src/ASN1c/E2connectionSetupFailed-List.c
+++ b/e2sim/src/ASN1c/E2connectionSetupFailed-List.c
@@ -1,23 +1,23 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "E2connectionSetupFailed-List.h"
 
 #include "ProtocolIE-SingleContainer.h"
-asn_per_constraints_t asn_PER_type_E2connectionSetupFailed_List_constr_1 CC_NOTUSED = {
+static asn_per_constraints_t asn_PER_type_E2connectionSetupFailed_List_constr_1 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 5,  5,  1,  32 }	/* (SIZE(1..32)) */,
 	0, 0	/* No PER value map */
 };
-asn_TYPE_member_t asn_MBR_E2connectionSetupFailed_List_1[] = {
+static asn_TYPE_member_t asn_MBR_E2connectionSetupFailed_List_1[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
-		&asn_DEF_ProtocolIE_SingleContainer_229P5,
+		&asn_DEF_ProtocolIE_SingleContainer_1920P6,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
@@ -27,7 +27,7 @@
 static const ber_tlv_tag_t asn_DEF_E2connectionSetupFailed_List_tags_1[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_E2connectionSetupFailed_List_specs_1 = {
+static asn_SET_OF_specifics_t asn_SPC_E2connectionSetupFailed_List_specs_1 = {
 	sizeof(struct E2connectionSetupFailed_List),
 	offsetof(struct E2connectionSetupFailed_List, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
diff --git a/e2sim/src/ASN1c/E2connectionSetupFailed-List.h b/e2sim/src/ASN1c/E2connectionSetupFailed-List.h
index 6a5265c..7e14810 100644
--- a/e2sim/src/ASN1c/E2connectionSetupFailed-List.h
+++ b/e2sim/src/ASN1c/E2connectionSetupFailed-List.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_E2connectionSetupFailed_List_H_
@@ -32,9 +32,6 @@
 
 /* Implementation */
 extern asn_TYPE_descriptor_t asn_DEF_E2connectionSetupFailed_List;
-extern asn_SET_OF_specifics_t asn_SPC_E2connectionSetupFailed_List_specs_1;
-extern asn_TYPE_member_t asn_MBR_E2connectionSetupFailed_List_1[1];
-extern asn_per_constraints_t asn_PER_type_E2connectionSetupFailed_List_constr_1;
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/E2connectionUpdate-Item.c b/e2sim/src/ASN1c/E2connectionUpdate-Item.c
index c109abf..fa59079 100644
--- a/e2sim/src/ASN1c/E2connectionUpdate-Item.c
+++ b/e2sim/src/ASN1c/E2connectionUpdate-Item.c
@@ -1,13 +1,13 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "E2connectionUpdate-Item.h"
 
-asn_TYPE_member_t asn_MBR_E2connectionUpdate_Item_1[] = {
+static asn_TYPE_member_t asn_MBR_E2connectionUpdate_Item_1[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdate_Item, tnlInformation),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
@@ -34,7 +34,7 @@
     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* tnlInformation */
     { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* tnlUsage */
 };
-asn_SEQUENCE_specifics_t asn_SPC_E2connectionUpdate_Item_specs_1 = {
+static asn_SEQUENCE_specifics_t asn_SPC_E2connectionUpdate_Item_specs_1 = {
 	sizeof(struct E2connectionUpdate_Item),
 	offsetof(struct E2connectionUpdate_Item, _asn_ctx),
 	asn_MAP_E2connectionUpdate_Item_tag2el_1,
diff --git a/e2sim/src/ASN1c/E2connectionUpdate-Item.h b/e2sim/src/ASN1c/E2connectionUpdate-Item.h
index 85f6ebb..e312331 100644
--- a/e2sim/src/ASN1c/E2connectionUpdate-Item.h
+++ b/e2sim/src/ASN1c/E2connectionUpdate-Item.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_E2connectionUpdate_Item_H_
@@ -35,8 +35,6 @@
 
 /* Implementation */
 extern asn_TYPE_descriptor_t asn_DEF_E2connectionUpdate_Item;
-extern asn_SEQUENCE_specifics_t asn_SPC_E2connectionUpdate_Item_specs_1;
-extern asn_TYPE_member_t asn_MBR_E2connectionUpdate_Item_1[2];
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/E2connectionUpdate-List.c b/e2sim/src/ASN1c/E2connectionUpdate-List.c
index 0f5f738..eef607d 100644
--- a/e2sim/src/ASN1c/E2connectionUpdate-List.c
+++ b/e2sim/src/ASN1c/E2connectionUpdate-List.c
@@ -1,23 +1,23 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "E2connectionUpdate-List.h"
 
 #include "ProtocolIE-SingleContainer.h"
-asn_per_constraints_t asn_PER_type_E2connectionUpdate_List_constr_1 CC_NOTUSED = {
+static asn_per_constraints_t asn_PER_type_E2connectionUpdate_List_constr_1 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 5,  5,  1,  32 }	/* (SIZE(1..32)) */,
 	0, 0	/* No PER value map */
 };
-asn_TYPE_member_t asn_MBR_E2connectionUpdate_List_1[] = {
+static asn_TYPE_member_t asn_MBR_E2connectionUpdate_List_1[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
-		&asn_DEF_ProtocolIE_SingleContainer_229P3,
+		&asn_DEF_ProtocolIE_SingleContainer_1920P4,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
@@ -27,7 +27,7 @@
 static const ber_tlv_tag_t asn_DEF_E2connectionUpdate_List_tags_1[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_E2connectionUpdate_List_specs_1 = {
+static asn_SET_OF_specifics_t asn_SPC_E2connectionUpdate_List_specs_1 = {
 	sizeof(struct E2connectionUpdate_List),
 	offsetof(struct E2connectionUpdate_List, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
diff --git a/e2sim/src/ASN1c/E2connectionUpdate-List.h b/e2sim/src/ASN1c/E2connectionUpdate-List.h
index cb71b0a..845bd84 100644
--- a/e2sim/src/ASN1c/E2connectionUpdate-List.h
+++ b/e2sim/src/ASN1c/E2connectionUpdate-List.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_E2connectionUpdate_List_H_
@@ -32,9 +32,6 @@
 
 /* Implementation */
 extern asn_TYPE_descriptor_t asn_DEF_E2connectionUpdate_List;
-extern asn_SET_OF_specifics_t asn_SPC_E2connectionUpdate_List_specs_1;
-extern asn_TYPE_member_t asn_MBR_E2connectionUpdate_List_1[1];
-extern asn_per_constraints_t asn_PER_type_E2connectionUpdate_List_constr_1;
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/E2connectionUpdate.c b/e2sim/src/ASN1c/E2connectionUpdate.c
index 426676e..59c7253 100644
--- a/e2sim/src/ASN1c/E2connectionUpdate.c
+++ b/e2sim/src/ASN1c/E2connectionUpdate.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "E2connectionUpdate.h"
@@ -11,7 +11,7 @@
 	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdate, protocolIEs),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_ProtocolIE_Container_226P14,
+		&asn_DEF_ProtocolIE_Container_1917P15,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
diff --git a/e2sim/src/ASN1c/E2connectionUpdate.h b/e2sim/src/ASN1c/E2connectionUpdate.h
index 9426be7..60a143f 100644
--- a/e2sim/src/ASN1c/E2connectionUpdate.h
+++ b/e2sim/src/ASN1c/E2connectionUpdate.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_E2connectionUpdate_H_
@@ -21,7 +21,7 @@
 
 /* E2connectionUpdate */
 typedef struct E2connectionUpdate {
-	ProtocolIE_Container_226P14_t	 protocolIEs;
+	ProtocolIE_Container_1917P15_t	 protocolIEs;
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
diff --git a/e2sim/src/ASN1c/E2connectionUpdateAcknowledge.c b/e2sim/src/ASN1c/E2connectionUpdateAcknowledge.c
index dbc443d..ad48b95 100644
--- a/e2sim/src/ASN1c/E2connectionUpdateAcknowledge.c
+++ b/e2sim/src/ASN1c/E2connectionUpdateAcknowledge.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "E2connectionUpdateAcknowledge.h"
@@ -11,7 +11,7 @@
 	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdateAcknowledge, protocolIEs),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_ProtocolIE_Container_226P15,
+		&asn_DEF_ProtocolIE_Container_1917P16,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
diff --git a/e2sim/src/ASN1c/E2connectionUpdateAcknowledge.h b/e2sim/src/ASN1c/E2connectionUpdateAcknowledge.h
index 7dc879e..a03dca2 100644
--- a/e2sim/src/ASN1c/E2connectionUpdateAcknowledge.h
+++ b/e2sim/src/ASN1c/E2connectionUpdateAcknowledge.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_E2connectionUpdateAcknowledge_H_
@@ -21,7 +21,7 @@
 
 /* E2connectionUpdateAcknowledge */
 typedef struct E2connectionUpdateAcknowledge {
-	ProtocolIE_Container_226P15_t	 protocolIEs;
+	ProtocolIE_Container_1917P16_t	 protocolIEs;
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
diff --git a/e2sim/src/ASN1c/E2connectionUpdateFailure.c b/e2sim/src/ASN1c/E2connectionUpdateFailure.c
index 52c1908..35235a8 100644
--- a/e2sim/src/ASN1c/E2connectionUpdateFailure.c
+++ b/e2sim/src/ASN1c/E2connectionUpdateFailure.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "E2connectionUpdateFailure.h"
@@ -11,7 +11,7 @@
 	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdateFailure, protocolIEs),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_ProtocolIE_Container_226P16,
+		&asn_DEF_ProtocolIE_Container_1917P17,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
diff --git a/e2sim/src/ASN1c/E2connectionUpdateFailure.h b/e2sim/src/ASN1c/E2connectionUpdateFailure.h
index 0e357fd..8cf0d7a 100644
--- a/e2sim/src/ASN1c/E2connectionUpdateFailure.h
+++ b/e2sim/src/ASN1c/E2connectionUpdateFailure.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_E2connectionUpdateFailure_H_
@@ -21,7 +21,7 @@
 
 /* E2connectionUpdateFailure */
 typedef struct E2connectionUpdateFailure {
-	ProtocolIE_Container_226P16_t	 protocolIEs;
+	ProtocolIE_Container_1917P17_t	 protocolIEs;
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
diff --git a/e2sim/src/ASN1c/E2connectionUpdateRemove-Item.c b/e2sim/src/ASN1c/E2connectionUpdateRemove-Item.c
index 45ae85e..ebac20d 100644
--- a/e2sim/src/ASN1c/E2connectionUpdateRemove-Item.c
+++ b/e2sim/src/ASN1c/E2connectionUpdateRemove-Item.c
@@ -1,13 +1,13 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "E2connectionUpdateRemove-Item.h"
 
-asn_TYPE_member_t asn_MBR_E2connectionUpdateRemove_Item_1[] = {
+static asn_TYPE_member_t asn_MBR_E2connectionUpdateRemove_Item_1[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdateRemove_Item, tnlInformation),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
@@ -24,7 +24,7 @@
 static const asn_TYPE_tag2member_t asn_MAP_E2connectionUpdateRemove_Item_tag2el_1[] = {
     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* tnlInformation */
 };
-asn_SEQUENCE_specifics_t asn_SPC_E2connectionUpdateRemove_Item_specs_1 = {
+static asn_SEQUENCE_specifics_t asn_SPC_E2connectionUpdateRemove_Item_specs_1 = {
 	sizeof(struct E2connectionUpdateRemove_Item),
 	offsetof(struct E2connectionUpdateRemove_Item, _asn_ctx),
 	asn_MAP_E2connectionUpdateRemove_Item_tag2el_1,
diff --git a/e2sim/src/ASN1c/E2connectionUpdateRemove-Item.h b/e2sim/src/ASN1c/E2connectionUpdateRemove-Item.h
index 4a6800c..76669fa 100644
--- a/e2sim/src/ASN1c/E2connectionUpdateRemove-Item.h
+++ b/e2sim/src/ASN1c/E2connectionUpdateRemove-Item.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_E2connectionUpdateRemove_Item_H_
@@ -33,8 +33,6 @@
 
 /* Implementation */
 extern asn_TYPE_descriptor_t asn_DEF_E2connectionUpdateRemove_Item;
-extern asn_SEQUENCE_specifics_t asn_SPC_E2connectionUpdateRemove_Item_specs_1;
-extern asn_TYPE_member_t asn_MBR_E2connectionUpdateRemove_Item_1[1];
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/E2connectionUpdateRemove-List.c b/e2sim/src/ASN1c/E2connectionUpdateRemove-List.c
index c9a4624..500a81e 100644
--- a/e2sim/src/ASN1c/E2connectionUpdateRemove-List.c
+++ b/e2sim/src/ASN1c/E2connectionUpdateRemove-List.c
@@ -1,23 +1,23 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "E2connectionUpdateRemove-List.h"
 
 #include "ProtocolIE-SingleContainer.h"
-asn_per_constraints_t asn_PER_type_E2connectionUpdateRemove_List_constr_1 CC_NOTUSED = {
+static asn_per_constraints_t asn_PER_type_E2connectionUpdateRemove_List_constr_1 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 5,  5,  1,  32 }	/* (SIZE(1..32)) */,
 	0, 0	/* No PER value map */
 };
-asn_TYPE_member_t asn_MBR_E2connectionUpdateRemove_List_1[] = {
+static asn_TYPE_member_t asn_MBR_E2connectionUpdateRemove_List_1[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
-		&asn_DEF_ProtocolIE_SingleContainer_229P4,
+		&asn_DEF_ProtocolIE_SingleContainer_1920P5,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
@@ -27,7 +27,7 @@
 static const ber_tlv_tag_t asn_DEF_E2connectionUpdateRemove_List_tags_1[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_E2connectionUpdateRemove_List_specs_1 = {
+static asn_SET_OF_specifics_t asn_SPC_E2connectionUpdateRemove_List_specs_1 = {
 	sizeof(struct E2connectionUpdateRemove_List),
 	offsetof(struct E2connectionUpdateRemove_List, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
diff --git a/e2sim/src/ASN1c/E2connectionUpdateRemove-List.h b/e2sim/src/ASN1c/E2connectionUpdateRemove-List.h
index f6dd3d2..ec80ae8 100644
--- a/e2sim/src/ASN1c/E2connectionUpdateRemove-List.h
+++ b/e2sim/src/ASN1c/E2connectionUpdateRemove-List.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_E2connectionUpdateRemove_List_H_
@@ -32,9 +32,6 @@
 
 /* Implementation */
 extern asn_TYPE_descriptor_t asn_DEF_E2connectionUpdateRemove_List;
-extern asn_SET_OF_specifics_t asn_SPC_E2connectionUpdateRemove_List_specs_1;
-extern asn_TYPE_member_t asn_MBR_E2connectionUpdateRemove_List_1[1];
-extern asn_per_constraints_t asn_PER_type_E2connectionUpdateRemove_List_constr_1;
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigAddition-Item.c b/e2sim/src/ASN1c/E2nodeComponentConfigAddition-Item.c
new file mode 100644
index 0000000..45cfa47
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentConfigAddition-Item.c
@@ -0,0 +1,70 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-PDU-Contents"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#include "E2nodeComponentConfigAddition-Item.h"
+
+static asn_TYPE_member_t asn_MBR_E2nodeComponentConfigAddition_Item_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigAddition_Item, e2nodeComponentInterfaceType),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_E2nodeComponentInterfaceType,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"e2nodeComponentInterfaceType"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigAddition_Item, e2nodeComponentID),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_E2nodeComponentID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"e2nodeComponentID"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigAddition_Item, e2nodeComponentConfiguration),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_E2nodeComponentConfiguration,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"e2nodeComponentConfiguration"
+		},
+};
+static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigAddition_Item_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigAddition_Item_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* e2nodeComponentInterfaceType */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* e2nodeComponentID */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* e2nodeComponentConfiguration */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigAddition_Item_specs_1 = {
+	sizeof(struct E2nodeComponentConfigAddition_Item),
+	offsetof(struct E2nodeComponentConfigAddition_Item, _asn_ctx),
+	asn_MAP_E2nodeComponentConfigAddition_Item_tag2el_1,
+	3,	/* Count of tags in the map */
+	0, 0, 0,	/* Optional elements (not needed) */
+	3,	/* First extension addition */
+};
+asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigAddition_Item = {
+	"E2nodeComponentConfigAddition-Item",
+	"E2nodeComponentConfigAddition-Item",
+	&asn_OP_SEQUENCE,
+	asn_DEF_E2nodeComponentConfigAddition_Item_tags_1,
+	sizeof(asn_DEF_E2nodeComponentConfigAddition_Item_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentConfigAddition_Item_tags_1[0]), /* 1 */
+	asn_DEF_E2nodeComponentConfigAddition_Item_tags_1,	/* Same as above */
+	sizeof(asn_DEF_E2nodeComponentConfigAddition_Item_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentConfigAddition_Item_tags_1[0]), /* 1 */
+	{ 0, 0, SEQUENCE_constraint },
+	asn_MBR_E2nodeComponentConfigAddition_Item_1,
+	3,	/* Elements count */
+	&asn_SPC_E2nodeComponentConfigAddition_Item_specs_1	/* Additional specs */
+};
+
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigAddition-Item.h b/e2sim/src/ASN1c/E2nodeComponentConfigAddition-Item.h
new file mode 100644
index 0000000..009d0ad
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentConfigAddition-Item.h
@@ -0,0 +1,46 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-PDU-Contents"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#ifndef	_E2nodeComponentConfigAddition_Item_H_
+#define	_E2nodeComponentConfigAddition_Item_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "E2nodeComponentInterfaceType.h"
+#include "E2nodeComponentID.h"
+#include "E2nodeComponentConfiguration.h"
+#include "constr_SEQUENCE.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* E2nodeComponentConfigAddition-Item */
+typedef struct E2nodeComponentConfigAddition_Item {
+	E2nodeComponentInterfaceType_t	 e2nodeComponentInterfaceType;
+	E2nodeComponentID_t	 e2nodeComponentID;
+	E2nodeComponentConfiguration_t	 e2nodeComponentConfiguration;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} E2nodeComponentConfigAddition_Item_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigAddition_Item;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _E2nodeComponentConfigAddition_Item_H_ */
+#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigAddition-List.c b/e2sim/src/ASN1c/E2nodeComponentConfigAddition-List.c
new file mode 100644
index 0000000..8175003
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentConfigAddition-List.c
@@ -0,0 +1,50 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-PDU-Contents"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#include "E2nodeComponentConfigAddition-List.h"
+
+#include "ProtocolIE-SingleContainer.h"
+static asn_per_constraints_t asn_PER_type_E2nodeComponentConfigAddition_List_constr_1 CC_NOTUSED = {
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	{ APC_CONSTRAINED,	 10,  10,  1,  1024 }	/* (SIZE(1..1024)) */,
+	0, 0	/* No PER value map */
+};
+static asn_TYPE_member_t asn_MBR_E2nodeComponentConfigAddition_List_1[] = {
+	{ ATF_POINTER, 0, 0,
+		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
+		0,
+		&asn_DEF_ProtocolIE_SingleContainer_1920P7,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		""
+		},
+};
+static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigAddition_List_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static asn_SET_OF_specifics_t asn_SPC_E2nodeComponentConfigAddition_List_specs_1 = {
+	sizeof(struct E2nodeComponentConfigAddition_List),
+	offsetof(struct E2nodeComponentConfigAddition_List, _asn_ctx),
+	0,	/* XER encoding is XMLDelimitedItemList */
+};
+asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigAddition_List = {
+	"E2nodeComponentConfigAddition-List",
+	"E2nodeComponentConfigAddition-List",
+	&asn_OP_SEQUENCE_OF,
+	asn_DEF_E2nodeComponentConfigAddition_List_tags_1,
+	sizeof(asn_DEF_E2nodeComponentConfigAddition_List_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentConfigAddition_List_tags_1[0]), /* 1 */
+	asn_DEF_E2nodeComponentConfigAddition_List_tags_1,	/* Same as above */
+	sizeof(asn_DEF_E2nodeComponentConfigAddition_List_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentConfigAddition_List_tags_1[0]), /* 1 */
+	{ 0, &asn_PER_type_E2nodeComponentConfigAddition_List_constr_1, SEQUENCE_OF_constraint },
+	asn_MBR_E2nodeComponentConfigAddition_List_1,
+	1,	/* Single element */
+	&asn_SPC_E2nodeComponentConfigAddition_List_specs_1	/* Additional specs */
+};
+
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigAddition-List.h b/e2sim/src/ASN1c/E2nodeComponentConfigAddition-List.h
new file mode 100644
index 0000000..62747cb
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentConfigAddition-List.h
@@ -0,0 +1,41 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-PDU-Contents"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#ifndef	_E2nodeComponentConfigAddition_List_H_
+#define	_E2nodeComponentConfigAddition_List_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "asn_SEQUENCE_OF.h"
+#include "constr_SEQUENCE_OF.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* Forward declarations */
+struct ProtocolIE_SingleContainer;
+
+/* E2nodeComponentConfigAddition-List */
+typedef struct E2nodeComponentConfigAddition_List {
+	A_SEQUENCE_OF(struct ProtocolIE_SingleContainer) list;
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} E2nodeComponentConfigAddition_List_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigAddition_List;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _E2nodeComponentConfigAddition_List_H_ */
+#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigAdditionAck-Item.c b/e2sim/src/ASN1c/E2nodeComponentConfigAdditionAck-Item.c
new file mode 100644
index 0000000..29cef18
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentConfigAdditionAck-Item.c
@@ -0,0 +1,70 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-PDU-Contents"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#include "E2nodeComponentConfigAdditionAck-Item.h"
+
+static asn_TYPE_member_t asn_MBR_E2nodeComponentConfigAdditionAck_Item_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigAdditionAck_Item, e2nodeComponentInterfaceType),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_E2nodeComponentInterfaceType,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"e2nodeComponentInterfaceType"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigAdditionAck_Item, e2nodeComponentID),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_E2nodeComponentID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"e2nodeComponentID"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigAdditionAck_Item, e2nodeComponentConfigurationAck),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_E2nodeComponentConfigurationAck,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"e2nodeComponentConfigurationAck"
+		},
+};
+static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigAdditionAck_Item_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigAdditionAck_Item_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* e2nodeComponentInterfaceType */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* e2nodeComponentID */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* e2nodeComponentConfigurationAck */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigAdditionAck_Item_specs_1 = {
+	sizeof(struct E2nodeComponentConfigAdditionAck_Item),
+	offsetof(struct E2nodeComponentConfigAdditionAck_Item, _asn_ctx),
+	asn_MAP_E2nodeComponentConfigAdditionAck_Item_tag2el_1,
+	3,	/* Count of tags in the map */
+	0, 0, 0,	/* Optional elements (not needed) */
+	3,	/* First extension addition */
+};
+asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigAdditionAck_Item = {
+	"E2nodeComponentConfigAdditionAck-Item",
+	"E2nodeComponentConfigAdditionAck-Item",
+	&asn_OP_SEQUENCE,
+	asn_DEF_E2nodeComponentConfigAdditionAck_Item_tags_1,
+	sizeof(asn_DEF_E2nodeComponentConfigAdditionAck_Item_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentConfigAdditionAck_Item_tags_1[0]), /* 1 */
+	asn_DEF_E2nodeComponentConfigAdditionAck_Item_tags_1,	/* Same as above */
+	sizeof(asn_DEF_E2nodeComponentConfigAdditionAck_Item_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentConfigAdditionAck_Item_tags_1[0]), /* 1 */
+	{ 0, 0, SEQUENCE_constraint },
+	asn_MBR_E2nodeComponentConfigAdditionAck_Item_1,
+	3,	/* Elements count */
+	&asn_SPC_E2nodeComponentConfigAdditionAck_Item_specs_1	/* Additional specs */
+};
+
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigAdditionAck-Item.h b/e2sim/src/ASN1c/E2nodeComponentConfigAdditionAck-Item.h
new file mode 100644
index 0000000..eb62eb7
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentConfigAdditionAck-Item.h
@@ -0,0 +1,46 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-PDU-Contents"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#ifndef	_E2nodeComponentConfigAdditionAck_Item_H_
+#define	_E2nodeComponentConfigAdditionAck_Item_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "E2nodeComponentInterfaceType.h"
+#include "E2nodeComponentID.h"
+#include "E2nodeComponentConfigurationAck.h"
+#include "constr_SEQUENCE.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* E2nodeComponentConfigAdditionAck-Item */
+typedef struct E2nodeComponentConfigAdditionAck_Item {
+	E2nodeComponentInterfaceType_t	 e2nodeComponentInterfaceType;
+	E2nodeComponentID_t	 e2nodeComponentID;
+	E2nodeComponentConfigurationAck_t	 e2nodeComponentConfigurationAck;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} E2nodeComponentConfigAdditionAck_Item_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigAdditionAck_Item;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _E2nodeComponentConfigAdditionAck_Item_H_ */
+#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigAdditionAck-List.c b/e2sim/src/ASN1c/E2nodeComponentConfigAdditionAck-List.c
new file mode 100644
index 0000000..70f51bb
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentConfigAdditionAck-List.c
@@ -0,0 +1,50 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-PDU-Contents"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#include "E2nodeComponentConfigAdditionAck-List.h"
+
+#include "ProtocolIE-SingleContainer.h"
+static asn_per_constraints_t asn_PER_type_E2nodeComponentConfigAdditionAck_List_constr_1 CC_NOTUSED = {
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	{ APC_CONSTRAINED,	 10,  10,  1,  1024 }	/* (SIZE(1..1024)) */,
+	0, 0	/* No PER value map */
+};
+static asn_TYPE_member_t asn_MBR_E2nodeComponentConfigAdditionAck_List_1[] = {
+	{ ATF_POINTER, 0, 0,
+		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
+		0,
+		&asn_DEF_ProtocolIE_SingleContainer_1920P11,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		""
+		},
+};
+static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigAdditionAck_List_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static asn_SET_OF_specifics_t asn_SPC_E2nodeComponentConfigAdditionAck_List_specs_1 = {
+	sizeof(struct E2nodeComponentConfigAdditionAck_List),
+	offsetof(struct E2nodeComponentConfigAdditionAck_List, _asn_ctx),
+	0,	/* XER encoding is XMLDelimitedItemList */
+};
+asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigAdditionAck_List = {
+	"E2nodeComponentConfigAdditionAck-List",
+	"E2nodeComponentConfigAdditionAck-List",
+	&asn_OP_SEQUENCE_OF,
+	asn_DEF_E2nodeComponentConfigAdditionAck_List_tags_1,
+	sizeof(asn_DEF_E2nodeComponentConfigAdditionAck_List_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentConfigAdditionAck_List_tags_1[0]), /* 1 */
+	asn_DEF_E2nodeComponentConfigAdditionAck_List_tags_1,	/* Same as above */
+	sizeof(asn_DEF_E2nodeComponentConfigAdditionAck_List_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentConfigAdditionAck_List_tags_1[0]), /* 1 */
+	{ 0, &asn_PER_type_E2nodeComponentConfigAdditionAck_List_constr_1, SEQUENCE_OF_constraint },
+	asn_MBR_E2nodeComponentConfigAdditionAck_List_1,
+	1,	/* Single element */
+	&asn_SPC_E2nodeComponentConfigAdditionAck_List_specs_1	/* Additional specs */
+};
+
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigAdditionAck-List.h b/e2sim/src/ASN1c/E2nodeComponentConfigAdditionAck-List.h
new file mode 100644
index 0000000..9a77b8b
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentConfigAdditionAck-List.h
@@ -0,0 +1,41 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-PDU-Contents"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#ifndef	_E2nodeComponentConfigAdditionAck_List_H_
+#define	_E2nodeComponentConfigAdditionAck_List_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "asn_SEQUENCE_OF.h"
+#include "constr_SEQUENCE_OF.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* Forward declarations */
+struct ProtocolIE_SingleContainer;
+
+/* E2nodeComponentConfigAdditionAck-List */
+typedef struct E2nodeComponentConfigAdditionAck_List {
+	A_SEQUENCE_OF(struct ProtocolIE_SingleContainer) list;
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} E2nodeComponentConfigAdditionAck_List_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigAdditionAck_List;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _E2nodeComponentConfigAdditionAck_List_H_ */
+#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigRemoval-Item.c b/e2sim/src/ASN1c/E2nodeComponentConfigRemoval-Item.c
new file mode 100644
index 0000000..6b60e12
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentConfigRemoval-Item.c
@@ -0,0 +1,60 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-PDU-Contents"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#include "E2nodeComponentConfigRemoval-Item.h"
+
+static asn_TYPE_member_t asn_MBR_E2nodeComponentConfigRemoval_Item_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigRemoval_Item, e2nodeComponentInterfaceType),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_E2nodeComponentInterfaceType,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"e2nodeComponentInterfaceType"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigRemoval_Item, e2nodeComponentID),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_E2nodeComponentID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"e2nodeComponentID"
+		},
+};
+static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigRemoval_Item_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigRemoval_Item_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* e2nodeComponentInterfaceType */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* e2nodeComponentID */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigRemoval_Item_specs_1 = {
+	sizeof(struct E2nodeComponentConfigRemoval_Item),
+	offsetof(struct E2nodeComponentConfigRemoval_Item, _asn_ctx),
+	asn_MAP_E2nodeComponentConfigRemoval_Item_tag2el_1,
+	2,	/* Count of tags in the map */
+	0, 0, 0,	/* Optional elements (not needed) */
+	2,	/* First extension addition */
+};
+asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigRemoval_Item = {
+	"E2nodeComponentConfigRemoval-Item",
+	"E2nodeComponentConfigRemoval-Item",
+	&asn_OP_SEQUENCE,
+	asn_DEF_E2nodeComponentConfigRemoval_Item_tags_1,
+	sizeof(asn_DEF_E2nodeComponentConfigRemoval_Item_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentConfigRemoval_Item_tags_1[0]), /* 1 */
+	asn_DEF_E2nodeComponentConfigRemoval_Item_tags_1,	/* Same as above */
+	sizeof(asn_DEF_E2nodeComponentConfigRemoval_Item_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentConfigRemoval_Item_tags_1[0]), /* 1 */
+	{ 0, 0, SEQUENCE_constraint },
+	asn_MBR_E2nodeComponentConfigRemoval_Item_1,
+	2,	/* Elements count */
+	&asn_SPC_E2nodeComponentConfigRemoval_Item_specs_1	/* Additional specs */
+};
+
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigRemoval-Item.h b/e2sim/src/ASN1c/E2nodeComponentConfigRemoval-Item.h
new file mode 100644
index 0000000..36c86d5
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentConfigRemoval-Item.h
@@ -0,0 +1,44 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-PDU-Contents"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#ifndef	_E2nodeComponentConfigRemoval_Item_H_
+#define	_E2nodeComponentConfigRemoval_Item_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "E2nodeComponentInterfaceType.h"
+#include "E2nodeComponentID.h"
+#include "constr_SEQUENCE.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* E2nodeComponentConfigRemoval-Item */
+typedef struct E2nodeComponentConfigRemoval_Item {
+	E2nodeComponentInterfaceType_t	 e2nodeComponentInterfaceType;
+	E2nodeComponentID_t	 e2nodeComponentID;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} E2nodeComponentConfigRemoval_Item_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigRemoval_Item;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _E2nodeComponentConfigRemoval_Item_H_ */
+#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigRemoval-List.c b/e2sim/src/ASN1c/E2nodeComponentConfigRemoval-List.c
new file mode 100644
index 0000000..dc48d0f
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentConfigRemoval-List.c
@@ -0,0 +1,50 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-PDU-Contents"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#include "E2nodeComponentConfigRemoval-List.h"
+
+#include "ProtocolIE-SingleContainer.h"
+static asn_per_constraints_t asn_PER_type_E2nodeComponentConfigRemoval_List_constr_1 CC_NOTUSED = {
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	{ APC_CONSTRAINED,	 10,  10,  1,  1024 }	/* (SIZE(1..1024)) */,
+	0, 0	/* No PER value map */
+};
+static asn_TYPE_member_t asn_MBR_E2nodeComponentConfigRemoval_List_1[] = {
+	{ ATF_POINTER, 0, 0,
+		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
+		0,
+		&asn_DEF_ProtocolIE_SingleContainer_1920P9,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		""
+		},
+};
+static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigRemoval_List_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static asn_SET_OF_specifics_t asn_SPC_E2nodeComponentConfigRemoval_List_specs_1 = {
+	sizeof(struct E2nodeComponentConfigRemoval_List),
+	offsetof(struct E2nodeComponentConfigRemoval_List, _asn_ctx),
+	0,	/* XER encoding is XMLDelimitedItemList */
+};
+asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigRemoval_List = {
+	"E2nodeComponentConfigRemoval-List",
+	"E2nodeComponentConfigRemoval-List",
+	&asn_OP_SEQUENCE_OF,
+	asn_DEF_E2nodeComponentConfigRemoval_List_tags_1,
+	sizeof(asn_DEF_E2nodeComponentConfigRemoval_List_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentConfigRemoval_List_tags_1[0]), /* 1 */
+	asn_DEF_E2nodeComponentConfigRemoval_List_tags_1,	/* Same as above */
+	sizeof(asn_DEF_E2nodeComponentConfigRemoval_List_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentConfigRemoval_List_tags_1[0]), /* 1 */
+	{ 0, &asn_PER_type_E2nodeComponentConfigRemoval_List_constr_1, SEQUENCE_OF_constraint },
+	asn_MBR_E2nodeComponentConfigRemoval_List_1,
+	1,	/* Single element */
+	&asn_SPC_E2nodeComponentConfigRemoval_List_specs_1	/* Additional specs */
+};
+
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigRemoval-List.h b/e2sim/src/ASN1c/E2nodeComponentConfigRemoval-List.h
new file mode 100644
index 0000000..944a61a
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentConfigRemoval-List.h
@@ -0,0 +1,41 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-PDU-Contents"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#ifndef	_E2nodeComponentConfigRemoval_List_H_
+#define	_E2nodeComponentConfigRemoval_List_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "asn_SEQUENCE_OF.h"
+#include "constr_SEQUENCE_OF.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* Forward declarations */
+struct ProtocolIE_SingleContainer;
+
+/* E2nodeComponentConfigRemoval-List */
+typedef struct E2nodeComponentConfigRemoval_List {
+	A_SEQUENCE_OF(struct ProtocolIE_SingleContainer) list;
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} E2nodeComponentConfigRemoval_List_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigRemoval_List;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _E2nodeComponentConfigRemoval_List_H_ */
+#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigRemovalAck-Item.c b/e2sim/src/ASN1c/E2nodeComponentConfigRemovalAck-Item.c
new file mode 100644
index 0000000..a07a8bb
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentConfigRemovalAck-Item.c
@@ -0,0 +1,70 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-PDU-Contents"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#include "E2nodeComponentConfigRemovalAck-Item.h"
+
+static asn_TYPE_member_t asn_MBR_E2nodeComponentConfigRemovalAck_Item_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigRemovalAck_Item, e2nodeComponentInterfaceType),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_E2nodeComponentInterfaceType,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"e2nodeComponentInterfaceType"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigRemovalAck_Item, e2nodeComponentID),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_E2nodeComponentID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"e2nodeComponentID"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigRemovalAck_Item, e2nodeComponentConfigurationAck),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_E2nodeComponentConfigurationAck,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"e2nodeComponentConfigurationAck"
+		},
+};
+static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigRemovalAck_Item_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigRemovalAck_Item_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* e2nodeComponentInterfaceType */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* e2nodeComponentID */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* e2nodeComponentConfigurationAck */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigRemovalAck_Item_specs_1 = {
+	sizeof(struct E2nodeComponentConfigRemovalAck_Item),
+	offsetof(struct E2nodeComponentConfigRemovalAck_Item, _asn_ctx),
+	asn_MAP_E2nodeComponentConfigRemovalAck_Item_tag2el_1,
+	3,	/* Count of tags in the map */
+	0, 0, 0,	/* Optional elements (not needed) */
+	3,	/* First extension addition */
+};
+asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigRemovalAck_Item = {
+	"E2nodeComponentConfigRemovalAck-Item",
+	"E2nodeComponentConfigRemovalAck-Item",
+	&asn_OP_SEQUENCE,
+	asn_DEF_E2nodeComponentConfigRemovalAck_Item_tags_1,
+	sizeof(asn_DEF_E2nodeComponentConfigRemovalAck_Item_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentConfigRemovalAck_Item_tags_1[0]), /* 1 */
+	asn_DEF_E2nodeComponentConfigRemovalAck_Item_tags_1,	/* Same as above */
+	sizeof(asn_DEF_E2nodeComponentConfigRemovalAck_Item_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentConfigRemovalAck_Item_tags_1[0]), /* 1 */
+	{ 0, 0, SEQUENCE_constraint },
+	asn_MBR_E2nodeComponentConfigRemovalAck_Item_1,
+	3,	/* Elements count */
+	&asn_SPC_E2nodeComponentConfigRemovalAck_Item_specs_1	/* Additional specs */
+};
+
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigRemovalAck-Item.h b/e2sim/src/ASN1c/E2nodeComponentConfigRemovalAck-Item.h
new file mode 100644
index 0000000..6ab5a05
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentConfigRemovalAck-Item.h
@@ -0,0 +1,46 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-PDU-Contents"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#ifndef	_E2nodeComponentConfigRemovalAck_Item_H_
+#define	_E2nodeComponentConfigRemovalAck_Item_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "E2nodeComponentInterfaceType.h"
+#include "E2nodeComponentID.h"
+#include "E2nodeComponentConfigurationAck.h"
+#include "constr_SEQUENCE.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* E2nodeComponentConfigRemovalAck-Item */
+typedef struct E2nodeComponentConfigRemovalAck_Item {
+	E2nodeComponentInterfaceType_t	 e2nodeComponentInterfaceType;
+	E2nodeComponentID_t	 e2nodeComponentID;
+	E2nodeComponentConfigurationAck_t	 e2nodeComponentConfigurationAck;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} E2nodeComponentConfigRemovalAck_Item_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigRemovalAck_Item;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _E2nodeComponentConfigRemovalAck_Item_H_ */
+#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigRemovalAck-List.c b/e2sim/src/ASN1c/E2nodeComponentConfigRemovalAck-List.c
new file mode 100644
index 0000000..ed1c6c7
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentConfigRemovalAck-List.c
@@ -0,0 +1,50 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-PDU-Contents"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#include "E2nodeComponentConfigRemovalAck-List.h"
+
+#include "ProtocolIE-SingleContainer.h"
+static asn_per_constraints_t asn_PER_type_E2nodeComponentConfigRemovalAck_List_constr_1 CC_NOTUSED = {
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	{ APC_CONSTRAINED,	 10,  10,  1,  1024 }	/* (SIZE(1..1024)) */,
+	0, 0	/* No PER value map */
+};
+static asn_TYPE_member_t asn_MBR_E2nodeComponentConfigRemovalAck_List_1[] = {
+	{ ATF_POINTER, 0, 0,
+		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
+		0,
+		&asn_DEF_ProtocolIE_SingleContainer_1920P13,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		""
+		},
+};
+static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigRemovalAck_List_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static asn_SET_OF_specifics_t asn_SPC_E2nodeComponentConfigRemovalAck_List_specs_1 = {
+	sizeof(struct E2nodeComponentConfigRemovalAck_List),
+	offsetof(struct E2nodeComponentConfigRemovalAck_List, _asn_ctx),
+	0,	/* XER encoding is XMLDelimitedItemList */
+};
+asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigRemovalAck_List = {
+	"E2nodeComponentConfigRemovalAck-List",
+	"E2nodeComponentConfigRemovalAck-List",
+	&asn_OP_SEQUENCE_OF,
+	asn_DEF_E2nodeComponentConfigRemovalAck_List_tags_1,
+	sizeof(asn_DEF_E2nodeComponentConfigRemovalAck_List_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentConfigRemovalAck_List_tags_1[0]), /* 1 */
+	asn_DEF_E2nodeComponentConfigRemovalAck_List_tags_1,	/* Same as above */
+	sizeof(asn_DEF_E2nodeComponentConfigRemovalAck_List_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentConfigRemovalAck_List_tags_1[0]), /* 1 */
+	{ 0, &asn_PER_type_E2nodeComponentConfigRemovalAck_List_constr_1, SEQUENCE_OF_constraint },
+	asn_MBR_E2nodeComponentConfigRemovalAck_List_1,
+	1,	/* Single element */
+	&asn_SPC_E2nodeComponentConfigRemovalAck_List_specs_1	/* Additional specs */
+};
+
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigRemovalAck-List.h b/e2sim/src/ASN1c/E2nodeComponentConfigRemovalAck-List.h
new file mode 100644
index 0000000..fc59258
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentConfigRemovalAck-List.h
@@ -0,0 +1,41 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-PDU-Contents"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#ifndef	_E2nodeComponentConfigRemovalAck_List_H_
+#define	_E2nodeComponentConfigRemovalAck_List_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "asn_SEQUENCE_OF.h"
+#include "constr_SEQUENCE_OF.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* Forward declarations */
+struct ProtocolIE_SingleContainer;
+
+/* E2nodeComponentConfigRemovalAck-List */
+typedef struct E2nodeComponentConfigRemovalAck_List {
+	A_SEQUENCE_OF(struct ProtocolIE_SingleContainer) list;
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} E2nodeComponentConfigRemovalAck_List_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigRemovalAck_List;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _E2nodeComponentConfigRemovalAck_List_H_ */
+#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigUpdate-Item.c b/e2sim/src/ASN1c/E2nodeComponentConfigUpdate-Item.c
index cc1a0bd..295bf5d 100644
--- a/e2sim/src/ASN1c/E2nodeComponentConfigUpdate-Item.c
+++ b/e2sim/src/ASN1c/E2nodeComponentConfigUpdate-Item.c
@@ -1,24 +1,23 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "E2nodeComponentConfigUpdate-Item.h"
 
-#include "E2nodeComponentID.h"
-asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdate_Item_1[] = {
-	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdate_Item, e2nodeComponentType),
+static asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdate_Item_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdate_Item, e2nodeComponentInterfaceType),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_E2nodeComponentType,
+		&asn_DEF_E2nodeComponentInterfaceType,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
-		"e2nodeComponentType"
+		"e2nodeComponentInterfaceType"
 		},
-	{ ATF_POINTER, 1, offsetof(struct E2nodeComponentConfigUpdate_Item, e2nodeComponentID),
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdate_Item, e2nodeComponentID),
 		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
 		+1,	/* EXPLICIT tag at current level */
 		&asn_DEF_E2nodeComponentID,
@@ -27,32 +26,30 @@
 		0, 0, /* No default value */
 		"e2nodeComponentID"
 		},
-	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdate_Item, e2nodeComponentConfigUpdate),
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdate_Item, e2nodeComponentConfiguration),
 		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
-		+1,	/* EXPLICIT tag at current level */
-		&asn_DEF_E2nodeComponentConfigUpdate,
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_E2nodeComponentConfiguration,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
-		"e2nodeComponentConfigUpdate"
+		"e2nodeComponentConfiguration"
 		},
 };
-static const int asn_MAP_E2nodeComponentConfigUpdate_Item_oms_1[] = { 1 };
 static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigUpdate_Item_tags_1[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
 static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigUpdate_Item_tag2el_1[] = {
-    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* e2nodeComponentType */
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* e2nodeComponentInterfaceType */
     { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* e2nodeComponentID */
-    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* e2nodeComponentConfigUpdate */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* e2nodeComponentConfiguration */
 };
-asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdate_Item_specs_1 = {
+static asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdate_Item_specs_1 = {
 	sizeof(struct E2nodeComponentConfigUpdate_Item),
 	offsetof(struct E2nodeComponentConfigUpdate_Item, _asn_ctx),
 	asn_MAP_E2nodeComponentConfigUpdate_Item_tag2el_1,
 	3,	/* Count of tags in the map */
-	asn_MAP_E2nodeComponentConfigUpdate_Item_oms_1,	/* Optional members */
-	1, 0,	/* Root/Additions */
+	0, 0, 0,	/* Optional elements (not needed) */
 	3,	/* First extension addition */
 };
 asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdate_Item = {
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigUpdate-Item.h b/e2sim/src/ASN1c/E2nodeComponentConfigUpdate-Item.h
index c78aadf..f78ddbe 100644
--- a/e2sim/src/ASN1c/E2nodeComponentConfigUpdate-Item.h
+++ b/e2sim/src/ASN1c/E2nodeComponentConfigUpdate-Item.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_E2nodeComponentConfigUpdate_Item_H_
@@ -12,22 +12,20 @@
 #include "asn_application.h"
 
 /* Including external dependencies */
-#include "E2nodeComponentType.h"
-#include "E2nodeComponentConfigUpdate.h"
+#include "E2nodeComponentInterfaceType.h"
+#include "E2nodeComponentID.h"
+#include "E2nodeComponentConfiguration.h"
 #include "constr_SEQUENCE.h"
 
 #ifdef __cplusplus
 extern "C" {
 #endif
 
-/* Forward declarations */
-struct E2nodeComponentID;
-
 /* E2nodeComponentConfigUpdate-Item */
 typedef struct E2nodeComponentConfigUpdate_Item {
-	E2nodeComponentType_t	 e2nodeComponentType;
-	struct E2nodeComponentID	*e2nodeComponentID;	/* OPTIONAL */
-	E2nodeComponentConfigUpdate_t	 e2nodeComponentConfigUpdate;
+	E2nodeComponentInterfaceType_t	 e2nodeComponentInterfaceType;
+	E2nodeComponentID_t	 e2nodeComponentID;
+	E2nodeComponentConfiguration_t	 e2nodeComponentConfiguration;
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
@@ -39,8 +37,6 @@
 
 /* Implementation */
 extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdate_Item;
-extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdate_Item_specs_1;
-extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdate_Item_1[3];
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigUpdate-List.c b/e2sim/src/ASN1c/E2nodeComponentConfigUpdate-List.c
index f982bb6..7a49f73 100644
--- a/e2sim/src/ASN1c/E2nodeComponentConfigUpdate-List.c
+++ b/e2sim/src/ASN1c/E2nodeComponentConfigUpdate-List.c
@@ -1,23 +1,23 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "E2nodeComponentConfigUpdate-List.h"
 
 #include "ProtocolIE-SingleContainer.h"
-asn_per_constraints_t asn_PER_type_E2nodeComponentConfigUpdate_List_constr_1 CC_NOTUSED = {
+static asn_per_constraints_t asn_PER_type_E2nodeComponentConfigUpdate_List_constr_1 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 10,  10,  1,  1024 }	/* (SIZE(1..1024)) */,
 	0, 0	/* No PER value map */
 };
-asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdate_List_1[] = {
+static asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdate_List_1[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
-		&asn_DEF_ProtocolIE_SingleContainer_229P6,
+		&asn_DEF_ProtocolIE_SingleContainer_1920P8,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
@@ -27,7 +27,7 @@
 static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigUpdate_List_tags_1[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_E2nodeComponentConfigUpdate_List_specs_1 = {
+static asn_SET_OF_specifics_t asn_SPC_E2nodeComponentConfigUpdate_List_specs_1 = {
 	sizeof(struct E2nodeComponentConfigUpdate_List),
 	offsetof(struct E2nodeComponentConfigUpdate_List, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigUpdate-List.h b/e2sim/src/ASN1c/E2nodeComponentConfigUpdate-List.h
index 4795cd5..ee79073 100644
--- a/e2sim/src/ASN1c/E2nodeComponentConfigUpdate-List.h
+++ b/e2sim/src/ASN1c/E2nodeComponentConfigUpdate-List.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_E2nodeComponentConfigUpdate_List_H_
@@ -32,9 +32,6 @@
 
 /* Implementation */
 extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdate_List;
-extern asn_SET_OF_specifics_t asn_SPC_E2nodeComponentConfigUpdate_List_specs_1;
-extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdate_List_1[1];
-extern asn_per_constraints_t asn_PER_type_E2nodeComponentConfigUpdate_List_constr_1;
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigUpdate.c b/e2sim/src/ASN1c/E2nodeComponentConfigUpdate.c
deleted file mode 100644
index 10f6fa6..0000000
--- a/e2sim/src/ASN1c/E2nodeComponentConfigUpdate.c
+++ /dev/null
@@ -1,86 +0,0 @@
-/*
- * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
- * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
- */
-
-#include "E2nodeComponentConfigUpdate.h"
-
-#include "E2nodeComponentConfigUpdateGNB.h"
-#include "E2nodeComponentConfigUpdateENgNB.h"
-#include "E2nodeComponentConfigUpdateNGeNB.h"
-#include "E2nodeComponentConfigUpdateENB.h"
-asn_per_constraints_t asn_PER_type_E2nodeComponentConfigUpdate_constr_1 CC_NOTUSED = {
-	{ APC_CONSTRAINED | APC_EXTENSIBLE,  2,  2,  0,  3 }	/* (0..3,...) */,
-	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
-	0, 0	/* No PER value map */
-};
-asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdate_1[] = {
-	{ ATF_POINTER, 0, offsetof(struct E2nodeComponentConfigUpdate, choice.gNBconfigUpdate),
-		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_E2nodeComponentConfigUpdateGNB,
-		0,
-		{ 0, 0, 0 },
-		0, 0, /* No default value */
-		"gNBconfigUpdate"
-		},
-	{ ATF_POINTER, 0, offsetof(struct E2nodeComponentConfigUpdate, choice.en_gNBconfigUpdate),
-		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
-		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_E2nodeComponentConfigUpdateENgNB,
-		0,
-		{ 0, 0, 0 },
-		0, 0, /* No default value */
-		"en-gNBconfigUpdate"
-		},
-	{ ATF_POINTER, 0, offsetof(struct E2nodeComponentConfigUpdate, choice.ng_eNBconfigUpdate),
-		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
-		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_E2nodeComponentConfigUpdateNGeNB,
-		0,
-		{ 0, 0, 0 },
-		0, 0, /* No default value */
-		"ng-eNBconfigUpdate"
-		},
-	{ ATF_POINTER, 0, offsetof(struct E2nodeComponentConfigUpdate, choice.eNBconfigUpdate),
-		(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
-		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_E2nodeComponentConfigUpdateENB,
-		0,
-		{ 0, 0, 0 },
-		0, 0, /* No default value */
-		"eNBconfigUpdate"
-		},
-};
-static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigUpdate_tag2el_1[] = {
-    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* gNBconfigUpdate */
-    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* en-gNBconfigUpdate */
-    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ng-eNBconfigUpdate */
-    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* eNBconfigUpdate */
-};
-asn_CHOICE_specifics_t asn_SPC_E2nodeComponentConfigUpdate_specs_1 = {
-	sizeof(struct E2nodeComponentConfigUpdate),
-	offsetof(struct E2nodeComponentConfigUpdate, _asn_ctx),
-	offsetof(struct E2nodeComponentConfigUpdate, present),
-	sizeof(((struct E2nodeComponentConfigUpdate *)0)->present),
-	asn_MAP_E2nodeComponentConfigUpdate_tag2el_1,
-	4,	/* Count of tags in the map */
-	0, 0,
-	4	/* Extensions start */
-};
-asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdate = {
-	"E2nodeComponentConfigUpdate",
-	"E2nodeComponentConfigUpdate",
-	&asn_OP_CHOICE,
-	0,	/* No effective tags (pointer) */
-	0,	/* No effective tags (count) */
-	0,	/* No tags (pointer) */
-	0,	/* No tags (count) */
-	{ 0, &asn_PER_type_E2nodeComponentConfigUpdate_constr_1, CHOICE_constraint },
-	asn_MBR_E2nodeComponentConfigUpdate_1,
-	4,	/* Elements count */
-	&asn_SPC_E2nodeComponentConfigUpdate_specs_1	/* Additional specs */
-};
-
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigUpdate.h b/e2sim/src/ASN1c/E2nodeComponentConfigUpdate.h
deleted file mode 100644
index 6e0ca4a..0000000
--- a/e2sim/src/ASN1c/E2nodeComponentConfigUpdate.h
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
- * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
- * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
- */
-
-#ifndef	_E2nodeComponentConfigUpdate_H_
-#define	_E2nodeComponentConfigUpdate_H_
-
-
-#include "asn_application.h"
-
-/* Including external dependencies */
-#include "constr_CHOICE.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* Dependencies */
-typedef enum E2nodeComponentConfigUpdate_PR {
-	E2nodeComponentConfigUpdate_PR_NOTHING,	/* No components present */
-	E2nodeComponentConfigUpdate_PR_gNBconfigUpdate,
-	E2nodeComponentConfigUpdate_PR_en_gNBconfigUpdate,
-	E2nodeComponentConfigUpdate_PR_ng_eNBconfigUpdate,
-	E2nodeComponentConfigUpdate_PR_eNBconfigUpdate
-	/* Extensions may appear below */
-	
-} E2nodeComponentConfigUpdate_PR;
-
-/* Forward declarations */
-struct E2nodeComponentConfigUpdateGNB;
-struct E2nodeComponentConfigUpdateENgNB;
-struct E2nodeComponentConfigUpdateNGeNB;
-struct E2nodeComponentConfigUpdateENB;
-
-/* E2nodeComponentConfigUpdate */
-typedef struct E2nodeComponentConfigUpdate {
-	E2nodeComponentConfigUpdate_PR present;
-	union E2nodeComponentConfigUpdate_u {
-		struct E2nodeComponentConfigUpdateGNB	*gNBconfigUpdate;
-		struct E2nodeComponentConfigUpdateENgNB	*en_gNBconfigUpdate;
-		struct E2nodeComponentConfigUpdateNGeNB	*ng_eNBconfigUpdate;
-		struct E2nodeComponentConfigUpdateENB	*eNBconfigUpdate;
-		/*
-		 * This type is extensible,
-		 * possible extensions are below.
-		 */
-	} choice;
-	
-	/* Context for parsing across buffer boundaries */
-	asn_struct_ctx_t _asn_ctx;
-} E2nodeComponentConfigUpdate_t;
-
-/* Implementation */
-extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdate;
-extern asn_CHOICE_specifics_t asn_SPC_E2nodeComponentConfigUpdate_specs_1;
-extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdate_1[4];
-extern asn_per_constraints_t asn_PER_type_E2nodeComponentConfigUpdate_constr_1;
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif	/* _E2nodeComponentConfigUpdate_H_ */
-#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigUpdateAck-Item.c b/e2sim/src/ASN1c/E2nodeComponentConfigUpdateAck-Item.c
index 77cdb1b..8b33328 100644
--- a/e2sim/src/ASN1c/E2nodeComponentConfigUpdateAck-Item.c
+++ b/e2sim/src/ASN1c/E2nodeComponentConfigUpdateAck-Item.c
@@ -1,24 +1,23 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "E2nodeComponentConfigUpdateAck-Item.h"
 
-#include "E2nodeComponentID.h"
-asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdateAck_Item_1[] = {
-	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdateAck_Item, e2nodeComponentType),
+static asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdateAck_Item_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdateAck_Item, e2nodeComponentInterfaceType),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_E2nodeComponentType,
+		&asn_DEF_E2nodeComponentInterfaceType,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
-		"e2nodeComponentType"
+		"e2nodeComponentInterfaceType"
 		},
-	{ ATF_POINTER, 1, offsetof(struct E2nodeComponentConfigUpdateAck_Item, e2nodeComponentID),
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdateAck_Item, e2nodeComponentID),
 		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
 		+1,	/* EXPLICIT tag at current level */
 		&asn_DEF_E2nodeComponentID,
@@ -27,32 +26,30 @@
 		0, 0, /* No default value */
 		"e2nodeComponentID"
 		},
-	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdateAck_Item, e2nodeComponentConfigUpdateAck),
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdateAck_Item, e2nodeComponentConfigurationAck),
 		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_E2nodeComponentConfigUpdateAck,
+		&asn_DEF_E2nodeComponentConfigurationAck,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
-		"e2nodeComponentConfigUpdateAck"
+		"e2nodeComponentConfigurationAck"
 		},
 };
-static const int asn_MAP_E2nodeComponentConfigUpdateAck_Item_oms_1[] = { 1 };
 static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigUpdateAck_Item_tags_1[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
 static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigUpdateAck_Item_tag2el_1[] = {
-    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* e2nodeComponentType */
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* e2nodeComponentInterfaceType */
     { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* e2nodeComponentID */
-    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* e2nodeComponentConfigUpdateAck */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* e2nodeComponentConfigurationAck */
 };
-asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdateAck_Item_specs_1 = {
+static asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdateAck_Item_specs_1 = {
 	sizeof(struct E2nodeComponentConfigUpdateAck_Item),
 	offsetof(struct E2nodeComponentConfigUpdateAck_Item, _asn_ctx),
 	asn_MAP_E2nodeComponentConfigUpdateAck_Item_tag2el_1,
 	3,	/* Count of tags in the map */
-	asn_MAP_E2nodeComponentConfigUpdateAck_Item_oms_1,	/* Optional members */
-	1, 0,	/* Root/Additions */
+	0, 0, 0,	/* Optional elements (not needed) */
 	3,	/* First extension addition */
 };
 asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdateAck_Item = {
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigUpdateAck-Item.h b/e2sim/src/ASN1c/E2nodeComponentConfigUpdateAck-Item.h
index cfae915..8fede58 100644
--- a/e2sim/src/ASN1c/E2nodeComponentConfigUpdateAck-Item.h
+++ b/e2sim/src/ASN1c/E2nodeComponentConfigUpdateAck-Item.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_E2nodeComponentConfigUpdateAck_Item_H_
@@ -12,22 +12,20 @@
 #include "asn_application.h"
 
 /* Including external dependencies */
-#include "E2nodeComponentType.h"
-#include "E2nodeComponentConfigUpdateAck.h"
+#include "E2nodeComponentInterfaceType.h"
+#include "E2nodeComponentID.h"
+#include "E2nodeComponentConfigurationAck.h"
 #include "constr_SEQUENCE.h"
 
 #ifdef __cplusplus
 extern "C" {
 #endif
 
-/* Forward declarations */
-struct E2nodeComponentID;
-
 /* E2nodeComponentConfigUpdateAck-Item */
 typedef struct E2nodeComponentConfigUpdateAck_Item {
-	E2nodeComponentType_t	 e2nodeComponentType;
-	struct E2nodeComponentID	*e2nodeComponentID;	/* OPTIONAL */
-	E2nodeComponentConfigUpdateAck_t	 e2nodeComponentConfigUpdateAck;
+	E2nodeComponentInterfaceType_t	 e2nodeComponentInterfaceType;
+	E2nodeComponentID_t	 e2nodeComponentID;
+	E2nodeComponentConfigurationAck_t	 e2nodeComponentConfigurationAck;
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
@@ -39,8 +37,6 @@
 
 /* Implementation */
 extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdateAck_Item;
-extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdateAck_Item_specs_1;
-extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdateAck_Item_1[3];
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigUpdateAck-List.c b/e2sim/src/ASN1c/E2nodeComponentConfigUpdateAck-List.c
index 779f011..d25030a 100644
--- a/e2sim/src/ASN1c/E2nodeComponentConfigUpdateAck-List.c
+++ b/e2sim/src/ASN1c/E2nodeComponentConfigUpdateAck-List.c
@@ -1,23 +1,23 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "E2nodeComponentConfigUpdateAck-List.h"
 
 #include "ProtocolIE-SingleContainer.h"
-asn_per_constraints_t asn_PER_type_E2nodeComponentConfigUpdateAck_List_constr_1 CC_NOTUSED = {
+static asn_per_constraints_t asn_PER_type_E2nodeComponentConfigUpdateAck_List_constr_1 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 10,  10,  1,  1024 }	/* (SIZE(1..1024)) */,
 	0, 0	/* No PER value map */
 };
-asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdateAck_List_1[] = {
+static asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdateAck_List_1[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
-		&asn_DEF_ProtocolIE_SingleContainer_229P7,
+		&asn_DEF_ProtocolIE_SingleContainer_1920P12,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
@@ -27,7 +27,7 @@
 static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigUpdateAck_List_tags_1[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_E2nodeComponentConfigUpdateAck_List_specs_1 = {
+static asn_SET_OF_specifics_t asn_SPC_E2nodeComponentConfigUpdateAck_List_specs_1 = {
 	sizeof(struct E2nodeComponentConfigUpdateAck_List),
 	offsetof(struct E2nodeComponentConfigUpdateAck_List, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigUpdateAck-List.h b/e2sim/src/ASN1c/E2nodeComponentConfigUpdateAck-List.h
index ff89f9e..8d33460 100644
--- a/e2sim/src/ASN1c/E2nodeComponentConfigUpdateAck-List.h
+++ b/e2sim/src/ASN1c/E2nodeComponentConfigUpdateAck-List.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_E2nodeComponentConfigUpdateAck_List_H_
@@ -32,9 +32,6 @@
 
 /* Implementation */
 extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdateAck_List;
-extern asn_SET_OF_specifics_t asn_SPC_E2nodeComponentConfigUpdateAck_List_specs_1;
-extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdateAck_List_1[1];
-extern asn_per_constraints_t asn_PER_type_E2nodeComponentConfigUpdateAck_List_constr_1;
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigUpdateAck.h b/e2sim/src/ASN1c/E2nodeComponentConfigUpdateAck.h
deleted file mode 100644
index b9b5fbc..0000000
--- a/e2sim/src/ASN1c/E2nodeComponentConfigUpdateAck.h
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
- * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
- */
-
-#ifndef	_E2nodeComponentConfigUpdateAck_H_
-#define	_E2nodeComponentConfigUpdateAck_H_
-
-
-#include "asn_application.h"
-
-/* Including external dependencies */
-#include "NativeEnumerated.h"
-#include "constr_SEQUENCE.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* Dependencies */
-typedef enum E2nodeComponentConfigUpdateAck__updateOutcome {
-	E2nodeComponentConfigUpdateAck__updateOutcome_success	= 0,
-	E2nodeComponentConfigUpdateAck__updateOutcome_failure	= 1
-	/*
-	 * Enumeration is extensible
-	 */
-} e_E2nodeComponentConfigUpdateAck__updateOutcome;
-
-/* Forward declarations */
-struct Cause;
-
-/* E2nodeComponentConfigUpdateAck */
-typedef struct E2nodeComponentConfigUpdateAck {
-	long	 updateOutcome;
-	struct Cause	*failureCause;	/* OPTIONAL */
-	/*
-	 * This type is extensible,
-	 * possible extensions are below.
-	 */
-	
-	/* Context for parsing across buffer boundaries */
-	asn_struct_ctx_t _asn_ctx;
-} E2nodeComponentConfigUpdateAck_t;
-
-/* Implementation */
-/* extern asn_TYPE_descriptor_t asn_DEF_updateOutcome_2;	// (Use -fall-defs-global to expose) */
-extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdateAck;
-extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdateAck_specs_1;
-extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdateAck_1[2];
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif	/* _E2nodeComponentConfigUpdateAck_H_ */
-#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigUpdateENB.c b/e2sim/src/ASN1c/E2nodeComponentConfigUpdateENB.c
deleted file mode 100644
index b8ebed0..0000000
--- a/e2sim/src/ASN1c/E2nodeComponentConfigUpdateENB.c
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
- * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
- */
-
-#include "E2nodeComponentConfigUpdateENB.h"
-
-asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdateENB_1[] = {
-	{ ATF_POINTER, 2, offsetof(struct E2nodeComponentConfigUpdateENB, s1APconfigUpdate),
-		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_OCTET_STRING,
-		0,
-		{ 0, 0, 0 },
-		0, 0, /* No default value */
-		"s1APconfigUpdate"
-		},
-	{ ATF_POINTER, 1, offsetof(struct E2nodeComponentConfigUpdateENB, x2APconfigUpdate),
-		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
-		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_OCTET_STRING,
-		0,
-		{ 0, 0, 0 },
-		0, 0, /* No default value */
-		"x2APconfigUpdate"
-		},
-};
-static const int asn_MAP_E2nodeComponentConfigUpdateENB_oms_1[] = { 0, 1 };
-static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigUpdateENB_tags_1[] = {
-	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
-};
-static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigUpdateENB_tag2el_1[] = {
-    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* s1APconfigUpdate */
-    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* x2APconfigUpdate */
-};
-asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdateENB_specs_1 = {
-	sizeof(struct E2nodeComponentConfigUpdateENB),
-	offsetof(struct E2nodeComponentConfigUpdateENB, _asn_ctx),
-	asn_MAP_E2nodeComponentConfigUpdateENB_tag2el_1,
-	2,	/* Count of tags in the map */
-	asn_MAP_E2nodeComponentConfigUpdateENB_oms_1,	/* Optional members */
-	2, 0,	/* Root/Additions */
-	2,	/* First extension addition */
-};
-asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdateENB = {
-	"E2nodeComponentConfigUpdateENB",
-	"E2nodeComponentConfigUpdateENB",
-	&asn_OP_SEQUENCE,
-	asn_DEF_E2nodeComponentConfigUpdateENB_tags_1,
-	sizeof(asn_DEF_E2nodeComponentConfigUpdateENB_tags_1)
-		/sizeof(asn_DEF_E2nodeComponentConfigUpdateENB_tags_1[0]), /* 1 */
-	asn_DEF_E2nodeComponentConfigUpdateENB_tags_1,	/* Same as above */
-	sizeof(asn_DEF_E2nodeComponentConfigUpdateENB_tags_1)
-		/sizeof(asn_DEF_E2nodeComponentConfigUpdateENB_tags_1[0]), /* 1 */
-	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_E2nodeComponentConfigUpdateENB_1,
-	2,	/* Elements count */
-	&asn_SPC_E2nodeComponentConfigUpdateENB_specs_1	/* Additional specs */
-};
-
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigUpdateENB.h b/e2sim/src/ASN1c/E2nodeComponentConfigUpdateENB.h
deleted file mode 100644
index ad36d72..0000000
--- a/e2sim/src/ASN1c/E2nodeComponentConfigUpdateENB.h
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
- * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
- */
-
-#ifndef	_E2nodeComponentConfigUpdateENB_H_
-#define	_E2nodeComponentConfigUpdateENB_H_
-
-
-#include "asn_application.h"
-
-/* Including external dependencies */
-#include "OCTET_STRING.h"
-#include "constr_SEQUENCE.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* E2nodeComponentConfigUpdateENB */
-typedef struct E2nodeComponentConfigUpdateENB {
-	OCTET_STRING_t	*s1APconfigUpdate;	/* OPTIONAL */
-	OCTET_STRING_t	*x2APconfigUpdate;	/* OPTIONAL */
-	/*
-	 * This type is extensible,
-	 * possible extensions are below.
-	 */
-	
-	/* Context for parsing across buffer boundaries */
-	asn_struct_ctx_t _asn_ctx;
-} E2nodeComponentConfigUpdateENB_t;
-
-/* Implementation */
-extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdateENB;
-extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdateENB_specs_1;
-extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdateENB_1[2];
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif	/* _E2nodeComponentConfigUpdateENB_H_ */
-#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigUpdateENgNB.c b/e2sim/src/ASN1c/E2nodeComponentConfigUpdateENgNB.c
deleted file mode 100644
index f490891..0000000
--- a/e2sim/src/ASN1c/E2nodeComponentConfigUpdateENgNB.c
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
- * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
- */
-
-#include "E2nodeComponentConfigUpdateENgNB.h"
-
-asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdateENgNB_1[] = {
-	{ ATF_POINTER, 1, offsetof(struct E2nodeComponentConfigUpdateENgNB, x2APconfigUpdate),
-		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_OCTET_STRING,
-		0,
-		{ 0, 0, 0 },
-		0, 0, /* No default value */
-		"x2APconfigUpdate"
-		},
-};
-static const int asn_MAP_E2nodeComponentConfigUpdateENgNB_oms_1[] = { 0 };
-static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigUpdateENgNB_tags_1[] = {
-	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
-};
-static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigUpdateENgNB_tag2el_1[] = {
-    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* x2APconfigUpdate */
-};
-asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdateENgNB_specs_1 = {
-	sizeof(struct E2nodeComponentConfigUpdateENgNB),
-	offsetof(struct E2nodeComponentConfigUpdateENgNB, _asn_ctx),
-	asn_MAP_E2nodeComponentConfigUpdateENgNB_tag2el_1,
-	1,	/* Count of tags in the map */
-	asn_MAP_E2nodeComponentConfigUpdateENgNB_oms_1,	/* Optional members */
-	1, 0,	/* Root/Additions */
-	1,	/* First extension addition */
-};
-asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdateENgNB = {
-	"E2nodeComponentConfigUpdateENgNB",
-	"E2nodeComponentConfigUpdateENgNB",
-	&asn_OP_SEQUENCE,
-	asn_DEF_E2nodeComponentConfigUpdateENgNB_tags_1,
-	sizeof(asn_DEF_E2nodeComponentConfigUpdateENgNB_tags_1)
-		/sizeof(asn_DEF_E2nodeComponentConfigUpdateENgNB_tags_1[0]), /* 1 */
-	asn_DEF_E2nodeComponentConfigUpdateENgNB_tags_1,	/* Same as above */
-	sizeof(asn_DEF_E2nodeComponentConfigUpdateENgNB_tags_1)
-		/sizeof(asn_DEF_E2nodeComponentConfigUpdateENgNB_tags_1[0]), /* 1 */
-	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_E2nodeComponentConfigUpdateENgNB_1,
-	1,	/* Elements count */
-	&asn_SPC_E2nodeComponentConfigUpdateENgNB_specs_1	/* Additional specs */
-};
-
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigUpdateENgNB.h b/e2sim/src/ASN1c/E2nodeComponentConfigUpdateENgNB.h
deleted file mode 100644
index 9e5dc10..0000000
--- a/e2sim/src/ASN1c/E2nodeComponentConfigUpdateENgNB.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
- * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
- */
-
-#ifndef	_E2nodeComponentConfigUpdateENgNB_H_
-#define	_E2nodeComponentConfigUpdateENgNB_H_
-
-
-#include "asn_application.h"
-
-/* Including external dependencies */
-#include "OCTET_STRING.h"
-#include "constr_SEQUENCE.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* E2nodeComponentConfigUpdateENgNB */
-typedef struct E2nodeComponentConfigUpdateENgNB {
-	OCTET_STRING_t	*x2APconfigUpdate;	/* OPTIONAL */
-	/*
-	 * This type is extensible,
-	 * possible extensions are below.
-	 */
-	
-	/* Context for parsing across buffer boundaries */
-	asn_struct_ctx_t _asn_ctx;
-} E2nodeComponentConfigUpdateENgNB_t;
-
-/* Implementation */
-extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdateENgNB;
-extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdateENgNB_specs_1;
-extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdateENgNB_1[1];
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif	/* _E2nodeComponentConfigUpdateENgNB_H_ */
-#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigUpdateGNB.c b/e2sim/src/ASN1c/E2nodeComponentConfigUpdateGNB.c
deleted file mode 100644
index 814e676..0000000
--- a/e2sim/src/ASN1c/E2nodeComponentConfigUpdateGNB.c
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
- * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
- * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
- */
-
-#include "E2nodeComponentConfigUpdateGNB.h"
-
-asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdateGNB_1[] = {
-	{ ATF_POINTER, 4, offsetof(struct E2nodeComponentConfigUpdateGNB, ngAPconfigUpdate),
-		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_OCTET_STRING,
-		0,
-		{ 0, 0, 0 },
-		0, 0, /* No default value */
-		"ngAPconfigUpdate"
-		},
-	{ ATF_POINTER, 3, offsetof(struct E2nodeComponentConfigUpdateGNB, xnAPconfigUpdate),
-		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
-		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_OCTET_STRING,
-		0,
-		{ 0, 0, 0 },
-		0, 0, /* No default value */
-		"xnAPconfigUpdate"
-		},
-	{ ATF_POINTER, 2, offsetof(struct E2nodeComponentConfigUpdateGNB, e1APconfigUpdate),
-		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
-		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_OCTET_STRING,
-		0,
-		{ 0, 0, 0 },
-		0, 0, /* No default value */
-		"e1APconfigUpdate"
-		},
-	{ ATF_POINTER, 1, offsetof(struct E2nodeComponentConfigUpdateGNB, f1APconfigUpdate),
-		(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
-		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_OCTET_STRING,
-		0,
-		{ 0, 0, 0 },
-		0, 0, /* No default value */
-		"f1APconfigUpdate"
-		},
-};
-static const int asn_MAP_E2nodeComponentConfigUpdateGNB_oms_1[] = { 0, 1, 2, 3 };
-static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigUpdateGNB_tags_1[] = {
-	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
-};
-static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigUpdateGNB_tag2el_1[] = {
-    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ngAPconfigUpdate */
-    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* xnAPconfigUpdate */
-    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* e1APconfigUpdate */
-    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* f1APconfigUpdate */
-};
-asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdateGNB_specs_1 = {
-	sizeof(struct E2nodeComponentConfigUpdateGNB),
-	offsetof(struct E2nodeComponentConfigUpdateGNB, _asn_ctx),
-	asn_MAP_E2nodeComponentConfigUpdateGNB_tag2el_1,
-	4,	/* Count of tags in the map */
-	asn_MAP_E2nodeComponentConfigUpdateGNB_oms_1,	/* Optional members */
-	4, 0,	/* Root/Additions */
-	4,	/* First extension addition */
-};
-asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdateGNB = {
-	"E2nodeComponentConfigUpdateGNB",
-	"E2nodeComponentConfigUpdateGNB",
-	&asn_OP_SEQUENCE,
-	asn_DEF_E2nodeComponentConfigUpdateGNB_tags_1,
-	sizeof(asn_DEF_E2nodeComponentConfigUpdateGNB_tags_1)
-		/sizeof(asn_DEF_E2nodeComponentConfigUpdateGNB_tags_1[0]), /* 1 */
-	asn_DEF_E2nodeComponentConfigUpdateGNB_tags_1,	/* Same as above */
-	sizeof(asn_DEF_E2nodeComponentConfigUpdateGNB_tags_1)
-		/sizeof(asn_DEF_E2nodeComponentConfigUpdateGNB_tags_1[0]), /* 1 */
-	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_E2nodeComponentConfigUpdateGNB_1,
-	4,	/* Elements count */
-	&asn_SPC_E2nodeComponentConfigUpdateGNB_specs_1	/* Additional specs */
-};
-
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigUpdateGNB.h b/e2sim/src/ASN1c/E2nodeComponentConfigUpdateGNB.h
deleted file mode 100644
index ebdeae3..0000000
--- a/e2sim/src/ASN1c/E2nodeComponentConfigUpdateGNB.h
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
- * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
- */
-
-#ifndef	_E2nodeComponentConfigUpdateGNB_H_
-#define	_E2nodeComponentConfigUpdateGNB_H_
-
-
-#include "asn_application.h"
-
-/* Including external dependencies */
-#include "OCTET_STRING.h"
-#include "constr_SEQUENCE.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* E2nodeComponentConfigUpdateGNB */
-typedef struct E2nodeComponentConfigUpdateGNB {
-	OCTET_STRING_t	*ngAPconfigUpdate;	/* OPTIONAL */
-	OCTET_STRING_t	*xnAPconfigUpdate;	/* OPTIONAL */
-	OCTET_STRING_t	*e1APconfigUpdate;	/* OPTIONAL */
-	OCTET_STRING_t	*f1APconfigUpdate;	/* OPTIONAL */
-	/*
-	 * This type is extensible,
-	 * possible extensions are below.
-	 */
-	
-	/* Context for parsing across buffer boundaries */
-	asn_struct_ctx_t _asn_ctx;
-} E2nodeComponentConfigUpdateGNB_t;
-
-/* Implementation */
-extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdateGNB;
-extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdateGNB_specs_1;
-extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdateGNB_1[4];
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif	/* _E2nodeComponentConfigUpdateGNB_H_ */
-#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigUpdateNGeNB.c b/e2sim/src/ASN1c/E2nodeComponentConfigUpdateNGeNB.c
deleted file mode 100644
index 3c726e9..0000000
--- a/e2sim/src/ASN1c/E2nodeComponentConfigUpdateNGeNB.c
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
- * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
- */
-
-#include "E2nodeComponentConfigUpdateNGeNB.h"
-
-asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdateNGeNB_1[] = {
-	{ ATF_POINTER, 2, offsetof(struct E2nodeComponentConfigUpdateNGeNB, ngAPconfigUpdate),
-		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_OCTET_STRING,
-		0,
-		{ 0, 0, 0 },
-		0, 0, /* No default value */
-		"ngAPconfigUpdate"
-		},
-	{ ATF_POINTER, 1, offsetof(struct E2nodeComponentConfigUpdateNGeNB, xnAPconfigUpdate),
-		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
-		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_OCTET_STRING,
-		0,
-		{ 0, 0, 0 },
-		0, 0, /* No default value */
-		"xnAPconfigUpdate"
-		},
-};
-static const int asn_MAP_E2nodeComponentConfigUpdateNGeNB_oms_1[] = { 0, 1 };
-static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigUpdateNGeNB_tags_1[] = {
-	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
-};
-static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigUpdateNGeNB_tag2el_1[] = {
-    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ngAPconfigUpdate */
-    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* xnAPconfigUpdate */
-};
-asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdateNGeNB_specs_1 = {
-	sizeof(struct E2nodeComponentConfigUpdateNGeNB),
-	offsetof(struct E2nodeComponentConfigUpdateNGeNB, _asn_ctx),
-	asn_MAP_E2nodeComponentConfigUpdateNGeNB_tag2el_1,
-	2,	/* Count of tags in the map */
-	asn_MAP_E2nodeComponentConfigUpdateNGeNB_oms_1,	/* Optional members */
-	2, 0,	/* Root/Additions */
-	2,	/* First extension addition */
-};
-asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdateNGeNB = {
-	"E2nodeComponentConfigUpdateNGeNB",
-	"E2nodeComponentConfigUpdateNGeNB",
-	&asn_OP_SEQUENCE,
-	asn_DEF_E2nodeComponentConfigUpdateNGeNB_tags_1,
-	sizeof(asn_DEF_E2nodeComponentConfigUpdateNGeNB_tags_1)
-		/sizeof(asn_DEF_E2nodeComponentConfigUpdateNGeNB_tags_1[0]), /* 1 */
-	asn_DEF_E2nodeComponentConfigUpdateNGeNB_tags_1,	/* Same as above */
-	sizeof(asn_DEF_E2nodeComponentConfigUpdateNGeNB_tags_1)
-		/sizeof(asn_DEF_E2nodeComponentConfigUpdateNGeNB_tags_1[0]), /* 1 */
-	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_E2nodeComponentConfigUpdateNGeNB_1,
-	2,	/* Elements count */
-	&asn_SPC_E2nodeComponentConfigUpdateNGeNB_specs_1	/* Additional specs */
-};
-
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigUpdateNGeNB.h b/e2sim/src/ASN1c/E2nodeComponentConfigUpdateNGeNB.h
deleted file mode 100644
index 116e211..0000000
--- a/e2sim/src/ASN1c/E2nodeComponentConfigUpdateNGeNB.h
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
- * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
- */
-
-#ifndef	_E2nodeComponentConfigUpdateNGeNB_H_
-#define	_E2nodeComponentConfigUpdateNGeNB_H_
-
-
-#include "asn_application.h"
-
-/* Including external dependencies */
-#include "OCTET_STRING.h"
-#include "constr_SEQUENCE.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* E2nodeComponentConfigUpdateNGeNB */
-typedef struct E2nodeComponentConfigUpdateNGeNB {
-	OCTET_STRING_t	*ngAPconfigUpdate;	/* OPTIONAL */
-	OCTET_STRING_t	*xnAPconfigUpdate;	/* OPTIONAL */
-	/*
-	 * This type is extensible,
-	 * possible extensions are below.
-	 */
-	
-	/* Context for parsing across buffer boundaries */
-	asn_struct_ctx_t _asn_ctx;
-} E2nodeComponentConfigUpdateNGeNB_t;
-
-/* Implementation */
-extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdateNGeNB;
-extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdateNGeNB_specs_1;
-extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdateNGeNB_1[2];
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif	/* _E2nodeComponentConfigUpdateNGeNB_H_ */
-#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfiguration.c b/e2sim/src/ASN1c/E2nodeComponentConfiguration.c
new file mode 100644
index 0000000..375f39b
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentConfiguration.c
@@ -0,0 +1,60 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#include "E2nodeComponentConfiguration.h"
+
+asn_TYPE_member_t asn_MBR_E2nodeComponentConfiguration_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfiguration, e2nodeComponentRequestPart),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_OCTET_STRING,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"e2nodeComponentRequestPart"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfiguration, e2nodeComponentResponsePart),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_OCTET_STRING,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"e2nodeComponentResponsePart"
+		},
+};
+static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfiguration_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfiguration_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* e2nodeComponentRequestPart */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* e2nodeComponentResponsePart */
+};
+asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfiguration_specs_1 = {
+	sizeof(struct E2nodeComponentConfiguration),
+	offsetof(struct E2nodeComponentConfiguration, _asn_ctx),
+	asn_MAP_E2nodeComponentConfiguration_tag2el_1,
+	2,	/* Count of tags in the map */
+	0, 0, 0,	/* Optional elements (not needed) */
+	2,	/* First extension addition */
+};
+asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfiguration = {
+	"E2nodeComponentConfiguration",
+	"E2nodeComponentConfiguration",
+	&asn_OP_SEQUENCE,
+	asn_DEF_E2nodeComponentConfiguration_tags_1,
+	sizeof(asn_DEF_E2nodeComponentConfiguration_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentConfiguration_tags_1[0]), /* 1 */
+	asn_DEF_E2nodeComponentConfiguration_tags_1,	/* Same as above */
+	sizeof(asn_DEF_E2nodeComponentConfiguration_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentConfiguration_tags_1[0]), /* 1 */
+	{ 0, 0, SEQUENCE_constraint },
+	asn_MBR_E2nodeComponentConfiguration_1,
+	2,	/* Elements count */
+	&asn_SPC_E2nodeComponentConfiguration_specs_1	/* Additional specs */
+};
+
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfiguration.h b/e2sim/src/ASN1c/E2nodeComponentConfiguration.h
new file mode 100644
index 0000000..b9c9277
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentConfiguration.h
@@ -0,0 +1,45 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#ifndef	_E2nodeComponentConfiguration_H_
+#define	_E2nodeComponentConfiguration_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "OCTET_STRING.h"
+#include "constr_SEQUENCE.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* E2nodeComponentConfiguration */
+typedef struct E2nodeComponentConfiguration {
+	OCTET_STRING_t	 e2nodeComponentRequestPart;
+	OCTET_STRING_t	 e2nodeComponentResponsePart;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} E2nodeComponentConfiguration_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfiguration;
+extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfiguration_specs_1;
+extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfiguration_1[2];
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _E2nodeComponentConfiguration_H_ */
+#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigUpdateAck.c b/e2sim/src/ASN1c/E2nodeComponentConfigurationAck.c
similarity index 64%
rename from e2sim/src/ASN1c/E2nodeComponentConfigUpdateAck.c
rename to e2sim/src/ASN1c/E2nodeComponentConfigurationAck.c
index ac7c6a0..c17ceb2 100644
--- a/e2sim/src/ASN1c/E2nodeComponentConfigUpdateAck.c
+++ b/e2sim/src/ASN1c/E2nodeComponentConfigurationAck.c
@@ -1,11 +1,11 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
-#include "E2nodeComponentConfigUpdateAck.h"
+#include "E2nodeComponentConfigurationAck.h"
 
 #include "Cause.h"
 /*
@@ -56,8 +56,8 @@
 	&asn_SPC_updateOutcome_specs_2	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdateAck_1[] = {
-	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdateAck, updateOutcome),
+asn_TYPE_member_t asn_MBR_E2nodeComponentConfigurationAck_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigurationAck, updateOutcome),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_updateOutcome_2,
@@ -66,7 +66,7 @@
 		0, 0, /* No default value */
 		"updateOutcome"
 		},
-	{ ATF_POINTER, 1, offsetof(struct E2nodeComponentConfigUpdateAck, failureCause),
+	{ ATF_POINTER, 1, offsetof(struct E2nodeComponentConfigurationAck, failureCause),
 		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
 		+1,	/* EXPLICIT tag at current level */
 		&asn_DEF_Cause,
@@ -76,36 +76,36 @@
 		"failureCause"
 		},
 };
-static const int asn_MAP_E2nodeComponentConfigUpdateAck_oms_1[] = { 1 };
-static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigUpdateAck_tags_1[] = {
+static const int asn_MAP_E2nodeComponentConfigurationAck_oms_1[] = { 1 };
+static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigurationAck_tags_1[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigUpdateAck_tag2el_1[] = {
+static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigurationAck_tag2el_1[] = {
     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* updateOutcome */
     { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* failureCause */
 };
-asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdateAck_specs_1 = {
-	sizeof(struct E2nodeComponentConfigUpdateAck),
-	offsetof(struct E2nodeComponentConfigUpdateAck, _asn_ctx),
-	asn_MAP_E2nodeComponentConfigUpdateAck_tag2el_1,
+asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigurationAck_specs_1 = {
+	sizeof(struct E2nodeComponentConfigurationAck),
+	offsetof(struct E2nodeComponentConfigurationAck, _asn_ctx),
+	asn_MAP_E2nodeComponentConfigurationAck_tag2el_1,
 	2,	/* Count of tags in the map */
-	asn_MAP_E2nodeComponentConfigUpdateAck_oms_1,	/* Optional members */
+	asn_MAP_E2nodeComponentConfigurationAck_oms_1,	/* Optional members */
 	1, 0,	/* Root/Additions */
 	2,	/* First extension addition */
 };
-asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdateAck = {
-	"E2nodeComponentConfigUpdateAck",
-	"E2nodeComponentConfigUpdateAck",
+asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigurationAck = {
+	"E2nodeComponentConfigurationAck",
+	"E2nodeComponentConfigurationAck",
 	&asn_OP_SEQUENCE,
-	asn_DEF_E2nodeComponentConfigUpdateAck_tags_1,
-	sizeof(asn_DEF_E2nodeComponentConfigUpdateAck_tags_1)
-		/sizeof(asn_DEF_E2nodeComponentConfigUpdateAck_tags_1[0]), /* 1 */
-	asn_DEF_E2nodeComponentConfigUpdateAck_tags_1,	/* Same as above */
-	sizeof(asn_DEF_E2nodeComponentConfigUpdateAck_tags_1)
-		/sizeof(asn_DEF_E2nodeComponentConfigUpdateAck_tags_1[0]), /* 1 */
+	asn_DEF_E2nodeComponentConfigurationAck_tags_1,
+	sizeof(asn_DEF_E2nodeComponentConfigurationAck_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentConfigurationAck_tags_1[0]), /* 1 */
+	asn_DEF_E2nodeComponentConfigurationAck_tags_1,	/* Same as above */
+	sizeof(asn_DEF_E2nodeComponentConfigurationAck_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentConfigurationAck_tags_1[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_E2nodeComponentConfigUpdateAck_1,
+	asn_MBR_E2nodeComponentConfigurationAck_1,
 	2,	/* Elements count */
-	&asn_SPC_E2nodeComponentConfigUpdateAck_specs_1	/* Additional specs */
+	&asn_SPC_E2nodeComponentConfigurationAck_specs_1	/* Additional specs */
 };
 
diff --git a/e2sim/src/ASN1c/E2nodeComponentConfigurationAck.h b/e2sim/src/ASN1c/E2nodeComponentConfigurationAck.h
new file mode 100644
index 0000000..b29691d
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentConfigurationAck.h
@@ -0,0 +1,58 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#ifndef	_E2nodeComponentConfigurationAck_H_
+#define	_E2nodeComponentConfigurationAck_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "NativeEnumerated.h"
+#include "constr_SEQUENCE.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* Dependencies */
+typedef enum E2nodeComponentConfigurationAck__updateOutcome {
+	E2nodeComponentConfigurationAck__updateOutcome_success	= 0,
+	E2nodeComponentConfigurationAck__updateOutcome_failure	= 1
+	/*
+	 * Enumeration is extensible
+	 */
+} e_E2nodeComponentConfigurationAck__updateOutcome;
+
+/* Forward declarations */
+struct Cause;
+
+/* E2nodeComponentConfigurationAck */
+typedef struct E2nodeComponentConfigurationAck {
+	long	 updateOutcome;
+	struct Cause	*failureCause;	/* OPTIONAL */
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} E2nodeComponentConfigurationAck_t;
+
+/* Implementation */
+/* extern asn_TYPE_descriptor_t asn_DEF_updateOutcome_2;	// (Use -fall-defs-global to expose) */
+extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigurationAck;
+extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigurationAck_specs_1;
+extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigurationAck_1[2];
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _E2nodeComponentConfigurationAck_H_ */
+#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/E2nodeComponentGNB-CU-UP-ID.c b/e2sim/src/ASN1c/E2nodeComponentGNB-CU-UP-ID.c
deleted file mode 100644
index 9d6da08..0000000
--- a/e2sim/src/ASN1c/E2nodeComponentGNB-CU-UP-ID.c
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
- * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
- */
-
-#include "E2nodeComponentGNB-CU-UP-ID.h"
-
-asn_TYPE_member_t asn_MBR_E2nodeComponentGNB_CU_UP_ID_1[] = {
-	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentGNB_CU_UP_ID, gNB_CU_UP_ID),
-		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_GNB_CU_UP_ID,
-		0,
-		{ 0, 0, 0 },
-		0, 0, /* No default value */
-		"gNB-CU-UP-ID"
-		},
-};
-static const ber_tlv_tag_t asn_DEF_E2nodeComponentGNB_CU_UP_ID_tags_1[] = {
-	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
-};
-static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentGNB_CU_UP_ID_tag2el_1[] = {
-    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* gNB-CU-UP-ID */
-};
-asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentGNB_CU_UP_ID_specs_1 = {
-	sizeof(struct E2nodeComponentGNB_CU_UP_ID),
-	offsetof(struct E2nodeComponentGNB_CU_UP_ID, _asn_ctx),
-	asn_MAP_E2nodeComponentGNB_CU_UP_ID_tag2el_1,
-	1,	/* Count of tags in the map */
-	0, 0, 0,	/* Optional elements (not needed) */
-	1,	/* First extension addition */
-};
-asn_TYPE_descriptor_t asn_DEF_E2nodeComponentGNB_CU_UP_ID = {
-	"E2nodeComponentGNB-CU-UP-ID",
-	"E2nodeComponentGNB-CU-UP-ID",
-	&asn_OP_SEQUENCE,
-	asn_DEF_E2nodeComponentGNB_CU_UP_ID_tags_1,
-	sizeof(asn_DEF_E2nodeComponentGNB_CU_UP_ID_tags_1)
-		/sizeof(asn_DEF_E2nodeComponentGNB_CU_UP_ID_tags_1[0]), /* 1 */
-	asn_DEF_E2nodeComponentGNB_CU_UP_ID_tags_1,	/* Same as above */
-	sizeof(asn_DEF_E2nodeComponentGNB_CU_UP_ID_tags_1)
-		/sizeof(asn_DEF_E2nodeComponentGNB_CU_UP_ID_tags_1[0]), /* 1 */
-	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_E2nodeComponentGNB_CU_UP_ID_1,
-	1,	/* Elements count */
-	&asn_SPC_E2nodeComponentGNB_CU_UP_ID_specs_1	/* Additional specs */
-};
-
diff --git a/e2sim/src/ASN1c/E2nodeComponentGNB-CU-UP-ID.h b/e2sim/src/ASN1c/E2nodeComponentGNB-CU-UP-ID.h
deleted file mode 100644
index 314e9d4..0000000
--- a/e2sim/src/ASN1c/E2nodeComponentGNB-CU-UP-ID.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
- * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
- */
-
-#ifndef	_E2nodeComponentGNB_CU_UP_ID_H_
-#define	_E2nodeComponentGNB_CU_UP_ID_H_
-
-
-#include "asn_application.h"
-
-/* Including external dependencies */
-#include "GNB-CU-UP-ID.h"
-#include "constr_SEQUENCE.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* E2nodeComponentGNB-CU-UP-ID */
-typedef struct E2nodeComponentGNB_CU_UP_ID {
-	GNB_CU_UP_ID_t	 gNB_CU_UP_ID;
-	/*
-	 * This type is extensible,
-	 * possible extensions are below.
-	 */
-	
-	/* Context for parsing across buffer boundaries */
-	asn_struct_ctx_t _asn_ctx;
-} E2nodeComponentGNB_CU_UP_ID_t;
-
-/* Implementation */
-extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentGNB_CU_UP_ID;
-extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentGNB_CU_UP_ID_specs_1;
-extern asn_TYPE_member_t asn_MBR_E2nodeComponentGNB_CU_UP_ID_1[1];
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif	/* _E2nodeComponentGNB_CU_UP_ID_H_ */
-#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/E2nodeComponentGNB-DU-ID.c b/e2sim/src/ASN1c/E2nodeComponentGNB-DU-ID.c
deleted file mode 100644
index f2ed742..0000000
--- a/e2sim/src/ASN1c/E2nodeComponentGNB-DU-ID.c
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
- * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
- */
-
-#include "E2nodeComponentGNB-DU-ID.h"
-
-asn_TYPE_member_t asn_MBR_E2nodeComponentGNB_DU_ID_1[] = {
-	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentGNB_DU_ID, gNB_DU_ID),
-		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
-		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_GNB_DU_ID,
-		0,
-		{ 0, 0, 0 },
-		0, 0, /* No default value */
-		"gNB-DU-ID"
-		},
-};
-static const ber_tlv_tag_t asn_DEF_E2nodeComponentGNB_DU_ID_tags_1[] = {
-	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
-};
-static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentGNB_DU_ID_tag2el_1[] = {
-    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* gNB-DU-ID */
-};
-asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentGNB_DU_ID_specs_1 = {
-	sizeof(struct E2nodeComponentGNB_DU_ID),
-	offsetof(struct E2nodeComponentGNB_DU_ID, _asn_ctx),
-	asn_MAP_E2nodeComponentGNB_DU_ID_tag2el_1,
-	1,	/* Count of tags in the map */
-	0, 0, 0,	/* Optional elements (not needed) */
-	1,	/* First extension addition */
-};
-asn_TYPE_descriptor_t asn_DEF_E2nodeComponentGNB_DU_ID = {
-	"E2nodeComponentGNB-DU-ID",
-	"E2nodeComponentGNB-DU-ID",
-	&asn_OP_SEQUENCE,
-	asn_DEF_E2nodeComponentGNB_DU_ID_tags_1,
-	sizeof(asn_DEF_E2nodeComponentGNB_DU_ID_tags_1)
-		/sizeof(asn_DEF_E2nodeComponentGNB_DU_ID_tags_1[0]), /* 1 */
-	asn_DEF_E2nodeComponentGNB_DU_ID_tags_1,	/* Same as above */
-	sizeof(asn_DEF_E2nodeComponentGNB_DU_ID_tags_1)
-		/sizeof(asn_DEF_E2nodeComponentGNB_DU_ID_tags_1[0]), /* 1 */
-	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_E2nodeComponentGNB_DU_ID_1,
-	1,	/* Elements count */
-	&asn_SPC_E2nodeComponentGNB_DU_ID_specs_1	/* Additional specs */
-};
-
diff --git a/e2sim/src/ASN1c/E2nodeComponentGNB-DU-ID.h b/e2sim/src/ASN1c/E2nodeComponentGNB-DU-ID.h
deleted file mode 100644
index 86ed36a..0000000
--- a/e2sim/src/ASN1c/E2nodeComponentGNB-DU-ID.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
- * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
- */
-
-#ifndef	_E2nodeComponentGNB_DU_ID_H_
-#define	_E2nodeComponentGNB_DU_ID_H_
-
-
-#include "asn_application.h"
-
-/* Including external dependencies */
-#include "GNB-DU-ID.h"
-#include "constr_SEQUENCE.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* E2nodeComponentGNB-DU-ID */
-typedef struct E2nodeComponentGNB_DU_ID {
-	GNB_DU_ID_t	 gNB_DU_ID;
-	/*
-	 * This type is extensible,
-	 * possible extensions are below.
-	 */
-	
-	/* Context for parsing across buffer boundaries */
-	asn_struct_ctx_t _asn_ctx;
-} E2nodeComponentGNB_DU_ID_t;
-
-/* Implementation */
-extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentGNB_DU_ID;
-extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentGNB_DU_ID_specs_1;
-extern asn_TYPE_member_t asn_MBR_E2nodeComponentGNB_DU_ID_1[1];
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif	/* _E2nodeComponentGNB_DU_ID_H_ */
-#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/E2nodeComponentID.c b/e2sim/src/ASN1c/E2nodeComponentID.c
index 3ce23a0..ce3697d 100644
--- a/e2sim/src/ASN1c/E2nodeComponentID.c
+++ b/e2sim/src/ASN1c/E2nodeComponentID.c
@@ -1,42 +1,97 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "E2nodeComponentID.h"
 
-#include "E2nodeComponentGNB-CU-UP-ID.h"
-#include "E2nodeComponentGNB-DU-ID.h"
+#include "E2nodeComponentInterfaceNG.h"
+#include "E2nodeComponentInterfaceXn.h"
+#include "E2nodeComponentInterfaceE1.h"
+#include "E2nodeComponentInterfaceF1.h"
+#include "E2nodeComponentInterfaceW1.h"
+#include "E2nodeComponentInterfaceS1.h"
+#include "E2nodeComponentInterfaceX2.h"
 asn_per_constraints_t asn_PER_type_E2nodeComponentID_constr_1 CC_NOTUSED = {
-	{ APC_CONSTRAINED | APC_EXTENSIBLE,  1,  1,  0,  1 }	/* (0..1,...) */,
+	{ APC_CONSTRAINED | APC_EXTENSIBLE,  3,  3,  0,  6 }	/* (0..6,...) */,
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	0, 0	/* No PER value map */
 };
 asn_TYPE_member_t asn_MBR_E2nodeComponentID_1[] = {
-	{ ATF_POINTER, 0, offsetof(struct E2nodeComponentID, choice.e2nodeComponentTypeGNB_CU_UP),
+	{ ATF_POINTER, 0, offsetof(struct E2nodeComponentID, choice.e2nodeComponentInterfaceTypeNG),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_E2nodeComponentGNB_CU_UP_ID,
+		&asn_DEF_E2nodeComponentInterfaceNG,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
-		"e2nodeComponentTypeGNB-CU-UP"
+		"e2nodeComponentInterfaceTypeNG"
 		},
-	{ ATF_POINTER, 0, offsetof(struct E2nodeComponentID, choice.e2nodeComponentTypeGNB_DU),
+	{ ATF_POINTER, 0, offsetof(struct E2nodeComponentID, choice.e2nodeComponentInterfaceTypeXn),
 		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_E2nodeComponentGNB_DU_ID,
+		&asn_DEF_E2nodeComponentInterfaceXn,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
-		"e2nodeComponentTypeGNB-DU"
+		"e2nodeComponentInterfaceTypeXn"
+		},
+	{ ATF_POINTER, 0, offsetof(struct E2nodeComponentID, choice.e2nodeComponentInterfaceTypeE1),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_E2nodeComponentInterfaceE1,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"e2nodeComponentInterfaceTypeE1"
+		},
+	{ ATF_POINTER, 0, offsetof(struct E2nodeComponentID, choice.e2nodeComponentInterfaceTypeF1),
+		(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_E2nodeComponentInterfaceF1,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"e2nodeComponentInterfaceTypeF1"
+		},
+	{ ATF_POINTER, 0, offsetof(struct E2nodeComponentID, choice.e2nodeComponentInterfaceTypeW1),
+		(ASN_TAG_CLASS_CONTEXT | (4 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_E2nodeComponentInterfaceW1,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"e2nodeComponentInterfaceTypeW1"
+		},
+	{ ATF_POINTER, 0, offsetof(struct E2nodeComponentID, choice.e2nodeComponentInterfaceTypeS1),
+		(ASN_TAG_CLASS_CONTEXT | (5 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_E2nodeComponentInterfaceS1,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"e2nodeComponentInterfaceTypeS1"
+		},
+	{ ATF_POINTER, 0, offsetof(struct E2nodeComponentID, choice.e2nodeComponentInterfaceTypeX2),
+		(ASN_TAG_CLASS_CONTEXT | (6 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_E2nodeComponentInterfaceX2,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"e2nodeComponentInterfaceTypeX2"
 		},
 };
 static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentID_tag2el_1[] = {
-    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* e2nodeComponentTypeGNB-CU-UP */
-    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* e2nodeComponentTypeGNB-DU */
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* e2nodeComponentInterfaceTypeNG */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* e2nodeComponentInterfaceTypeXn */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* e2nodeComponentInterfaceTypeE1 */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* e2nodeComponentInterfaceTypeF1 */
+    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* e2nodeComponentInterfaceTypeW1 */
+    { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* e2nodeComponentInterfaceTypeS1 */
+    { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* e2nodeComponentInterfaceTypeX2 */
 };
 asn_CHOICE_specifics_t asn_SPC_E2nodeComponentID_specs_1 = {
 	sizeof(struct E2nodeComponentID),
@@ -44,9 +99,9 @@
 	offsetof(struct E2nodeComponentID, present),
 	sizeof(((struct E2nodeComponentID *)0)->present),
 	asn_MAP_E2nodeComponentID_tag2el_1,
-	2,	/* Count of tags in the map */
+	7,	/* Count of tags in the map */
 	0, 0,
-	2	/* Extensions start */
+	7	/* Extensions start */
 };
 asn_TYPE_descriptor_t asn_DEF_E2nodeComponentID = {
 	"E2nodeComponentID",
@@ -58,7 +113,7 @@
 	0,	/* No tags (count) */
 	{ 0, &asn_PER_type_E2nodeComponentID_constr_1, CHOICE_constraint },
 	asn_MBR_E2nodeComponentID_1,
-	2,	/* Elements count */
+	7,	/* Elements count */
 	&asn_SPC_E2nodeComponentID_specs_1	/* Additional specs */
 };
 
diff --git a/e2sim/src/ASN1c/E2nodeComponentID.h b/e2sim/src/ASN1c/E2nodeComponentID.h
index 46b20c3..1e76e9f 100644
--- a/e2sim/src/ASN1c/E2nodeComponentID.h
+++ b/e2sim/src/ASN1c/E2nodeComponentID.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_E2nodeComponentID_H_
@@ -21,22 +21,37 @@
 /* Dependencies */
 typedef enum E2nodeComponentID_PR {
 	E2nodeComponentID_PR_NOTHING,	/* No components present */
-	E2nodeComponentID_PR_e2nodeComponentTypeGNB_CU_UP,
-	E2nodeComponentID_PR_e2nodeComponentTypeGNB_DU
+	E2nodeComponentID_PR_e2nodeComponentInterfaceTypeNG,
+	E2nodeComponentID_PR_e2nodeComponentInterfaceTypeXn,
+	E2nodeComponentID_PR_e2nodeComponentInterfaceTypeE1,
+	E2nodeComponentID_PR_e2nodeComponentInterfaceTypeF1,
+	E2nodeComponentID_PR_e2nodeComponentInterfaceTypeW1,
+	E2nodeComponentID_PR_e2nodeComponentInterfaceTypeS1,
+	E2nodeComponentID_PR_e2nodeComponentInterfaceTypeX2
 	/* Extensions may appear below */
 	
 } E2nodeComponentID_PR;
 
 /* Forward declarations */
-struct E2nodeComponentGNB_CU_UP_ID;
-struct E2nodeComponentGNB_DU_ID;
+struct E2nodeComponentInterfaceNG;
+struct E2nodeComponentInterfaceXn;
+struct E2nodeComponentInterfaceE1;
+struct E2nodeComponentInterfaceF1;
+struct E2nodeComponentInterfaceW1;
+struct E2nodeComponentInterfaceS1;
+struct E2nodeComponentInterfaceX2;
 
 /* E2nodeComponentID */
 typedef struct E2nodeComponentID {
 	E2nodeComponentID_PR present;
 	union E2nodeComponentID_u {
-		struct E2nodeComponentGNB_CU_UP_ID	*e2nodeComponentTypeGNB_CU_UP;
-		struct E2nodeComponentGNB_DU_ID	*e2nodeComponentTypeGNB_DU;
+		struct E2nodeComponentInterfaceNG	*e2nodeComponentInterfaceTypeNG;
+		struct E2nodeComponentInterfaceXn	*e2nodeComponentInterfaceTypeXn;
+		struct E2nodeComponentInterfaceE1	*e2nodeComponentInterfaceTypeE1;
+		struct E2nodeComponentInterfaceF1	*e2nodeComponentInterfaceTypeF1;
+		struct E2nodeComponentInterfaceW1	*e2nodeComponentInterfaceTypeW1;
+		struct E2nodeComponentInterfaceS1	*e2nodeComponentInterfaceTypeS1;
+		struct E2nodeComponentInterfaceX2	*e2nodeComponentInterfaceTypeX2;
 		/*
 		 * This type is extensible,
 		 * possible extensions are below.
@@ -50,7 +65,7 @@
 /* Implementation */
 extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentID;
 extern asn_CHOICE_specifics_t asn_SPC_E2nodeComponentID_specs_1;
-extern asn_TYPE_member_t asn_MBR_E2nodeComponentID_1[2];
+extern asn_TYPE_member_t asn_MBR_E2nodeComponentID_1[7];
 extern asn_per_constraints_t asn_PER_type_E2nodeComponentID_constr_1;
 
 #ifdef __cplusplus
diff --git a/e2sim/src/ASN1c/E2nodeComponentInterfaceE1.c b/e2sim/src/ASN1c/E2nodeComponentInterfaceE1.c
new file mode 100644
index 0000000..7183e8d
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentInterfaceE1.c
@@ -0,0 +1,50 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#include "E2nodeComponentInterfaceE1.h"
+
+asn_TYPE_member_t asn_MBR_E2nodeComponentInterfaceE1_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentInterfaceE1, gNB_CU_CP_ID),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_GNB_CU_UP_ID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"gNB-CU-CP-ID"
+		},
+};
+static const ber_tlv_tag_t asn_DEF_E2nodeComponentInterfaceE1_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentInterfaceE1_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* gNB-CU-CP-ID */
+};
+asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentInterfaceE1_specs_1 = {
+	sizeof(struct E2nodeComponentInterfaceE1),
+	offsetof(struct E2nodeComponentInterfaceE1, _asn_ctx),
+	asn_MAP_E2nodeComponentInterfaceE1_tag2el_1,
+	1,	/* Count of tags in the map */
+	0, 0, 0,	/* Optional elements (not needed) */
+	1,	/* First extension addition */
+};
+asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceE1 = {
+	"E2nodeComponentInterfaceE1",
+	"E2nodeComponentInterfaceE1",
+	&asn_OP_SEQUENCE,
+	asn_DEF_E2nodeComponentInterfaceE1_tags_1,
+	sizeof(asn_DEF_E2nodeComponentInterfaceE1_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentInterfaceE1_tags_1[0]), /* 1 */
+	asn_DEF_E2nodeComponentInterfaceE1_tags_1,	/* Same as above */
+	sizeof(asn_DEF_E2nodeComponentInterfaceE1_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentInterfaceE1_tags_1[0]), /* 1 */
+	{ 0, 0, SEQUENCE_constraint },
+	asn_MBR_E2nodeComponentInterfaceE1_1,
+	1,	/* Elements count */
+	&asn_SPC_E2nodeComponentInterfaceE1_specs_1	/* Additional specs */
+};
+
diff --git a/e2sim/src/ASN1c/E2nodeComponentInterfaceE1.h b/e2sim/src/ASN1c/E2nodeComponentInterfaceE1.h
new file mode 100644
index 0000000..813fe07
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentInterfaceE1.h
@@ -0,0 +1,44 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#ifndef	_E2nodeComponentInterfaceE1_H_
+#define	_E2nodeComponentInterfaceE1_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "GNB-CU-UP-ID.h"
+#include "constr_SEQUENCE.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* E2nodeComponentInterfaceE1 */
+typedef struct E2nodeComponentInterfaceE1 {
+	GNB_CU_UP_ID_t	 gNB_CU_CP_ID;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} E2nodeComponentInterfaceE1_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceE1;
+extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentInterfaceE1_specs_1;
+extern asn_TYPE_member_t asn_MBR_E2nodeComponentInterfaceE1_1[1];
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _E2nodeComponentInterfaceE1_H_ */
+#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/E2nodeComponentInterfaceF1.c b/e2sim/src/ASN1c/E2nodeComponentInterfaceF1.c
new file mode 100644
index 0000000..6ede91a
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentInterfaceF1.c
@@ -0,0 +1,50 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#include "E2nodeComponentInterfaceF1.h"
+
+asn_TYPE_member_t asn_MBR_E2nodeComponentInterfaceF1_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentInterfaceF1, gNB_DU_ID),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_GNB_DU_ID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"gNB-DU-ID"
+		},
+};
+static const ber_tlv_tag_t asn_DEF_E2nodeComponentInterfaceF1_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentInterfaceF1_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* gNB-DU-ID */
+};
+asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentInterfaceF1_specs_1 = {
+	sizeof(struct E2nodeComponentInterfaceF1),
+	offsetof(struct E2nodeComponentInterfaceF1, _asn_ctx),
+	asn_MAP_E2nodeComponentInterfaceF1_tag2el_1,
+	1,	/* Count of tags in the map */
+	0, 0, 0,	/* Optional elements (not needed) */
+	1,	/* First extension addition */
+};
+asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceF1 = {
+	"E2nodeComponentInterfaceF1",
+	"E2nodeComponentInterfaceF1",
+	&asn_OP_SEQUENCE,
+	asn_DEF_E2nodeComponentInterfaceF1_tags_1,
+	sizeof(asn_DEF_E2nodeComponentInterfaceF1_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentInterfaceF1_tags_1[0]), /* 1 */
+	asn_DEF_E2nodeComponentInterfaceF1_tags_1,	/* Same as above */
+	sizeof(asn_DEF_E2nodeComponentInterfaceF1_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentInterfaceF1_tags_1[0]), /* 1 */
+	{ 0, 0, SEQUENCE_constraint },
+	asn_MBR_E2nodeComponentInterfaceF1_1,
+	1,	/* Elements count */
+	&asn_SPC_E2nodeComponentInterfaceF1_specs_1	/* Additional specs */
+};
+
diff --git a/e2sim/src/ASN1c/E2nodeComponentInterfaceF1.h b/e2sim/src/ASN1c/E2nodeComponentInterfaceF1.h
new file mode 100644
index 0000000..b9867b9
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentInterfaceF1.h
@@ -0,0 +1,44 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#ifndef	_E2nodeComponentInterfaceF1_H_
+#define	_E2nodeComponentInterfaceF1_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "GNB-DU-ID.h"
+#include "constr_SEQUENCE.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* E2nodeComponentInterfaceF1 */
+typedef struct E2nodeComponentInterfaceF1 {
+	GNB_DU_ID_t	 gNB_DU_ID;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} E2nodeComponentInterfaceF1_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceF1;
+extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentInterfaceF1_specs_1;
+extern asn_TYPE_member_t asn_MBR_E2nodeComponentInterfaceF1_1[1];
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _E2nodeComponentInterfaceF1_H_ */
+#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/E2nodeComponentInterfaceNG.c b/e2sim/src/ASN1c/E2nodeComponentInterfaceNG.c
new file mode 100644
index 0000000..7d92f9f
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentInterfaceNG.c
@@ -0,0 +1,50 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#include "E2nodeComponentInterfaceNG.h"
+
+asn_TYPE_member_t asn_MBR_E2nodeComponentInterfaceNG_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentInterfaceNG, amf_name),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_AMFName,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"amf-name"
+		},
+};
+static const ber_tlv_tag_t asn_DEF_E2nodeComponentInterfaceNG_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentInterfaceNG_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* amf-name */
+};
+asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentInterfaceNG_specs_1 = {
+	sizeof(struct E2nodeComponentInterfaceNG),
+	offsetof(struct E2nodeComponentInterfaceNG, _asn_ctx),
+	asn_MAP_E2nodeComponentInterfaceNG_tag2el_1,
+	1,	/* Count of tags in the map */
+	0, 0, 0,	/* Optional elements (not needed) */
+	1,	/* First extension addition */
+};
+asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceNG = {
+	"E2nodeComponentInterfaceNG",
+	"E2nodeComponentInterfaceNG",
+	&asn_OP_SEQUENCE,
+	asn_DEF_E2nodeComponentInterfaceNG_tags_1,
+	sizeof(asn_DEF_E2nodeComponentInterfaceNG_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentInterfaceNG_tags_1[0]), /* 1 */
+	asn_DEF_E2nodeComponentInterfaceNG_tags_1,	/* Same as above */
+	sizeof(asn_DEF_E2nodeComponentInterfaceNG_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentInterfaceNG_tags_1[0]), /* 1 */
+	{ 0, 0, SEQUENCE_constraint },
+	asn_MBR_E2nodeComponentInterfaceNG_1,
+	1,	/* Elements count */
+	&asn_SPC_E2nodeComponentInterfaceNG_specs_1	/* Additional specs */
+};
+
diff --git a/e2sim/src/ASN1c/E2nodeComponentInterfaceNG.h b/e2sim/src/ASN1c/E2nodeComponentInterfaceNG.h
new file mode 100644
index 0000000..cc366c3
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentInterfaceNG.h
@@ -0,0 +1,44 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#ifndef	_E2nodeComponentInterfaceNG_H_
+#define	_E2nodeComponentInterfaceNG_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "AMFName.h"
+#include "constr_SEQUENCE.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* E2nodeComponentInterfaceNG */
+typedef struct E2nodeComponentInterfaceNG {
+	AMFName_t	 amf_name;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} E2nodeComponentInterfaceNG_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceNG;
+extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentInterfaceNG_specs_1;
+extern asn_TYPE_member_t asn_MBR_E2nodeComponentInterfaceNG_1[1];
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _E2nodeComponentInterfaceNG_H_ */
+#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/E2nodeComponentInterfaceS1.c b/e2sim/src/ASN1c/E2nodeComponentInterfaceS1.c
new file mode 100644
index 0000000..d85197a
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentInterfaceS1.c
@@ -0,0 +1,50 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#include "E2nodeComponentInterfaceS1.h"
+
+asn_TYPE_member_t asn_MBR_E2nodeComponentInterfaceS1_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentInterfaceS1, mme_name),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_MMEname,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"mme-name"
+		},
+};
+static const ber_tlv_tag_t asn_DEF_E2nodeComponentInterfaceS1_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentInterfaceS1_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* mme-name */
+};
+asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentInterfaceS1_specs_1 = {
+	sizeof(struct E2nodeComponentInterfaceS1),
+	offsetof(struct E2nodeComponentInterfaceS1, _asn_ctx),
+	asn_MAP_E2nodeComponentInterfaceS1_tag2el_1,
+	1,	/* Count of tags in the map */
+	0, 0, 0,	/* Optional elements (not needed) */
+	1,	/* First extension addition */
+};
+asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceS1 = {
+	"E2nodeComponentInterfaceS1",
+	"E2nodeComponentInterfaceS1",
+	&asn_OP_SEQUENCE,
+	asn_DEF_E2nodeComponentInterfaceS1_tags_1,
+	sizeof(asn_DEF_E2nodeComponentInterfaceS1_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentInterfaceS1_tags_1[0]), /* 1 */
+	asn_DEF_E2nodeComponentInterfaceS1_tags_1,	/* Same as above */
+	sizeof(asn_DEF_E2nodeComponentInterfaceS1_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentInterfaceS1_tags_1[0]), /* 1 */
+	{ 0, 0, SEQUENCE_constraint },
+	asn_MBR_E2nodeComponentInterfaceS1_1,
+	1,	/* Elements count */
+	&asn_SPC_E2nodeComponentInterfaceS1_specs_1	/* Additional specs */
+};
+
diff --git a/e2sim/src/ASN1c/E2nodeComponentInterfaceS1.h b/e2sim/src/ASN1c/E2nodeComponentInterfaceS1.h
new file mode 100644
index 0000000..56a4b2c
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentInterfaceS1.h
@@ -0,0 +1,44 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#ifndef	_E2nodeComponentInterfaceS1_H_
+#define	_E2nodeComponentInterfaceS1_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "MMEname.h"
+#include "constr_SEQUENCE.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* E2nodeComponentInterfaceS1 */
+typedef struct E2nodeComponentInterfaceS1 {
+	MMEname_t	 mme_name;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} E2nodeComponentInterfaceS1_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceS1;
+extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentInterfaceS1_specs_1;
+extern asn_TYPE_member_t asn_MBR_E2nodeComponentInterfaceS1_1[1];
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _E2nodeComponentInterfaceS1_H_ */
+#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/E2nodeComponentInterfaceType.c b/e2sim/src/ASN1c/E2nodeComponentInterfaceType.c
new file mode 100644
index 0000000..24794d4
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentInterfaceType.c
@@ -0,0 +1,65 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#include "E2nodeComponentInterfaceType.h"
+
+/*
+ * This type is implemented using NativeEnumerated,
+ * so here we adjust the DEF accordingly.
+ */
+asn_per_constraints_t asn_PER_type_E2nodeComponentInterfaceType_constr_1 CC_NOTUSED = {
+	{ APC_CONSTRAINED | APC_EXTENSIBLE,  3,  3,  0,  6 }	/* (0..6,...) */,
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	0, 0	/* No PER value map */
+};
+static const asn_INTEGER_enum_map_t asn_MAP_E2nodeComponentInterfaceType_value2enum_1[] = {
+	{ 0,	2,	"ng" },
+	{ 1,	2,	"xn" },
+	{ 2,	2,	"e1" },
+	{ 3,	2,	"f1" },
+	{ 4,	2,	"w1" },
+	{ 5,	2,	"s1" },
+	{ 6,	2,	"x2" }
+	/* This list is extensible */
+};
+static const unsigned int asn_MAP_E2nodeComponentInterfaceType_enum2value_1[] = {
+	2,	/* e1(2) */
+	3,	/* f1(3) */
+	0,	/* ng(0) */
+	5,	/* s1(5) */
+	4,	/* w1(4) */
+	6,	/* x2(6) */
+	1	/* xn(1) */
+	/* This list is extensible */
+};
+const asn_INTEGER_specifics_t asn_SPC_E2nodeComponentInterfaceType_specs_1 = {
+	asn_MAP_E2nodeComponentInterfaceType_value2enum_1,	/* "tag" => N; sorted by tag */
+	asn_MAP_E2nodeComponentInterfaceType_enum2value_1,	/* N => "tag"; sorted by N */
+	7,	/* Number of elements in the maps */
+	8,	/* Extensions before this member */
+	1,	/* Strict enumeration */
+	0,	/* Native long size */
+	0
+};
+static const ber_tlv_tag_t asn_DEF_E2nodeComponentInterfaceType_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
+};
+asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceType = {
+	"E2nodeComponentInterfaceType",
+	"E2nodeComponentInterfaceType",
+	&asn_OP_NativeEnumerated,
+	asn_DEF_E2nodeComponentInterfaceType_tags_1,
+	sizeof(asn_DEF_E2nodeComponentInterfaceType_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentInterfaceType_tags_1[0]), /* 1 */
+	asn_DEF_E2nodeComponentInterfaceType_tags_1,	/* Same as above */
+	sizeof(asn_DEF_E2nodeComponentInterfaceType_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentInterfaceType_tags_1[0]), /* 1 */
+	{ 0, &asn_PER_type_E2nodeComponentInterfaceType_constr_1, NativeEnumerated_constraint },
+	0, 0,	/* Defined elsewhere */
+	&asn_SPC_E2nodeComponentInterfaceType_specs_1	/* Additional specs */
+};
+
diff --git a/e2sim/src/ASN1c/E2nodeComponentInterfaceType.h b/e2sim/src/ASN1c/E2nodeComponentInterfaceType.h
new file mode 100644
index 0000000..d6f0bdc
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentInterfaceType.h
@@ -0,0 +1,59 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#ifndef	_E2nodeComponentInterfaceType_H_
+#define	_E2nodeComponentInterfaceType_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "NativeEnumerated.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* Dependencies */
+typedef enum E2nodeComponentInterfaceType {
+	E2nodeComponentInterfaceType_ng	= 0,
+	E2nodeComponentInterfaceType_xn	= 1,
+	E2nodeComponentInterfaceType_e1	= 2,
+	E2nodeComponentInterfaceType_f1	= 3,
+	E2nodeComponentInterfaceType_w1	= 4,
+	E2nodeComponentInterfaceType_s1	= 5,
+	E2nodeComponentInterfaceType_x2	= 6
+	/*
+	 * Enumeration is extensible
+	 */
+} e_E2nodeComponentInterfaceType;
+
+/* E2nodeComponentInterfaceType */
+typedef long	 E2nodeComponentInterfaceType_t;
+
+/* Implementation */
+extern asn_per_constraints_t asn_PER_type_E2nodeComponentInterfaceType_constr_1;
+extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceType;
+extern const asn_INTEGER_specifics_t asn_SPC_E2nodeComponentInterfaceType_specs_1;
+asn_struct_free_f E2nodeComponentInterfaceType_free;
+asn_struct_print_f E2nodeComponentInterfaceType_print;
+asn_constr_check_f E2nodeComponentInterfaceType_constraint;
+ber_type_decoder_f E2nodeComponentInterfaceType_decode_ber;
+der_type_encoder_f E2nodeComponentInterfaceType_encode_der;
+xer_type_decoder_f E2nodeComponentInterfaceType_decode_xer;
+xer_type_encoder_f E2nodeComponentInterfaceType_encode_xer;
+per_type_decoder_f E2nodeComponentInterfaceType_decode_uper;
+per_type_encoder_f E2nodeComponentInterfaceType_encode_uper;
+per_type_decoder_f E2nodeComponentInterfaceType_decode_aper;
+per_type_encoder_f E2nodeComponentInterfaceType_encode_aper;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _E2nodeComponentInterfaceType_H_ */
+#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/E2nodeComponentInterfaceW1.c b/e2sim/src/ASN1c/E2nodeComponentInterfaceW1.c
new file mode 100644
index 0000000..c3e2af1
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentInterfaceW1.c
@@ -0,0 +1,50 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#include "E2nodeComponentInterfaceW1.h"
+
+asn_TYPE_member_t asn_MBR_E2nodeComponentInterfaceW1_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentInterfaceW1, ng_eNB_DU_ID),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_NGENB_DU_ID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"ng-eNB-DU-ID"
+		},
+};
+static const ber_tlv_tag_t asn_DEF_E2nodeComponentInterfaceW1_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentInterfaceW1_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ng-eNB-DU-ID */
+};
+asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentInterfaceW1_specs_1 = {
+	sizeof(struct E2nodeComponentInterfaceW1),
+	offsetof(struct E2nodeComponentInterfaceW1, _asn_ctx),
+	asn_MAP_E2nodeComponentInterfaceW1_tag2el_1,
+	1,	/* Count of tags in the map */
+	0, 0, 0,	/* Optional elements (not needed) */
+	1,	/* First extension addition */
+};
+asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceW1 = {
+	"E2nodeComponentInterfaceW1",
+	"E2nodeComponentInterfaceW1",
+	&asn_OP_SEQUENCE,
+	asn_DEF_E2nodeComponentInterfaceW1_tags_1,
+	sizeof(asn_DEF_E2nodeComponentInterfaceW1_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentInterfaceW1_tags_1[0]), /* 1 */
+	asn_DEF_E2nodeComponentInterfaceW1_tags_1,	/* Same as above */
+	sizeof(asn_DEF_E2nodeComponentInterfaceW1_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentInterfaceW1_tags_1[0]), /* 1 */
+	{ 0, 0, SEQUENCE_constraint },
+	asn_MBR_E2nodeComponentInterfaceW1_1,
+	1,	/* Elements count */
+	&asn_SPC_E2nodeComponentInterfaceW1_specs_1	/* Additional specs */
+};
+
diff --git a/e2sim/src/ASN1c/E2nodeComponentInterfaceW1.h b/e2sim/src/ASN1c/E2nodeComponentInterfaceW1.h
new file mode 100644
index 0000000..84fc6ef
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentInterfaceW1.h
@@ -0,0 +1,44 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#ifndef	_E2nodeComponentInterfaceW1_H_
+#define	_E2nodeComponentInterfaceW1_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "NGENB-DU-ID.h"
+#include "constr_SEQUENCE.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* E2nodeComponentInterfaceW1 */
+typedef struct E2nodeComponentInterfaceW1 {
+	NGENB_DU_ID_t	 ng_eNB_DU_ID;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} E2nodeComponentInterfaceW1_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceW1;
+extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentInterfaceW1_specs_1;
+extern asn_TYPE_member_t asn_MBR_E2nodeComponentInterfaceW1_1[1];
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _E2nodeComponentInterfaceW1_H_ */
+#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/E2nodeComponentInterfaceX2.c b/e2sim/src/ASN1c/E2nodeComponentInterfaceX2.c
new file mode 100644
index 0000000..182ef1e
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentInterfaceX2.c
@@ -0,0 +1,64 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#include "E2nodeComponentInterfaceX2.h"
+
+#include "GlobalENB-ID.h"
+#include "GlobalenGNB-ID.h"
+asn_TYPE_member_t asn_MBR_E2nodeComponentInterfaceX2_1[] = {
+	{ ATF_POINTER, 2, offsetof(struct E2nodeComponentInterfaceX2, global_eNB_ID),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_GlobalENB_ID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"global-eNB-ID"
+		},
+	{ ATF_POINTER, 1, offsetof(struct E2nodeComponentInterfaceX2, global_en_gNB_ID),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_GlobalenGNB_ID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"global-en-gNB-ID"
+		},
+};
+static const int asn_MAP_E2nodeComponentInterfaceX2_oms_1[] = { 0, 1 };
+static const ber_tlv_tag_t asn_DEF_E2nodeComponentInterfaceX2_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentInterfaceX2_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* global-eNB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* global-en-gNB-ID */
+};
+asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentInterfaceX2_specs_1 = {
+	sizeof(struct E2nodeComponentInterfaceX2),
+	offsetof(struct E2nodeComponentInterfaceX2, _asn_ctx),
+	asn_MAP_E2nodeComponentInterfaceX2_tag2el_1,
+	2,	/* Count of tags in the map */
+	asn_MAP_E2nodeComponentInterfaceX2_oms_1,	/* Optional members */
+	2, 0,	/* Root/Additions */
+	2,	/* First extension addition */
+};
+asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceX2 = {
+	"E2nodeComponentInterfaceX2",
+	"E2nodeComponentInterfaceX2",
+	&asn_OP_SEQUENCE,
+	asn_DEF_E2nodeComponentInterfaceX2_tags_1,
+	sizeof(asn_DEF_E2nodeComponentInterfaceX2_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentInterfaceX2_tags_1[0]), /* 1 */
+	asn_DEF_E2nodeComponentInterfaceX2_tags_1,	/* Same as above */
+	sizeof(asn_DEF_E2nodeComponentInterfaceX2_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentInterfaceX2_tags_1[0]), /* 1 */
+	{ 0, 0, SEQUENCE_constraint },
+	asn_MBR_E2nodeComponentInterfaceX2_1,
+	2,	/* Elements count */
+	&asn_SPC_E2nodeComponentInterfaceX2_specs_1	/* Additional specs */
+};
+
diff --git a/e2sim/src/ASN1c/E2nodeComponentInterfaceX2.h b/e2sim/src/ASN1c/E2nodeComponentInterfaceX2.h
new file mode 100644
index 0000000..3182830
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentInterfaceX2.h
@@ -0,0 +1,48 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#ifndef	_E2nodeComponentInterfaceX2_H_
+#define	_E2nodeComponentInterfaceX2_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "constr_SEQUENCE.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* Forward declarations */
+struct GlobalENB_ID;
+struct GlobalenGNB_ID;
+
+/* E2nodeComponentInterfaceX2 */
+typedef struct E2nodeComponentInterfaceX2 {
+	struct GlobalENB_ID	*global_eNB_ID;	/* OPTIONAL */
+	struct GlobalenGNB_ID	*global_en_gNB_ID;	/* OPTIONAL */
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} E2nodeComponentInterfaceX2_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceX2;
+extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentInterfaceX2_specs_1;
+extern asn_TYPE_member_t asn_MBR_E2nodeComponentInterfaceX2_1[2];
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _E2nodeComponentInterfaceX2_H_ */
+#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/E2nodeComponentInterfaceXn.c b/e2sim/src/ASN1c/E2nodeComponentInterfaceXn.c
new file mode 100644
index 0000000..68f8846
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentInterfaceXn.c
@@ -0,0 +1,50 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#include "E2nodeComponentInterfaceXn.h"
+
+asn_TYPE_member_t asn_MBR_E2nodeComponentInterfaceXn_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentInterfaceXn, global_NG_RAN_Node_ID),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_GlobalNG_RANNode_ID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"global-NG-RAN-Node-ID"
+		},
+};
+static const ber_tlv_tag_t asn_DEF_E2nodeComponentInterfaceXn_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentInterfaceXn_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* global-NG-RAN-Node-ID */
+};
+asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentInterfaceXn_specs_1 = {
+	sizeof(struct E2nodeComponentInterfaceXn),
+	offsetof(struct E2nodeComponentInterfaceXn, _asn_ctx),
+	asn_MAP_E2nodeComponentInterfaceXn_tag2el_1,
+	1,	/* Count of tags in the map */
+	0, 0, 0,	/* Optional elements (not needed) */
+	1,	/* First extension addition */
+};
+asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceXn = {
+	"E2nodeComponentInterfaceXn",
+	"E2nodeComponentInterfaceXn",
+	&asn_OP_SEQUENCE,
+	asn_DEF_E2nodeComponentInterfaceXn_tags_1,
+	sizeof(asn_DEF_E2nodeComponentInterfaceXn_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentInterfaceXn_tags_1[0]), /* 1 */
+	asn_DEF_E2nodeComponentInterfaceXn_tags_1,	/* Same as above */
+	sizeof(asn_DEF_E2nodeComponentInterfaceXn_tags_1)
+		/sizeof(asn_DEF_E2nodeComponentInterfaceXn_tags_1[0]), /* 1 */
+	{ 0, 0, SEQUENCE_constraint },
+	asn_MBR_E2nodeComponentInterfaceXn_1,
+	1,	/* Elements count */
+	&asn_SPC_E2nodeComponentInterfaceXn_specs_1	/* Additional specs */
+};
+
diff --git a/e2sim/src/ASN1c/E2nodeComponentInterfaceXn.h b/e2sim/src/ASN1c/E2nodeComponentInterfaceXn.h
new file mode 100644
index 0000000..896eea2
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeComponentInterfaceXn.h
@@ -0,0 +1,44 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#ifndef	_E2nodeComponentInterfaceXn_H_
+#define	_E2nodeComponentInterfaceXn_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "GlobalNG-RANNode-ID.h"
+#include "constr_SEQUENCE.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* E2nodeComponentInterfaceXn */
+typedef struct E2nodeComponentInterfaceXn {
+	GlobalNG_RANNode_ID_t	 global_NG_RAN_Node_ID;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} E2nodeComponentInterfaceXn_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentInterfaceXn;
+extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentInterfaceXn_specs_1;
+extern asn_TYPE_member_t asn_MBR_E2nodeComponentInterfaceXn_1[1];
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _E2nodeComponentInterfaceXn_H_ */
+#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/E2nodeComponentType.c b/e2sim/src/ASN1c/E2nodeComponentType.c
deleted file mode 100644
index ecd690f..0000000
--- a/e2sim/src/ASN1c/E2nodeComponentType.c
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
- * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
- */
-
-#include "E2nodeComponentType.h"
-
-/*
- * This type is implemented using NativeEnumerated,
- * so here we adjust the DEF accordingly.
- */
-asn_per_constraints_t asn_PER_type_E2nodeComponentType_constr_1 CC_NOTUSED = {
-	{ APC_CONSTRAINED | APC_EXTENSIBLE,  3,  3,  0,  5 }	/* (0..5,...) */,
-	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
-	0, 0	/* No PER value map */
-};
-static const asn_INTEGER_enum_map_t asn_MAP_E2nodeComponentType_value2enum_1[] = {
-	{ 0,	3,	"gNB" },
-	{ 1,	9,	"gNB-CU-UP" },
-	{ 2,	6,	"gNB-DU" },
-	{ 3,	6,	"en-gNB" },
-	{ 4,	3,	"eNB" },
-	{ 5,	6,	"ng-eNB" }
-	/* This list is extensible */
-};
-static const unsigned int asn_MAP_E2nodeComponentType_enum2value_1[] = {
-	4,	/* eNB(4) */
-	3,	/* en-gNB(3) */
-	0,	/* gNB(0) */
-	1,	/* gNB-CU-UP(1) */
-	2,	/* gNB-DU(2) */
-	5	/* ng-eNB(5) */
-	/* This list is extensible */
-};
-const asn_INTEGER_specifics_t asn_SPC_E2nodeComponentType_specs_1 = {
-	asn_MAP_E2nodeComponentType_value2enum_1,	/* "tag" => N; sorted by tag */
-	asn_MAP_E2nodeComponentType_enum2value_1,	/* N => "tag"; sorted by N */
-	6,	/* Number of elements in the maps */
-	7,	/* Extensions before this member */
-	1,	/* Strict enumeration */
-	0,	/* Native long size */
-	0
-};
-static const ber_tlv_tag_t asn_DEF_E2nodeComponentType_tags_1[] = {
-	(ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
-};
-asn_TYPE_descriptor_t asn_DEF_E2nodeComponentType = {
-	"E2nodeComponentType",
-	"E2nodeComponentType",
-	&asn_OP_NativeEnumerated,
-	asn_DEF_E2nodeComponentType_tags_1,
-	sizeof(asn_DEF_E2nodeComponentType_tags_1)
-		/sizeof(asn_DEF_E2nodeComponentType_tags_1[0]), /* 1 */
-	asn_DEF_E2nodeComponentType_tags_1,	/* Same as above */
-	sizeof(asn_DEF_E2nodeComponentType_tags_1)
-		/sizeof(asn_DEF_E2nodeComponentType_tags_1[0]), /* 1 */
-	{ 0, &asn_PER_type_E2nodeComponentType_constr_1, NativeEnumerated_constraint },
-	0, 0,	/* Defined elsewhere */
-	&asn_SPC_E2nodeComponentType_specs_1	/* Additional specs */
-};
-
diff --git a/e2sim/src/ASN1c/E2nodeComponentType.h b/e2sim/src/ASN1c/E2nodeComponentType.h
deleted file mode 100644
index 7fa6e30..0000000
--- a/e2sim/src/ASN1c/E2nodeComponentType.h
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
- * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
- */
-
-#ifndef	_E2nodeComponentType_H_
-#define	_E2nodeComponentType_H_
-
-
-#include "asn_application.h"
-
-/* Including external dependencies */
-#include "NativeEnumerated.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* Dependencies */
-typedef enum E2nodeComponentType {
-	E2nodeComponentType_gNB	= 0,
-	E2nodeComponentType_gNB_CU_UP	= 1,
-	E2nodeComponentType_gNB_DU	= 2,
-	E2nodeComponentType_en_gNB	= 3,
-	E2nodeComponentType_eNB	= 4,
-	E2nodeComponentType_ng_eNB	= 5
-	/*
-	 * Enumeration is extensible
-	 */
-} e_E2nodeComponentType;
-
-/* E2nodeComponentType */
-typedef long	 E2nodeComponentType_t;
-
-/* Implementation */
-extern asn_per_constraints_t asn_PER_type_E2nodeComponentType_constr_1;
-extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentType;
-extern const asn_INTEGER_specifics_t asn_SPC_E2nodeComponentType_specs_1;
-asn_struct_free_f E2nodeComponentType_free;
-asn_struct_print_f E2nodeComponentType_print;
-asn_constr_check_f E2nodeComponentType_constraint;
-ber_type_decoder_f E2nodeComponentType_decode_ber;
-der_type_encoder_f E2nodeComponentType_encode_der;
-xer_type_decoder_f E2nodeComponentType_decode_xer;
-xer_type_encoder_f E2nodeComponentType_encode_xer;
-per_type_decoder_f E2nodeComponentType_decode_uper;
-per_type_encoder_f E2nodeComponentType_encode_uper;
-per_type_decoder_f E2nodeComponentType_decode_aper;
-per_type_encoder_f E2nodeComponentType_encode_aper;
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif	/* _E2nodeComponentType_H_ */
-#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/E2nodeConfigurationUpdate.c b/e2sim/src/ASN1c/E2nodeConfigurationUpdate.c
index 812fe76..f40909c 100644
--- a/e2sim/src/ASN1c/E2nodeConfigurationUpdate.c
+++ b/e2sim/src/ASN1c/E2nodeConfigurationUpdate.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "E2nodeConfigurationUpdate.h"
@@ -11,7 +11,7 @@
 	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdate, protocolIEs),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_ProtocolIE_Container_226P17,
+		&asn_DEF_ProtocolIE_Container_1917P18,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
diff --git a/e2sim/src/ASN1c/E2nodeConfigurationUpdate.h b/e2sim/src/ASN1c/E2nodeConfigurationUpdate.h
index 72da4aa..60e609d 100644
--- a/e2sim/src/ASN1c/E2nodeConfigurationUpdate.h
+++ b/e2sim/src/ASN1c/E2nodeConfigurationUpdate.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_E2nodeConfigurationUpdate_H_
@@ -21,7 +21,7 @@
 
 /* E2nodeConfigurationUpdate */
 typedef struct E2nodeConfigurationUpdate {
-	ProtocolIE_Container_226P17_t	 protocolIEs;
+	ProtocolIE_Container_1917P18_t	 protocolIEs;
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
diff --git a/e2sim/src/ASN1c/E2nodeConfigurationUpdateAcknowledge.c b/e2sim/src/ASN1c/E2nodeConfigurationUpdateAcknowledge.c
index ff1c818..4586653 100644
--- a/e2sim/src/ASN1c/E2nodeConfigurationUpdateAcknowledge.c
+++ b/e2sim/src/ASN1c/E2nodeConfigurationUpdateAcknowledge.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "E2nodeConfigurationUpdateAcknowledge.h"
@@ -11,7 +11,7 @@
 	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdateAcknowledge, protocolIEs),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_ProtocolIE_Container_226P18,
+		&asn_DEF_ProtocolIE_Container_1917P19,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
diff --git a/e2sim/src/ASN1c/E2nodeConfigurationUpdateAcknowledge.h b/e2sim/src/ASN1c/E2nodeConfigurationUpdateAcknowledge.h
index a9e1a10..dd820a8 100644
--- a/e2sim/src/ASN1c/E2nodeConfigurationUpdateAcknowledge.h
+++ b/e2sim/src/ASN1c/E2nodeConfigurationUpdateAcknowledge.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_E2nodeConfigurationUpdateAcknowledge_H_
@@ -21,7 +21,7 @@
 
 /* E2nodeConfigurationUpdateAcknowledge */
 typedef struct E2nodeConfigurationUpdateAcknowledge {
-	ProtocolIE_Container_226P18_t	 protocolIEs;
+	ProtocolIE_Container_1917P19_t	 protocolIEs;
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
diff --git a/e2sim/src/ASN1c/E2nodeConfigurationUpdateFailure.c b/e2sim/src/ASN1c/E2nodeConfigurationUpdateFailure.c
index c002b9b..7de3e76 100644
--- a/e2sim/src/ASN1c/E2nodeConfigurationUpdateFailure.c
+++ b/e2sim/src/ASN1c/E2nodeConfigurationUpdateFailure.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "E2nodeConfigurationUpdateFailure.h"
@@ -11,7 +11,7 @@
 	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdateFailure, protocolIEs),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_ProtocolIE_Container_226P19,
+		&asn_DEF_ProtocolIE_Container_1917P20,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
diff --git a/e2sim/src/ASN1c/E2nodeConfigurationUpdateFailure.h b/e2sim/src/ASN1c/E2nodeConfigurationUpdateFailure.h
index 89067d3..781aef4 100644
--- a/e2sim/src/ASN1c/E2nodeConfigurationUpdateFailure.h
+++ b/e2sim/src/ASN1c/E2nodeConfigurationUpdateFailure.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_E2nodeConfigurationUpdateFailure_H_
@@ -21,7 +21,7 @@
 
 /* E2nodeConfigurationUpdateFailure */
 typedef struct E2nodeConfigurationUpdateFailure {
-	ProtocolIE_Container_226P19_t	 protocolIEs;
+	ProtocolIE_Container_1917P20_t	 protocolIEs;
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
diff --git a/e2sim/src/ASN1c/E2nodeTNLassociationRemoval-Item.c b/e2sim/src/ASN1c/E2nodeTNLassociationRemoval-Item.c
new file mode 100644
index 0000000..d547e80
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeTNLassociationRemoval-Item.c
@@ -0,0 +1,60 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-PDU-Contents"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#include "E2nodeTNLassociationRemoval-Item.h"
+
+static asn_TYPE_member_t asn_MBR_E2nodeTNLassociationRemoval_Item_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeTNLassociationRemoval_Item, tnlInformation),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_TNLinformation,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"tnlInformation"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeTNLassociationRemoval_Item, tnlInformationRIC),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_TNLinformation,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"tnlInformationRIC"
+		},
+};
+static const ber_tlv_tag_t asn_DEF_E2nodeTNLassociationRemoval_Item_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_E2nodeTNLassociationRemoval_Item_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* tnlInformation */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* tnlInformationRIC */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_E2nodeTNLassociationRemoval_Item_specs_1 = {
+	sizeof(struct E2nodeTNLassociationRemoval_Item),
+	offsetof(struct E2nodeTNLassociationRemoval_Item, _asn_ctx),
+	asn_MAP_E2nodeTNLassociationRemoval_Item_tag2el_1,
+	2,	/* Count of tags in the map */
+	0, 0, 0,	/* Optional elements (not needed) */
+	2,	/* First extension addition */
+};
+asn_TYPE_descriptor_t asn_DEF_E2nodeTNLassociationRemoval_Item = {
+	"E2nodeTNLassociationRemoval-Item",
+	"E2nodeTNLassociationRemoval-Item",
+	&asn_OP_SEQUENCE,
+	asn_DEF_E2nodeTNLassociationRemoval_Item_tags_1,
+	sizeof(asn_DEF_E2nodeTNLassociationRemoval_Item_tags_1)
+		/sizeof(asn_DEF_E2nodeTNLassociationRemoval_Item_tags_1[0]), /* 1 */
+	asn_DEF_E2nodeTNLassociationRemoval_Item_tags_1,	/* Same as above */
+	sizeof(asn_DEF_E2nodeTNLassociationRemoval_Item_tags_1)
+		/sizeof(asn_DEF_E2nodeTNLassociationRemoval_Item_tags_1[0]), /* 1 */
+	{ 0, 0, SEQUENCE_constraint },
+	asn_MBR_E2nodeTNLassociationRemoval_Item_1,
+	2,	/* Elements count */
+	&asn_SPC_E2nodeTNLassociationRemoval_Item_specs_1	/* Additional specs */
+};
+
diff --git a/e2sim/src/ASN1c/E2nodeTNLassociationRemoval-Item.h b/e2sim/src/ASN1c/E2nodeTNLassociationRemoval-Item.h
new file mode 100644
index 0000000..e8763ee
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeTNLassociationRemoval-Item.h
@@ -0,0 +1,43 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-PDU-Contents"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#ifndef	_E2nodeTNLassociationRemoval_Item_H_
+#define	_E2nodeTNLassociationRemoval_Item_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "TNLinformation.h"
+#include "constr_SEQUENCE.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* E2nodeTNLassociationRemoval-Item */
+typedef struct E2nodeTNLassociationRemoval_Item {
+	TNLinformation_t	 tnlInformation;
+	TNLinformation_t	 tnlInformationRIC;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} E2nodeTNLassociationRemoval_Item_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_E2nodeTNLassociationRemoval_Item;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _E2nodeTNLassociationRemoval_Item_H_ */
+#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/E2nodeTNLassociationRemoval-List.c b/e2sim/src/ASN1c/E2nodeTNLassociationRemoval-List.c
new file mode 100644
index 0000000..e82f69c
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeTNLassociationRemoval-List.c
@@ -0,0 +1,50 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-PDU-Contents"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#include "E2nodeTNLassociationRemoval-List.h"
+
+#include "ProtocolIE-SingleContainer.h"
+static asn_per_constraints_t asn_PER_type_E2nodeTNLassociationRemoval_List_constr_1 CC_NOTUSED = {
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	{ APC_CONSTRAINED,	 5,  5,  1,  32 }	/* (SIZE(1..32)) */,
+	0, 0	/* No PER value map */
+};
+static asn_TYPE_member_t asn_MBR_E2nodeTNLassociationRemoval_List_1[] = {
+	{ ATF_POINTER, 0, 0,
+		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
+		0,
+		&asn_DEF_ProtocolIE_SingleContainer_1920P10,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		""
+		},
+};
+static const ber_tlv_tag_t asn_DEF_E2nodeTNLassociationRemoval_List_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static asn_SET_OF_specifics_t asn_SPC_E2nodeTNLassociationRemoval_List_specs_1 = {
+	sizeof(struct E2nodeTNLassociationRemoval_List),
+	offsetof(struct E2nodeTNLassociationRemoval_List, _asn_ctx),
+	0,	/* XER encoding is XMLDelimitedItemList */
+};
+asn_TYPE_descriptor_t asn_DEF_E2nodeTNLassociationRemoval_List = {
+	"E2nodeTNLassociationRemoval-List",
+	"E2nodeTNLassociationRemoval-List",
+	&asn_OP_SEQUENCE_OF,
+	asn_DEF_E2nodeTNLassociationRemoval_List_tags_1,
+	sizeof(asn_DEF_E2nodeTNLassociationRemoval_List_tags_1)
+		/sizeof(asn_DEF_E2nodeTNLassociationRemoval_List_tags_1[0]), /* 1 */
+	asn_DEF_E2nodeTNLassociationRemoval_List_tags_1,	/* Same as above */
+	sizeof(asn_DEF_E2nodeTNLassociationRemoval_List_tags_1)
+		/sizeof(asn_DEF_E2nodeTNLassociationRemoval_List_tags_1[0]), /* 1 */
+	{ 0, &asn_PER_type_E2nodeTNLassociationRemoval_List_constr_1, SEQUENCE_OF_constraint },
+	asn_MBR_E2nodeTNLassociationRemoval_List_1,
+	1,	/* Single element */
+	&asn_SPC_E2nodeTNLassociationRemoval_List_specs_1	/* Additional specs */
+};
+
diff --git a/e2sim/src/ASN1c/E2nodeTNLassociationRemoval-List.h b/e2sim/src/ASN1c/E2nodeTNLassociationRemoval-List.h
new file mode 100644
index 0000000..bba966b
--- /dev/null
+++ b/e2sim/src/ASN1c/E2nodeTNLassociationRemoval-List.h
@@ -0,0 +1,41 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-PDU-Contents"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#ifndef	_E2nodeTNLassociationRemoval_List_H_
+#define	_E2nodeTNLassociationRemoval_List_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "asn_SEQUENCE_OF.h"
+#include "constr_SEQUENCE_OF.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* Forward declarations */
+struct ProtocolIE_SingleContainer;
+
+/* E2nodeTNLassociationRemoval-List */
+typedef struct E2nodeTNLassociationRemoval_List {
+	A_SEQUENCE_OF(struct ProtocolIE_SingleContainer) list;
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} E2nodeTNLassociationRemoval_List_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_E2nodeTNLassociationRemoval_List;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _E2nodeTNLassociationRemoval_List_H_ */
+#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/E2setupFailure.c b/e2sim/src/ASN1c/E2setupFailure.c
index 3107c7a..e521bc4 100644
--- a/e2sim/src/ASN1c/E2setupFailure.c
+++ b/e2sim/src/ASN1c/E2setupFailure.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "E2setupFailure.h"
@@ -11,7 +11,7 @@
 	{ ATF_NOFLAGS, 0, offsetof(struct E2setupFailure, protocolIEs),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_ProtocolIE_Container_226P13,
+		&asn_DEF_ProtocolIE_Container_1917P14,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
diff --git a/e2sim/src/ASN1c/E2setupFailure.h b/e2sim/src/ASN1c/E2setupFailure.h
index c03a588..b92899c 100644
--- a/e2sim/src/ASN1c/E2setupFailure.h
+++ b/e2sim/src/ASN1c/E2setupFailure.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_E2setupFailure_H_
@@ -21,7 +21,7 @@
 
 /* E2setupFailure */
 typedef struct E2setupFailure {
-	ProtocolIE_Container_226P13_t	 protocolIEs;
+	ProtocolIE_Container_1917P14_t	 protocolIEs;
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
diff --git a/e2sim/src/ASN1c/E2setupRequest.c b/e2sim/src/ASN1c/E2setupRequest.c
index 6535e6c..c34efea 100644
--- a/e2sim/src/ASN1c/E2setupRequest.c
+++ b/e2sim/src/ASN1c/E2setupRequest.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "E2setupRequest.h"
@@ -11,7 +11,7 @@
 	{ ATF_NOFLAGS, 0, offsetof(struct E2setupRequest, protocolIEs),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_ProtocolIE_Container_226P11,
+		&asn_DEF_ProtocolIE_Container_1917P12,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
diff --git a/e2sim/src/ASN1c/E2setupRequest.h b/e2sim/src/ASN1c/E2setupRequest.h
index 4e58ba1..4f01328 100644
--- a/e2sim/src/ASN1c/E2setupRequest.h
+++ b/e2sim/src/ASN1c/E2setupRequest.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_E2setupRequest_H_
@@ -21,7 +21,7 @@
 
 /* E2setupRequest */
 typedef struct E2setupRequest {
-	ProtocolIE_Container_226P11_t	 protocolIEs;
+	ProtocolIE_Container_1917P12_t	 protocolIEs;
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
diff --git a/e2sim/src/ASN1c/E2setupResponse.c b/e2sim/src/ASN1c/E2setupResponse.c
index 0c94082..46d708b 100644
--- a/e2sim/src/ASN1c/E2setupResponse.c
+++ b/e2sim/src/ASN1c/E2setupResponse.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "E2setupResponse.h"
@@ -11,7 +11,7 @@
 	{ ATF_NOFLAGS, 0, offsetof(struct E2setupResponse, protocolIEs),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_ProtocolIE_Container_226P12,
+		&asn_DEF_ProtocolIE_Container_1917P13,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
diff --git a/e2sim/src/ASN1c/E2setupResponse.h b/e2sim/src/ASN1c/E2setupResponse.h
index 0d8ec2e..f380882 100644
--- a/e2sim/src/ASN1c/E2setupResponse.h
+++ b/e2sim/src/ASN1c/E2setupResponse.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_E2setupResponse_H_
@@ -21,7 +21,7 @@
 
 /* E2setupResponse */
 typedef struct E2setupResponse {
-	ProtocolIE_Container_226P12_t	 protocolIEs;
+	ProtocolIE_Container_1917P13_t	 protocolIEs;
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
diff --git a/e2sim/src/ASN1c/ENB-ID-Choice.c b/e2sim/src/ASN1c/ENB-ID-Choice.c
index 2892b2e..f6d14e2 100644
--- a/e2sim/src/ASN1c/ENB-ID-Choice.c
+++ b/e2sim/src/ASN1c/ENB-ID-Choice.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "ENB-ID-Choice.h"
diff --git a/e2sim/src/ASN1c/ENB-ID-Choice.h b/e2sim/src/ASN1c/ENB-ID-Choice.h
index 7606e10..3785315 100644
--- a/e2sim/src/ASN1c/ENB-ID-Choice.h
+++ b/e2sim/src/ASN1c/ENB-ID-Choice.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_ENB_ID_Choice_H_
diff --git a/e2sim/src/ASN1c/ENB-ID.c b/e2sim/src/ASN1c/ENB-ID.c
index 75089a2..e231b10 100644
--- a/e2sim/src/ASN1c/ENB-ID.c
+++ b/e2sim/src/ASN1c/ENB-ID.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "ENB-ID.h"
diff --git a/e2sim/src/ASN1c/ENB-ID.h b/e2sim/src/ASN1c/ENB-ID.h
index 89f3217..a53fd6c 100644
--- a/e2sim/src/ASN1c/ENB-ID.h
+++ b/e2sim/src/ASN1c/ENB-ID.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_ENB_ID_H_
diff --git a/e2sim/src/ASN1c/ENGNB-ID.c b/e2sim/src/ASN1c/ENGNB-ID.c
index 7f2346c..3eb4ac4 100644
--- a/e2sim/src/ASN1c/ENGNB-ID.c
+++ b/e2sim/src/ASN1c/ENGNB-ID.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "ENGNB-ID.h"
diff --git a/e2sim/src/ASN1c/ENGNB-ID.h b/e2sim/src/ASN1c/ENGNB-ID.h
index 738674a..8d180c5 100644
--- a/e2sim/src/ASN1c/ENGNB-ID.h
+++ b/e2sim/src/ASN1c/ENGNB-ID.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_ENGNB_ID_H_
diff --git a/e2sim/src/ASN1c/ErrorIndication.c b/e2sim/src/ASN1c/ErrorIndication.c
index a042ab0..1a1ca01 100644
--- a/e2sim/src/ASN1c/ErrorIndication.c
+++ b/e2sim/src/ASN1c/ErrorIndication.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "ErrorIndication.h"
@@ -11,7 +11,7 @@
 	{ ATF_NOFLAGS, 0, offsetof(struct ErrorIndication, protocolIEs),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_ProtocolIE_Container_226P10,
+		&asn_DEF_ProtocolIE_Container_1917P11,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
diff --git a/e2sim/src/ASN1c/ErrorIndication.h b/e2sim/src/ASN1c/ErrorIndication.h
index 42154e5..8af3f17 100644
--- a/e2sim/src/ASN1c/ErrorIndication.h
+++ b/e2sim/src/ASN1c/ErrorIndication.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_ErrorIndication_H_
@@ -21,7 +21,7 @@
 
 /* ErrorIndication */
 typedef struct ErrorIndication {
-	ProtocolIE_Container_226P10_t	 protocolIEs;
+	ProtocolIE_Container_1917P11_t	 protocolIEs;
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
diff --git a/e2sim/src/ASN1c/GNB-CU-UP-ID.c b/e2sim/src/ASN1c/GNB-CU-UP-ID.c
index f66e62b..f5ab574 100644
--- a/e2sim/src/ASN1c/GNB-CU-UP-ID.c
+++ b/e2sim/src/ASN1c/GNB-CU-UP-ID.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "GNB-CU-UP-ID.h"
diff --git a/e2sim/src/ASN1c/GNB-CU-UP-ID.h b/e2sim/src/ASN1c/GNB-CU-UP-ID.h
index 6aedbb6..0e7bcbc 100644
--- a/e2sim/src/ASN1c/GNB-CU-UP-ID.h
+++ b/e2sim/src/ASN1c/GNB-CU-UP-ID.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_GNB_CU_UP_ID_H_
diff --git a/e2sim/src/ASN1c/GNB-DU-ID.c b/e2sim/src/ASN1c/GNB-DU-ID.c
index 4eb8a31..18e8b90 100644
--- a/e2sim/src/ASN1c/GNB-DU-ID.c
+++ b/e2sim/src/ASN1c/GNB-DU-ID.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "GNB-DU-ID.h"
diff --git a/e2sim/src/ASN1c/GNB-DU-ID.h b/e2sim/src/ASN1c/GNB-DU-ID.h
index a90c182..0322d24 100644
--- a/e2sim/src/ASN1c/GNB-DU-ID.h
+++ b/e2sim/src/ASN1c/GNB-DU-ID.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_GNB_DU_ID_H_
diff --git a/e2sim/src/ASN1c/GNB-ID-Choice.c b/e2sim/src/ASN1c/GNB-ID-Choice.c
index 2894314..5a66e0a 100644
--- a/e2sim/src/ASN1c/GNB-ID-Choice.c
+++ b/e2sim/src/ASN1c/GNB-ID-Choice.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "GNB-ID-Choice.h"
diff --git a/e2sim/src/ASN1c/GNB-ID-Choice.h b/e2sim/src/ASN1c/GNB-ID-Choice.h
index 03b6142..25d8de8 100644
--- a/e2sim/src/ASN1c/GNB-ID-Choice.h
+++ b/e2sim/src/ASN1c/GNB-ID-Choice.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_GNB_ID_Choice_H_
diff --git a/e2sim/src/ASN1c/GlobalE2node-ID.c b/e2sim/src/ASN1c/GlobalE2node-ID.c
index d940c03..159bd68 100644
--- a/e2sim/src/ASN1c/GlobalE2node-ID.c
+++ b/e2sim/src/ASN1c/GlobalE2node-ID.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "GlobalE2node-ID.h"
@@ -11,12 +11,12 @@
 #include "GlobalE2node-en-gNB-ID.h"
 #include "GlobalE2node-ng-eNB-ID.h"
 #include "GlobalE2node-eNB-ID.h"
-asn_per_constraints_t asn_PER_type_GlobalE2node_ID_constr_1 CC_NOTUSED = {
+static asn_per_constraints_t asn_PER_type_GlobalE2node_ID_constr_1 CC_NOTUSED = {
 	{ APC_CONSTRAINED | APC_EXTENSIBLE,  2,  2,  0,  3 }	/* (0..3,...) */,
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	0, 0	/* No PER value map */
 };
-asn_TYPE_member_t asn_MBR_GlobalE2node_ID_1[] = {
+static asn_TYPE_member_t asn_MBR_GlobalE2node_ID_1[] = {
 	{ ATF_POINTER, 0, offsetof(struct GlobalE2node_ID, choice.gNB),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
@@ -60,7 +60,7 @@
     { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ng-eNB */
     { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* eNB */
 };
-asn_CHOICE_specifics_t asn_SPC_GlobalE2node_ID_specs_1 = {
+static asn_CHOICE_specifics_t asn_SPC_GlobalE2node_ID_specs_1 = {
 	sizeof(struct GlobalE2node_ID),
 	offsetof(struct GlobalE2node_ID, _asn_ctx),
 	offsetof(struct GlobalE2node_ID, present),
diff --git a/e2sim/src/ASN1c/GlobalE2node-ID.h b/e2sim/src/ASN1c/GlobalE2node-ID.h
index 52baad2..5d7f455 100644
--- a/e2sim/src/ASN1c/GlobalE2node-ID.h
+++ b/e2sim/src/ASN1c/GlobalE2node-ID.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_GlobalE2node_ID_H_
@@ -55,9 +55,6 @@
 
 /* Implementation */
 extern asn_TYPE_descriptor_t asn_DEF_GlobalE2node_ID;
-extern asn_CHOICE_specifics_t asn_SPC_GlobalE2node_ID_specs_1;
-extern asn_TYPE_member_t asn_MBR_GlobalE2node_ID_1[4];
-extern asn_per_constraints_t asn_PER_type_GlobalE2node_ID_constr_1;
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/GlobalE2node-eNB-ID.c b/e2sim/src/ASN1c/GlobalE2node-eNB-ID.c
index bccce7b..8f7b1da 100644
--- a/e2sim/src/ASN1c/GlobalE2node-eNB-ID.c
+++ b/e2sim/src/ASN1c/GlobalE2node-eNB-ID.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "GlobalE2node-eNB-ID.h"
diff --git a/e2sim/src/ASN1c/GlobalE2node-eNB-ID.h b/e2sim/src/ASN1c/GlobalE2node-eNB-ID.h
index 72696c5..1f6ac5e 100644
--- a/e2sim/src/ASN1c/GlobalE2node-eNB-ID.h
+++ b/e2sim/src/ASN1c/GlobalE2node-eNB-ID.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_GlobalE2node_eNB_ID_H_
diff --git a/e2sim/src/ASN1c/GlobalE2node-en-gNB-ID.c b/e2sim/src/ASN1c/GlobalE2node-en-gNB-ID.c
index f9a8ae4..864a2a1 100644
--- a/e2sim/src/ASN1c/GlobalE2node-en-gNB-ID.c
+++ b/e2sim/src/ASN1c/GlobalE2node-en-gNB-ID.c
@@ -1,36 +1,58 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "GlobalE2node-en-gNB-ID.h"
 
 asn_TYPE_member_t asn_MBR_GlobalE2node_en_gNB_ID_1[] = {
-	{ ATF_NOFLAGS, 0, offsetof(struct GlobalE2node_en_gNB_ID, global_gNB_ID),
+	{ ATF_NOFLAGS, 0, offsetof(struct GlobalE2node_en_gNB_ID, global_en_gNB_ID),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_GlobalenGNB_ID,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
-		"global-gNB-ID"
+		"global-en-gNB-ID"
+		},
+	{ ATF_POINTER, 2, offsetof(struct GlobalE2node_en_gNB_ID, en_gNB_CU_UP_ID),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_GNB_CU_UP_ID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"en-gNB-CU-UP-ID"
+		},
+	{ ATF_POINTER, 1, offsetof(struct GlobalE2node_en_gNB_ID, en_gNB_DU_ID),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_GNB_DU_ID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"en-gNB-DU-ID"
 		},
 };
+static const int asn_MAP_GlobalE2node_en_gNB_ID_oms_1[] = { 1, 2 };
 static const ber_tlv_tag_t asn_DEF_GlobalE2node_en_gNB_ID_tags_1[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
 static const asn_TYPE_tag2member_t asn_MAP_GlobalE2node_en_gNB_ID_tag2el_1[] = {
-    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* global-gNB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* global-en-gNB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* en-gNB-CU-UP-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* en-gNB-DU-ID */
 };
 asn_SEQUENCE_specifics_t asn_SPC_GlobalE2node_en_gNB_ID_specs_1 = {
 	sizeof(struct GlobalE2node_en_gNB_ID),
 	offsetof(struct GlobalE2node_en_gNB_ID, _asn_ctx),
 	asn_MAP_GlobalE2node_en_gNB_ID_tag2el_1,
-	1,	/* Count of tags in the map */
-	0, 0, 0,	/* Optional elements (not needed) */
-	1,	/* First extension addition */
+	3,	/* Count of tags in the map */
+	asn_MAP_GlobalE2node_en_gNB_ID_oms_1,	/* Optional members */
+	2, 0,	/* Root/Additions */
+	3,	/* First extension addition */
 };
 asn_TYPE_descriptor_t asn_DEF_GlobalE2node_en_gNB_ID = {
 	"GlobalE2node-en-gNB-ID",
@@ -44,7 +66,7 @@
 		/sizeof(asn_DEF_GlobalE2node_en_gNB_ID_tags_1[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
 	asn_MBR_GlobalE2node_en_gNB_ID_1,
-	1,	/* Elements count */
+	3,	/* Elements count */
 	&asn_SPC_GlobalE2node_en_gNB_ID_specs_1	/* Additional specs */
 };
 
diff --git a/e2sim/src/ASN1c/GlobalE2node-en-gNB-ID.h b/e2sim/src/ASN1c/GlobalE2node-en-gNB-ID.h
index 314ea88..7c15577 100644
--- a/e2sim/src/ASN1c/GlobalE2node-en-gNB-ID.h
+++ b/e2sim/src/ASN1c/GlobalE2node-en-gNB-ID.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_GlobalE2node_en_gNB_ID_H_
@@ -13,6 +13,8 @@
 
 /* Including external dependencies */
 #include "GlobalenGNB-ID.h"
+#include "GNB-CU-UP-ID.h"
+#include "GNB-DU-ID.h"
 #include "constr_SEQUENCE.h"
 
 #ifdef __cplusplus
@@ -21,7 +23,9 @@
 
 /* GlobalE2node-en-gNB-ID */
 typedef struct GlobalE2node_en_gNB_ID {
-	GlobalenGNB_ID_t	 global_gNB_ID;
+	GlobalenGNB_ID_t	 global_en_gNB_ID;
+	GNB_CU_UP_ID_t	*en_gNB_CU_UP_ID;	/* OPTIONAL */
+	GNB_DU_ID_t	*en_gNB_DU_ID;	/* OPTIONAL */
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
@@ -34,7 +38,7 @@
 /* Implementation */
 extern asn_TYPE_descriptor_t asn_DEF_GlobalE2node_en_gNB_ID;
 extern asn_SEQUENCE_specifics_t asn_SPC_GlobalE2node_en_gNB_ID_specs_1;
-extern asn_TYPE_member_t asn_MBR_GlobalE2node_en_gNB_ID_1[1];
+extern asn_TYPE_member_t asn_MBR_GlobalE2node_en_gNB_ID_1[3];
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/GlobalE2node-gNB-ID.c b/e2sim/src/ASN1c/GlobalE2node-gNB-ID.c
index 7a4810c..050265b 100644
--- a/e2sim/src/ASN1c/GlobalE2node-gNB-ID.c
+++ b/e2sim/src/ASN1c/GlobalE2node-gNB-ID.c
@@ -1,12 +1,13 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "GlobalE2node-gNB-ID.h"
 
+#include "GlobalenGNB-ID.h"
 asn_TYPE_member_t asn_MBR_GlobalE2node_gNB_ID_1[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct GlobalE2node_gNB_ID, global_gNB_ID),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
@@ -17,9 +18,18 @@
 		0, 0, /* No default value */
 		"global-gNB-ID"
 		},
-	{ ATF_POINTER, 2, offsetof(struct GlobalE2node_gNB_ID, gNB_CU_UP_ID),
+	{ ATF_POINTER, 3, offsetof(struct GlobalE2node_gNB_ID, global_en_gNB_ID),
 		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
 		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_GlobalenGNB_ID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"global-en-gNB-ID"
+		},
+	{ ATF_POINTER, 2, offsetof(struct GlobalE2node_gNB_ID, gNB_CU_UP_ID),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_GNB_CU_UP_ID,
 		0,
 		{ 0, 0, 0 },
@@ -27,7 +37,7 @@
 		"gNB-CU-UP-ID"
 		},
 	{ ATF_POINTER, 1, offsetof(struct GlobalE2node_gNB_ID, gNB_DU_ID),
-		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
 		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_GNB_DU_ID,
 		0,
@@ -36,23 +46,24 @@
 		"gNB-DU-ID"
 		},
 };
-static const int asn_MAP_GlobalE2node_gNB_ID_oms_1[] = { 1, 2 };
+static const int asn_MAP_GlobalE2node_gNB_ID_oms_1[] = { 1, 2, 3 };
 static const ber_tlv_tag_t asn_DEF_GlobalE2node_gNB_ID_tags_1[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
 static const asn_TYPE_tag2member_t asn_MAP_GlobalE2node_gNB_ID_tag2el_1[] = {
     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* global-gNB-ID */
-    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* gNB-CU-UP-ID */
-    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* gNB-DU-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* global-en-gNB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* gNB-CU-UP-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* gNB-DU-ID */
 };
 asn_SEQUENCE_specifics_t asn_SPC_GlobalE2node_gNB_ID_specs_1 = {
 	sizeof(struct GlobalE2node_gNB_ID),
 	offsetof(struct GlobalE2node_gNB_ID, _asn_ctx),
 	asn_MAP_GlobalE2node_gNB_ID_tag2el_1,
-	3,	/* Count of tags in the map */
+	4,	/* Count of tags in the map */
 	asn_MAP_GlobalE2node_gNB_ID_oms_1,	/* Optional members */
-	2, 0,	/* Root/Additions */
-	3,	/* First extension addition */
+	3, 0,	/* Root/Additions */
+	4,	/* First extension addition */
 };
 asn_TYPE_descriptor_t asn_DEF_GlobalE2node_gNB_ID = {
 	"GlobalE2node-gNB-ID",
@@ -66,7 +77,7 @@
 		/sizeof(asn_DEF_GlobalE2node_gNB_ID_tags_1[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
 	asn_MBR_GlobalE2node_gNB_ID_1,
-	3,	/* Elements count */
+	4,	/* Elements count */
 	&asn_SPC_GlobalE2node_gNB_ID_specs_1	/* Additional specs */
 };
 
diff --git a/e2sim/src/ASN1c/GlobalE2node-gNB-ID.h b/e2sim/src/ASN1c/GlobalE2node-gNB-ID.h
index d160c4c..bed418d 100644
--- a/e2sim/src/ASN1c/GlobalE2node-gNB-ID.h
+++ b/e2sim/src/ASN1c/GlobalE2node-gNB-ID.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_GlobalE2node_gNB_ID_H_
@@ -21,9 +21,13 @@
 extern "C" {
 #endif
 
+/* Forward declarations */
+struct GlobalenGNB_ID;
+
 /* GlobalE2node-gNB-ID */
 typedef struct GlobalE2node_gNB_ID {
 	GlobalgNB_ID_t	 global_gNB_ID;
+	struct GlobalenGNB_ID	*global_en_gNB_ID;	/* OPTIONAL */
 	GNB_CU_UP_ID_t	*gNB_CU_UP_ID;	/* OPTIONAL */
 	GNB_DU_ID_t	*gNB_DU_ID;	/* OPTIONAL */
 	/*
@@ -38,7 +42,7 @@
 /* Implementation */
 extern asn_TYPE_descriptor_t asn_DEF_GlobalE2node_gNB_ID;
 extern asn_SEQUENCE_specifics_t asn_SPC_GlobalE2node_gNB_ID_specs_1;
-extern asn_TYPE_member_t asn_MBR_GlobalE2node_gNB_ID_1[3];
+extern asn_TYPE_member_t asn_MBR_GlobalE2node_gNB_ID_1[4];
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/GlobalE2node-ng-eNB-ID.c b/e2sim/src/ASN1c/GlobalE2node-ng-eNB-ID.c
index c37ded1..313e953 100644
--- a/e2sim/src/ASN1c/GlobalE2node-ng-eNB-ID.c
+++ b/e2sim/src/ASN1c/GlobalE2node-ng-eNB-ID.c
@@ -1,12 +1,13 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "GlobalE2node-ng-eNB-ID.h"
 
+#include "GlobalENB-ID.h"
 asn_TYPE_member_t asn_MBR_GlobalE2node_ng_eNB_ID_1[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct GlobalE2node_ng_eNB_ID, global_ng_eNB_ID),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
@@ -17,20 +18,42 @@
 		0, 0, /* No default value */
 		"global-ng-eNB-ID"
 		},
+	{ ATF_POINTER, 2, offsetof(struct GlobalE2node_ng_eNB_ID, global_eNB_ID),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_GlobalENB_ID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"global-eNB-ID"
+		},
+	{ ATF_POINTER, 1, offsetof(struct GlobalE2node_ng_eNB_ID, ngENB_DU_ID),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_NGENB_DU_ID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"ngENB-DU-ID"
+		},
 };
+static const int asn_MAP_GlobalE2node_ng_eNB_ID_oms_1[] = { 1, 2 };
 static const ber_tlv_tag_t asn_DEF_GlobalE2node_ng_eNB_ID_tags_1[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
 static const asn_TYPE_tag2member_t asn_MAP_GlobalE2node_ng_eNB_ID_tag2el_1[] = {
-    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* global-ng-eNB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* global-ng-eNB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* global-eNB-ID */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ngENB-DU-ID */
 };
 asn_SEQUENCE_specifics_t asn_SPC_GlobalE2node_ng_eNB_ID_specs_1 = {
 	sizeof(struct GlobalE2node_ng_eNB_ID),
 	offsetof(struct GlobalE2node_ng_eNB_ID, _asn_ctx),
 	asn_MAP_GlobalE2node_ng_eNB_ID_tag2el_1,
-	1,	/* Count of tags in the map */
-	0, 0, 0,	/* Optional elements (not needed) */
-	1,	/* First extension addition */
+	3,	/* Count of tags in the map */
+	asn_MAP_GlobalE2node_ng_eNB_ID_oms_1,	/* Optional members */
+	2, 0,	/* Root/Additions */
+	3,	/* First extension addition */
 };
 asn_TYPE_descriptor_t asn_DEF_GlobalE2node_ng_eNB_ID = {
 	"GlobalE2node-ng-eNB-ID",
@@ -44,7 +67,7 @@
 		/sizeof(asn_DEF_GlobalE2node_ng_eNB_ID_tags_1[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
 	asn_MBR_GlobalE2node_ng_eNB_ID_1,
-	1,	/* Elements count */
+	3,	/* Elements count */
 	&asn_SPC_GlobalE2node_ng_eNB_ID_specs_1	/* Additional specs */
 };
 
diff --git a/e2sim/src/ASN1c/GlobalE2node-ng-eNB-ID.h b/e2sim/src/ASN1c/GlobalE2node-ng-eNB-ID.h
index b4042c5..05ca8a1 100644
--- a/e2sim/src/ASN1c/GlobalE2node-ng-eNB-ID.h
+++ b/e2sim/src/ASN1c/GlobalE2node-ng-eNB-ID.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_GlobalE2node_ng_eNB_ID_H_
@@ -13,15 +13,21 @@
 
 /* Including external dependencies */
 #include "GlobalngeNB-ID.h"
+#include "NGENB-DU-ID.h"
 #include "constr_SEQUENCE.h"
 
 #ifdef __cplusplus
 extern "C" {
 #endif
 
+/* Forward declarations */
+struct GlobalENB_ID;
+
 /* GlobalE2node-ng-eNB-ID */
 typedef struct GlobalE2node_ng_eNB_ID {
 	GlobalngeNB_ID_t	 global_ng_eNB_ID;
+	struct GlobalENB_ID	*global_eNB_ID;	/* OPTIONAL */
+	NGENB_DU_ID_t	*ngENB_DU_ID;	/* OPTIONAL */
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
@@ -34,7 +40,7 @@
 /* Implementation */
 extern asn_TYPE_descriptor_t asn_DEF_GlobalE2node_ng_eNB_ID;
 extern asn_SEQUENCE_specifics_t asn_SPC_GlobalE2node_ng_eNB_ID_specs_1;
-extern asn_TYPE_member_t asn_MBR_GlobalE2node_ng_eNB_ID_1[1];
+extern asn_TYPE_member_t asn_MBR_GlobalE2node_ng_eNB_ID_1[3];
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/GlobalENB-ID.c b/e2sim/src/ASN1c/GlobalENB-ID.c
index ad5b9fa..d9d140a 100644
--- a/e2sim/src/ASN1c/GlobalENB-ID.c
+++ b/e2sim/src/ASN1c/GlobalENB-ID.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "GlobalENB-ID.h"
diff --git a/e2sim/src/ASN1c/GlobalENB-ID.h b/e2sim/src/ASN1c/GlobalENB-ID.h
index f38829a..822ac42 100644
--- a/e2sim/src/ASN1c/GlobalENB-ID.h
+++ b/e2sim/src/ASN1c/GlobalENB-ID.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_GlobalENB_ID_H_
diff --git a/e2sim/src/ASN1c/GlobalNG-RANNode-ID.c b/e2sim/src/ASN1c/GlobalNG-RANNode-ID.c
new file mode 100644
index 0000000..0541f38
--- /dev/null
+++ b/e2sim/src/ASN1c/GlobalNG-RANNode-ID.c
@@ -0,0 +1,64 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#include "GlobalNG-RANNode-ID.h"
+
+#include "GlobalgNB-ID.h"
+#include "GlobalngeNB-ID.h"
+asn_per_constraints_t asn_PER_type_GlobalNG_RANNode_ID_constr_1 CC_NOTUSED = {
+	{ APC_CONSTRAINED | APC_EXTENSIBLE,  1,  1,  0,  1 }	/* (0..1,...) */,
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	0, 0	/* No PER value map */
+};
+asn_TYPE_member_t asn_MBR_GlobalNG_RANNode_ID_1[] = {
+	{ ATF_POINTER, 0, offsetof(struct GlobalNG_RANNode_ID, choice.gNB),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_GlobalgNB_ID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"gNB"
+		},
+	{ ATF_POINTER, 0, offsetof(struct GlobalNG_RANNode_ID, choice.ng_eNB),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_GlobalngeNB_ID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"ng-eNB"
+		},
+};
+static const asn_TYPE_tag2member_t asn_MAP_GlobalNG_RANNode_ID_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* gNB */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ng-eNB */
+};
+asn_CHOICE_specifics_t asn_SPC_GlobalNG_RANNode_ID_specs_1 = {
+	sizeof(struct GlobalNG_RANNode_ID),
+	offsetof(struct GlobalNG_RANNode_ID, _asn_ctx),
+	offsetof(struct GlobalNG_RANNode_ID, present),
+	sizeof(((struct GlobalNG_RANNode_ID *)0)->present),
+	asn_MAP_GlobalNG_RANNode_ID_tag2el_1,
+	2,	/* Count of tags in the map */
+	0, 0,
+	2	/* Extensions start */
+};
+asn_TYPE_descriptor_t asn_DEF_GlobalNG_RANNode_ID = {
+	"GlobalNG-RANNode-ID",
+	"GlobalNG-RANNode-ID",
+	&asn_OP_CHOICE,
+	0,	/* No effective tags (pointer) */
+	0,	/* No effective tags (count) */
+	0,	/* No tags (pointer) */
+	0,	/* No tags (count) */
+	{ 0, &asn_PER_type_GlobalNG_RANNode_ID_constr_1, CHOICE_constraint },
+	asn_MBR_GlobalNG_RANNode_ID_1,
+	2,	/* Elements count */
+	&asn_SPC_GlobalNG_RANNode_ID_specs_1	/* Additional specs */
+};
+
diff --git a/e2sim/src/ASN1c/GlobalNG-RANNode-ID.h b/e2sim/src/ASN1c/GlobalNG-RANNode-ID.h
new file mode 100644
index 0000000..325cb50
--- /dev/null
+++ b/e2sim/src/ASN1c/GlobalNG-RANNode-ID.h
@@ -0,0 +1,61 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#ifndef	_GlobalNG_RANNode_ID_H_
+#define	_GlobalNG_RANNode_ID_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "constr_CHOICE.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* Dependencies */
+typedef enum GlobalNG_RANNode_ID_PR {
+	GlobalNG_RANNode_ID_PR_NOTHING,	/* No components present */
+	GlobalNG_RANNode_ID_PR_gNB,
+	GlobalNG_RANNode_ID_PR_ng_eNB
+	/* Extensions may appear below */
+	
+} GlobalNG_RANNode_ID_PR;
+
+/* Forward declarations */
+struct GlobalgNB_ID;
+struct GlobalngeNB_ID;
+
+/* GlobalNG-RANNode-ID */
+typedef struct GlobalNG_RANNode_ID {
+	GlobalNG_RANNode_ID_PR present;
+	union GlobalNG_RANNode_ID_u {
+		struct GlobalgNB_ID	*gNB;
+		struct GlobalngeNB_ID	*ng_eNB;
+		/*
+		 * This type is extensible,
+		 * possible extensions are below.
+		 */
+	} choice;
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} GlobalNG_RANNode_ID_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_GlobalNG_RANNode_ID;
+extern asn_CHOICE_specifics_t asn_SPC_GlobalNG_RANNode_ID_specs_1;
+extern asn_TYPE_member_t asn_MBR_GlobalNG_RANNode_ID_1[2];
+extern asn_per_constraints_t asn_PER_type_GlobalNG_RANNode_ID_constr_1;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _GlobalNG_RANNode_ID_H_ */
+#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/GlobalRIC-ID.c b/e2sim/src/ASN1c/GlobalRIC-ID.c
index 19260d0..5a4ef97 100644
--- a/e2sim/src/ASN1c/GlobalRIC-ID.c
+++ b/e2sim/src/ASN1c/GlobalRIC-ID.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "GlobalRIC-ID.h"
@@ -43,7 +43,7 @@
 	{ APC_CONSTRAINED,	 0,  0,  20,  20 }	/* (SIZE(20..20)) */,
 	0, 0	/* No PER value map */
 };
-asn_TYPE_member_t asn_MBR_GlobalRIC_ID_1[] = {
+static asn_TYPE_member_t asn_MBR_GlobalRIC_ID_1[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct GlobalRIC_ID, pLMN_Identity),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
@@ -70,7 +70,7 @@
     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pLMN-Identity */
     { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ric-ID */
 };
-asn_SEQUENCE_specifics_t asn_SPC_GlobalRIC_ID_specs_1 = {
+static asn_SEQUENCE_specifics_t asn_SPC_GlobalRIC_ID_specs_1 = {
 	sizeof(struct GlobalRIC_ID),
 	offsetof(struct GlobalRIC_ID, _asn_ctx),
 	asn_MAP_GlobalRIC_ID_tag2el_1,
diff --git a/e2sim/src/ASN1c/GlobalRIC-ID.h b/e2sim/src/ASN1c/GlobalRIC-ID.h
index 6024a04..93ccdb0 100644
--- a/e2sim/src/ASN1c/GlobalRIC-ID.h
+++ b/e2sim/src/ASN1c/GlobalRIC-ID.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_GlobalRIC_ID_H_
@@ -35,8 +35,6 @@
 
 /* Implementation */
 extern asn_TYPE_descriptor_t asn_DEF_GlobalRIC_ID;
-extern asn_SEQUENCE_specifics_t asn_SPC_GlobalRIC_ID_specs_1;
-extern asn_TYPE_member_t asn_MBR_GlobalRIC_ID_1[2];
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/GlobalenGNB-ID.c b/e2sim/src/ASN1c/GlobalenGNB-ID.c
index 46a641a..412df59 100644
--- a/e2sim/src/ASN1c/GlobalenGNB-ID.c
+++ b/e2sim/src/ASN1c/GlobalenGNB-ID.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "GlobalenGNB-ID.h"
diff --git a/e2sim/src/ASN1c/GlobalenGNB-ID.h b/e2sim/src/ASN1c/GlobalenGNB-ID.h
index bb96628..b32cebe 100644
--- a/e2sim/src/ASN1c/GlobalenGNB-ID.h
+++ b/e2sim/src/ASN1c/GlobalenGNB-ID.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_GlobalenGNB_ID_H_
diff --git a/e2sim/src/ASN1c/GlobalgNB-ID.c b/e2sim/src/ASN1c/GlobalgNB-ID.c
index a143609..5b756ef 100644
--- a/e2sim/src/ASN1c/GlobalgNB-ID.c
+++ b/e2sim/src/ASN1c/GlobalgNB-ID.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "GlobalgNB-ID.h"
diff --git a/e2sim/src/ASN1c/GlobalgNB-ID.h b/e2sim/src/ASN1c/GlobalgNB-ID.h
index 7061c98..9287069 100644
--- a/e2sim/src/ASN1c/GlobalgNB-ID.h
+++ b/e2sim/src/ASN1c/GlobalgNB-ID.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_GlobalgNB_ID_H_
diff --git a/e2sim/src/ASN1c/GlobalngeNB-ID.c b/e2sim/src/ASN1c/GlobalngeNB-ID.c
index 8694350..f4ba963 100644
--- a/e2sim/src/ASN1c/GlobalngeNB-ID.c
+++ b/e2sim/src/ASN1c/GlobalngeNB-ID.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "GlobalngeNB-ID.h"
diff --git a/e2sim/src/ASN1c/GlobalngeNB-ID.h b/e2sim/src/ASN1c/GlobalngeNB-ID.h
index 5f3cf3d..5ca930f 100644
--- a/e2sim/src/ASN1c/GlobalngeNB-ID.h
+++ b/e2sim/src/ASN1c/GlobalngeNB-ID.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_GlobalngeNB_ID_H_
diff --git a/e2sim/src/ASN1c/INTEGER_oer.c b/e2sim/src/ASN1c/INTEGER_oer.c
deleted file mode 100644
index 110689b..0000000
--- a/e2sim/src/ASN1c/INTEGER_oer.c
+++ /dev/null
@@ -1,179 +0,0 @@
-/*
- * Copyright (c) 2017 Lev Walkin <vlm@lionet.info>.
- * All rights reserved.
- * Redistribution and modifications are permitted subject to BSD license.
- */
-#ifndef ASN_DISABLE_OER_SUPPORT
-
-#include <asn_internal.h>
-#include <INTEGER.h>
-#include <errno.h>
-
-asn_dec_rval_t
-INTEGER_decode_oer(const asn_codec_ctx_t *opt_codec_ctx,
-                   const asn_TYPE_descriptor_t *td,
-                   const asn_oer_constraints_t *constraints, void **sptr,
-                   const void *ptr, size_t size) {
-    const asn_INTEGER_specifics_t *specs =
-        (const asn_INTEGER_specifics_t *)td->specifics;
-    asn_dec_rval_t rval = {RC_OK, 0};
-    INTEGER_t *st = (INTEGER_t *)*sptr;
-    struct asn_oer_constraint_number_s ct = {0, 0};
-    size_t req_bytes;
-
-    (void)opt_codec_ctx;
-    (void)specs;
-
-    if(!st) {
-        st = (INTEGER_t *)(*sptr = CALLOC(1, sizeof(*st)));
-        if(!st) ASN__DECODE_FAILED;
-    }
-
-    FREEMEM(st->buf);
-    st->buf = 0;
-    st->size = 0;
-
-    if(!constraints) constraints = td->encoding_constraints.oer_constraints;
-    if(constraints) ct = constraints->value;
-
-    if(ct.width) {
-        req_bytes = ct.width;
-    } else {
-        /* No lower bound and no upper bound, effectively */
-
-        ssize_t consumed = oer_fetch_length(ptr, size, &req_bytes);
-        if(consumed == 0) {
-            ASN__DECODE_STARVED;
-        } else if(consumed == -1) {
-            ASN__DECODE_FAILED;
-        }
-        rval.consumed += consumed;
-        ptr = (const char *)ptr + consumed;
-        size -= consumed;
-    }
-
-    if(req_bytes > size) {
-        ASN__DECODE_STARVED;
-    }
-
-    if(ct.positive) {
-        /* X.969 08/2015 10.2(a) */
-        unsigned msb;   /* Most significant bit */
-        size_t useful_size;
-
-        /* Check most significant bit */
-        msb = *(const uint8_t *)ptr >> 7; /* yields 0 or 1 */
-        useful_size = msb + req_bytes;
-        st->buf = (uint8_t *)MALLOC(useful_size + 1);
-        if(!st->buf) {
-            ASN__DECODE_FAILED;
-        }
-
-        /*
-         * Record a large unsigned in a way not to confuse it
-         * with signed value.
-         */
-        st->buf[0] = '\0';
-        memcpy(st->buf + msb, ptr, req_bytes);
-        st->buf[useful_size] = '\0';    /* Just in case, 0-terminate */
-        st->size = useful_size;
-
-        rval.consumed += req_bytes;
-        return rval;
-    } else {
-        /* X.969 08/2015 10.2(b) */
-        st->buf = (uint8_t *)MALLOC(req_bytes + 1);
-        if(!st->buf) {
-            ASN__DECODE_FAILED;
-        }
-
-        memcpy(st->buf, ptr, req_bytes);
-        st->buf[req_bytes] = '\0'; /* Just in case, 0-terminate */
-        st->size = req_bytes;
-
-        rval.consumed += req_bytes;
-        return rval;
-    }
-}
-
-/*
- * Encode as Canonical OER.
- */
-asn_enc_rval_t
-INTEGER_encode_oer(const asn_TYPE_descriptor_t *td,
-                   const asn_oer_constraints_t *constraints, const void *sptr,
-                   asn_app_consume_bytes_f *cb, void *app_key) {
-    const INTEGER_t *st = sptr;
-    asn_enc_rval_t er = {0,0,0};
-    struct asn_oer_constraint_number_s ct = {0, 0};
-    const uint8_t *buf;
-    const uint8_t *end;
-    size_t useful_bytes;
-    size_t req_bytes = 0;
-    int sign = 0;
-
-    if(!st || st->size == 0) ASN__ENCODE_FAILED;
-
-    if(!constraints) constraints = td->encoding_constraints.oer_constraints;
-    if(constraints) ct = constraints->value;
-
-    er.encoded = 0;
-
-    buf = st->buf;
-    end = buf + st->size;
-
-    sign = (buf && buf < end) ? buf[0] & 0x80 : 0;
-
-    /* Ignore 9 leading zeroes or ones */
-    if(ct.positive) {
-        if(sign) {
-            /* The value given is a signed value. Can't proceed. */
-            ASN__ENCODE_FAILED;
-        }
-        /* Remove leading zeros. */
-        for(; buf + 1 < end; buf++) {
-            if(buf[0] != 0x0) break;
-        }
-    } else {
-        for(; buf + 1 < end; buf++) {
-            if(buf[0] == 0x0 && (buf[1] & 0x80) == 0) {
-                continue;
-            } else if(buf[0] == 0xff && (buf[1] & 0x80) != 0) {
-                continue;
-            }
-            break;
-        }
-    }
-
-    useful_bytes = end - buf;
-    if(ct.width) {
-        req_bytes = ct.width;
-    } else {
-        ssize_t r = oer_serialize_length(useful_bytes, cb, app_key);
-        if(r < 0) {
-            ASN__ENCODE_FAILED;
-        }
-        er.encoded += r;
-        req_bytes = useful_bytes;
-    }
-
-    if(req_bytes < useful_bytes) {
-        ASN__ENCODE_FAILED;
-    }
-
-    er.encoded += req_bytes;
-
-    for(; req_bytes > useful_bytes; req_bytes--) {
-        if(cb(sign?"\xff":"\0", 1, app_key) < 0) {
-            ASN__ENCODE_FAILED;
-        }
-    }
-
-    if(cb(buf, useful_bytes, app_key) < 0) {
-        ASN__ENCODE_FAILED;
-    }
-
-    ASN__ENCODED_OK(er);
-}
-
-#endif  /* ASN_DISABLE_OER_SUPPORT */
diff --git a/e2sim/src/ASN1c/InitiatingMessage.c b/e2sim/src/ASN1c/InitiatingMessage.c
index 4a7db12..bbe2e22 100644
--- a/e2sim/src/ASN1c/InitiatingMessage.c
+++ b/e2sim/src/ASN1c/InitiatingMessage.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Descriptions"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "InitiatingMessage.h"
@@ -29,6 +29,8 @@
 static const long asn_VAL_10_ignore = 1;
 static const long asn_VAL_11_id_ErrorIndication = 2;
 static const long asn_VAL_11_ignore = 1;
+static const long asn_VAL_12_id_RICsubscriptionDeleteRequired = 12;
+static const long asn_VAL_12_ignore = 1;
 static const asn_ioc_cell_t asn_IOS_E2AP_ELEMENTARY_PROCEDURES_1_rows[] = {
 	{ "&InitiatingMessage", aioc__type, &asn_DEF_RICsubscriptionRequest },
 	{ "&SuccessfulOutcome", aioc__type, &asn_DEF_RICsubscriptionResponse },
@@ -84,10 +86,15 @@
 	{ "&SuccessfulOutcome",  },
 	{ "&UnsuccessfulOutcome",  },
 	{ "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_11_id_ErrorIndication },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_11_ignore }
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_11_ignore },
+	{ "&InitiatingMessage", aioc__type, &asn_DEF_RICsubscriptionDeleteRequired },
+	{ "&SuccessfulOutcome",  },
+	{ "&UnsuccessfulOutcome",  },
+	{ "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_12_id_RICsubscriptionDeleteRequired },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_12_ignore }
 };
 static const asn_ioc_set_t asn_IOS_E2AP_ELEMENTARY_PROCEDURES_1[] = {
-	{ 11, 5, asn_IOS_E2AP_ELEMENTARY_PROCEDURES_1_rows }
+	{ 12, 5, asn_IOS_E2AP_ELEMENTARY_PROCEDURES_1_rows }
 };
 static int
 memb_procedureCode_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
@@ -321,19 +328,29 @@
 		0, 0, /* No default value */
 		"ErrorIndication"
 		},
+	{ ATF_NOFLAGS, 0, offsetof(struct InitiatingMessage__value, choice.RICsubscriptionDeleteRequired),
+		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
+		0,
+		&asn_DEF_RICsubscriptionDeleteRequired,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"RICsubscriptionDeleteRequired"
+		},
 };
 static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_4[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 10 }, /* RICsubscriptionRequest */
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 9 }, /* RICsubscriptionDeleteRequest */
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -2, 8 }, /* RICserviceUpdate */
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -3, 7 }, /* RICcontrolRequest */
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 4, -4, 6 }, /* E2setupRequest */
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 5, -5, 5 }, /* E2nodeConfigurationUpdate */
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 6, -6, 4 }, /* E2connectionUpdate */
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 7, -7, 3 }, /* ResetRequest */
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 8, -8, 2 }, /* RICindication */
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 9, -9, 1 }, /* RICserviceQuery */
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 10, -10, 0 } /* ErrorIndication */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 11 }, /* RICsubscriptionRequest */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 10 }, /* RICsubscriptionDeleteRequest */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -2, 9 }, /* RICserviceUpdate */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -3, 8 }, /* RICcontrolRequest */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 4, -4, 7 }, /* E2setupRequest */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 5, -5, 6 }, /* E2nodeConfigurationUpdate */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 6, -6, 5 }, /* E2connectionUpdate */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 7, -7, 4 }, /* ResetRequest */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 8, -8, 3 }, /* RICindication */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 9, -9, 2 }, /* RICserviceQuery */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 10, -10, 1 }, /* ErrorIndication */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 11, -11, 0 } /* RICsubscriptionDeleteRequired */
 };
 static asn_CHOICE_specifics_t asn_SPC_value_specs_4 = {
 	sizeof(struct InitiatingMessage__value),
@@ -341,7 +358,7 @@
 	offsetof(struct InitiatingMessage__value, present),
 	sizeof(((struct InitiatingMessage__value *)0)->present),
 	asn_MAP_value_tag2el_4,
-	11,	/* Count of tags in the map */
+	12,	/* Count of tags in the map */
 	0, 0,
 	-1	/* Extensions start */
 };
@@ -356,7 +373,7 @@
 	0,	/* No tags (count) */
 	{ 0, 0, OPEN_TYPE_constraint },
 	asn_MBR_value_4,
-	11,	/* Elements count */
+	12,	/* Elements count */
 	&asn_SPC_value_specs_4	/* Additional specs */
 };
 
diff --git a/e2sim/src/ASN1c/InitiatingMessage.h b/e2sim/src/ASN1c/InitiatingMessage.h
index 9a4d02d..b4e4384 100644
--- a/e2sim/src/ASN1c/InitiatingMessage.h
+++ b/e2sim/src/ASN1c/InitiatingMessage.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Descriptions"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_InitiatingMessage_H_
@@ -42,6 +42,7 @@
 #include "RICindication.h"
 #include "RICserviceQuery.h"
 #include "ErrorIndication.h"
+#include "RICsubscriptionDeleteRequired.h"
 #include "OPEN_TYPE.h"
 #include "constr_CHOICE.h"
 #include "constr_SEQUENCE.h"
@@ -63,7 +64,8 @@
 	InitiatingMessage__value_PR_ResetRequest,
 	InitiatingMessage__value_PR_RICindication,
 	InitiatingMessage__value_PR_RICserviceQuery,
-	InitiatingMessage__value_PR_ErrorIndication
+	InitiatingMessage__value_PR_ErrorIndication,
+	InitiatingMessage__value_PR_RICsubscriptionDeleteRequired
 } InitiatingMessage__value_PR;
 
 /* InitiatingMessage */
@@ -84,6 +86,7 @@
 			RICindication_t	 RICindication;
 			RICserviceQuery_t	 RICserviceQuery;
 			ErrorIndication_t	 ErrorIndication;
+			RICsubscriptionDeleteRequired_t	 RICsubscriptionDeleteRequired;
 		} choice;
 		
 		/* Context for parsing across buffer boundaries */
diff --git a/e2sim/src/ASN1c/MMEname.c b/e2sim/src/ASN1c/MMEname.c
new file mode 100644
index 0000000..92cf47a
--- /dev/null
+++ b/e2sim/src/ASN1c/MMEname.c
@@ -0,0 +1,106 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#include "MMEname.h"
+
+static const int permitted_alphabet_table_1[256] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,	/*                  */
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,	/*                  */
+ 1, 0, 0, 0, 0, 0, 0, 2, 3, 4, 0, 5, 6, 7, 8, 9,	/* .      '() +,-./ */
+10,11,12,13,14,15,16,17,18,19,20, 0, 0,21, 0,22,	/* 0123456789:  = ? */
+ 0,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,	/*  ABCDEFGHIJKLMNO */
+38,39,40,41,42,43,44,45,46,47,48, 0, 0, 0, 0, 0,	/* PQRSTUVWXYZ      */
+ 0,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,	/*  abcdefghijklmno */
+64,65,66,67,68,69,70,71,72,73,74, 0, 0, 0, 0, 0,	/* pqrstuvwxyz      */
+};
+static const int permitted_alphabet_code2value_1[74] = {
+32,39,40,41,43,44,45,46,47,48,49,50,51,52,53,54,
+55,56,57,58,61,63,65,66,67,68,69,70,71,72,73,74,
+75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,
+97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,
+113,114,115,116,117,118,119,120,121,122,};
+
+
+static int check_permitted_alphabet_1(const void *sptr) {
+	const int *table = permitted_alphabet_table_1;
+	/* The underlying type is PrintableString */
+	const PrintableString_t *st = (const PrintableString_t *)sptr;
+	const uint8_t *ch = st->buf;
+	const uint8_t *end = ch + st->size;
+	
+	for(; ch < end; ch++) {
+		uint8_t cv = *ch;
+		if(!table[cv]) return -1;
+	}
+	return 0;
+}
+
+int
+MMEname_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
+			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
+	const PrintableString_t *st = (const PrintableString_t *)sptr;
+	size_t size;
+	
+	if(!sptr) {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: value not given (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+	
+	size = st->size;
+	
+	if((size >= 1 && size <= 150)
+		 && !check_permitted_alphabet_1(st)) {
+		/* Constraint check succeeded */
+		return 0;
+	} else {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: constraint failed (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+}
+
+static int asn_PER_MAP_MMEname_1_v2c(unsigned int value) {
+	if(value >= sizeof(permitted_alphabet_table_1)/sizeof(permitted_alphabet_table_1[0]))
+		return -1;
+	return permitted_alphabet_table_1[value] - 1;
+}
+static int asn_PER_MAP_MMEname_1_c2v(unsigned int code) {
+	if(code >= sizeof(permitted_alphabet_code2value_1)/sizeof(permitted_alphabet_code2value_1[0]))
+		return -1;
+	return permitted_alphabet_code2value_1[code];
+}
+/*
+ * This type is implemented using PrintableString,
+ * so here we adjust the DEF accordingly.
+ */
+asn_per_constraints_t asn_PER_type_MMEname_constr_1 CC_NOTUSED = {
+	{ APC_CONSTRAINED,	 7,  7,  32,  122 }	/* (32..122) */,
+	{ APC_CONSTRAINED | APC_EXTENSIBLE,  8,  8,  1,  150 }	/* (SIZE(1..150,...)) */,
+	asn_PER_MAP_MMEname_1_v2c,	/* Value to PER code map */
+	asn_PER_MAP_MMEname_1_c2v	/* PER code to value map */
+};
+static const ber_tlv_tag_t asn_DEF_MMEname_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (19 << 2))
+};
+asn_TYPE_descriptor_t asn_DEF_MMEname = {
+	"MMEname",
+	"MMEname",
+	&asn_OP_PrintableString,
+	asn_DEF_MMEname_tags_1,
+	sizeof(asn_DEF_MMEname_tags_1)
+		/sizeof(asn_DEF_MMEname_tags_1[0]), /* 1 */
+	asn_DEF_MMEname_tags_1,	/* Same as above */
+	sizeof(asn_DEF_MMEname_tags_1)
+		/sizeof(asn_DEF_MMEname_tags_1[0]), /* 1 */
+	{ 0, &asn_PER_type_MMEname_constr_1, MMEname_constraint },
+	0, 0,	/* No members */
+	0	/* No specifics */
+};
+
diff --git a/e2sim/src/ASN1c/MMEname.h b/e2sim/src/ASN1c/MMEname.h
new file mode 100644
index 0000000..28137b0
--- /dev/null
+++ b/e2sim/src/ASN1c/MMEname.h
@@ -0,0 +1,44 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#ifndef	_MMEname_H_
+#define	_MMEname_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "PrintableString.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* MMEname */
+typedef PrintableString_t	 MMEname_t;
+
+/* Implementation */
+extern asn_per_constraints_t asn_PER_type_MMEname_constr_1;
+extern asn_TYPE_descriptor_t asn_DEF_MMEname;
+asn_struct_free_f MMEname_free;
+asn_struct_print_f MMEname_print;
+asn_constr_check_f MMEname_constraint;
+ber_type_decoder_f MMEname_decode_ber;
+der_type_encoder_f MMEname_encode_der;
+xer_type_decoder_f MMEname_decode_xer;
+xer_type_encoder_f MMEname_encode_xer;
+per_type_decoder_f MMEname_decode_uper;
+per_type_encoder_f MMEname_encode_uper;
+per_type_decoder_f MMEname_decode_aper;
+per_type_encoder_f MMEname_encode_aper;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _MMEname_H_ */
+#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/Makefile.am.asn1convert b/e2sim/src/ASN1c/Makefile.am.asn1convert
deleted file mode 100644
index 62c2707..0000000
--- a/e2sim/src/ASN1c/Makefile.am.asn1convert
+++ /dev/null
@@ -1,14 +0,0 @@
-include ./Makefile.am.libasncodec
-
-bin_PROGRAMS += asn1convert
-asn1convert_CFLAGS = $(ASN_MODULE_CFLAGS) -DASN_PDU_COLLECTION 
-asn1convert_CPPFLAGS = -I$(top_srcdir)/./
-asn1convert_LDADD = libasncodec.la
-asn1convert_SOURCES = \
-	./converter-example.c\
-	./pdu_collection.c
-regen: regenerate-from-asn1-source
-
-regenerate-from-asn1-source:
-	asn1c -fcompound-names -fincludes-quoted -fno-include-deps -findirect-choice -gen-PER -D . /root/e2ap-v01.00.00.asn
-
diff --git a/e2sim/src/ASN1c/Makefile.am.libasncodec b/e2sim/src/ASN1c/Makefile.am.libasncodec
index 215ef0a..6395c68 100644
--- a/e2sim/src/ASN1c/Makefile.am.libasncodec
+++ b/e2sim/src/ASN1c/Makefile.am.libasncodec
@@ -1,78 +1,4 @@
 ASN_MODULE_SRCS=	\
-	Criticality.c	\
-	Presence.c	\
-	ProcedureCode.c	\
-	ProtocolIE-ID.c	\
-	TriggeringMessage.c	\
-	ProtocolIE-Container.c	\
-	ProtocolIE-SingleContainer.c	\
-	ProtocolIE-Field.c	\
-	ProtocolIE-ContainerPair.c	\
-	ProtocolIE-FieldPair.c	\
-	ProtocolIE-ContainerList.c	\
-	ProtocolIE-ContainerPairList.c	\
-	Cause.c	\
-	CauseMisc.c	\
-	CauseProtocol.c	\
-	CauseRIC.c	\
-	CauseRICservice.c	\
-	CauseTransport.c	\
-	CriticalityDiagnostics.c	\
-	CriticalityDiagnostics-IE-List.c	\
-	CriticalityDiagnostics-IE-Item.c	\
-	E2nodeComponentConfigUpdate.c	\
-	E2nodeComponentConfigUpdateGNB.c	\
-	E2nodeComponentConfigUpdateENgNB.c	\
-	E2nodeComponentConfigUpdateNGeNB.c	\
-	E2nodeComponentConfigUpdateENB.c	\
-	E2nodeComponentConfigUpdateAck.c	\
-	E2nodeComponentType.c	\
-	E2nodeComponentID.c	\
-	E2nodeComponentGNB-CU-UP-ID.c	\
-	E2nodeComponentGNB-DU-ID.c	\
-	ENB-ID.c	\
-	ENB-ID-Choice.c	\
-	ENGNB-ID.c	\
-	GlobalE2node-ID.c	\
-	GlobalE2node-en-gNB-ID.c	\
-	GlobalE2node-eNB-ID.c	\
-	GlobalE2node-gNB-ID.c	\
-	GlobalE2node-ng-eNB-ID.c	\
-	GlobalENB-ID.c	\
-	GlobalenGNB-ID.c	\
-	GlobalgNB-ID.c	\
-	GlobalngeNB-ID.c	\
-	GlobalRIC-ID.c	\
-	GNB-CU-UP-ID.c	\
-	GNB-DU-ID.c	\
-	GNB-ID-Choice.c	\
-	PLMN-Identity.c	\
-	RANfunctionDefinition.c	\
-	RANfunctionID.c	\
-	RANfunctionOID.c	\
-	RANfunctionRevision.c	\
-	RICactionDefinition.c	\
-	RICactionID.c	\
-	RICactionType.c	\
-	RICcallProcessID.c	\
-	RICcontrolAckRequest.c	\
-	RICcontrolHeader.c	\
-	RICcontrolMessage.c	\
-	RICcontrolOutcome.c	\
-	RICcontrolStatus.c	\
-	RICeventTriggerDefinition.c	\
-	RICindicationHeader.c	\
-	RICindicationMessage.c	\
-	RICindicationSN.c	\
-	RICindicationType.c	\
-	RICrequestID.c	\
-	RICsubsequentAction.c	\
-	RICsubsequentActionType.c	\
-	RICtimeToWait.c	\
-	TimeToWait.c	\
-	TNLinformation.c	\
-	TNLusage.c	\
-	TypeOfError.c	\
 	E2AP-PDU.c	\
 	InitiatingMessage.c	\
 	SuccessfulOutcome.c	\
@@ -90,6 +16,9 @@
 	RICsubscriptionDeleteRequest.c	\
 	RICsubscriptionDeleteResponse.c	\
 	RICsubscriptionDeleteFailure.c	\
+	RICsubscriptionDeleteRequired.c	\
+	RICsubscription-List-withCause.c	\
+	RICsubscription-withCause-Item.c	\
 	RICindication.c	\
 	RICcontrolRequest.c	\
 	RICcontrolAcknowledge.c	\
@@ -108,11 +37,21 @@
 	E2connectionSetupFailed-Item.c	\
 	E2connectionUpdateFailure.c	\
 	E2nodeConfigurationUpdate.c	\
+	E2nodeComponentConfigAddition-List.c	\
+	E2nodeComponentConfigAddition-Item.c	\
 	E2nodeComponentConfigUpdate-List.c	\
 	E2nodeComponentConfigUpdate-Item.c	\
+	E2nodeComponentConfigRemoval-List.c	\
+	E2nodeComponentConfigRemoval-Item.c	\
+	E2nodeTNLassociationRemoval-List.c	\
+	E2nodeTNLassociationRemoval-Item.c	\
 	E2nodeConfigurationUpdateAcknowledge.c	\
+	E2nodeComponentConfigAdditionAck-List.c	\
+	E2nodeComponentConfigAdditionAck-Item.c	\
 	E2nodeComponentConfigUpdateAck-List.c	\
 	E2nodeComponentConfigUpdateAck-Item.c	\
+	E2nodeComponentConfigRemovalAck-List.c	\
+	E2nodeComponentConfigRemovalAck-Item.c	\
 	E2nodeConfigurationUpdateFailure.c	\
 	ResetRequest.c	\
 	ResetResponse.c	\
@@ -125,83 +64,89 @@
 	RANfunctionsIDcause-List.c	\
 	RANfunctionIDcause-Item.c	\
 	RICserviceUpdateFailure.c	\
-	RICserviceQuery.c
+	RICserviceQuery.c	\
+	AMFName.c	\
+	Cause.c	\
+	CauseE2node.c	\
+	CauseMisc.c	\
+	CauseProtocol.c	\
+	CauseRICrequest.c	\
+	CauseRICservice.c	\
+	CauseTransport.c	\
+	CriticalityDiagnostics.c	\
+	CriticalityDiagnostics-IE-List.c	\
+	CriticalityDiagnostics-IE-Item.c	\
+	E2nodeComponentConfiguration.c	\
+	E2nodeComponentConfigurationAck.c	\
+	E2nodeComponentInterfaceType.c	\
+	E2nodeComponentID.c	\
+	E2nodeComponentInterfaceE1.c	\
+	E2nodeComponentInterfaceF1.c	\
+	E2nodeComponentInterfaceNG.c	\
+	E2nodeComponentInterfaceS1.c	\
+	E2nodeComponentInterfaceX2.c	\
+	E2nodeComponentInterfaceXn.c	\
+	E2nodeComponentInterfaceW1.c	\
+	ENB-ID.c	\
+	ENB-ID-Choice.c	\
+	ENGNB-ID.c	\
+	GlobalE2node-ID.c	\
+	GlobalE2node-en-gNB-ID.c	\
+	GlobalE2node-eNB-ID.c	\
+	GlobalE2node-gNB-ID.c	\
+	GlobalE2node-ng-eNB-ID.c	\
+	GlobalENB-ID.c	\
+	GlobalenGNB-ID.c	\
+	GlobalgNB-ID.c	\
+	GlobalngeNB-ID.c	\
+	GlobalNG-RANNode-ID.c	\
+	GlobalRIC-ID.c	\
+	GNB-CU-UP-ID.c	\
+	GNB-DU-ID.c	\
+	GNB-ID-Choice.c	\
+	MMEname.c	\
+	NGENB-DU-ID.c	\
+	PLMN-Identity.c	\
+	RANfunctionDefinition.c	\
+	RANfunctionID.c	\
+	RANfunctionOID.c	\
+	RANfunctionRevision.c	\
+	RICactionDefinition.c	\
+	RICactionID.c	\
+	RICactionType.c	\
+	RICcallProcessID.c	\
+	RICcontrolAckRequest.c	\
+	RICcontrolHeader.c	\
+	RICcontrolMessage.c	\
+	RICcontrolOutcome.c	\
+	RICeventTriggerDefinition.c	\
+	RICindicationHeader.c	\
+	RICindicationMessage.c	\
+	RICindicationSN.c	\
+	RICindicationType.c	\
+	RICrequestID.c	\
+	RICsubsequentAction.c	\
+	RICsubsequentActionType.c	\
+	RICtimeToWait.c	\
+	TimeToWait.c	\
+	TNLinformation.c	\
+	TNLusage.c	\
+	TransactionID.c	\
+	TypeOfError.c	\
+	Criticality.c	\
+	Presence.c	\
+	ProcedureCode.c	\
+	ProtocolIE-ID.c	\
+	TriggeringMessage.c	\
+	ProtocolIE-Container.c	\
+	ProtocolIE-SingleContainer.c	\
+	ProtocolIE-Field.c	\
+	ProtocolIE-ContainerPair.c	\
+	ProtocolIE-FieldPair.c	\
+	ProtocolIE-ContainerList.c	\
+	ProtocolIE-ContainerPairList.c
 
 ASN_MODULE_HDRS=	\
-	Criticality.h	\
-	Presence.h	\
-	ProcedureCode.h	\
-	ProtocolIE-ID.h	\
-	TriggeringMessage.h	\
-	ProtocolIE-Container.h	\
-	ProtocolIE-SingleContainer.h	\
-	ProtocolIE-Field.h	\
-	ProtocolIE-ContainerPair.h	\
-	ProtocolIE-FieldPair.h	\
-	ProtocolIE-ContainerList.h	\
-	ProtocolIE-ContainerPairList.h	\
-	Cause.h	\
-	CauseMisc.h	\
-	CauseProtocol.h	\
-	CauseRIC.h	\
-	CauseRICservice.h	\
-	CauseTransport.h	\
-	CriticalityDiagnostics.h	\
-	CriticalityDiagnostics-IE-List.h	\
-	CriticalityDiagnostics-IE-Item.h	\
-	E2nodeComponentConfigUpdate.h	\
-	E2nodeComponentConfigUpdateGNB.h	\
-	E2nodeComponentConfigUpdateENgNB.h	\
-	E2nodeComponentConfigUpdateNGeNB.h	\
-	E2nodeComponentConfigUpdateENB.h	\
-	E2nodeComponentConfigUpdateAck.h	\
-	E2nodeComponentType.h	\
-	E2nodeComponentID.h	\
-	E2nodeComponentGNB-CU-UP-ID.h	\
-	E2nodeComponentGNB-DU-ID.h	\
-	ENB-ID.h	\
-	ENB-ID-Choice.h	\
-	ENGNB-ID.h	\
-	GlobalE2node-ID.h	\
-	GlobalE2node-en-gNB-ID.h	\
-	GlobalE2node-eNB-ID.h	\
-	GlobalE2node-gNB-ID.h	\
-	GlobalE2node-ng-eNB-ID.h	\
-	GlobalENB-ID.h	\
-	GlobalenGNB-ID.h	\
-	GlobalgNB-ID.h	\
-	GlobalngeNB-ID.h	\
-	GlobalRIC-ID.h	\
-	GNB-CU-UP-ID.h	\
-	GNB-DU-ID.h	\
-	GNB-ID-Choice.h	\
-	PLMN-Identity.h	\
-	RANfunctionDefinition.h	\
-	RANfunctionID.h	\
-	RANfunctionOID.h	\
-	RANfunctionRevision.h	\
-	RICactionDefinition.h	\
-	RICactionID.h	\
-	RICactionType.h	\
-	RICcallProcessID.h	\
-	RICcontrolAckRequest.h	\
-	RICcontrolHeader.h	\
-	RICcontrolMessage.h	\
-	RICcontrolOutcome.h	\
-	RICcontrolStatus.h	\
-	RICeventTriggerDefinition.h	\
-	RICindicationHeader.h	\
-	RICindicationMessage.h	\
-	RICindicationSN.h	\
-	RICindicationType.h	\
-	RICrequestID.h	\
-	RICsubsequentAction.h	\
-	RICsubsequentActionType.h	\
-	RICtimeToWait.h	\
-	TimeToWait.h	\
-	TNLinformation.h	\
-	TNLusage.h	\
-	TypeOfError.h	\
 	E2AP-PDU.h	\
 	InitiatingMessage.h	\
 	SuccessfulOutcome.h	\
@@ -219,6 +164,9 @@
 	RICsubscriptionDeleteRequest.h	\
 	RICsubscriptionDeleteResponse.h	\
 	RICsubscriptionDeleteFailure.h	\
+	RICsubscriptionDeleteRequired.h	\
+	RICsubscription-List-withCause.h	\
+	RICsubscription-withCause-Item.h	\
 	RICindication.h	\
 	RICcontrolRequest.h	\
 	RICcontrolAcknowledge.h	\
@@ -237,11 +185,21 @@
 	E2connectionSetupFailed-Item.h	\
 	E2connectionUpdateFailure.h	\
 	E2nodeConfigurationUpdate.h	\
+	E2nodeComponentConfigAddition-List.h	\
+	E2nodeComponentConfigAddition-Item.h	\
 	E2nodeComponentConfigUpdate-List.h	\
 	E2nodeComponentConfigUpdate-Item.h	\
+	E2nodeComponentConfigRemoval-List.h	\
+	E2nodeComponentConfigRemoval-Item.h	\
+	E2nodeTNLassociationRemoval-List.h	\
+	E2nodeTNLassociationRemoval-Item.h	\
 	E2nodeConfigurationUpdateAcknowledge.h	\
+	E2nodeComponentConfigAdditionAck-List.h	\
+	E2nodeComponentConfigAdditionAck-Item.h	\
 	E2nodeComponentConfigUpdateAck-List.h	\
 	E2nodeComponentConfigUpdateAck-Item.h	\
+	E2nodeComponentConfigRemovalAck-List.h	\
+	E2nodeComponentConfigRemovalAck-Item.h	\
 	E2nodeConfigurationUpdateFailure.h	\
 	ResetRequest.h	\
 	ResetResponse.h	\
@@ -254,7 +212,87 @@
 	RANfunctionsIDcause-List.h	\
 	RANfunctionIDcause-Item.h	\
 	RICserviceUpdateFailure.h	\
-	RICserviceQuery.h
+	RICserviceQuery.h	\
+	AMFName.h	\
+	Cause.h	\
+	CauseE2node.h	\
+	CauseMisc.h	\
+	CauseProtocol.h	\
+	CauseRICrequest.h	\
+	CauseRICservice.h	\
+	CauseTransport.h	\
+	CriticalityDiagnostics.h	\
+	CriticalityDiagnostics-IE-List.h	\
+	CriticalityDiagnostics-IE-Item.h	\
+	E2nodeComponentConfiguration.h	\
+	E2nodeComponentConfigurationAck.h	\
+	E2nodeComponentInterfaceType.h	\
+	E2nodeComponentID.h	\
+	E2nodeComponentInterfaceE1.h	\
+	E2nodeComponentInterfaceF1.h	\
+	E2nodeComponentInterfaceNG.h	\
+	E2nodeComponentInterfaceS1.h	\
+	E2nodeComponentInterfaceX2.h	\
+	E2nodeComponentInterfaceXn.h	\
+	E2nodeComponentInterfaceW1.h	\
+	ENB-ID.h	\
+	ENB-ID-Choice.h	\
+	ENGNB-ID.h	\
+	GlobalE2node-ID.h	\
+	GlobalE2node-en-gNB-ID.h	\
+	GlobalE2node-eNB-ID.h	\
+	GlobalE2node-gNB-ID.h	\
+	GlobalE2node-ng-eNB-ID.h	\
+	GlobalENB-ID.h	\
+	GlobalenGNB-ID.h	\
+	GlobalgNB-ID.h	\
+	GlobalngeNB-ID.h	\
+	GlobalNG-RANNode-ID.h	\
+	GlobalRIC-ID.h	\
+	GNB-CU-UP-ID.h	\
+	GNB-DU-ID.h	\
+	GNB-ID-Choice.h	\
+	MMEname.h	\
+	NGENB-DU-ID.h	\
+	PLMN-Identity.h	\
+	RANfunctionDefinition.h	\
+	RANfunctionID.h	\
+	RANfunctionOID.h	\
+	RANfunctionRevision.h	\
+	RICactionDefinition.h	\
+	RICactionID.h	\
+	RICactionType.h	\
+	RICcallProcessID.h	\
+	RICcontrolAckRequest.h	\
+	RICcontrolHeader.h	\
+	RICcontrolMessage.h	\
+	RICcontrolOutcome.h	\
+	RICeventTriggerDefinition.h	\
+	RICindicationHeader.h	\
+	RICindicationMessage.h	\
+	RICindicationSN.h	\
+	RICindicationType.h	\
+	RICrequestID.h	\
+	RICsubsequentAction.h	\
+	RICsubsequentActionType.h	\
+	RICtimeToWait.h	\
+	TimeToWait.h	\
+	TNLinformation.h	\
+	TNLusage.h	\
+	TransactionID.h	\
+	TypeOfError.h	\
+	Criticality.h	\
+	Presence.h	\
+	ProcedureCode.h	\
+	ProtocolIE-ID.h	\
+	TriggeringMessage.h	\
+	ProtocolIE-Container.h	\
+	ProtocolIE-SingleContainer.h	\
+	ProtocolIE-Field.h	\
+	ProtocolIE-ContainerPair.h	\
+	ProtocolIE-FieldPair.h	\
+	ProtocolIE-ContainerList.h	\
+	ProtocolIE-ContainerPairList.h
 
 ASN_MODULE_HDRS+=ANY.h
 ASN_MODULE_SRCS+=ANY.c
diff --git a/e2sim/src/ASN1c/NGENB-DU-ID.c b/e2sim/src/ASN1c/NGENB-DU-ID.c
new file mode 100644
index 0000000..7842307
--- /dev/null
+++ b/e2sim/src/ASN1c/NGENB-DU-ID.c
@@ -0,0 +1,67 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#include "NGENB-DU-ID.h"
+
+int
+NGENB_DU_ID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
+			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
+	const INTEGER_t *st = (const INTEGER_t *)sptr;
+	long value;
+	
+	if(!sptr) {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: value not given (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+	
+	if(asn_INTEGER2long(st, &value)) {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: value too large (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+	
+	if((value >= 0 && value <= 68719476735)) {
+		/* Constraint check succeeded */
+		return 0;
+	} else {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: constraint failed (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+}
+
+/*
+ * This type is implemented using INTEGER,
+ * so here we adjust the DEF accordingly.
+ */
+asn_per_constraints_t asn_PER_type_NGENB_DU_ID_constr_1 CC_NOTUSED = {
+	{ APC_CONSTRAINED,	 36, -1,  0,  68719476735 }	/* (0..68719476735) */,
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	0, 0	/* No PER value map */
+};
+static const ber_tlv_tag_t asn_DEF_NGENB_DU_ID_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
+};
+asn_TYPE_descriptor_t asn_DEF_NGENB_DU_ID = {
+	"NGENB-DU-ID",
+	"NGENB-DU-ID",
+	&asn_OP_INTEGER,
+	asn_DEF_NGENB_DU_ID_tags_1,
+	sizeof(asn_DEF_NGENB_DU_ID_tags_1)
+		/sizeof(asn_DEF_NGENB_DU_ID_tags_1[0]), /* 1 */
+	asn_DEF_NGENB_DU_ID_tags_1,	/* Same as above */
+	sizeof(asn_DEF_NGENB_DU_ID_tags_1)
+		/sizeof(asn_DEF_NGENB_DU_ID_tags_1[0]), /* 1 */
+	{ 0, &asn_PER_type_NGENB_DU_ID_constr_1, NGENB_DU_ID_constraint },
+	0, 0,	/* No members */
+	0	/* No specifics */
+};
+
diff --git a/e2sim/src/ASN1c/NGENB-DU-ID.h b/e2sim/src/ASN1c/NGENB-DU-ID.h
new file mode 100644
index 0000000..cb33684
--- /dev/null
+++ b/e2sim/src/ASN1c/NGENB-DU-ID.h
@@ -0,0 +1,44 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#ifndef	_NGENB_DU_ID_H_
+#define	_NGENB_DU_ID_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "INTEGER.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* NGENB-DU-ID */
+typedef INTEGER_t	 NGENB_DU_ID_t;
+
+/* Implementation */
+extern asn_per_constraints_t asn_PER_type_NGENB_DU_ID_constr_1;
+extern asn_TYPE_descriptor_t asn_DEF_NGENB_DU_ID;
+asn_struct_free_f NGENB_DU_ID_free;
+asn_struct_print_f NGENB_DU_ID_print;
+asn_constr_check_f NGENB_DU_ID_constraint;
+ber_type_decoder_f NGENB_DU_ID_decode_ber;
+der_type_encoder_f NGENB_DU_ID_encode_der;
+xer_type_decoder_f NGENB_DU_ID_decode_xer;
+xer_type_encoder_f NGENB_DU_ID_encode_xer;
+per_type_decoder_f NGENB_DU_ID_decode_uper;
+per_type_encoder_f NGENB_DU_ID_encode_uper;
+per_type_decoder_f NGENB_DU_ID_decode_aper;
+per_type_encoder_f NGENB_DU_ID_encode_aper;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _NGENB_DU_ID_H_ */
+#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/NativeEnumerated_oer.c b/e2sim/src/ASN1c/NativeEnumerated_oer.c
deleted file mode 100644
index ee3c189..0000000
--- a/e2sim/src/ASN1c/NativeEnumerated_oer.c
+++ /dev/null
@@ -1,149 +0,0 @@
-/*
- * Copyright (c) 2017 Lev Walkin <vlm@lionet.info>.
- * All rights reserved.
- * Redistribution and modifications are permitted subject to BSD license.
- */
-#ifndef ASN_DISABLE_OER_SUPPORT
-
-#include <asn_internal.h>
-#include <NativeEnumerated.h>
-#include <errno.h>
-
-static long
-asn__nativeenumerated_convert(const uint8_t *b, const uint8_t *end) {
-    unsigned long value;
-
-    /* Perform the sign initialization */
-    /* Actually value = -(*b >> 7); gains nothing, yet unreadable! */
-    if((*b >> 7)) {
-        value = (unsigned long)(-1);
-    } else {
-        value = 0;
-    }
-
-    /* Conversion engine */
-    for(; b < end; b++) {
-        value = (value << 8) | *b;
-    }
-
-    return value;
-}
-
-asn_dec_rval_t
-NativeEnumerated_decode_oer(const asn_codec_ctx_t *opt_codec_ctx,
-                            const asn_TYPE_descriptor_t *td,
-                            const asn_oer_constraints_t *constraints,
-                            void **nint_ptr, const void *ptr, size_t size) {
-    asn_dec_rval_t rval = {RC_OK, 0};
-    long *native = (long *)*nint_ptr;
-    const uint8_t *b = ptr;
-
-    (void)opt_codec_ctx;
-    (void)constraints;
-
-    if(size < 1) {
-        ASN__DECODE_STARVED;
-    }
-
-    if((*b & 0x80) == 0) {
-        /*
-         * X.696 (08/2015) #11.2 Short form for Enumerated.
-         */
-        if(!native) {
-            native = (long *)(*nint_ptr = CALLOC(1, sizeof(*native)));
-            if(!native) ASN__DECODE_FAILED;
-        }
-
-        *native = *b;
-        rval.consumed = 1;
-    } else {
-        /*
-         * X.696 (08/2015) #11.4 Long form for Enumerated.
-         */
-        size_t length = *b & 0x7f;
-        const uint8_t *bend;
-        long value;
-
-        if(length < 1 || length > sizeof(*native)) {
-            ASN__DECODE_FAILED;
-        }
-        if((1 + length) > size) {
-            ASN__DECODE_STARVED;
-        }
-        b++;
-        bend = b + length;
-
-        value = asn__nativeenumerated_convert(b, bend);
-        if(value < 0) {
-            const asn_INTEGER_specifics_t *specs =
-                (const asn_INTEGER_specifics_t *)td->specifics;
-            if(specs && specs->field_unsigned) {
-                ASN__DECODE_FAILED;
-            }
-        }
-
-        if(!native) {
-            native = (long *)(*nint_ptr = CALLOC(1, sizeof(*native)));
-            if(!native) ASN__DECODE_FAILED;
-        }
-
-        *native = value;
-
-        rval.consumed = (1 + length);
-    }
-
-    return rval;
-}
-
-/*
- * Encode as Canonical OER.
- */
-asn_enc_rval_t
-NativeEnumerated_encode_oer(const asn_TYPE_descriptor_t *td,
-                            const asn_oer_constraints_t *constraints,
-                            const void *sptr, asn_app_consume_bytes_f *cb,
-                            void *app_key) {
-    asn_enc_rval_t er = {0,0,0};
-    long native;
-
-    (void)constraints;
-
-    if(!sptr) ASN__ENCODE_FAILED;
-
-    native = *(const long *)sptr;
-
-    if(native >= 0 && native <= 127) {
-        /* #11.2 Short form */
-        uint8_t b = native;
-        er.encoded = 1;
-        if(cb(&b, er.encoded, app_key) < 0) {
-            ASN__ENCODE_FAILED;
-        }
-        ASN__ENCODED_OK(er);
-    } else {
-        /* #11.2 Long form */
-        uint8_t buf[1 + sizeof(native)];
-        uint8_t *b = &buf[sizeof(native)];  /* Last addressable */
-        long final_pattern = -1 * (native < 0);
-
-        for(;;) {
-            *b-- = native;
-            native >>= 8;
-            if(native == final_pattern) {
-                if(final_pattern) {
-                    if((b[1] & 0x80)) break;
-                } else {
-                    if(!(b[1] & 0x80)) break;
-                }
-            }
-        }
-        *b = 0x80 | (&buf[sizeof(native)] - b);
-        er.encoded = 1 + (&buf[sizeof(native)] - b);
-        if(cb(b, er.encoded, app_key) < 0) {
-            ASN__ENCODE_FAILED;
-        }
-        ASN__ENCODED_OK(er);
-    }
-}
-
-#endif  /* ASN_DISABLE_OER_SUPPORT */
diff --git a/e2sim/src/ASN1c/NativeInteger_oer.c b/e2sim/src/ASN1c/NativeInteger_oer.c
deleted file mode 100644
index 411413a..0000000
--- a/e2sim/src/ASN1c/NativeInteger_oer.c
+++ /dev/null
@@ -1,99 +0,0 @@
-/*
- * Copyright (c) 2017 Lev Walkin <vlm@lionet.info>.
- * All rights reserved.
- * Redistribution and modifications are permitted subject to BSD license.
- */
-#ifndef ASN_DISABLE_OER_SUPPORT
-
-#include <asn_internal.h>
-#include <NativeInteger.h>
-#include <errno.h>
-
-asn_dec_rval_t
-NativeInteger_decode_oer(const asn_codec_ctx_t *opt_codec_ctx,
-                         const asn_TYPE_descriptor_t *td,
-                         const asn_oer_constraints_t *constraints,
-                         void **nint_ptr, const void *ptr, size_t size) {
-    const asn_INTEGER_specifics_t *specs =
-        (const asn_INTEGER_specifics_t *)td->specifics;
-    asn_dec_rval_t rval = {RC_OK, 0};
-    long *native = (long *)*nint_ptr;
-    INTEGER_t tmpint;
-    INTEGER_t *tmpintptr = &tmpint;
-
-    memset(&tmpint, 0, sizeof(tmpint));
-
-    if(!native) {
-        native = (long *)(*nint_ptr = CALLOC(1, sizeof(*native)));
-        if(!native) ASN__DECODE_FAILED;
-    }
-
-    /*
-     * OPTIMIZATION: Encode directly rather than passing through INTEGER.
-     * Saves a memory allocation.
-     */
-    rval = INTEGER_decode_oer(opt_codec_ctx, td, constraints,
-                              (void **)&tmpintptr, ptr, size);
-    if(rval.code != RC_OK) {
-        ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint);
-        return rval;
-    }
-
-    if(specs && specs->field_unsigned) {
-        unsigned long ul;
-        int ok = asn_INTEGER2ulong(&tmpint, &ul) == 0;
-        ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint);
-        if(ok) {
-            *native = ul;
-        } else {
-            rval.code = RC_FAIL;
-            return rval;
-        }
-    } else {
-        long l;
-        int ok = asn_INTEGER2long(&tmpint, &l) == 0;
-        ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint);
-        if(ok) {
-            *native = l;
-        } else {
-            rval.code = RC_FAIL;
-            return rval;
-        }
-    }
-
-    return rval;
-}
-
-/*
- * Encode as Canonical OER.
- */
-asn_enc_rval_t
-NativeInteger_encode_oer(const asn_TYPE_descriptor_t *td,
-                         const asn_oer_constraints_t *constraints,
-                         const void *sptr, asn_app_consume_bytes_f *cb,
-                         void *app_key) {
-    const asn_INTEGER_specifics_t *specs =
-        (const asn_INTEGER_specifics_t *)td->specifics;
-    INTEGER_t tmpint;
-    long native;
-
-    if(!sptr) ASN__ENCODE_FAILED;
-
-    native = *(const long *)sptr;
-    memset(&tmpint, 0, sizeof(tmpint));
-
-    ASN_DEBUG("Encoding %s %ld as NativeInteger", td ? td->name : "", native);
-
-    if((specs && specs->field_unsigned) ? asn_ulong2INTEGER(&tmpint, native)
-                                        : asn_long2INTEGER(&tmpint, native)) {
-        ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint);
-        ASN__ENCODE_FAILED;
-    } else {
-        asn_enc_rval_t er =
-            INTEGER_encode_oer(td, constraints, &tmpint, cb, app_key);
-        ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_INTEGER, &tmpint);
-        return er;
-    }
-}
-
-#endif  /* ASN_DISABLE_OER_SUPPORT */
diff --git a/e2sim/src/ASN1c/OCTET_STRING_oer.c b/e2sim/src/ASN1c/OCTET_STRING_oer.c
deleted file mode 100644
index c16faea..0000000
--- a/e2sim/src/ASN1c/OCTET_STRING_oer.c
+++ /dev/null
@@ -1,171 +0,0 @@
-/*
- * Copyright (c) 2017 Lev Walkin <vlm@lionet.info>.
- * All rights reserved.
- * Redistribution and modifications are permitted subject to BSD license.
- */
-#ifndef ASN_DISABLE_OER_SUPPORT
-
-#include <asn_internal.h>
-#include <OCTET_STRING.h>
-#include <errno.h>
-
-asn_dec_rval_t
-OCTET_STRING_decode_oer(const asn_codec_ctx_t *opt_codec_ctx,
-                        const asn_TYPE_descriptor_t *td,
-                        const asn_oer_constraints_t *constraints, void **sptr,
-                        const void *ptr, size_t size) {
-    const asn_OCTET_STRING_specifics_t *specs =
-        td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics
-                      : &asn_SPC_OCTET_STRING_specs;
-    OCTET_STRING_t *st = (OCTET_STRING_t *)*sptr;
-    const asn_oer_constraints_t *cts =
-        constraints ? constraints : td->encoding_constraints.oer_constraints;
-    ssize_t ct_size = cts ? cts->size : -1;
-    asn_dec_rval_t rval = {RC_OK, 0};
-    size_t expected_length = 0;
-
-    size_t unit_bytes;
-    switch(specs->subvariant) {
-    default:
-    case ASN_OSUBV_BIT:
-        ASN_DEBUG("Invalid use of OCTET STRING to decode BIT STRING");
-        ASN__DECODE_FAILED;
-    case ASN_OSUBV_ANY:
-        /* Fall through */
-    case ASN_OSUBV_STR:
-        unit_bytes = 1;
-        break;
-    case ASN_OSUBV_U16:
-        unit_bytes = 2;
-        break;
-    case ASN_OSUBV_U32:
-        unit_bytes = 4;
-        break;
-    }
-
-    (void)opt_codec_ctx;
-
-    if(!st) {
-        st = (OCTET_STRING_t *)(*sptr = CALLOC(1, specs->struct_size));
-        if(!st) ASN__DECODE_FAILED;
-    }
-
-    if(ct_size >= 0) {
-        expected_length = unit_bytes * ct_size;
-    } else {
-        /*
-         * X.696 (08/2015) #27.2
-         * Encode length determinant as _number of octets_, but only
-         * if upper bound is not equal to lower bound.
-         */
-        ssize_t len_len = oer_fetch_length(ptr, size, &expected_length);
-        if(len_len > 0) {
-            rval.consumed = len_len;
-            ptr = (const char *)ptr + len_len;
-            size -= len_len;
-        } else if(len_len == 0) {
-            ASN__DECODE_STARVED;
-        } else if(len_len < 0) {
-            ASN__DECODE_FAILED;
-        }
-
-        if(expected_length % unit_bytes != 0) {
-            ASN_DEBUG(
-                "Data size %" ASN_PRI_SIZE " bytes is not consistent with multiplier %" ASN_PRI_SIZE "",
-                expected_length, unit_bytes);
-            ASN__DECODE_FAILED;
-        }
-    }
-
-    if(size < expected_length) {
-        ASN__DECODE_STARVED;
-    } else {
-        uint8_t *buf = MALLOC(expected_length + 1);
-        if(buf == NULL) {
-            ASN__DECODE_FAILED;
-        } else {
-            memcpy(buf, ptr, expected_length);
-            buf[expected_length] = '\0';
-        }
-        FREEMEM(st->buf);
-        st->buf = buf;
-        st->size = expected_length;
-
-        rval.consumed += expected_length;
-        return rval;
-    }
-}
-
-/*
- * Encode as Canonical OER.
- */
-asn_enc_rval_t
-OCTET_STRING_encode_oer(const asn_TYPE_descriptor_t *td,
-                        const asn_oer_constraints_t *constraints,
-                        const void *sptr, asn_app_consume_bytes_f *cb,
-                        void *app_key) {
-    const asn_OCTET_STRING_specifics_t *specs =
-        td->specifics ? (const asn_OCTET_STRING_specifics_t *)td->specifics
-                      : &asn_SPC_OCTET_STRING_specs;
-    const OCTET_STRING_t *st = (const OCTET_STRING_t *)sptr;
-    const asn_oer_constraints_t *cts =
-        constraints ? constraints : td->encoding_constraints.oer_constraints;
-    ssize_t ct_size = cts ? cts->size : -1;
-    asn_enc_rval_t er = {0, 0, 0};
-
-    if(!st) ASN__ENCODE_FAILED;
-
-    ASN_DEBUG("Encoding %s %" ASN_PRI_SIZE " as OCTET STRING", td ? td->name : "", st->size);
-
-    if(ct_size >= 0) {
-        /*
-         * Check that available data matches the constraint
-         */
-        size_t unit_bytes;
-        switch(specs->subvariant) {
-        default:
-        case ASN_OSUBV_BIT:
-            ASN_DEBUG("Invalid use of OCTET STRING to encode BIT STRING");
-            ASN__ENCODE_FAILED;
-        case ASN_OSUBV_ANY:
-            /* Fall through */
-        case ASN_OSUBV_STR:
-            unit_bytes = 1;
-            break;
-        case ASN_OSUBV_U16:
-            unit_bytes = 2;
-            break;
-        case ASN_OSUBV_U32:
-            unit_bytes = 4;
-            break;
-        }
-
-        if(st->size != unit_bytes * (size_t)ct_size) {
-            ASN_DEBUG(
-                "Trying to encode %s (%" ASN_PRI_SIZE " bytes) which doesn't fit SIZE "
-                "constraint (%" ASN_PRI_SIZE ")",
-                td->name, st->size, ct_size);
-            ASN__ENCODE_FAILED;
-        }
-    } else {
-        /*
-         * X.696 (08/2015) #27.2
-         * Encode length determinant as _number of octets_, but only
-         * if upper bound is not equal to lower bound.
-         */
-        ssize_t ret = oer_serialize_length(st->size, cb, app_key);
-        if(ret < 0) {
-            ASN__ENCODE_FAILED;
-        }
-        er.encoded += ret;
-    }
-
-    er.encoded += st->size;
-    if(cb(st->buf, st->size, app_key) < 0) {
-        ASN__ENCODE_FAILED;
-    } else {
-        ASN__ENCODED_OK(er);
-    }
-}
-
-#endif  /* ASN_DISABLE_OER_SUPPORT */
diff --git a/e2sim/src/ASN1c/OPEN_TYPE_oer.c b/e2sim/src/ASN1c/OPEN_TYPE_oer.c
deleted file mode 100644
index dd2f5c6..0000000
--- a/e2sim/src/ASN1c/OPEN_TYPE_oer.c
+++ /dev/null
@@ -1,92 +0,0 @@
-/*
- * Copyright (c) 2017 Lev Walkin <vlm@lionet.info>. All rights reserved.
- * Redistribution and modifications are permitted subject to BSD license.
- */
-#include <asn_internal.h>
-#include <OPEN_TYPE.h>
-#include <constr_CHOICE.h>
-#include <errno.h>
-
-asn_dec_rval_t
-OPEN_TYPE_oer_get(const asn_codec_ctx_t *opt_codec_ctx,
-                  const asn_TYPE_descriptor_t *td, void *sptr,
-                  asn_TYPE_member_t *elm, const void *ptr, size_t size) {
-    asn_type_selector_result_t selected;
-    void *memb_ptr;   /* Pointer to the member */
-    void **memb_ptr2; /* Pointer to that pointer */
-    void *inner_value;
-    asn_dec_rval_t rv;
-    size_t ot_ret;
-
-
-    if(!(elm->flags & ATF_OPEN_TYPE)) {
-        ASN__DECODE_FAILED;
-    }
-
-    if(!elm->type_selector) {
-        ASN_DEBUG("Type selector is not defined for Open Type %s->%s->%s",
-                  td->name, elm->name, elm->type->name);
-        ASN__DECODE_FAILED;
-    }
-
-    selected = elm->type_selector(td, sptr);
-    if(!selected.presence_index) {
-        ASN__DECODE_FAILED;
-    }
-
-    /* Fetch the pointer to this member */
-    if(elm->flags & ATF_POINTER) {
-        memb_ptr2 = (void **)((char *)sptr + elm->memb_offset);
-    } else {
-        memb_ptr = (char *)sptr + elm->memb_offset;
-        memb_ptr2 = &memb_ptr;
-    }
-    if(*memb_ptr2 != NULL) {
-        /* Make sure we reset the structure first before encoding */
-        if(CHOICE_variant_set_presence(elm->type, *memb_ptr2, 0) != 0) {
-            ASN__DECODE_FAILED;
-        }
-    }
-
-    inner_value =
-        (char *)*memb_ptr2
-        + elm->type->elements[selected.presence_index - 1].memb_offset;
-
-    ot_ret = oer_open_type_get(opt_codec_ctx, selected.type_descriptor, NULL,
-                               &inner_value, ptr, size);
-    switch(ot_ret) {
-    default:
-        if(CHOICE_variant_set_presence(elm->type, *memb_ptr2,
-                                       selected.presence_index)
-           == 0) {
-            rv.code = RC_OK;
-            rv.consumed = ot_ret;
-            return rv;
-        } else {
-            /* Oh, now a full-blown failure failure */
-        }
-        /* Fall through */
-    case -1:
-        rv.code = RC_FAIL;
-        rv.consumed = ot_ret;
-        break;
-    case 0:
-        rv.code = RC_WMORE;
-        rv.consumed = 0;
-        break;
-    }
-
-    if(*memb_ptr2) {
-        const asn_CHOICE_specifics_t *specs =
-            selected.type_descriptor->specifics;
-        if(elm->flags & ATF_POINTER) {
-            ASN_STRUCT_FREE(*selected.type_descriptor, inner_value);
-            *memb_ptr2 = NULL;
-        } else {
-            ASN_STRUCT_FREE_CONTENTS_ONLY(*selected.type_descriptor,
-                                          inner_value);
-            memset(*memb_ptr2, 0, specs->struct_size);
-        }
-    }
-    return rv;
-}
diff --git a/e2sim/src/ASN1c/PLMN-Identity.c b/e2sim/src/ASN1c/PLMN-Identity.c
index 3fb2bba..25fb17d 100644
--- a/e2sim/src/ASN1c/PLMN-Identity.c
+++ b/e2sim/src/ASN1c/PLMN-Identity.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "PLMN-Identity.h"
diff --git a/e2sim/src/ASN1c/PLMN-Identity.h b/e2sim/src/ASN1c/PLMN-Identity.h
index 7210120..f8374fc 100644
--- a/e2sim/src/ASN1c/PLMN-Identity.h
+++ b/e2sim/src/ASN1c/PLMN-Identity.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_PLMN_Identity_H_
diff --git a/e2sim/src/ASN1c/Presence.c b/e2sim/src/ASN1c/Presence.c
index 1669907..31a71b5 100644
--- a/e2sim/src/ASN1c/Presence.c
+++ b/e2sim/src/ASN1c/Presence.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-CommonDataTypes"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "Presence.h"
diff --git a/e2sim/src/ASN1c/Presence.h b/e2sim/src/ASN1c/Presence.h
index 0e89a76..3083f55 100644
--- a/e2sim/src/ASN1c/Presence.h
+++ b/e2sim/src/ASN1c/Presence.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-CommonDataTypes"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_Presence_H_
diff --git a/e2sim/src/ASN1c/ProcedureCode.c b/e2sim/src/ASN1c/ProcedureCode.c
index 31cb35c..a2628dc 100644
--- a/e2sim/src/ASN1c/ProcedureCode.c
+++ b/e2sim/src/ASN1c/ProcedureCode.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-CommonDataTypes"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "ProcedureCode.h"
diff --git a/e2sim/src/ASN1c/ProcedureCode.h b/e2sim/src/ASN1c/ProcedureCode.h
index a0a7c7c..cc17d51 100644
--- a/e2sim/src/ASN1c/ProcedureCode.h
+++ b/e2sim/src/ASN1c/ProcedureCode.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-CommonDataTypes"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_ProcedureCode_H_
@@ -46,6 +46,7 @@
 #define ProcedureCode_id_RICsubscriptionDelete	((ProcedureCode_t)9)
 #define ProcedureCode_id_E2nodeConfigurationUpdate	((ProcedureCode_t)10)
 #define ProcedureCode_id_E2connectionUpdate	((ProcedureCode_t)11)
+#define ProcedureCode_id_RICsubscriptionDeleteRequired	((ProcedureCode_t)12)
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/ProtocolIE-Container.c b/e2sim/src/ASN1c/ProtocolIE-Container.c
index 9aa9500..05249bd 100644
--- a/e2sim/src/ASN1c/ProtocolIE-Container.c
+++ b/e2sim/src/ASN1c/ProtocolIE-Container.c
@@ -1,144 +1,149 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-Containers"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "ProtocolIE-Container.h"
 
 #include "ProtocolIE-Field.h"
-asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P0_constr_1 CC_NOTUSED = {
+asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P0_constr_1 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (SIZE(0..65535)) */,
 	0, 0	/* No PER value map */
 };
-asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P1_constr_3 CC_NOTUSED = {
+asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P1_constr_3 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (SIZE(0..65535)) */,
 	0, 0	/* No PER value map */
 };
-asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P2_constr_5 CC_NOTUSED = {
+asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P2_constr_5 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (SIZE(0..65535)) */,
 	0, 0	/* No PER value map */
 };
-asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P3_constr_7 CC_NOTUSED = {
+asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P3_constr_7 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (SIZE(0..65535)) */,
 	0, 0	/* No PER value map */
 };
-asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P4_constr_9 CC_NOTUSED = {
+asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P4_constr_9 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (SIZE(0..65535)) */,
 	0, 0	/* No PER value map */
 };
-asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P5_constr_11 CC_NOTUSED = {
+asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P5_constr_11 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (SIZE(0..65535)) */,
 	0, 0	/* No PER value map */
 };
-asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P6_constr_13 CC_NOTUSED = {
+asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P6_constr_13 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (SIZE(0..65535)) */,
 	0, 0	/* No PER value map */
 };
-asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P7_constr_15 CC_NOTUSED = {
+asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P7_constr_15 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (SIZE(0..65535)) */,
 	0, 0	/* No PER value map */
 };
-asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P8_constr_17 CC_NOTUSED = {
+asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P8_constr_17 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (SIZE(0..65535)) */,
 	0, 0	/* No PER value map */
 };
-asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P9_constr_19 CC_NOTUSED = {
+asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P9_constr_19 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (SIZE(0..65535)) */,
 	0, 0	/* No PER value map */
 };
-asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P10_constr_21 CC_NOTUSED = {
+asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P10_constr_21 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (SIZE(0..65535)) */,
 	0, 0	/* No PER value map */
 };
-asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P11_constr_23 CC_NOTUSED = {
+asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P11_constr_23 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (SIZE(0..65535)) */,
 	0, 0	/* No PER value map */
 };
-asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P12_constr_25 CC_NOTUSED = {
+asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P12_constr_25 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (SIZE(0..65535)) */,
 	0, 0	/* No PER value map */
 };
-asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P13_constr_27 CC_NOTUSED = {
+asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P13_constr_27 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (SIZE(0..65535)) */,
 	0, 0	/* No PER value map */
 };
-asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P14_constr_29 CC_NOTUSED = {
+asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P14_constr_29 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (SIZE(0..65535)) */,
 	0, 0	/* No PER value map */
 };
-asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P15_constr_31 CC_NOTUSED = {
+asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P15_constr_31 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (SIZE(0..65535)) */,
 	0, 0	/* No PER value map */
 };
-asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P16_constr_33 CC_NOTUSED = {
+asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P16_constr_33 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (SIZE(0..65535)) */,
 	0, 0	/* No PER value map */
 };
-asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P17_constr_35 CC_NOTUSED = {
+asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P17_constr_35 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (SIZE(0..65535)) */,
 	0, 0	/* No PER value map */
 };
-asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P18_constr_37 CC_NOTUSED = {
+asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P18_constr_37 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (SIZE(0..65535)) */,
 	0, 0	/* No PER value map */
 };
-asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P19_constr_39 CC_NOTUSED = {
+asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P19_constr_39 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (SIZE(0..65535)) */,
 	0, 0	/* No PER value map */
 };
-asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P20_constr_41 CC_NOTUSED = {
+asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P20_constr_41 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (SIZE(0..65535)) */,
 	0, 0	/* No PER value map */
 };
-asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P21_constr_43 CC_NOTUSED = {
+asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P21_constr_43 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (SIZE(0..65535)) */,
 	0, 0	/* No PER value map */
 };
-asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P22_constr_45 CC_NOTUSED = {
+asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P22_constr_45 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (SIZE(0..65535)) */,
 	0, 0	/* No PER value map */
 };
-asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P23_constr_47 CC_NOTUSED = {
+asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P23_constr_47 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (SIZE(0..65535)) */,
 	0, 0	/* No PER value map */
 };
-asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P24_constr_49 CC_NOTUSED = {
+asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P24_constr_49 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (SIZE(0..65535)) */,
 	0, 0	/* No PER value map */
 };
-asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P25_constr_51 CC_NOTUSED = {
+asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P25_constr_51 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (SIZE(0..65535)) */,
 	0, 0	/* No PER value map */
 };
-asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P0_1[] = {
+asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P26_constr_53 CC_NOTUSED = {
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (SIZE(0..65535)) */,
+	0, 0	/* No PER value map */
+};
+asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P0_1[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -149,31 +154,31 @@
 		""
 		},
 };
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_226P0_tags_1[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_1917P0_tags_1[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P0_specs_1 = {
-	sizeof(struct ProtocolIE_Container_226P0),
-	offsetof(struct ProtocolIE_Container_226P0, _asn_ctx),
+asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P0_specs_1 = {
+	sizeof(struct ProtocolIE_Container_1917P0),
+	offsetof(struct ProtocolIE_Container_1917P0, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P0 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P0 = {
 	"ProtocolIE-Container",
 	"ProtocolIE-Container",
 	&asn_OP_SEQUENCE_OF,
-	asn_DEF_ProtocolIE_Container_226P0_tags_1,
-	sizeof(asn_DEF_ProtocolIE_Container_226P0_tags_1)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P0_tags_1[0]), /* 1 */
-	asn_DEF_ProtocolIE_Container_226P0_tags_1,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_Container_226P0_tags_1)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P0_tags_1[0]), /* 1 */
-	{ 0, &asn_PER_type_ProtocolIE_Container_226P0_constr_1, SEQUENCE_OF_constraint },
-	asn_MBR_ProtocolIE_Container_226P0_1,
+	asn_DEF_ProtocolIE_Container_1917P0_tags_1,
+	sizeof(asn_DEF_ProtocolIE_Container_1917P0_tags_1)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P0_tags_1[0]), /* 1 */
+	asn_DEF_ProtocolIE_Container_1917P0_tags_1,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_Container_1917P0_tags_1)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P0_tags_1[0]), /* 1 */
+	{ 0, &asn_PER_type_ProtocolIE_Container_1917P0_constr_1, SEQUENCE_OF_constraint },
+	asn_MBR_ProtocolIE_Container_1917P0_1,
 	1,	/* Single element */
-	&asn_SPC_ProtocolIE_Container_226P0_specs_1	/* Additional specs */
+	&asn_SPC_ProtocolIE_Container_1917P0_specs_1	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P1_3[] = {
+asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P1_3[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -184,31 +189,31 @@
 		""
 		},
 };
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_226P1_tags_3[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_1917P1_tags_3[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P1_specs_3 = {
-	sizeof(struct ProtocolIE_Container_226P1),
-	offsetof(struct ProtocolIE_Container_226P1, _asn_ctx),
+asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P1_specs_3 = {
+	sizeof(struct ProtocolIE_Container_1917P1),
+	offsetof(struct ProtocolIE_Container_1917P1, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P1 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P1 = {
 	"ProtocolIE-Container",
 	"ProtocolIE-Container",
 	&asn_OP_SEQUENCE_OF,
-	asn_DEF_ProtocolIE_Container_226P1_tags_3,
-	sizeof(asn_DEF_ProtocolIE_Container_226P1_tags_3)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P1_tags_3[0]), /* 1 */
-	asn_DEF_ProtocolIE_Container_226P1_tags_3,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_Container_226P1_tags_3)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P1_tags_3[0]), /* 1 */
-	{ 0, &asn_PER_type_ProtocolIE_Container_226P1_constr_3, SEQUENCE_OF_constraint },
-	asn_MBR_ProtocolIE_Container_226P1_3,
+	asn_DEF_ProtocolIE_Container_1917P1_tags_3,
+	sizeof(asn_DEF_ProtocolIE_Container_1917P1_tags_3)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P1_tags_3[0]), /* 1 */
+	asn_DEF_ProtocolIE_Container_1917P1_tags_3,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_Container_1917P1_tags_3)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P1_tags_3[0]), /* 1 */
+	{ 0, &asn_PER_type_ProtocolIE_Container_1917P1_constr_3, SEQUENCE_OF_constraint },
+	asn_MBR_ProtocolIE_Container_1917P1_3,
 	1,	/* Single element */
-	&asn_SPC_ProtocolIE_Container_226P1_specs_3	/* Additional specs */
+	&asn_SPC_ProtocolIE_Container_1917P1_specs_3	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P2_5[] = {
+asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P2_5[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -219,31 +224,31 @@
 		""
 		},
 };
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_226P2_tags_5[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_1917P2_tags_5[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P2_specs_5 = {
-	sizeof(struct ProtocolIE_Container_226P2),
-	offsetof(struct ProtocolIE_Container_226P2, _asn_ctx),
+asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P2_specs_5 = {
+	sizeof(struct ProtocolIE_Container_1917P2),
+	offsetof(struct ProtocolIE_Container_1917P2, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P2 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P2 = {
 	"ProtocolIE-Container",
 	"ProtocolIE-Container",
 	&asn_OP_SEQUENCE_OF,
-	asn_DEF_ProtocolIE_Container_226P2_tags_5,
-	sizeof(asn_DEF_ProtocolIE_Container_226P2_tags_5)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P2_tags_5[0]), /* 1 */
-	asn_DEF_ProtocolIE_Container_226P2_tags_5,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_Container_226P2_tags_5)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P2_tags_5[0]), /* 1 */
-	{ 0, &asn_PER_type_ProtocolIE_Container_226P2_constr_5, SEQUENCE_OF_constraint },
-	asn_MBR_ProtocolIE_Container_226P2_5,
+	asn_DEF_ProtocolIE_Container_1917P2_tags_5,
+	sizeof(asn_DEF_ProtocolIE_Container_1917P2_tags_5)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P2_tags_5[0]), /* 1 */
+	asn_DEF_ProtocolIE_Container_1917P2_tags_5,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_Container_1917P2_tags_5)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P2_tags_5[0]), /* 1 */
+	{ 0, &asn_PER_type_ProtocolIE_Container_1917P2_constr_5, SEQUENCE_OF_constraint },
+	asn_MBR_ProtocolIE_Container_1917P2_5,
 	1,	/* Single element */
-	&asn_SPC_ProtocolIE_Container_226P2_specs_5	/* Additional specs */
+	&asn_SPC_ProtocolIE_Container_1917P2_specs_5	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P3_7[] = {
+asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P3_7[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -254,31 +259,31 @@
 		""
 		},
 };
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_226P3_tags_7[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_1917P3_tags_7[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P3_specs_7 = {
-	sizeof(struct ProtocolIE_Container_226P3),
-	offsetof(struct ProtocolIE_Container_226P3, _asn_ctx),
+asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P3_specs_7 = {
+	sizeof(struct ProtocolIE_Container_1917P3),
+	offsetof(struct ProtocolIE_Container_1917P3, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P3 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P3 = {
 	"ProtocolIE-Container",
 	"ProtocolIE-Container",
 	&asn_OP_SEQUENCE_OF,
-	asn_DEF_ProtocolIE_Container_226P3_tags_7,
-	sizeof(asn_DEF_ProtocolIE_Container_226P3_tags_7)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P3_tags_7[0]), /* 1 */
-	asn_DEF_ProtocolIE_Container_226P3_tags_7,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_Container_226P3_tags_7)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P3_tags_7[0]), /* 1 */
-	{ 0, &asn_PER_type_ProtocolIE_Container_226P3_constr_7, SEQUENCE_OF_constraint },
-	asn_MBR_ProtocolIE_Container_226P3_7,
+	asn_DEF_ProtocolIE_Container_1917P3_tags_7,
+	sizeof(asn_DEF_ProtocolIE_Container_1917P3_tags_7)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P3_tags_7[0]), /* 1 */
+	asn_DEF_ProtocolIE_Container_1917P3_tags_7,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_Container_1917P3_tags_7)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P3_tags_7[0]), /* 1 */
+	{ 0, &asn_PER_type_ProtocolIE_Container_1917P3_constr_7, SEQUENCE_OF_constraint },
+	asn_MBR_ProtocolIE_Container_1917P3_7,
 	1,	/* Single element */
-	&asn_SPC_ProtocolIE_Container_226P3_specs_7	/* Additional specs */
+	&asn_SPC_ProtocolIE_Container_1917P3_specs_7	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P4_9[] = {
+asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P4_9[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -289,31 +294,31 @@
 		""
 		},
 };
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_226P4_tags_9[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_1917P4_tags_9[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P4_specs_9 = {
-	sizeof(struct ProtocolIE_Container_226P4),
-	offsetof(struct ProtocolIE_Container_226P4, _asn_ctx),
+asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P4_specs_9 = {
+	sizeof(struct ProtocolIE_Container_1917P4),
+	offsetof(struct ProtocolIE_Container_1917P4, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P4 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P4 = {
 	"ProtocolIE-Container",
 	"ProtocolIE-Container",
 	&asn_OP_SEQUENCE_OF,
-	asn_DEF_ProtocolIE_Container_226P4_tags_9,
-	sizeof(asn_DEF_ProtocolIE_Container_226P4_tags_9)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P4_tags_9[0]), /* 1 */
-	asn_DEF_ProtocolIE_Container_226P4_tags_9,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_Container_226P4_tags_9)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P4_tags_9[0]), /* 1 */
-	{ 0, &asn_PER_type_ProtocolIE_Container_226P4_constr_9, SEQUENCE_OF_constraint },
-	asn_MBR_ProtocolIE_Container_226P4_9,
+	asn_DEF_ProtocolIE_Container_1917P4_tags_9,
+	sizeof(asn_DEF_ProtocolIE_Container_1917P4_tags_9)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P4_tags_9[0]), /* 1 */
+	asn_DEF_ProtocolIE_Container_1917P4_tags_9,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_Container_1917P4_tags_9)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P4_tags_9[0]), /* 1 */
+	{ 0, &asn_PER_type_ProtocolIE_Container_1917P4_constr_9, SEQUENCE_OF_constraint },
+	asn_MBR_ProtocolIE_Container_1917P4_9,
 	1,	/* Single element */
-	&asn_SPC_ProtocolIE_Container_226P4_specs_9	/* Additional specs */
+	&asn_SPC_ProtocolIE_Container_1917P4_specs_9	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P5_11[] = {
+asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P5_11[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -324,31 +329,66 @@
 		""
 		},
 };
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_226P5_tags_11[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_1917P5_tags_11[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P5_specs_11 = {
-	sizeof(struct ProtocolIE_Container_226P5),
-	offsetof(struct ProtocolIE_Container_226P5, _asn_ctx),
+asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P5_specs_11 = {
+	sizeof(struct ProtocolIE_Container_1917P5),
+	offsetof(struct ProtocolIE_Container_1917P5, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P5 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P5 = {
 	"ProtocolIE-Container",
 	"ProtocolIE-Container",
 	&asn_OP_SEQUENCE_OF,
-	asn_DEF_ProtocolIE_Container_226P5_tags_11,
-	sizeof(asn_DEF_ProtocolIE_Container_226P5_tags_11)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P5_tags_11[0]), /* 1 */
-	asn_DEF_ProtocolIE_Container_226P5_tags_11,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_Container_226P5_tags_11)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P5_tags_11[0]), /* 1 */
-	{ 0, &asn_PER_type_ProtocolIE_Container_226P5_constr_11, SEQUENCE_OF_constraint },
-	asn_MBR_ProtocolIE_Container_226P5_11,
+	asn_DEF_ProtocolIE_Container_1917P5_tags_11,
+	sizeof(asn_DEF_ProtocolIE_Container_1917P5_tags_11)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P5_tags_11[0]), /* 1 */
+	asn_DEF_ProtocolIE_Container_1917P5_tags_11,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_Container_1917P5_tags_11)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P5_tags_11[0]), /* 1 */
+	{ 0, &asn_PER_type_ProtocolIE_Container_1917P5_constr_11, SEQUENCE_OF_constraint },
+	asn_MBR_ProtocolIE_Container_1917P5_11,
 	1,	/* Single element */
-	&asn_SPC_ProtocolIE_Container_226P5_specs_11	/* Additional specs */
+	&asn_SPC_ProtocolIE_Container_1917P5_specs_11	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P6_13[] = {
+asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P6_13[] = {
+	{ ATF_POINTER, 0, 0,
+		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
+		0,
+		&asn_DEF_RICsubscriptionDeleteRequired_IEs,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		""
+		},
+};
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_1917P6_tags_13[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P6_specs_13 = {
+	sizeof(struct ProtocolIE_Container_1917P6),
+	offsetof(struct ProtocolIE_Container_1917P6, _asn_ctx),
+	0,	/* XER encoding is XMLDelimitedItemList */
+};
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P6 = {
+	"ProtocolIE-Container",
+	"ProtocolIE-Container",
+	&asn_OP_SEQUENCE_OF,
+	asn_DEF_ProtocolIE_Container_1917P6_tags_13,
+	sizeof(asn_DEF_ProtocolIE_Container_1917P6_tags_13)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P6_tags_13[0]), /* 1 */
+	asn_DEF_ProtocolIE_Container_1917P6_tags_13,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_Container_1917P6_tags_13)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P6_tags_13[0]), /* 1 */
+	{ 0, &asn_PER_type_ProtocolIE_Container_1917P6_constr_13, SEQUENCE_OF_constraint },
+	asn_MBR_ProtocolIE_Container_1917P6_13,
+	1,	/* Single element */
+	&asn_SPC_ProtocolIE_Container_1917P6_specs_13	/* Additional specs */
+};
+
+asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P7_15[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -359,31 +399,31 @@
 		""
 		},
 };
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_226P6_tags_13[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_1917P7_tags_15[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P6_specs_13 = {
-	sizeof(struct ProtocolIE_Container_226P6),
-	offsetof(struct ProtocolIE_Container_226P6, _asn_ctx),
+asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P7_specs_15 = {
+	sizeof(struct ProtocolIE_Container_1917P7),
+	offsetof(struct ProtocolIE_Container_1917P7, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P6 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P7 = {
 	"ProtocolIE-Container",
 	"ProtocolIE-Container",
 	&asn_OP_SEQUENCE_OF,
-	asn_DEF_ProtocolIE_Container_226P6_tags_13,
-	sizeof(asn_DEF_ProtocolIE_Container_226P6_tags_13)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P6_tags_13[0]), /* 1 */
-	asn_DEF_ProtocolIE_Container_226P6_tags_13,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_Container_226P6_tags_13)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P6_tags_13[0]), /* 1 */
-	{ 0, &asn_PER_type_ProtocolIE_Container_226P6_constr_13, SEQUENCE_OF_constraint },
-	asn_MBR_ProtocolIE_Container_226P6_13,
+	asn_DEF_ProtocolIE_Container_1917P7_tags_15,
+	sizeof(asn_DEF_ProtocolIE_Container_1917P7_tags_15)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P7_tags_15[0]), /* 1 */
+	asn_DEF_ProtocolIE_Container_1917P7_tags_15,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_Container_1917P7_tags_15)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P7_tags_15[0]), /* 1 */
+	{ 0, &asn_PER_type_ProtocolIE_Container_1917P7_constr_15, SEQUENCE_OF_constraint },
+	asn_MBR_ProtocolIE_Container_1917P7_15,
 	1,	/* Single element */
-	&asn_SPC_ProtocolIE_Container_226P6_specs_13	/* Additional specs */
+	&asn_SPC_ProtocolIE_Container_1917P7_specs_15	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P7_15[] = {
+asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P8_17[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -394,31 +434,31 @@
 		""
 		},
 };
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_226P7_tags_15[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_1917P8_tags_17[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P7_specs_15 = {
-	sizeof(struct ProtocolIE_Container_226P7),
-	offsetof(struct ProtocolIE_Container_226P7, _asn_ctx),
+asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P8_specs_17 = {
+	sizeof(struct ProtocolIE_Container_1917P8),
+	offsetof(struct ProtocolIE_Container_1917P8, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P7 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P8 = {
 	"ProtocolIE-Container",
 	"ProtocolIE-Container",
 	&asn_OP_SEQUENCE_OF,
-	asn_DEF_ProtocolIE_Container_226P7_tags_15,
-	sizeof(asn_DEF_ProtocolIE_Container_226P7_tags_15)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P7_tags_15[0]), /* 1 */
-	asn_DEF_ProtocolIE_Container_226P7_tags_15,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_Container_226P7_tags_15)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P7_tags_15[0]), /* 1 */
-	{ 0, &asn_PER_type_ProtocolIE_Container_226P7_constr_15, SEQUENCE_OF_constraint },
-	asn_MBR_ProtocolIE_Container_226P7_15,
+	asn_DEF_ProtocolIE_Container_1917P8_tags_17,
+	sizeof(asn_DEF_ProtocolIE_Container_1917P8_tags_17)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P8_tags_17[0]), /* 1 */
+	asn_DEF_ProtocolIE_Container_1917P8_tags_17,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_Container_1917P8_tags_17)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P8_tags_17[0]), /* 1 */
+	{ 0, &asn_PER_type_ProtocolIE_Container_1917P8_constr_17, SEQUENCE_OF_constraint },
+	asn_MBR_ProtocolIE_Container_1917P8_17,
 	1,	/* Single element */
-	&asn_SPC_ProtocolIE_Container_226P7_specs_15	/* Additional specs */
+	&asn_SPC_ProtocolIE_Container_1917P8_specs_17	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P8_17[] = {
+asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P9_19[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -429,31 +469,31 @@
 		""
 		},
 };
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_226P8_tags_17[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_1917P9_tags_19[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P8_specs_17 = {
-	sizeof(struct ProtocolIE_Container_226P8),
-	offsetof(struct ProtocolIE_Container_226P8, _asn_ctx),
+asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P9_specs_19 = {
+	sizeof(struct ProtocolIE_Container_1917P9),
+	offsetof(struct ProtocolIE_Container_1917P9, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P8 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P9 = {
 	"ProtocolIE-Container",
 	"ProtocolIE-Container",
 	&asn_OP_SEQUENCE_OF,
-	asn_DEF_ProtocolIE_Container_226P8_tags_17,
-	sizeof(asn_DEF_ProtocolIE_Container_226P8_tags_17)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P8_tags_17[0]), /* 1 */
-	asn_DEF_ProtocolIE_Container_226P8_tags_17,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_Container_226P8_tags_17)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P8_tags_17[0]), /* 1 */
-	{ 0, &asn_PER_type_ProtocolIE_Container_226P8_constr_17, SEQUENCE_OF_constraint },
-	asn_MBR_ProtocolIE_Container_226P8_17,
+	asn_DEF_ProtocolIE_Container_1917P9_tags_19,
+	sizeof(asn_DEF_ProtocolIE_Container_1917P9_tags_19)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P9_tags_19[0]), /* 1 */
+	asn_DEF_ProtocolIE_Container_1917P9_tags_19,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_Container_1917P9_tags_19)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P9_tags_19[0]), /* 1 */
+	{ 0, &asn_PER_type_ProtocolIE_Container_1917P9_constr_19, SEQUENCE_OF_constraint },
+	asn_MBR_ProtocolIE_Container_1917P9_19,
 	1,	/* Single element */
-	&asn_SPC_ProtocolIE_Container_226P8_specs_17	/* Additional specs */
+	&asn_SPC_ProtocolIE_Container_1917P9_specs_19	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P9_19[] = {
+asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P10_21[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -464,31 +504,31 @@
 		""
 		},
 };
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_226P9_tags_19[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_1917P10_tags_21[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P9_specs_19 = {
-	sizeof(struct ProtocolIE_Container_226P9),
-	offsetof(struct ProtocolIE_Container_226P9, _asn_ctx),
+asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P10_specs_21 = {
+	sizeof(struct ProtocolIE_Container_1917P10),
+	offsetof(struct ProtocolIE_Container_1917P10, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P9 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P10 = {
 	"ProtocolIE-Container",
 	"ProtocolIE-Container",
 	&asn_OP_SEQUENCE_OF,
-	asn_DEF_ProtocolIE_Container_226P9_tags_19,
-	sizeof(asn_DEF_ProtocolIE_Container_226P9_tags_19)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P9_tags_19[0]), /* 1 */
-	asn_DEF_ProtocolIE_Container_226P9_tags_19,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_Container_226P9_tags_19)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P9_tags_19[0]), /* 1 */
-	{ 0, &asn_PER_type_ProtocolIE_Container_226P9_constr_19, SEQUENCE_OF_constraint },
-	asn_MBR_ProtocolIE_Container_226P9_19,
+	asn_DEF_ProtocolIE_Container_1917P10_tags_21,
+	sizeof(asn_DEF_ProtocolIE_Container_1917P10_tags_21)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P10_tags_21[0]), /* 1 */
+	asn_DEF_ProtocolIE_Container_1917P10_tags_21,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_Container_1917P10_tags_21)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P10_tags_21[0]), /* 1 */
+	{ 0, &asn_PER_type_ProtocolIE_Container_1917P10_constr_21, SEQUENCE_OF_constraint },
+	asn_MBR_ProtocolIE_Container_1917P10_21,
 	1,	/* Single element */
-	&asn_SPC_ProtocolIE_Container_226P9_specs_19	/* Additional specs */
+	&asn_SPC_ProtocolIE_Container_1917P10_specs_21	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P10_21[] = {
+asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P11_23[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -499,31 +539,31 @@
 		""
 		},
 };
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_226P10_tags_21[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_1917P11_tags_23[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P10_specs_21 = {
-	sizeof(struct ProtocolIE_Container_226P10),
-	offsetof(struct ProtocolIE_Container_226P10, _asn_ctx),
+asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P11_specs_23 = {
+	sizeof(struct ProtocolIE_Container_1917P11),
+	offsetof(struct ProtocolIE_Container_1917P11, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P10 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P11 = {
 	"ProtocolIE-Container",
 	"ProtocolIE-Container",
 	&asn_OP_SEQUENCE_OF,
-	asn_DEF_ProtocolIE_Container_226P10_tags_21,
-	sizeof(asn_DEF_ProtocolIE_Container_226P10_tags_21)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P10_tags_21[0]), /* 1 */
-	asn_DEF_ProtocolIE_Container_226P10_tags_21,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_Container_226P10_tags_21)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P10_tags_21[0]), /* 1 */
-	{ 0, &asn_PER_type_ProtocolIE_Container_226P10_constr_21, SEQUENCE_OF_constraint },
-	asn_MBR_ProtocolIE_Container_226P10_21,
+	asn_DEF_ProtocolIE_Container_1917P11_tags_23,
+	sizeof(asn_DEF_ProtocolIE_Container_1917P11_tags_23)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P11_tags_23[0]), /* 1 */
+	asn_DEF_ProtocolIE_Container_1917P11_tags_23,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_Container_1917P11_tags_23)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P11_tags_23[0]), /* 1 */
+	{ 0, &asn_PER_type_ProtocolIE_Container_1917P11_constr_23, SEQUENCE_OF_constraint },
+	asn_MBR_ProtocolIE_Container_1917P11_23,
 	1,	/* Single element */
-	&asn_SPC_ProtocolIE_Container_226P10_specs_21	/* Additional specs */
+	&asn_SPC_ProtocolIE_Container_1917P11_specs_23	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P11_23[] = {
+asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P12_25[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -534,31 +574,31 @@
 		""
 		},
 };
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_226P11_tags_23[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_1917P12_tags_25[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P11_specs_23 = {
-	sizeof(struct ProtocolIE_Container_226P11),
-	offsetof(struct ProtocolIE_Container_226P11, _asn_ctx),
+asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P12_specs_25 = {
+	sizeof(struct ProtocolIE_Container_1917P12),
+	offsetof(struct ProtocolIE_Container_1917P12, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P11 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P12 = {
 	"ProtocolIE-Container",
 	"ProtocolIE-Container",
 	&asn_OP_SEQUENCE_OF,
-	asn_DEF_ProtocolIE_Container_226P11_tags_23,
-	sizeof(asn_DEF_ProtocolIE_Container_226P11_tags_23)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P11_tags_23[0]), /* 1 */
-	asn_DEF_ProtocolIE_Container_226P11_tags_23,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_Container_226P11_tags_23)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P11_tags_23[0]), /* 1 */
-	{ 0, &asn_PER_type_ProtocolIE_Container_226P11_constr_23, SEQUENCE_OF_constraint },
-	asn_MBR_ProtocolIE_Container_226P11_23,
+	asn_DEF_ProtocolIE_Container_1917P12_tags_25,
+	sizeof(asn_DEF_ProtocolIE_Container_1917P12_tags_25)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P12_tags_25[0]), /* 1 */
+	asn_DEF_ProtocolIE_Container_1917P12_tags_25,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_Container_1917P12_tags_25)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P12_tags_25[0]), /* 1 */
+	{ 0, &asn_PER_type_ProtocolIE_Container_1917P12_constr_25, SEQUENCE_OF_constraint },
+	asn_MBR_ProtocolIE_Container_1917P12_25,
 	1,	/* Single element */
-	&asn_SPC_ProtocolIE_Container_226P11_specs_23	/* Additional specs */
+	&asn_SPC_ProtocolIE_Container_1917P12_specs_25	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P12_25[] = {
+asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P13_27[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -569,31 +609,31 @@
 		""
 		},
 };
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_226P12_tags_25[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_1917P13_tags_27[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P12_specs_25 = {
-	sizeof(struct ProtocolIE_Container_226P12),
-	offsetof(struct ProtocolIE_Container_226P12, _asn_ctx),
+asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P13_specs_27 = {
+	sizeof(struct ProtocolIE_Container_1917P13),
+	offsetof(struct ProtocolIE_Container_1917P13, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P12 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P13 = {
 	"ProtocolIE-Container",
 	"ProtocolIE-Container",
 	&asn_OP_SEQUENCE_OF,
-	asn_DEF_ProtocolIE_Container_226P12_tags_25,
-	sizeof(asn_DEF_ProtocolIE_Container_226P12_tags_25)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P12_tags_25[0]), /* 1 */
-	asn_DEF_ProtocolIE_Container_226P12_tags_25,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_Container_226P12_tags_25)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P12_tags_25[0]), /* 1 */
-	{ 0, &asn_PER_type_ProtocolIE_Container_226P12_constr_25, SEQUENCE_OF_constraint },
-	asn_MBR_ProtocolIE_Container_226P12_25,
+	asn_DEF_ProtocolIE_Container_1917P13_tags_27,
+	sizeof(asn_DEF_ProtocolIE_Container_1917P13_tags_27)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P13_tags_27[0]), /* 1 */
+	asn_DEF_ProtocolIE_Container_1917P13_tags_27,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_Container_1917P13_tags_27)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P13_tags_27[0]), /* 1 */
+	{ 0, &asn_PER_type_ProtocolIE_Container_1917P13_constr_27, SEQUENCE_OF_constraint },
+	asn_MBR_ProtocolIE_Container_1917P13_27,
 	1,	/* Single element */
-	&asn_SPC_ProtocolIE_Container_226P12_specs_25	/* Additional specs */
+	&asn_SPC_ProtocolIE_Container_1917P13_specs_27	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P13_27[] = {
+asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P14_29[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -604,31 +644,31 @@
 		""
 		},
 };
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_226P13_tags_27[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_1917P14_tags_29[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P13_specs_27 = {
-	sizeof(struct ProtocolIE_Container_226P13),
-	offsetof(struct ProtocolIE_Container_226P13, _asn_ctx),
+asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P14_specs_29 = {
+	sizeof(struct ProtocolIE_Container_1917P14),
+	offsetof(struct ProtocolIE_Container_1917P14, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P13 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P14 = {
 	"ProtocolIE-Container",
 	"ProtocolIE-Container",
 	&asn_OP_SEQUENCE_OF,
-	asn_DEF_ProtocolIE_Container_226P13_tags_27,
-	sizeof(asn_DEF_ProtocolIE_Container_226P13_tags_27)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P13_tags_27[0]), /* 1 */
-	asn_DEF_ProtocolIE_Container_226P13_tags_27,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_Container_226P13_tags_27)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P13_tags_27[0]), /* 1 */
-	{ 0, &asn_PER_type_ProtocolIE_Container_226P13_constr_27, SEQUENCE_OF_constraint },
-	asn_MBR_ProtocolIE_Container_226P13_27,
+	asn_DEF_ProtocolIE_Container_1917P14_tags_29,
+	sizeof(asn_DEF_ProtocolIE_Container_1917P14_tags_29)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P14_tags_29[0]), /* 1 */
+	asn_DEF_ProtocolIE_Container_1917P14_tags_29,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_Container_1917P14_tags_29)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P14_tags_29[0]), /* 1 */
+	{ 0, &asn_PER_type_ProtocolIE_Container_1917P14_constr_29, SEQUENCE_OF_constraint },
+	asn_MBR_ProtocolIE_Container_1917P14_29,
 	1,	/* Single element */
-	&asn_SPC_ProtocolIE_Container_226P13_specs_27	/* Additional specs */
+	&asn_SPC_ProtocolIE_Container_1917P14_specs_29	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P14_29[] = {
+asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P15_31[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -639,31 +679,31 @@
 		""
 		},
 };
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_226P14_tags_29[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_1917P15_tags_31[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P14_specs_29 = {
-	sizeof(struct ProtocolIE_Container_226P14),
-	offsetof(struct ProtocolIE_Container_226P14, _asn_ctx),
+asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P15_specs_31 = {
+	sizeof(struct ProtocolIE_Container_1917P15),
+	offsetof(struct ProtocolIE_Container_1917P15, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P14 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P15 = {
 	"ProtocolIE-Container",
 	"ProtocolIE-Container",
 	&asn_OP_SEQUENCE_OF,
-	asn_DEF_ProtocolIE_Container_226P14_tags_29,
-	sizeof(asn_DEF_ProtocolIE_Container_226P14_tags_29)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P14_tags_29[0]), /* 1 */
-	asn_DEF_ProtocolIE_Container_226P14_tags_29,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_Container_226P14_tags_29)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P14_tags_29[0]), /* 1 */
-	{ 0, &asn_PER_type_ProtocolIE_Container_226P14_constr_29, SEQUENCE_OF_constraint },
-	asn_MBR_ProtocolIE_Container_226P14_29,
+	asn_DEF_ProtocolIE_Container_1917P15_tags_31,
+	sizeof(asn_DEF_ProtocolIE_Container_1917P15_tags_31)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P15_tags_31[0]), /* 1 */
+	asn_DEF_ProtocolIE_Container_1917P15_tags_31,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_Container_1917P15_tags_31)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P15_tags_31[0]), /* 1 */
+	{ 0, &asn_PER_type_ProtocolIE_Container_1917P15_constr_31, SEQUENCE_OF_constraint },
+	asn_MBR_ProtocolIE_Container_1917P15_31,
 	1,	/* Single element */
-	&asn_SPC_ProtocolIE_Container_226P14_specs_29	/* Additional specs */
+	&asn_SPC_ProtocolIE_Container_1917P15_specs_31	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P15_31[] = {
+asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P16_33[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -674,31 +714,31 @@
 		""
 		},
 };
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_226P15_tags_31[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_1917P16_tags_33[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P15_specs_31 = {
-	sizeof(struct ProtocolIE_Container_226P15),
-	offsetof(struct ProtocolIE_Container_226P15, _asn_ctx),
+asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P16_specs_33 = {
+	sizeof(struct ProtocolIE_Container_1917P16),
+	offsetof(struct ProtocolIE_Container_1917P16, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P15 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P16 = {
 	"ProtocolIE-Container",
 	"ProtocolIE-Container",
 	&asn_OP_SEQUENCE_OF,
-	asn_DEF_ProtocolIE_Container_226P15_tags_31,
-	sizeof(asn_DEF_ProtocolIE_Container_226P15_tags_31)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P15_tags_31[0]), /* 1 */
-	asn_DEF_ProtocolIE_Container_226P15_tags_31,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_Container_226P15_tags_31)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P15_tags_31[0]), /* 1 */
-	{ 0, &asn_PER_type_ProtocolIE_Container_226P15_constr_31, SEQUENCE_OF_constraint },
-	asn_MBR_ProtocolIE_Container_226P15_31,
+	asn_DEF_ProtocolIE_Container_1917P16_tags_33,
+	sizeof(asn_DEF_ProtocolIE_Container_1917P16_tags_33)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P16_tags_33[0]), /* 1 */
+	asn_DEF_ProtocolIE_Container_1917P16_tags_33,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_Container_1917P16_tags_33)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P16_tags_33[0]), /* 1 */
+	{ 0, &asn_PER_type_ProtocolIE_Container_1917P16_constr_33, SEQUENCE_OF_constraint },
+	asn_MBR_ProtocolIE_Container_1917P16_33,
 	1,	/* Single element */
-	&asn_SPC_ProtocolIE_Container_226P15_specs_31	/* Additional specs */
+	&asn_SPC_ProtocolIE_Container_1917P16_specs_33	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P16_33[] = {
+asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P17_35[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -709,31 +749,31 @@
 		""
 		},
 };
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_226P16_tags_33[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_1917P17_tags_35[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P16_specs_33 = {
-	sizeof(struct ProtocolIE_Container_226P16),
-	offsetof(struct ProtocolIE_Container_226P16, _asn_ctx),
+asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P17_specs_35 = {
+	sizeof(struct ProtocolIE_Container_1917P17),
+	offsetof(struct ProtocolIE_Container_1917P17, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P16 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P17 = {
 	"ProtocolIE-Container",
 	"ProtocolIE-Container",
 	&asn_OP_SEQUENCE_OF,
-	asn_DEF_ProtocolIE_Container_226P16_tags_33,
-	sizeof(asn_DEF_ProtocolIE_Container_226P16_tags_33)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P16_tags_33[0]), /* 1 */
-	asn_DEF_ProtocolIE_Container_226P16_tags_33,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_Container_226P16_tags_33)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P16_tags_33[0]), /* 1 */
-	{ 0, &asn_PER_type_ProtocolIE_Container_226P16_constr_33, SEQUENCE_OF_constraint },
-	asn_MBR_ProtocolIE_Container_226P16_33,
+	asn_DEF_ProtocolIE_Container_1917P17_tags_35,
+	sizeof(asn_DEF_ProtocolIE_Container_1917P17_tags_35)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P17_tags_35[0]), /* 1 */
+	asn_DEF_ProtocolIE_Container_1917P17_tags_35,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_Container_1917P17_tags_35)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P17_tags_35[0]), /* 1 */
+	{ 0, &asn_PER_type_ProtocolIE_Container_1917P17_constr_35, SEQUENCE_OF_constraint },
+	asn_MBR_ProtocolIE_Container_1917P17_35,
 	1,	/* Single element */
-	&asn_SPC_ProtocolIE_Container_226P16_specs_33	/* Additional specs */
+	&asn_SPC_ProtocolIE_Container_1917P17_specs_35	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P17_35[] = {
+asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P18_37[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -744,31 +784,31 @@
 		""
 		},
 };
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_226P17_tags_35[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_1917P18_tags_37[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P17_specs_35 = {
-	sizeof(struct ProtocolIE_Container_226P17),
-	offsetof(struct ProtocolIE_Container_226P17, _asn_ctx),
+asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P18_specs_37 = {
+	sizeof(struct ProtocolIE_Container_1917P18),
+	offsetof(struct ProtocolIE_Container_1917P18, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P17 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P18 = {
 	"ProtocolIE-Container",
 	"ProtocolIE-Container",
 	&asn_OP_SEQUENCE_OF,
-	asn_DEF_ProtocolIE_Container_226P17_tags_35,
-	sizeof(asn_DEF_ProtocolIE_Container_226P17_tags_35)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P17_tags_35[0]), /* 1 */
-	asn_DEF_ProtocolIE_Container_226P17_tags_35,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_Container_226P17_tags_35)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P17_tags_35[0]), /* 1 */
-	{ 0, &asn_PER_type_ProtocolIE_Container_226P17_constr_35, SEQUENCE_OF_constraint },
-	asn_MBR_ProtocolIE_Container_226P17_35,
+	asn_DEF_ProtocolIE_Container_1917P18_tags_37,
+	sizeof(asn_DEF_ProtocolIE_Container_1917P18_tags_37)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P18_tags_37[0]), /* 1 */
+	asn_DEF_ProtocolIE_Container_1917P18_tags_37,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_Container_1917P18_tags_37)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P18_tags_37[0]), /* 1 */
+	{ 0, &asn_PER_type_ProtocolIE_Container_1917P18_constr_37, SEQUENCE_OF_constraint },
+	asn_MBR_ProtocolIE_Container_1917P18_37,
 	1,	/* Single element */
-	&asn_SPC_ProtocolIE_Container_226P17_specs_35	/* Additional specs */
+	&asn_SPC_ProtocolIE_Container_1917P18_specs_37	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P18_37[] = {
+asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P19_39[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -779,31 +819,31 @@
 		""
 		},
 };
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_226P18_tags_37[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_1917P19_tags_39[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P18_specs_37 = {
-	sizeof(struct ProtocolIE_Container_226P18),
-	offsetof(struct ProtocolIE_Container_226P18, _asn_ctx),
+asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P19_specs_39 = {
+	sizeof(struct ProtocolIE_Container_1917P19),
+	offsetof(struct ProtocolIE_Container_1917P19, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P18 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P19 = {
 	"ProtocolIE-Container",
 	"ProtocolIE-Container",
 	&asn_OP_SEQUENCE_OF,
-	asn_DEF_ProtocolIE_Container_226P18_tags_37,
-	sizeof(asn_DEF_ProtocolIE_Container_226P18_tags_37)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P18_tags_37[0]), /* 1 */
-	asn_DEF_ProtocolIE_Container_226P18_tags_37,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_Container_226P18_tags_37)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P18_tags_37[0]), /* 1 */
-	{ 0, &asn_PER_type_ProtocolIE_Container_226P18_constr_37, SEQUENCE_OF_constraint },
-	asn_MBR_ProtocolIE_Container_226P18_37,
+	asn_DEF_ProtocolIE_Container_1917P19_tags_39,
+	sizeof(asn_DEF_ProtocolIE_Container_1917P19_tags_39)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P19_tags_39[0]), /* 1 */
+	asn_DEF_ProtocolIE_Container_1917P19_tags_39,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_Container_1917P19_tags_39)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P19_tags_39[0]), /* 1 */
+	{ 0, &asn_PER_type_ProtocolIE_Container_1917P19_constr_39, SEQUENCE_OF_constraint },
+	asn_MBR_ProtocolIE_Container_1917P19_39,
 	1,	/* Single element */
-	&asn_SPC_ProtocolIE_Container_226P18_specs_37	/* Additional specs */
+	&asn_SPC_ProtocolIE_Container_1917P19_specs_39	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P19_39[] = {
+asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P20_41[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -814,31 +854,31 @@
 		""
 		},
 };
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_226P19_tags_39[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_1917P20_tags_41[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P19_specs_39 = {
-	sizeof(struct ProtocolIE_Container_226P19),
-	offsetof(struct ProtocolIE_Container_226P19, _asn_ctx),
+asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P20_specs_41 = {
+	sizeof(struct ProtocolIE_Container_1917P20),
+	offsetof(struct ProtocolIE_Container_1917P20, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P19 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P20 = {
 	"ProtocolIE-Container",
 	"ProtocolIE-Container",
 	&asn_OP_SEQUENCE_OF,
-	asn_DEF_ProtocolIE_Container_226P19_tags_39,
-	sizeof(asn_DEF_ProtocolIE_Container_226P19_tags_39)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P19_tags_39[0]), /* 1 */
-	asn_DEF_ProtocolIE_Container_226P19_tags_39,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_Container_226P19_tags_39)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P19_tags_39[0]), /* 1 */
-	{ 0, &asn_PER_type_ProtocolIE_Container_226P19_constr_39, SEQUENCE_OF_constraint },
-	asn_MBR_ProtocolIE_Container_226P19_39,
+	asn_DEF_ProtocolIE_Container_1917P20_tags_41,
+	sizeof(asn_DEF_ProtocolIE_Container_1917P20_tags_41)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P20_tags_41[0]), /* 1 */
+	asn_DEF_ProtocolIE_Container_1917P20_tags_41,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_Container_1917P20_tags_41)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P20_tags_41[0]), /* 1 */
+	{ 0, &asn_PER_type_ProtocolIE_Container_1917P20_constr_41, SEQUENCE_OF_constraint },
+	asn_MBR_ProtocolIE_Container_1917P20_41,
 	1,	/* Single element */
-	&asn_SPC_ProtocolIE_Container_226P19_specs_39	/* Additional specs */
+	&asn_SPC_ProtocolIE_Container_1917P20_specs_41	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P20_41[] = {
+asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P21_43[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -849,31 +889,31 @@
 		""
 		},
 };
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_226P20_tags_41[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_1917P21_tags_43[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P20_specs_41 = {
-	sizeof(struct ProtocolIE_Container_226P20),
-	offsetof(struct ProtocolIE_Container_226P20, _asn_ctx),
+asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P21_specs_43 = {
+	sizeof(struct ProtocolIE_Container_1917P21),
+	offsetof(struct ProtocolIE_Container_1917P21, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P20 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P21 = {
 	"ProtocolIE-Container",
 	"ProtocolIE-Container",
 	&asn_OP_SEQUENCE_OF,
-	asn_DEF_ProtocolIE_Container_226P20_tags_41,
-	sizeof(asn_DEF_ProtocolIE_Container_226P20_tags_41)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P20_tags_41[0]), /* 1 */
-	asn_DEF_ProtocolIE_Container_226P20_tags_41,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_Container_226P20_tags_41)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P20_tags_41[0]), /* 1 */
-	{ 0, &asn_PER_type_ProtocolIE_Container_226P20_constr_41, SEQUENCE_OF_constraint },
-	asn_MBR_ProtocolIE_Container_226P20_41,
+	asn_DEF_ProtocolIE_Container_1917P21_tags_43,
+	sizeof(asn_DEF_ProtocolIE_Container_1917P21_tags_43)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P21_tags_43[0]), /* 1 */
+	asn_DEF_ProtocolIE_Container_1917P21_tags_43,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_Container_1917P21_tags_43)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P21_tags_43[0]), /* 1 */
+	{ 0, &asn_PER_type_ProtocolIE_Container_1917P21_constr_43, SEQUENCE_OF_constraint },
+	asn_MBR_ProtocolIE_Container_1917P21_43,
 	1,	/* Single element */
-	&asn_SPC_ProtocolIE_Container_226P20_specs_41	/* Additional specs */
+	&asn_SPC_ProtocolIE_Container_1917P21_specs_43	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P21_43[] = {
+asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P22_45[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -884,31 +924,31 @@
 		""
 		},
 };
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_226P21_tags_43[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_1917P22_tags_45[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P21_specs_43 = {
-	sizeof(struct ProtocolIE_Container_226P21),
-	offsetof(struct ProtocolIE_Container_226P21, _asn_ctx),
+asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P22_specs_45 = {
+	sizeof(struct ProtocolIE_Container_1917P22),
+	offsetof(struct ProtocolIE_Container_1917P22, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P21 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P22 = {
 	"ProtocolIE-Container",
 	"ProtocolIE-Container",
 	&asn_OP_SEQUENCE_OF,
-	asn_DEF_ProtocolIE_Container_226P21_tags_43,
-	sizeof(asn_DEF_ProtocolIE_Container_226P21_tags_43)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P21_tags_43[0]), /* 1 */
-	asn_DEF_ProtocolIE_Container_226P21_tags_43,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_Container_226P21_tags_43)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P21_tags_43[0]), /* 1 */
-	{ 0, &asn_PER_type_ProtocolIE_Container_226P21_constr_43, SEQUENCE_OF_constraint },
-	asn_MBR_ProtocolIE_Container_226P21_43,
+	asn_DEF_ProtocolIE_Container_1917P22_tags_45,
+	sizeof(asn_DEF_ProtocolIE_Container_1917P22_tags_45)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P22_tags_45[0]), /* 1 */
+	asn_DEF_ProtocolIE_Container_1917P22_tags_45,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_Container_1917P22_tags_45)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P22_tags_45[0]), /* 1 */
+	{ 0, &asn_PER_type_ProtocolIE_Container_1917P22_constr_45, SEQUENCE_OF_constraint },
+	asn_MBR_ProtocolIE_Container_1917P22_45,
 	1,	/* Single element */
-	&asn_SPC_ProtocolIE_Container_226P21_specs_43	/* Additional specs */
+	&asn_SPC_ProtocolIE_Container_1917P22_specs_45	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P22_45[] = {
+asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P23_47[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -919,31 +959,31 @@
 		""
 		},
 };
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_226P22_tags_45[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_1917P23_tags_47[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P22_specs_45 = {
-	sizeof(struct ProtocolIE_Container_226P22),
-	offsetof(struct ProtocolIE_Container_226P22, _asn_ctx),
+asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P23_specs_47 = {
+	sizeof(struct ProtocolIE_Container_1917P23),
+	offsetof(struct ProtocolIE_Container_1917P23, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P22 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P23 = {
 	"ProtocolIE-Container",
 	"ProtocolIE-Container",
 	&asn_OP_SEQUENCE_OF,
-	asn_DEF_ProtocolIE_Container_226P22_tags_45,
-	sizeof(asn_DEF_ProtocolIE_Container_226P22_tags_45)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P22_tags_45[0]), /* 1 */
-	asn_DEF_ProtocolIE_Container_226P22_tags_45,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_Container_226P22_tags_45)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P22_tags_45[0]), /* 1 */
-	{ 0, &asn_PER_type_ProtocolIE_Container_226P22_constr_45, SEQUENCE_OF_constraint },
-	asn_MBR_ProtocolIE_Container_226P22_45,
+	asn_DEF_ProtocolIE_Container_1917P23_tags_47,
+	sizeof(asn_DEF_ProtocolIE_Container_1917P23_tags_47)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P23_tags_47[0]), /* 1 */
+	asn_DEF_ProtocolIE_Container_1917P23_tags_47,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_Container_1917P23_tags_47)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P23_tags_47[0]), /* 1 */
+	{ 0, &asn_PER_type_ProtocolIE_Container_1917P23_constr_47, SEQUENCE_OF_constraint },
+	asn_MBR_ProtocolIE_Container_1917P23_47,
 	1,	/* Single element */
-	&asn_SPC_ProtocolIE_Container_226P22_specs_45	/* Additional specs */
+	&asn_SPC_ProtocolIE_Container_1917P23_specs_47	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P23_47[] = {
+asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P24_49[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -954,31 +994,31 @@
 		""
 		},
 };
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_226P23_tags_47[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_1917P24_tags_49[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P23_specs_47 = {
-	sizeof(struct ProtocolIE_Container_226P23),
-	offsetof(struct ProtocolIE_Container_226P23, _asn_ctx),
+asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P24_specs_49 = {
+	sizeof(struct ProtocolIE_Container_1917P24),
+	offsetof(struct ProtocolIE_Container_1917P24, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P23 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P24 = {
 	"ProtocolIE-Container",
 	"ProtocolIE-Container",
 	&asn_OP_SEQUENCE_OF,
-	asn_DEF_ProtocolIE_Container_226P23_tags_47,
-	sizeof(asn_DEF_ProtocolIE_Container_226P23_tags_47)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P23_tags_47[0]), /* 1 */
-	asn_DEF_ProtocolIE_Container_226P23_tags_47,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_Container_226P23_tags_47)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P23_tags_47[0]), /* 1 */
-	{ 0, &asn_PER_type_ProtocolIE_Container_226P23_constr_47, SEQUENCE_OF_constraint },
-	asn_MBR_ProtocolIE_Container_226P23_47,
+	asn_DEF_ProtocolIE_Container_1917P24_tags_49,
+	sizeof(asn_DEF_ProtocolIE_Container_1917P24_tags_49)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P24_tags_49[0]), /* 1 */
+	asn_DEF_ProtocolIE_Container_1917P24_tags_49,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_Container_1917P24_tags_49)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P24_tags_49[0]), /* 1 */
+	{ 0, &asn_PER_type_ProtocolIE_Container_1917P24_constr_49, SEQUENCE_OF_constraint },
+	asn_MBR_ProtocolIE_Container_1917P24_49,
 	1,	/* Single element */
-	&asn_SPC_ProtocolIE_Container_226P23_specs_47	/* Additional specs */
+	&asn_SPC_ProtocolIE_Container_1917P24_specs_49	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P24_49[] = {
+asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P25_51[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -989,31 +1029,31 @@
 		""
 		},
 };
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_226P24_tags_49[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_1917P25_tags_51[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P24_specs_49 = {
-	sizeof(struct ProtocolIE_Container_226P24),
-	offsetof(struct ProtocolIE_Container_226P24, _asn_ctx),
+asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P25_specs_51 = {
+	sizeof(struct ProtocolIE_Container_1917P25),
+	offsetof(struct ProtocolIE_Container_1917P25, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P24 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P25 = {
 	"ProtocolIE-Container",
 	"ProtocolIE-Container",
 	&asn_OP_SEQUENCE_OF,
-	asn_DEF_ProtocolIE_Container_226P24_tags_49,
-	sizeof(asn_DEF_ProtocolIE_Container_226P24_tags_49)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P24_tags_49[0]), /* 1 */
-	asn_DEF_ProtocolIE_Container_226P24_tags_49,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_Container_226P24_tags_49)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P24_tags_49[0]), /* 1 */
-	{ 0, &asn_PER_type_ProtocolIE_Container_226P24_constr_49, SEQUENCE_OF_constraint },
-	asn_MBR_ProtocolIE_Container_226P24_49,
+	asn_DEF_ProtocolIE_Container_1917P25_tags_51,
+	sizeof(asn_DEF_ProtocolIE_Container_1917P25_tags_51)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P25_tags_51[0]), /* 1 */
+	asn_DEF_ProtocolIE_Container_1917P25_tags_51,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_Container_1917P25_tags_51)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P25_tags_51[0]), /* 1 */
+	{ 0, &asn_PER_type_ProtocolIE_Container_1917P25_constr_51, SEQUENCE_OF_constraint },
+	asn_MBR_ProtocolIE_Container_1917P25_51,
 	1,	/* Single element */
-	&asn_SPC_ProtocolIE_Container_226P24_specs_49	/* Additional specs */
+	&asn_SPC_ProtocolIE_Container_1917P25_specs_51	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P25_51[] = {
+asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P26_53[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -1024,27 +1064,27 @@
 		""
 		},
 };
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_226P25_tags_51[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_Container_1917P26_tags_53[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P25_specs_51 = {
-	sizeof(struct ProtocolIE_Container_226P25),
-	offsetof(struct ProtocolIE_Container_226P25, _asn_ctx),
+asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P26_specs_53 = {
+	sizeof(struct ProtocolIE_Container_1917P26),
+	offsetof(struct ProtocolIE_Container_1917P26, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P25 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P26 = {
 	"ProtocolIE-Container",
 	"ProtocolIE-Container",
 	&asn_OP_SEQUENCE_OF,
-	asn_DEF_ProtocolIE_Container_226P25_tags_51,
-	sizeof(asn_DEF_ProtocolIE_Container_226P25_tags_51)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P25_tags_51[0]), /* 1 */
-	asn_DEF_ProtocolIE_Container_226P25_tags_51,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_Container_226P25_tags_51)
-		/sizeof(asn_DEF_ProtocolIE_Container_226P25_tags_51[0]), /* 1 */
-	{ 0, &asn_PER_type_ProtocolIE_Container_226P25_constr_51, SEQUENCE_OF_constraint },
-	asn_MBR_ProtocolIE_Container_226P25_51,
+	asn_DEF_ProtocolIE_Container_1917P26_tags_53,
+	sizeof(asn_DEF_ProtocolIE_Container_1917P26_tags_53)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P26_tags_53[0]), /* 1 */
+	asn_DEF_ProtocolIE_Container_1917P26_tags_53,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_Container_1917P26_tags_53)
+		/sizeof(asn_DEF_ProtocolIE_Container_1917P26_tags_53[0]), /* 1 */
+	{ 0, &asn_PER_type_ProtocolIE_Container_1917P26_constr_53, SEQUENCE_OF_constraint },
+	asn_MBR_ProtocolIE_Container_1917P26_53,
 	1,	/* Single element */
-	&asn_SPC_ProtocolIE_Container_226P25_specs_51	/* Additional specs */
+	&asn_SPC_ProtocolIE_Container_1917P26_specs_53	/* Additional specs */
 };
 
diff --git a/e2sim/src/ASN1c/ProtocolIE-Container.h b/e2sim/src/ASN1c/ProtocolIE-Container.h
index 7b7cccb..1406315 100644
--- a/e2sim/src/ASN1c/ProtocolIE-Container.h
+++ b/e2sim/src/ASN1c/ProtocolIE-Container.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-Containers"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_ProtocolIE_Container_H_
@@ -26,6 +26,7 @@
 struct RICsubscriptionDeleteRequest_IEs;
 struct RICsubscriptionDeleteResponse_IEs;
 struct RICsubscriptionDeleteFailure_IEs;
+struct RICsubscriptionDeleteRequired_IEs;
 struct RICindication_IEs;
 struct RICcontrolRequest_IEs;
 struct RICcontrolAcknowledge_IEs;
@@ -48,268 +49,278 @@
 struct RICserviceQuery_IEs;
 
 /* ProtocolIE-Container */
-typedef struct ProtocolIE_Container_226P0 {
+typedef struct ProtocolIE_Container_1917P0 {
 	A_SEQUENCE_OF(struct RICsubscriptionRequest_IEs) list;
 	
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
-} ProtocolIE_Container_226P0_t;
-typedef struct ProtocolIE_Container_226P1 {
+} ProtocolIE_Container_1917P0_t;
+typedef struct ProtocolIE_Container_1917P1 {
 	A_SEQUENCE_OF(struct RICsubscriptionResponse_IEs) list;
 	
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
-} ProtocolIE_Container_226P1_t;
-typedef struct ProtocolIE_Container_226P2 {
+} ProtocolIE_Container_1917P1_t;
+typedef struct ProtocolIE_Container_1917P2 {
 	A_SEQUENCE_OF(struct RICsubscriptionFailure_IEs) list;
 	
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
-} ProtocolIE_Container_226P2_t;
-typedef struct ProtocolIE_Container_226P3 {
+} ProtocolIE_Container_1917P2_t;
+typedef struct ProtocolIE_Container_1917P3 {
 	A_SEQUENCE_OF(struct RICsubscriptionDeleteRequest_IEs) list;
 	
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
-} ProtocolIE_Container_226P3_t;
-typedef struct ProtocolIE_Container_226P4 {
+} ProtocolIE_Container_1917P3_t;
+typedef struct ProtocolIE_Container_1917P4 {
 	A_SEQUENCE_OF(struct RICsubscriptionDeleteResponse_IEs) list;
 	
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
-} ProtocolIE_Container_226P4_t;
-typedef struct ProtocolIE_Container_226P5 {
+} ProtocolIE_Container_1917P4_t;
+typedef struct ProtocolIE_Container_1917P5 {
 	A_SEQUENCE_OF(struct RICsubscriptionDeleteFailure_IEs) list;
 	
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
-} ProtocolIE_Container_226P5_t;
-typedef struct ProtocolIE_Container_226P6 {
+} ProtocolIE_Container_1917P5_t;
+typedef struct ProtocolIE_Container_1917P6 {
+	A_SEQUENCE_OF(struct RICsubscriptionDeleteRequired_IEs) list;
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} ProtocolIE_Container_1917P6_t;
+typedef struct ProtocolIE_Container_1917P7 {
 	A_SEQUENCE_OF(struct RICindication_IEs) list;
 	
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
-} ProtocolIE_Container_226P6_t;
-typedef struct ProtocolIE_Container_226P7 {
+} ProtocolIE_Container_1917P7_t;
+typedef struct ProtocolIE_Container_1917P8 {
 	A_SEQUENCE_OF(struct RICcontrolRequest_IEs) list;
 	
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
-} ProtocolIE_Container_226P7_t;
-typedef struct ProtocolIE_Container_226P8 {
+} ProtocolIE_Container_1917P8_t;
+typedef struct ProtocolIE_Container_1917P9 {
 	A_SEQUENCE_OF(struct RICcontrolAcknowledge_IEs) list;
 	
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
-} ProtocolIE_Container_226P8_t;
-typedef struct ProtocolIE_Container_226P9 {
+} ProtocolIE_Container_1917P9_t;
+typedef struct ProtocolIE_Container_1917P10 {
 	A_SEQUENCE_OF(struct RICcontrolFailure_IEs) list;
 	
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
-} ProtocolIE_Container_226P9_t;
-typedef struct ProtocolIE_Container_226P10 {
+} ProtocolIE_Container_1917P10_t;
+typedef struct ProtocolIE_Container_1917P11 {
 	A_SEQUENCE_OF(struct ErrorIndication_IEs) list;
 	
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
-} ProtocolIE_Container_226P10_t;
-typedef struct ProtocolIE_Container_226P11 {
+} ProtocolIE_Container_1917P11_t;
+typedef struct ProtocolIE_Container_1917P12 {
 	A_SEQUENCE_OF(struct E2setupRequestIEs) list;
 	
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
-} ProtocolIE_Container_226P11_t;
-typedef struct ProtocolIE_Container_226P12 {
+} ProtocolIE_Container_1917P12_t;
+typedef struct ProtocolIE_Container_1917P13 {
 	A_SEQUENCE_OF(struct E2setupResponseIEs) list;
 	
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
-} ProtocolIE_Container_226P12_t;
-typedef struct ProtocolIE_Container_226P13 {
+} ProtocolIE_Container_1917P13_t;
+typedef struct ProtocolIE_Container_1917P14 {
 	A_SEQUENCE_OF(struct E2setupFailureIEs) list;
 	
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
-} ProtocolIE_Container_226P13_t;
-typedef struct ProtocolIE_Container_226P14 {
+} ProtocolIE_Container_1917P14_t;
+typedef struct ProtocolIE_Container_1917P15 {
 	A_SEQUENCE_OF(struct E2connectionUpdate_IEs) list;
 	
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
-} ProtocolIE_Container_226P14_t;
-typedef struct ProtocolIE_Container_226P15 {
+} ProtocolIE_Container_1917P15_t;
+typedef struct ProtocolIE_Container_1917P16 {
 	A_SEQUENCE_OF(struct E2connectionUpdateAck_IEs) list;
 	
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
-} ProtocolIE_Container_226P15_t;
-typedef struct ProtocolIE_Container_226P16 {
+} ProtocolIE_Container_1917P16_t;
+typedef struct ProtocolIE_Container_1917P17 {
 	A_SEQUENCE_OF(struct E2connectionUpdateFailure_IEs) list;
 	
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
-} ProtocolIE_Container_226P16_t;
-typedef struct ProtocolIE_Container_226P17 {
+} ProtocolIE_Container_1917P17_t;
+typedef struct ProtocolIE_Container_1917P18 {
 	A_SEQUENCE_OF(struct E2nodeConfigurationUpdate_IEs) list;
 	
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
-} ProtocolIE_Container_226P17_t;
-typedef struct ProtocolIE_Container_226P18 {
+} ProtocolIE_Container_1917P18_t;
+typedef struct ProtocolIE_Container_1917P19 {
 	A_SEQUENCE_OF(struct E2nodeConfigurationUpdateAcknowledge_IEs) list;
 	
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
-} ProtocolIE_Container_226P18_t;
-typedef struct ProtocolIE_Container_226P19 {
+} ProtocolIE_Container_1917P19_t;
+typedef struct ProtocolIE_Container_1917P20 {
 	A_SEQUENCE_OF(struct E2nodeConfigurationUpdateFailure_IEs) list;
 	
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
-} ProtocolIE_Container_226P19_t;
-typedef struct ProtocolIE_Container_226P20 {
+} ProtocolIE_Container_1917P20_t;
+typedef struct ProtocolIE_Container_1917P21 {
 	A_SEQUENCE_OF(struct ResetRequestIEs) list;
 	
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
-} ProtocolIE_Container_226P20_t;
-typedef struct ProtocolIE_Container_226P21 {
+} ProtocolIE_Container_1917P21_t;
+typedef struct ProtocolIE_Container_1917P22 {
 	A_SEQUENCE_OF(struct ResetResponseIEs) list;
 	
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
-} ProtocolIE_Container_226P21_t;
-typedef struct ProtocolIE_Container_226P22 {
+} ProtocolIE_Container_1917P22_t;
+typedef struct ProtocolIE_Container_1917P23 {
 	A_SEQUENCE_OF(struct RICserviceUpdate_IEs) list;
 	
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
-} ProtocolIE_Container_226P22_t;
-typedef struct ProtocolIE_Container_226P23 {
+} ProtocolIE_Container_1917P23_t;
+typedef struct ProtocolIE_Container_1917P24 {
 	A_SEQUENCE_OF(struct RICserviceUpdateAcknowledge_IEs) list;
 	
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
-} ProtocolIE_Container_226P23_t;
-typedef struct ProtocolIE_Container_226P24 {
+} ProtocolIE_Container_1917P24_t;
+typedef struct ProtocolIE_Container_1917P25 {
 	A_SEQUENCE_OF(struct RICserviceUpdateFailure_IEs) list;
 	
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
-} ProtocolIE_Container_226P24_t;
-typedef struct ProtocolIE_Container_226P25 {
+} ProtocolIE_Container_1917P25_t;
+typedef struct ProtocolIE_Container_1917P26 {
 	A_SEQUENCE_OF(struct RICserviceQuery_IEs) list;
 	
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
-} ProtocolIE_Container_226P25_t;
+} ProtocolIE_Container_1917P26_t;
 
 /* Implementation */
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P0;
-extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P0_specs_1;
-extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P0_1[1];
-extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P0_constr_1;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P1;
-extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P1_specs_3;
-extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P1_3[1];
-extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P1_constr_3;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P2;
-extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P2_specs_5;
-extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P2_5[1];
-extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P2_constr_5;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P3;
-extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P3_specs_7;
-extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P3_7[1];
-extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P3_constr_7;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P4;
-extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P4_specs_9;
-extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P4_9[1];
-extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P4_constr_9;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P5;
-extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P5_specs_11;
-extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P5_11[1];
-extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P5_constr_11;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P6;
-extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P6_specs_13;
-extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P6_13[1];
-extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P6_constr_13;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P7;
-extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P7_specs_15;
-extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P7_15[1];
-extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P7_constr_15;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P8;
-extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P8_specs_17;
-extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P8_17[1];
-extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P8_constr_17;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P9;
-extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P9_specs_19;
-extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P9_19[1];
-extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P9_constr_19;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P10;
-extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P10_specs_21;
-extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P10_21[1];
-extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P10_constr_21;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P11;
-extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P11_specs_23;
-extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P11_23[1];
-extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P11_constr_23;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P12;
-extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P12_specs_25;
-extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P12_25[1];
-extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P12_constr_25;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P13;
-extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P13_specs_27;
-extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P13_27[1];
-extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P13_constr_27;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P14;
-extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P14_specs_29;
-extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P14_29[1];
-extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P14_constr_29;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P15;
-extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P15_specs_31;
-extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P15_31[1];
-extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P15_constr_31;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P16;
-extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P16_specs_33;
-extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P16_33[1];
-extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P16_constr_33;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P17;
-extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P17_specs_35;
-extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P17_35[1];
-extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P17_constr_35;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P18;
-extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P18_specs_37;
-extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P18_37[1];
-extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P18_constr_37;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P19;
-extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P19_specs_39;
-extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P19_39[1];
-extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P19_constr_39;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P20;
-extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P20_specs_41;
-extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P20_41[1];
-extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P20_constr_41;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P21;
-extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P21_specs_43;
-extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P21_43[1];
-extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P21_constr_43;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P22;
-extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P22_specs_45;
-extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P22_45[1];
-extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P22_constr_45;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P23;
-extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P23_specs_47;
-extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P23_47[1];
-extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P23_constr_47;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P24;
-extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P24_specs_49;
-extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P24_49[1];
-extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P24_constr_49;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_226P25;
-extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_226P25_specs_51;
-extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_226P25_51[1];
-extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_226P25_constr_51;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P0;
+extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P0_specs_1;
+extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P0_1[1];
+extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P0_constr_1;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P1;
+extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P1_specs_3;
+extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P1_3[1];
+extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P1_constr_3;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P2;
+extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P2_specs_5;
+extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P2_5[1];
+extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P2_constr_5;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P3;
+extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P3_specs_7;
+extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P3_7[1];
+extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P3_constr_7;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P4;
+extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P4_specs_9;
+extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P4_9[1];
+extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P4_constr_9;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P5;
+extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P5_specs_11;
+extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P5_11[1];
+extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P5_constr_11;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P6;
+extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P6_specs_13;
+extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P6_13[1];
+extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P6_constr_13;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P7;
+extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P7_specs_15;
+extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P7_15[1];
+extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P7_constr_15;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P8;
+extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P8_specs_17;
+extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P8_17[1];
+extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P8_constr_17;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P9;
+extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P9_specs_19;
+extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P9_19[1];
+extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P9_constr_19;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P10;
+extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P10_specs_21;
+extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P10_21[1];
+extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P10_constr_21;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P11;
+extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P11_specs_23;
+extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P11_23[1];
+extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P11_constr_23;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P12;
+extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P12_specs_25;
+extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P12_25[1];
+extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P12_constr_25;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P13;
+extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P13_specs_27;
+extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P13_27[1];
+extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P13_constr_27;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P14;
+extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P14_specs_29;
+extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P14_29[1];
+extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P14_constr_29;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P15;
+extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P15_specs_31;
+extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P15_31[1];
+extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P15_constr_31;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P16;
+extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P16_specs_33;
+extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P16_33[1];
+extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P16_constr_33;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P17;
+extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P17_specs_35;
+extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P17_35[1];
+extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P17_constr_35;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P18;
+extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P18_specs_37;
+extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P18_37[1];
+extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P18_constr_37;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P19;
+extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P19_specs_39;
+extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P19_39[1];
+extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P19_constr_39;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P20;
+extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P20_specs_41;
+extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P20_41[1];
+extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P20_constr_41;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P21;
+extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P21_specs_43;
+extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P21_43[1];
+extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P21_constr_43;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P22;
+extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P22_specs_45;
+extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P22_45[1];
+extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P22_constr_45;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P23;
+extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P23_specs_47;
+extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P23_47[1];
+extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P23_constr_47;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P24;
+extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P24_specs_49;
+extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P24_49[1];
+extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P24_constr_49;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P25;
+extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P25_specs_51;
+extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P25_51[1];
+extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P25_constr_51;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_Container_1917P26;
+extern asn_SET_OF_specifics_t asn_SPC_ProtocolIE_Container_1917P26_specs_53;
+extern asn_TYPE_member_t asn_MBR_ProtocolIE_Container_1917P26_53[1];
+extern asn_per_constraints_t asn_PER_type_ProtocolIE_Container_1917P26_constr_53;
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/ProtocolIE-ContainerList.c b/e2sim/src/ASN1c/ProtocolIE-ContainerList.c
index a55503d..e97ca34 100644
--- a/e2sim/src/ASN1c/ProtocolIE-ContainerList.c
+++ b/e2sim/src/ASN1c/ProtocolIE-ContainerList.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-Containers"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "ProtocolIE-ContainerList.h"
diff --git a/e2sim/src/ASN1c/ProtocolIE-ContainerList.h b/e2sim/src/ASN1c/ProtocolIE-ContainerList.h
index fe7c646..f79eecc 100644
--- a/e2sim/src/ASN1c/ProtocolIE-ContainerList.h
+++ b/e2sim/src/ASN1c/ProtocolIE-ContainerList.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-Containers"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_ProtocolIE_ContainerList_H_
diff --git a/e2sim/src/ASN1c/ProtocolIE-ContainerPair.c b/e2sim/src/ASN1c/ProtocolIE-ContainerPair.c
index 00bfc8e..1c1923e 100644
--- a/e2sim/src/ASN1c/ProtocolIE-ContainerPair.c
+++ b/e2sim/src/ASN1c/ProtocolIE-ContainerPair.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-Containers"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "ProtocolIE-ContainerPair.h"
diff --git a/e2sim/src/ASN1c/ProtocolIE-ContainerPair.h b/e2sim/src/ASN1c/ProtocolIE-ContainerPair.h
index eb1eabf..b6ac4f3 100644
--- a/e2sim/src/ASN1c/ProtocolIE-ContainerPair.h
+++ b/e2sim/src/ASN1c/ProtocolIE-ContainerPair.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-Containers"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_ProtocolIE_ContainerPair_H_
diff --git a/e2sim/src/ASN1c/ProtocolIE-ContainerPairList.c b/e2sim/src/ASN1c/ProtocolIE-ContainerPairList.c
index 3518d31..3f82f58 100644
--- a/e2sim/src/ASN1c/ProtocolIE-ContainerPairList.c
+++ b/e2sim/src/ASN1c/ProtocolIE-ContainerPairList.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-Containers"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "ProtocolIE-ContainerPairList.h"
diff --git a/e2sim/src/ASN1c/ProtocolIE-ContainerPairList.h b/e2sim/src/ASN1c/ProtocolIE-ContainerPairList.h
index 176c565..a555957 100644
--- a/e2sim/src/ASN1c/ProtocolIE-ContainerPairList.h
+++ b/e2sim/src/ASN1c/ProtocolIE-ContainerPairList.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-Containers"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_ProtocolIE_ContainerPairList_H_
diff --git a/e2sim/src/ASN1c/ProtocolIE-Field.c b/e2sim/src/ASN1c/ProtocolIE-Field.c
index 556fd53..06ce54f 100644
--- a/e2sim/src/ASN1c/ProtocolIE-Field.c
+++ b/e2sim/src/ASN1c/ProtocolIE-Field.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-Containers"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "ProtocolIE-Field.h"
@@ -43,98 +43,170 @@
 static const asn_ioc_set_t asn_IOS_RICaction_NotAdmitted_ItemIEs_1[] = {
 	{ 1, 4, asn_IOS_RICaction_NotAdmitted_ItemIEs_1_rows }
 };
-static const long asn_VAL_65_id_E2connectionUpdate_Item = 43;
-static const long asn_VAL_65_ignore = 1;
-static const long asn_VAL_65_mandatory = 2;
+static const long asn_VAL_24_id_RICsubscription_withCause_Item = 51;
+static const long asn_VAL_24_ignore = 1;
+static const long asn_VAL_24_mandatory = 2;
+static const asn_ioc_cell_t asn_IOS_RICsubscription_withCause_ItemIEs_1_rows[] = {
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_24_id_RICsubscription_withCause_Item },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_24_ignore },
+	{ "&Value", aioc__type, &asn_DEF_RICsubscription_withCause_Item },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_24_mandatory }
+};
+static const asn_ioc_set_t asn_IOS_RICsubscription_withCause_ItemIEs_1[] = {
+	{ 1, 4, asn_IOS_RICsubscription_withCause_ItemIEs_1_rows }
+};
+static const long asn_VAL_71_id_E2connectionUpdate_Item = 43;
+static const long asn_VAL_71_ignore = 1;
+static const long asn_VAL_71_mandatory = 2;
 static const asn_ioc_cell_t asn_IOS_E2connectionUpdate_ItemIEs_1_rows[] = {
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_65_id_E2connectionUpdate_Item },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_65_ignore },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_71_id_E2connectionUpdate_Item },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_71_ignore },
 	{ "&Value", aioc__type, &asn_DEF_E2connectionUpdate_Item },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_65_mandatory }
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_71_mandatory }
 };
 static const asn_ioc_set_t asn_IOS_E2connectionUpdate_ItemIEs_1[] = {
 	{ 1, 4, asn_IOS_E2connectionUpdate_ItemIEs_1_rows }
 };
-static const long asn_VAL_66_id_E2connectionUpdateRemove_Item = 47;
-static const long asn_VAL_66_ignore = 1;
-static const long asn_VAL_66_mandatory = 2;
+static const long asn_VAL_72_id_E2connectionUpdateRemove_Item = 47;
+static const long asn_VAL_72_ignore = 1;
+static const long asn_VAL_72_mandatory = 2;
 static const asn_ioc_cell_t asn_IOS_E2connectionUpdateRemove_ItemIEs_1_rows[] = {
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_66_id_E2connectionUpdateRemove_Item },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_66_ignore },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_72_id_E2connectionUpdateRemove_Item },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_72_ignore },
 	{ "&Value", aioc__type, &asn_DEF_E2connectionUpdateRemove_Item },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_66_mandatory }
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_72_mandatory }
 };
 static const asn_ioc_set_t asn_IOS_E2connectionUpdateRemove_ItemIEs_1[] = {
 	{ 1, 4, asn_IOS_E2connectionUpdateRemove_ItemIEs_1_rows }
 };
-static const long asn_VAL_69_id_E2connectionSetupFailed_Item = 41;
-static const long asn_VAL_69_ignore = 1;
-static const long asn_VAL_69_mandatory = 2;
+static const long asn_VAL_76_id_E2connectionSetupFailed_Item = 41;
+static const long asn_VAL_76_ignore = 1;
+static const long asn_VAL_76_mandatory = 2;
 static const asn_ioc_cell_t asn_IOS_E2connectionSetupFailed_ItemIEs_1_rows[] = {
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_69_id_E2connectionSetupFailed_Item },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_69_ignore },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_76_id_E2connectionSetupFailed_Item },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_76_ignore },
 	{ "&Value", aioc__type, &asn_DEF_E2connectionSetupFailed_Item },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_69_mandatory }
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_76_mandatory }
 };
 static const asn_ioc_set_t asn_IOS_E2connectionSetupFailed_ItemIEs_1[] = {
 	{ 1, 4, asn_IOS_E2connectionSetupFailed_ItemIEs_1_rows }
 };
-static const long asn_VAL_74_id_E2nodeComponentConfigUpdate_Item = 34;
-static const long asn_VAL_74_reject = 0;
-static const long asn_VAL_74_mandatory = 2;
+static const long asn_VAL_87_id_E2nodeComponentConfigAddition_Item = 51;
+static const long asn_VAL_87_reject = 0;
+static const long asn_VAL_87_mandatory = 2;
+static const asn_ioc_cell_t asn_IOS_E2nodeComponentConfigAddition_ItemIEs_1_rows[] = {
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_87_id_E2nodeComponentConfigAddition_Item },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_87_reject },
+	{ "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigAddition_Item },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_87_mandatory }
+};
+static const asn_ioc_set_t asn_IOS_E2nodeComponentConfigAddition_ItemIEs_1[] = {
+	{ 1, 4, asn_IOS_E2nodeComponentConfigAddition_ItemIEs_1_rows }
+};
+static const long asn_VAL_88_id_E2nodeComponentConfigUpdate_Item = 34;
+static const long asn_VAL_88_reject = 0;
+static const long asn_VAL_88_mandatory = 2;
 static const asn_ioc_cell_t asn_IOS_E2nodeComponentConfigUpdate_ItemIEs_1_rows[] = {
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_74_id_E2nodeComponentConfigUpdate_Item },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_74_reject },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_88_id_E2nodeComponentConfigUpdate_Item },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_88_reject },
 	{ "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigUpdate_Item },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_74_mandatory }
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_88_mandatory }
 };
 static const asn_ioc_set_t asn_IOS_E2nodeComponentConfigUpdate_ItemIEs_1[] = {
 	{ 1, 4, asn_IOS_E2nodeComponentConfigUpdate_ItemIEs_1_rows }
 };
-static const long asn_VAL_76_id_E2nodeComponentConfigUpdateAck_Item = 36;
-static const long asn_VAL_76_reject = 0;
-static const long asn_VAL_76_mandatory = 2;
+static const long asn_VAL_89_id_E2nodeComponentConfigRemoval_Item = 55;
+static const long asn_VAL_89_reject = 0;
+static const long asn_VAL_89_mandatory = 2;
+static const asn_ioc_cell_t asn_IOS_E2nodeComponentConfigRemoval_ItemIEs_1_rows[] = {
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_89_id_E2nodeComponentConfigRemoval_Item },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_89_reject },
+	{ "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigRemoval_Item },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_89_mandatory }
+};
+static const asn_ioc_set_t asn_IOS_E2nodeComponentConfigRemoval_ItemIEs_1[] = {
+	{ 1, 4, asn_IOS_E2nodeComponentConfigRemoval_ItemIEs_1_rows }
+};
+static const long asn_VAL_90_id_E2nodeTNLassociationRemoval_Item = 59;
+static const long asn_VAL_90_reject = 0;
+static const long asn_VAL_90_mandatory = 2;
+static const asn_ioc_cell_t asn_IOS_E2nodeTNLassociationRemoval_ItemIEs_1_rows[] = {
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_90_id_E2nodeTNLassociationRemoval_Item },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_90_reject },
+	{ "&Value", aioc__type, &asn_DEF_E2nodeTNLassociationRemoval_Item },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_90_mandatory }
+};
+static const asn_ioc_set_t asn_IOS_E2nodeTNLassociationRemoval_ItemIEs_1[] = {
+	{ 1, 4, asn_IOS_E2nodeTNLassociationRemoval_ItemIEs_1_rows }
+};
+static const long asn_VAL_95_id_E2nodeComponentConfigAdditionAck_Item = 53;
+static const long asn_VAL_95_reject = 0;
+static const long asn_VAL_95_mandatory = 2;
+static const asn_ioc_cell_t asn_IOS_E2nodeComponentConfigAdditionAck_ItemIEs_1_rows[] = {
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_95_id_E2nodeComponentConfigAdditionAck_Item },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_95_reject },
+	{ "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigAdditionAck_Item },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_95_mandatory }
+};
+static const asn_ioc_set_t asn_IOS_E2nodeComponentConfigAdditionAck_ItemIEs_1[] = {
+	{ 1, 4, asn_IOS_E2nodeComponentConfigAdditionAck_ItemIEs_1_rows }
+};
+static const long asn_VAL_96_id_E2nodeComponentConfigUpdateAck_Item = 36;
+static const long asn_VAL_96_reject = 0;
+static const long asn_VAL_96_mandatory = 2;
 static const asn_ioc_cell_t asn_IOS_E2nodeComponentConfigUpdateAck_ItemIEs_1_rows[] = {
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_76_id_E2nodeComponentConfigUpdateAck_Item },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_76_reject },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_96_id_E2nodeComponentConfigUpdateAck_Item },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_96_reject },
 	{ "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigUpdateAck_Item },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_76_mandatory }
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_96_mandatory }
 };
 static const asn_ioc_set_t asn_IOS_E2nodeComponentConfigUpdateAck_ItemIEs_1[] = {
 	{ 1, 4, asn_IOS_E2nodeComponentConfigUpdateAck_ItemIEs_1_rows }
 };
-static const long asn_VAL_85_id_RANfunction_Item = 8;
-static const long asn_VAL_85_ignore = 1;
-static const long asn_VAL_85_mandatory = 2;
+static const long asn_VAL_97_id_E2nodeComponentConfigRemovalAck_Item = 57;
+static const long asn_VAL_97_reject = 0;
+static const long asn_VAL_97_mandatory = 2;
+static const asn_ioc_cell_t asn_IOS_E2nodeComponentConfigRemovalAck_ItemIEs_1_rows[] = {
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_97_id_E2nodeComponentConfigRemovalAck_Item },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_97_reject },
+	{ "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigRemovalAck_Item },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_97_mandatory }
+};
+static const asn_ioc_set_t asn_IOS_E2nodeComponentConfigRemovalAck_ItemIEs_1[] = {
+	{ 1, 4, asn_IOS_E2nodeComponentConfigRemovalAck_ItemIEs_1_rows }
+};
+static const long asn_VAL_110_id_RANfunction_Item = 8;
+static const long asn_VAL_110_ignore = 1;
+static const long asn_VAL_110_mandatory = 2;
 static const asn_ioc_cell_t asn_IOS_RANfunction_ItemIEs_1_rows[] = {
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_85_id_RANfunction_Item },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_85_ignore },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_110_id_RANfunction_Item },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_110_ignore },
 	{ "&Value", aioc__type, &asn_DEF_RANfunction_Item },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_85_mandatory }
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_110_mandatory }
 };
 static const asn_ioc_set_t asn_IOS_RANfunction_ItemIEs_1[] = {
 	{ 1, 4, asn_IOS_RANfunction_ItemIEs_1_rows }
 };
-static const long asn_VAL_86_id_RANfunctionID_Item = 6;
-static const long asn_VAL_86_ignore = 1;
-static const long asn_VAL_86_mandatory = 2;
+static const long asn_VAL_111_id_RANfunctionID_Item = 6;
+static const long asn_VAL_111_ignore = 1;
+static const long asn_VAL_111_mandatory = 2;
 static const asn_ioc_cell_t asn_IOS_RANfunctionID_ItemIEs_1_rows[] = {
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_86_id_RANfunctionID_Item },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_86_ignore },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_111_id_RANfunctionID_Item },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_111_ignore },
 	{ "&Value", aioc__type, &asn_DEF_RANfunctionID_Item },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_86_mandatory }
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_111_mandatory }
 };
 static const asn_ioc_set_t asn_IOS_RANfunctionID_ItemIEs_1[] = {
 	{ 1, 4, asn_IOS_RANfunctionID_ItemIEs_1_rows }
 };
-static const long asn_VAL_89_id_RANfunctionIEcause_Item = 7;
-static const long asn_VAL_89_ignore = 1;
-static const long asn_VAL_89_mandatory = 2;
+static const long asn_VAL_115_id_RANfunctionIEcause_Item = 7;
+static const long asn_VAL_115_ignore = 1;
+static const long asn_VAL_115_mandatory = 2;
 static const asn_ioc_cell_t asn_IOS_RANfunctionIDcause_ItemIEs_1_rows[] = {
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_89_id_RANfunctionIEcause_Item },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_89_ignore },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_115_id_RANfunctionIEcause_Item },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_115_ignore },
 	{ "&Value", aioc__type, &asn_DEF_RANfunctionIDcause_Item },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_89_mandatory }
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_115_mandatory }
 };
 static const asn_ioc_set_t asn_IOS_RANfunctionIDcause_ItemIEs_1[] = {
 	{ 1, 4, asn_IOS_RANfunctionIDcause_ItemIEs_1_rows }
@@ -204,7 +276,7 @@
 static const long asn_VAL_12_id_RANfunctionID = 5;
 static const long asn_VAL_12_reject = 0;
 static const long asn_VAL_12_mandatory = 2;
-static const long asn_VAL_13_id_RICactions_NotAdmitted = 18;
+static const long asn_VAL_13_id_Cause = 1;
 static const long asn_VAL_13_reject = 0;
 static const long asn_VAL_13_mandatory = 2;
 static const long asn_VAL_14_id_CriticalityDiagnostics = 2;
@@ -219,9 +291,9 @@
 	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_12_reject },
 	{ "&Value", aioc__type, &asn_DEF_RANfunctionID },
 	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_12_mandatory },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_13_id_RICactions_NotAdmitted },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_13_id_Cause },
 	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_13_reject },
-	{ "&Value", aioc__type, &asn_DEF_RICaction_NotAdmitted_List },
+	{ "&Value", aioc__type, &asn_DEF_Cause },
 	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_13_mandatory },
 	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_14_id_CriticalityDiagnostics },
 	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_14_ignore },
@@ -302,546 +374,705 @@
 static const asn_ioc_set_t asn_IOS_RICsubscriptionDeleteFailure_IEs_1[] = {
 	{ 4, 4, asn_IOS_RICsubscriptionDeleteFailure_IEs_1_rows }
 };
-static const long asn_VAL_23_id_RICrequestID = 29;
-static const long asn_VAL_23_reject = 0;
+static const long asn_VAL_23_id_RICsubscriptionToBeRemoved = 50;
+static const long asn_VAL_23_ignore = 1;
 static const long asn_VAL_23_mandatory = 2;
-static const long asn_VAL_24_id_RANfunctionID = 5;
-static const long asn_VAL_24_reject = 0;
-static const long asn_VAL_24_mandatory = 2;
-static const long asn_VAL_25_id_RICactionID = 15;
+static const asn_ioc_cell_t asn_IOS_RICsubscriptionDeleteRequired_IEs_1_rows[] = {
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_23_id_RICsubscriptionToBeRemoved },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_23_ignore },
+	{ "&Value", aioc__type, &asn_DEF_RICsubscription_List_withCause },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_23_mandatory }
+};
+static const asn_ioc_set_t asn_IOS_RICsubscriptionDeleteRequired_IEs_1[] = {
+	{ 1, 4, asn_IOS_RICsubscriptionDeleteRequired_IEs_1_rows }
+};
+static const long asn_VAL_25_id_RICrequestID = 29;
 static const long asn_VAL_25_reject = 0;
 static const long asn_VAL_25_mandatory = 2;
-static const long asn_VAL_26_id_RICindicationSN = 27;
+static const long asn_VAL_26_id_RANfunctionID = 5;
 static const long asn_VAL_26_reject = 0;
-static const long asn_VAL_26_optional = 0;
-static const long asn_VAL_27_id_RICindicationType = 28;
+static const long asn_VAL_26_mandatory = 2;
+static const long asn_VAL_27_id_RICactionID = 15;
 static const long asn_VAL_27_reject = 0;
 static const long asn_VAL_27_mandatory = 2;
-static const long asn_VAL_28_id_RICindicationHeader = 25;
+static const long asn_VAL_28_id_RICindicationSN = 27;
 static const long asn_VAL_28_reject = 0;
-static const long asn_VAL_28_mandatory = 2;
-static const long asn_VAL_29_id_RICindicationMessage = 26;
+static const long asn_VAL_28_optional = 0;
+static const long asn_VAL_29_id_RICindicationType = 28;
 static const long asn_VAL_29_reject = 0;
 static const long asn_VAL_29_mandatory = 2;
-static const long asn_VAL_30_id_RICcallProcessID = 20;
+static const long asn_VAL_30_id_RICindicationHeader = 25;
 static const long asn_VAL_30_reject = 0;
-static const long asn_VAL_30_optional = 0;
+static const long asn_VAL_30_mandatory = 2;
+static const long asn_VAL_31_id_RICindicationMessage = 26;
+static const long asn_VAL_31_reject = 0;
+static const long asn_VAL_31_mandatory = 2;
+static const long asn_VAL_32_id_RICcallProcessID = 20;
+static const long asn_VAL_32_reject = 0;
+static const long asn_VAL_32_optional = 0;
 static const asn_ioc_cell_t asn_IOS_RICindication_IEs_1_rows[] = {
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_23_id_RICrequestID },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_23_reject },
-	{ "&Value", aioc__type, &asn_DEF_RICrequestID },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_23_mandatory },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_24_id_RANfunctionID },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_24_reject },
-	{ "&Value", aioc__type, &asn_DEF_RANfunctionID },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_24_mandatory },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_25_id_RICactionID },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_25_id_RICrequestID },
 	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_25_reject },
-	{ "&Value", aioc__type, &asn_DEF_RICactionID },
+	{ "&Value", aioc__type, &asn_DEF_RICrequestID },
 	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_25_mandatory },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_26_id_RICindicationSN },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_26_id_RANfunctionID },
 	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_26_reject },
-	{ "&Value", aioc__type, &asn_DEF_RICindicationSN },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_26_optional },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_27_id_RICindicationType },
+	{ "&Value", aioc__type, &asn_DEF_RANfunctionID },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_26_mandatory },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_27_id_RICactionID },
 	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_27_reject },
-	{ "&Value", aioc__type, &asn_DEF_RICindicationType },
+	{ "&Value", aioc__type, &asn_DEF_RICactionID },
 	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_27_mandatory },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_28_id_RICindicationHeader },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_28_id_RICindicationSN },
 	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_28_reject },
-	{ "&Value", aioc__type, &asn_DEF_RICindicationHeader },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_28_mandatory },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_29_id_RICindicationMessage },
+	{ "&Value", aioc__type, &asn_DEF_RICindicationSN },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_28_optional },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_29_id_RICindicationType },
 	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_29_reject },
-	{ "&Value", aioc__type, &asn_DEF_RICindicationMessage },
+	{ "&Value", aioc__type, &asn_DEF_RICindicationType },
 	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_29_mandatory },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_30_id_RICcallProcessID },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_30_id_RICindicationHeader },
 	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_30_reject },
+	{ "&Value", aioc__type, &asn_DEF_RICindicationHeader },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_30_mandatory },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_31_id_RICindicationMessage },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_31_reject },
+	{ "&Value", aioc__type, &asn_DEF_RICindicationMessage },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_31_mandatory },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_32_id_RICcallProcessID },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_32_reject },
 	{ "&Value", aioc__type, &asn_DEF_RICcallProcessID },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_30_optional }
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_32_optional }
 };
 static const asn_ioc_set_t asn_IOS_RICindication_IEs_1[] = {
 	{ 8, 4, asn_IOS_RICindication_IEs_1_rows }
 };
-static const long asn_VAL_31_id_RICrequestID = 29;
-static const long asn_VAL_31_reject = 0;
-static const long asn_VAL_31_mandatory = 2;
-static const long asn_VAL_32_id_RANfunctionID = 5;
-static const long asn_VAL_32_reject = 0;
-static const long asn_VAL_32_mandatory = 2;
-static const long asn_VAL_33_id_RICcallProcessID = 20;
+static const long asn_VAL_33_id_RICrequestID = 29;
 static const long asn_VAL_33_reject = 0;
-static const long asn_VAL_33_optional = 0;
-static const long asn_VAL_34_id_RICcontrolHeader = 22;
+static const long asn_VAL_33_mandatory = 2;
+static const long asn_VAL_34_id_RANfunctionID = 5;
 static const long asn_VAL_34_reject = 0;
 static const long asn_VAL_34_mandatory = 2;
-static const long asn_VAL_35_id_RICcontrolMessage = 23;
+static const long asn_VAL_35_id_RICcallProcessID = 20;
 static const long asn_VAL_35_reject = 0;
-static const long asn_VAL_35_mandatory = 2;
-static const long asn_VAL_36_id_RICcontrolAckRequest = 21;
+static const long asn_VAL_35_optional = 0;
+static const long asn_VAL_36_id_RICcontrolHeader = 22;
 static const long asn_VAL_36_reject = 0;
-static const long asn_VAL_36_optional = 0;
+static const long asn_VAL_36_mandatory = 2;
+static const long asn_VAL_37_id_RICcontrolMessage = 23;
+static const long asn_VAL_37_reject = 0;
+static const long asn_VAL_37_mandatory = 2;
+static const long asn_VAL_38_id_RICcontrolAckRequest = 21;
+static const long asn_VAL_38_reject = 0;
+static const long asn_VAL_38_optional = 0;
 static const asn_ioc_cell_t asn_IOS_RICcontrolRequest_IEs_1_rows[] = {
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_31_id_RICrequestID },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_31_reject },
-	{ "&Value", aioc__type, &asn_DEF_RICrequestID },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_31_mandatory },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_32_id_RANfunctionID },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_32_reject },
-	{ "&Value", aioc__type, &asn_DEF_RANfunctionID },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_32_mandatory },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_33_id_RICcallProcessID },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_33_id_RICrequestID },
 	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_33_reject },
-	{ "&Value", aioc__type, &asn_DEF_RICcallProcessID },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_33_optional },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_34_id_RICcontrolHeader },
+	{ "&Value", aioc__type, &asn_DEF_RICrequestID },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_33_mandatory },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_34_id_RANfunctionID },
 	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_34_reject },
-	{ "&Value", aioc__type, &asn_DEF_RICcontrolHeader },
+	{ "&Value", aioc__type, &asn_DEF_RANfunctionID },
 	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_34_mandatory },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_35_id_RICcontrolMessage },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_35_id_RICcallProcessID },
 	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_35_reject },
-	{ "&Value", aioc__type, &asn_DEF_RICcontrolMessage },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_35_mandatory },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_36_id_RICcontrolAckRequest },
+	{ "&Value", aioc__type, &asn_DEF_RICcallProcessID },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_35_optional },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_36_id_RICcontrolHeader },
 	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_36_reject },
+	{ "&Value", aioc__type, &asn_DEF_RICcontrolHeader },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_36_mandatory },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_37_id_RICcontrolMessage },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_37_reject },
+	{ "&Value", aioc__type, &asn_DEF_RICcontrolMessage },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_37_mandatory },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_38_id_RICcontrolAckRequest },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_38_reject },
 	{ "&Value", aioc__type, &asn_DEF_RICcontrolAckRequest },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_36_optional }
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_38_optional }
 };
 static const asn_ioc_set_t asn_IOS_RICcontrolRequest_IEs_1[] = {
 	{ 6, 4, asn_IOS_RICcontrolRequest_IEs_1_rows }
 };
-static const long asn_VAL_37_id_RICrequestID = 29;
-static const long asn_VAL_37_reject = 0;
-static const long asn_VAL_37_mandatory = 2;
-static const long asn_VAL_38_id_RANfunctionID = 5;
-static const long asn_VAL_38_reject = 0;
-static const long asn_VAL_38_mandatory = 2;
-static const long asn_VAL_39_id_RICcallProcessID = 20;
+static const long asn_VAL_39_id_RICrequestID = 29;
 static const long asn_VAL_39_reject = 0;
-static const long asn_VAL_39_optional = 0;
-static const long asn_VAL_40_id_RICcontrolStatus = 24;
+static const long asn_VAL_39_mandatory = 2;
+static const long asn_VAL_40_id_RANfunctionID = 5;
 static const long asn_VAL_40_reject = 0;
 static const long asn_VAL_40_mandatory = 2;
-static const long asn_VAL_41_id_RICcontrolOutcome = 32;
+static const long asn_VAL_41_id_RICcallProcessID = 20;
 static const long asn_VAL_41_reject = 0;
 static const long asn_VAL_41_optional = 0;
+static const long asn_VAL_42_id_RICcontrolOutcome = 32;
+static const long asn_VAL_42_reject = 0;
+static const long asn_VAL_42_optional = 0;
 static const asn_ioc_cell_t asn_IOS_RICcontrolAcknowledge_IEs_1_rows[] = {
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_37_id_RICrequestID },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_37_reject },
-	{ "&Value", aioc__type, &asn_DEF_RICrequestID },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_37_mandatory },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_38_id_RANfunctionID },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_38_reject },
-	{ "&Value", aioc__type, &asn_DEF_RANfunctionID },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_38_mandatory },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_39_id_RICcallProcessID },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_39_id_RICrequestID },
 	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_39_reject },
-	{ "&Value", aioc__type, &asn_DEF_RICcallProcessID },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_39_optional },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_40_id_RICcontrolStatus },
+	{ "&Value", aioc__type, &asn_DEF_RICrequestID },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_39_mandatory },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_40_id_RANfunctionID },
 	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_40_reject },
-	{ "&Value", aioc__type, &asn_DEF_RICcontrolStatus },
+	{ "&Value", aioc__type, &asn_DEF_RANfunctionID },
 	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_40_mandatory },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_41_id_RICcontrolOutcome },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_41_id_RICcallProcessID },
 	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_41_reject },
+	{ "&Value", aioc__type, &asn_DEF_RICcallProcessID },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_41_optional },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_42_id_RICcontrolOutcome },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_42_reject },
 	{ "&Value", aioc__type, &asn_DEF_RICcontrolOutcome },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_41_optional }
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_42_optional }
 };
 static const asn_ioc_set_t asn_IOS_RICcontrolAcknowledge_IEs_1[] = {
-	{ 5, 4, asn_IOS_RICcontrolAcknowledge_IEs_1_rows }
+	{ 4, 4, asn_IOS_RICcontrolAcknowledge_IEs_1_rows }
 };
-static const long asn_VAL_42_id_RICrequestID = 29;
-static const long asn_VAL_42_reject = 0;
-static const long asn_VAL_42_mandatory = 2;
-static const long asn_VAL_43_id_RANfunctionID = 5;
+static const long asn_VAL_43_id_RICrequestID = 29;
 static const long asn_VAL_43_reject = 0;
 static const long asn_VAL_43_mandatory = 2;
-static const long asn_VAL_44_id_RICcallProcessID = 20;
+static const long asn_VAL_44_id_RANfunctionID = 5;
 static const long asn_VAL_44_reject = 0;
-static const long asn_VAL_44_optional = 0;
-static const long asn_VAL_45_id_Cause = 1;
-static const long asn_VAL_45_ignore = 1;
-static const long asn_VAL_45_mandatory = 2;
-static const long asn_VAL_46_id_RICcontrolOutcome = 32;
-static const long asn_VAL_46_reject = 0;
-static const long asn_VAL_46_optional = 0;
+static const long asn_VAL_44_mandatory = 2;
+static const long asn_VAL_45_id_RICcallProcessID = 20;
+static const long asn_VAL_45_reject = 0;
+static const long asn_VAL_45_optional = 0;
+static const long asn_VAL_46_id_Cause = 1;
+static const long asn_VAL_46_ignore = 1;
+static const long asn_VAL_46_mandatory = 2;
+static const long asn_VAL_47_id_RICcontrolOutcome = 32;
+static const long asn_VAL_47_reject = 0;
+static const long asn_VAL_47_optional = 0;
 static const asn_ioc_cell_t asn_IOS_RICcontrolFailure_IEs_1_rows[] = {
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_42_id_RICrequestID },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_42_reject },
-	{ "&Value", aioc__type, &asn_DEF_RICrequestID },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_42_mandatory },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_43_id_RANfunctionID },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_43_id_RICrequestID },
 	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_43_reject },
-	{ "&Value", aioc__type, &asn_DEF_RANfunctionID },
+	{ "&Value", aioc__type, &asn_DEF_RICrequestID },
 	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_43_mandatory },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_44_id_RICcallProcessID },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_44_id_RANfunctionID },
 	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_44_reject },
+	{ "&Value", aioc__type, &asn_DEF_RANfunctionID },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_44_mandatory },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_45_id_RICcallProcessID },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_45_reject },
 	{ "&Value", aioc__type, &asn_DEF_RICcallProcessID },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_44_optional },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_45_id_Cause },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_45_ignore },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_45_optional },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_46_id_Cause },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_46_ignore },
 	{ "&Value", aioc__type, &asn_DEF_Cause },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_45_mandatory },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_46_id_RICcontrolOutcome },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_46_reject },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_46_mandatory },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_47_id_RICcontrolOutcome },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_47_reject },
 	{ "&Value", aioc__type, &asn_DEF_RICcontrolOutcome },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_46_optional }
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_47_optional }
 };
 static const asn_ioc_set_t asn_IOS_RICcontrolFailure_IEs_1[] = {
 	{ 5, 4, asn_IOS_RICcontrolFailure_IEs_1_rows }
 };
-static const long asn_VAL_47_id_RICrequestID = 29;
-static const long asn_VAL_47_reject = 0;
-static const long asn_VAL_47_optional = 0;
-static const long asn_VAL_48_id_RANfunctionID = 5;
+static const long asn_VAL_48_id_TransactionID = 49;
 static const long asn_VAL_48_reject = 0;
 static const long asn_VAL_48_optional = 0;
-static const long asn_VAL_49_id_Cause = 1;
-static const long asn_VAL_49_ignore = 1;
+static const long asn_VAL_49_id_RICrequestID = 29;
+static const long asn_VAL_49_reject = 0;
 static const long asn_VAL_49_optional = 0;
-static const long asn_VAL_50_id_CriticalityDiagnostics = 2;
-static const long asn_VAL_50_ignore = 1;
+static const long asn_VAL_50_id_RANfunctionID = 5;
+static const long asn_VAL_50_reject = 0;
 static const long asn_VAL_50_optional = 0;
+static const long asn_VAL_51_id_Cause = 1;
+static const long asn_VAL_51_ignore = 1;
+static const long asn_VAL_51_optional = 0;
+static const long asn_VAL_52_id_CriticalityDiagnostics = 2;
+static const long asn_VAL_52_ignore = 1;
+static const long asn_VAL_52_optional = 0;
 static const asn_ioc_cell_t asn_IOS_ErrorIndication_IEs_1_rows[] = {
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_47_id_RICrequestID },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_47_reject },
-	{ "&Value", aioc__type, &asn_DEF_RICrequestID },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_47_optional },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_48_id_RANfunctionID },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_48_id_TransactionID },
 	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_48_reject },
-	{ "&Value", aioc__type, &asn_DEF_RANfunctionID },
+	{ "&Value", aioc__type, &asn_DEF_TransactionID },
 	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_48_optional },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_49_id_Cause },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_49_ignore },
-	{ "&Value", aioc__type, &asn_DEF_Cause },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_49_id_RICrequestID },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_49_reject },
+	{ "&Value", aioc__type, &asn_DEF_RICrequestID },
 	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_49_optional },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_50_id_CriticalityDiagnostics },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_50_ignore },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_50_id_RANfunctionID },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_50_reject },
+	{ "&Value", aioc__type, &asn_DEF_RANfunctionID },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_50_optional },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_51_id_Cause },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_51_ignore },
+	{ "&Value", aioc__type, &asn_DEF_Cause },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_51_optional },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_52_id_CriticalityDiagnostics },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_52_ignore },
 	{ "&Value", aioc__type, &asn_DEF_CriticalityDiagnostics },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_50_optional }
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_52_optional }
 };
 static const asn_ioc_set_t asn_IOS_ErrorIndication_IEs_1[] = {
-	{ 4, 4, asn_IOS_ErrorIndication_IEs_1_rows }
+	{ 5, 4, asn_IOS_ErrorIndication_IEs_1_rows }
 };
-static const long asn_VAL_51_id_GlobalE2node_ID = 3;
-static const long asn_VAL_51_reject = 0;
-static const long asn_VAL_51_mandatory = 2;
-static const long asn_VAL_52_id_RANfunctionsAdded = 10;
-static const long asn_VAL_52_reject = 0;
-static const long asn_VAL_52_optional = 0;
-static const long asn_VAL_53_id_E2nodeComponentConfigUpdate = 33;
+static const long asn_VAL_53_id_TransactionID = 49;
 static const long asn_VAL_53_reject = 0;
-static const long asn_VAL_53_optional = 0;
-static const asn_ioc_cell_t asn_IOS_E2setupRequestIEs_1_rows[] = {
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_51_id_GlobalE2node_ID },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_51_reject },
-	{ "&Value", aioc__type, &asn_DEF_GlobalE2node_ID },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_51_mandatory },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_52_id_RANfunctionsAdded },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_52_reject },
-	{ "&Value", aioc__type, &asn_DEF_RANfunctions_List },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_52_optional },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_53_id_E2nodeComponentConfigUpdate },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_53_reject },
-	{ "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigUpdate_List },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_53_optional }
-};
-static const asn_ioc_set_t asn_IOS_E2setupRequestIEs_1[] = {
-	{ 3, 4, asn_IOS_E2setupRequestIEs_1_rows }
-};
-static const long asn_VAL_54_id_GlobalRIC_ID = 4;
+static const long asn_VAL_53_mandatory = 2;
+static const long asn_VAL_54_id_GlobalE2node_ID = 3;
 static const long asn_VAL_54_reject = 0;
 static const long asn_VAL_54_mandatory = 2;
-static const long asn_VAL_55_id_RANfunctionsAccepted = 9;
+static const long asn_VAL_55_id_RANfunctionsAdded = 10;
 static const long asn_VAL_55_reject = 0;
-static const long asn_VAL_55_optional = 0;
-static const long asn_VAL_56_id_RANfunctionsRejected = 13;
+static const long asn_VAL_55_mandatory = 2;
+static const long asn_VAL_56_id_E2nodeComponentConfigAddition = 50;
 static const long asn_VAL_56_reject = 0;
-static const long asn_VAL_56_optional = 0;
-static const long asn_VAL_57_id_E2nodeComponentConfigUpdateAck = 35;
-static const long asn_VAL_57_reject = 0;
-static const long asn_VAL_57_optional = 0;
-static const asn_ioc_cell_t asn_IOS_E2setupResponseIEs_1_rows[] = {
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_54_id_GlobalRIC_ID },
+static const long asn_VAL_56_mandatory = 2;
+static const asn_ioc_cell_t asn_IOS_E2setupRequestIEs_1_rows[] = {
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_53_id_TransactionID },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_53_reject },
+	{ "&Value", aioc__type, &asn_DEF_TransactionID },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_53_mandatory },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_54_id_GlobalE2node_ID },
 	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_54_reject },
-	{ "&Value", aioc__type, &asn_DEF_GlobalRIC_ID },
+	{ "&Value", aioc__type, &asn_DEF_GlobalE2node_ID },
 	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_54_mandatory },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_55_id_RANfunctionsAccepted },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_55_id_RANfunctionsAdded },
 	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_55_reject },
-	{ "&Value", aioc__type, &asn_DEF_RANfunctionsID_List },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_55_optional },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_56_id_RANfunctionsRejected },
+	{ "&Value", aioc__type, &asn_DEF_RANfunctions_List },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_55_mandatory },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_56_id_E2nodeComponentConfigAddition },
 	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_56_reject },
-	{ "&Value", aioc__type, &asn_DEF_RANfunctionsIDcause_List },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_56_optional },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_57_id_E2nodeComponentConfigUpdateAck },
+	{ "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigAddition_List },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_56_mandatory }
+};
+static const asn_ioc_set_t asn_IOS_E2setupRequestIEs_1[] = {
+	{ 4, 4, asn_IOS_E2setupRequestIEs_1_rows }
+};
+static const long asn_VAL_57_id_TransactionID = 49;
+static const long asn_VAL_57_reject = 0;
+static const long asn_VAL_57_mandatory = 2;
+static const long asn_VAL_58_id_GlobalRIC_ID = 4;
+static const long asn_VAL_58_reject = 0;
+static const long asn_VAL_58_mandatory = 2;
+static const long asn_VAL_59_id_RANfunctionsAccepted = 9;
+static const long asn_VAL_59_reject = 0;
+static const long asn_VAL_59_optional = 0;
+static const long asn_VAL_60_id_RANfunctionsRejected = 13;
+static const long asn_VAL_60_reject = 0;
+static const long asn_VAL_60_optional = 0;
+static const long asn_VAL_61_id_E2nodeComponentConfigAdditionAck = 52;
+static const long asn_VAL_61_reject = 0;
+static const long asn_VAL_61_mandatory = 2;
+static const asn_ioc_cell_t asn_IOS_E2setupResponseIEs_1_rows[] = {
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_57_id_TransactionID },
 	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_57_reject },
-	{ "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigUpdateAck_List },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_57_optional }
+	{ "&Value", aioc__type, &asn_DEF_TransactionID },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_57_mandatory },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_58_id_GlobalRIC_ID },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_58_reject },
+	{ "&Value", aioc__type, &asn_DEF_GlobalRIC_ID },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_58_mandatory },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_59_id_RANfunctionsAccepted },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_59_reject },
+	{ "&Value", aioc__type, &asn_DEF_RANfunctionsID_List },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_59_optional },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_60_id_RANfunctionsRejected },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_60_reject },
+	{ "&Value", aioc__type, &asn_DEF_RANfunctionsIDcause_List },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_60_optional },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_61_id_E2nodeComponentConfigAdditionAck },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_61_reject },
+	{ "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigAdditionAck_List },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_61_mandatory }
 };
 static const asn_ioc_set_t asn_IOS_E2setupResponseIEs_1[] = {
-	{ 4, 4, asn_IOS_E2setupResponseIEs_1_rows }
+	{ 5, 4, asn_IOS_E2setupResponseIEs_1_rows }
 };
-static const long asn_VAL_58_id_Cause = 1;
-static const long asn_VAL_58_ignore = 1;
-static const long asn_VAL_58_mandatory = 2;
-static const long asn_VAL_59_id_TimeToWait = 31;
-static const long asn_VAL_59_ignore = 1;
-static const long asn_VAL_59_optional = 0;
-static const long asn_VAL_60_id_CriticalityDiagnostics = 2;
-static const long asn_VAL_60_ignore = 1;
-static const long asn_VAL_60_optional = 0;
-static const long asn_VAL_61_id_TNLinformation = 48;
-static const long asn_VAL_61_ignore = 1;
-static const long asn_VAL_61_optional = 0;
+static const long asn_VAL_62_id_TransactionID = 49;
+static const long asn_VAL_62_reject = 0;
+static const long asn_VAL_62_mandatory = 2;
+static const long asn_VAL_63_id_Cause = 1;
+static const long asn_VAL_63_ignore = 1;
+static const long asn_VAL_63_mandatory = 2;
+static const long asn_VAL_64_id_TimeToWait = 31;
+static const long asn_VAL_64_ignore = 1;
+static const long asn_VAL_64_optional = 0;
+static const long asn_VAL_65_id_CriticalityDiagnostics = 2;
+static const long asn_VAL_65_ignore = 1;
+static const long asn_VAL_65_optional = 0;
+static const long asn_VAL_66_id_TNLinformation = 48;
+static const long asn_VAL_66_ignore = 1;
+static const long asn_VAL_66_optional = 0;
 static const asn_ioc_cell_t asn_IOS_E2setupFailureIEs_1_rows[] = {
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_58_id_Cause },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_58_ignore },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_62_id_TransactionID },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_62_reject },
+	{ "&Value", aioc__type, &asn_DEF_TransactionID },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_62_mandatory },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_63_id_Cause },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_63_ignore },
 	{ "&Value", aioc__type, &asn_DEF_Cause },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_58_mandatory },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_59_id_TimeToWait },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_59_ignore },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_63_mandatory },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_64_id_TimeToWait },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_64_ignore },
 	{ "&Value", aioc__type, &asn_DEF_TimeToWait },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_59_optional },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_60_id_CriticalityDiagnostics },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_60_ignore },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_64_optional },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_65_id_CriticalityDiagnostics },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_65_ignore },
 	{ "&Value", aioc__type, &asn_DEF_CriticalityDiagnostics },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_60_optional },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_61_id_TNLinformation },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_61_ignore },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_65_optional },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_66_id_TNLinformation },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_66_ignore },
 	{ "&Value", aioc__type, &asn_DEF_TNLinformation },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_61_optional }
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_66_optional }
 };
 static const asn_ioc_set_t asn_IOS_E2setupFailureIEs_1[] = {
-	{ 4, 4, asn_IOS_E2setupFailureIEs_1_rows }
+	{ 5, 4, asn_IOS_E2setupFailureIEs_1_rows }
 };
-static const long asn_VAL_62_id_E2connectionUpdateAdd = 44;
-static const long asn_VAL_62_reject = 0;
-static const long asn_VAL_62_optional = 0;
-static const long asn_VAL_63_id_E2connectionUpdateRemove = 46;
-static const long asn_VAL_63_reject = 0;
-static const long asn_VAL_63_optional = 0;
-static const long asn_VAL_64_id_E2connectionUpdateModify = 45;
-static const long asn_VAL_64_reject = 0;
-static const long asn_VAL_64_optional = 0;
-static const asn_ioc_cell_t asn_IOS_E2connectionUpdate_IEs_1_rows[] = {
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_62_id_E2connectionUpdateAdd },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_62_reject },
-	{ "&Value", aioc__type, &asn_DEF_E2connectionUpdate_List },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_62_optional },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_63_id_E2connectionUpdateRemove },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_63_reject },
-	{ "&Value", aioc__type, &asn_DEF_E2connectionUpdateRemove_List },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_63_optional },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_64_id_E2connectionUpdateModify },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_64_reject },
-	{ "&Value", aioc__type, &asn_DEF_E2connectionUpdate_List },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_64_optional }
-};
-static const asn_ioc_set_t asn_IOS_E2connectionUpdate_IEs_1[] = {
-	{ 3, 4, asn_IOS_E2connectionUpdate_IEs_1_rows }
-};
-static const long asn_VAL_67_id_E2connectionSetup = 39;
+static const long asn_VAL_67_id_TransactionID = 49;
 static const long asn_VAL_67_reject = 0;
-static const long asn_VAL_67_optional = 0;
-static const long asn_VAL_68_id_E2connectionSetupFailed = 40;
+static const long asn_VAL_67_mandatory = 2;
+static const long asn_VAL_68_id_E2connectionUpdateAdd = 44;
 static const long asn_VAL_68_reject = 0;
 static const long asn_VAL_68_optional = 0;
-static const asn_ioc_cell_t asn_IOS_E2connectionUpdateAck_IEs_1_rows[] = {
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_67_id_E2connectionSetup },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_67_reject },
-	{ "&Value", aioc__type, &asn_DEF_E2connectionUpdate_List },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_67_optional },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_68_id_E2connectionSetupFailed },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_68_reject },
-	{ "&Value", aioc__type, &asn_DEF_E2connectionSetupFailed_List },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_68_optional }
-};
-static const asn_ioc_set_t asn_IOS_E2connectionUpdateAck_IEs_1[] = {
-	{ 2, 4, asn_IOS_E2connectionUpdateAck_IEs_1_rows }
-};
-static const long asn_VAL_70_id_Cause = 1;
+static const long asn_VAL_69_id_E2connectionUpdateRemove = 46;
+static const long asn_VAL_69_reject = 0;
+static const long asn_VAL_69_optional = 0;
+static const long asn_VAL_70_id_E2connectionUpdateModify = 45;
 static const long asn_VAL_70_reject = 0;
 static const long asn_VAL_70_optional = 0;
-static const long asn_VAL_71_id_TimeToWait = 31;
-static const long asn_VAL_71_ignore = 1;
-static const long asn_VAL_71_optional = 0;
-static const long asn_VAL_72_id_CriticalityDiagnostics = 2;
-static const long asn_VAL_72_ignore = 1;
-static const long asn_VAL_72_optional = 0;
-static const asn_ioc_cell_t asn_IOS_E2connectionUpdateFailure_IEs_1_rows[] = {
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_70_id_Cause },
+static const asn_ioc_cell_t asn_IOS_E2connectionUpdate_IEs_1_rows[] = {
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_67_id_TransactionID },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_67_reject },
+	{ "&Value", aioc__type, &asn_DEF_TransactionID },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_67_mandatory },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_68_id_E2connectionUpdateAdd },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_68_reject },
+	{ "&Value", aioc__type, &asn_DEF_E2connectionUpdate_List },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_68_optional },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_69_id_E2connectionUpdateRemove },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_69_reject },
+	{ "&Value", aioc__type, &asn_DEF_E2connectionUpdateRemove_List },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_69_optional },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_70_id_E2connectionUpdateModify },
 	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_70_reject },
-	{ "&Value", aioc__type, &asn_DEF_Cause },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_70_optional },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_71_id_TimeToWait },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_71_ignore },
-	{ "&Value", aioc__type, &asn_DEF_TimeToWait },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_71_optional },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_72_id_CriticalityDiagnostics },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_72_ignore },
-	{ "&Value", aioc__type, &asn_DEF_CriticalityDiagnostics },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_72_optional }
+	{ "&Value", aioc__type, &asn_DEF_E2connectionUpdate_List },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_70_optional }
 };
-static const asn_ioc_set_t asn_IOS_E2connectionUpdateFailure_IEs_1[] = {
-	{ 3, 4, asn_IOS_E2connectionUpdateFailure_IEs_1_rows }
+static const asn_ioc_set_t asn_IOS_E2connectionUpdate_IEs_1[] = {
+	{ 4, 4, asn_IOS_E2connectionUpdate_IEs_1_rows }
 };
-static const long asn_VAL_73_id_E2nodeComponentConfigUpdate = 33;
+static const long asn_VAL_73_id_TransactionID = 49;
 static const long asn_VAL_73_reject = 0;
-static const long asn_VAL_73_optional = 0;
-static const asn_ioc_cell_t asn_IOS_E2nodeConfigurationUpdate_IEs_1_rows[] = {
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_73_id_E2nodeComponentConfigUpdate },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_73_reject },
-	{ "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigUpdate_List },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_73_optional }
-};
-static const asn_ioc_set_t asn_IOS_E2nodeConfigurationUpdate_IEs_1[] = {
-	{ 1, 4, asn_IOS_E2nodeConfigurationUpdate_IEs_1_rows }
-};
-static const long asn_VAL_75_id_E2nodeComponentConfigUpdateAck = 35;
+static const long asn_VAL_73_mandatory = 2;
+static const long asn_VAL_74_id_E2connectionSetup = 39;
+static const long asn_VAL_74_reject = 0;
+static const long asn_VAL_74_optional = 0;
+static const long asn_VAL_75_id_E2connectionSetupFailed = 40;
 static const long asn_VAL_75_reject = 0;
 static const long asn_VAL_75_optional = 0;
-static const asn_ioc_cell_t asn_IOS_E2nodeConfigurationUpdateAcknowledge_IEs_1_rows[] = {
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_75_id_E2nodeComponentConfigUpdateAck },
+static const asn_ioc_cell_t asn_IOS_E2connectionUpdateAck_IEs_1_rows[] = {
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_73_id_TransactionID },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_73_reject },
+	{ "&Value", aioc__type, &asn_DEF_TransactionID },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_73_mandatory },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_74_id_E2connectionSetup },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_74_reject },
+	{ "&Value", aioc__type, &asn_DEF_E2connectionUpdate_List },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_74_optional },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_75_id_E2connectionSetupFailed },
 	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_75_reject },
-	{ "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigUpdateAck_List },
+	{ "&Value", aioc__type, &asn_DEF_E2connectionSetupFailed_List },
 	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_75_optional }
 };
-static const asn_ioc_set_t asn_IOS_E2nodeConfigurationUpdateAcknowledge_IEs_1[] = {
-	{ 1, 4, asn_IOS_E2nodeConfigurationUpdateAcknowledge_IEs_1_rows }
+static const asn_ioc_set_t asn_IOS_E2connectionUpdateAck_IEs_1[] = {
+	{ 3, 4, asn_IOS_E2connectionUpdateAck_IEs_1_rows }
 };
-static const long asn_VAL_77_id_Cause = 1;
-static const long asn_VAL_77_ignore = 1;
+static const long asn_VAL_77_id_TransactionID = 49;
+static const long asn_VAL_77_reject = 0;
 static const long asn_VAL_77_mandatory = 2;
-static const long asn_VAL_78_id_TimeToWait = 31;
-static const long asn_VAL_78_ignore = 1;
+static const long asn_VAL_78_id_Cause = 1;
+static const long asn_VAL_78_reject = 0;
 static const long asn_VAL_78_optional = 0;
-static const long asn_VAL_79_id_CriticalityDiagnostics = 2;
+static const long asn_VAL_79_id_TimeToWait = 31;
 static const long asn_VAL_79_ignore = 1;
 static const long asn_VAL_79_optional = 0;
-static const asn_ioc_cell_t asn_IOS_E2nodeConfigurationUpdateFailure_IEs_1_rows[] = {
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_77_id_Cause },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_77_ignore },
-	{ "&Value", aioc__type, &asn_DEF_Cause },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_77_mandatory },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_78_id_TimeToWait },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_78_ignore },
-	{ "&Value", aioc__type, &asn_DEF_TimeToWait },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_78_optional },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_79_id_CriticalityDiagnostics },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_79_ignore },
-	{ "&Value", aioc__type, &asn_DEF_CriticalityDiagnostics },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_79_optional }
-};
-static const asn_ioc_set_t asn_IOS_E2nodeConfigurationUpdateFailure_IEs_1[] = {
-	{ 3, 4, asn_IOS_E2nodeConfigurationUpdateFailure_IEs_1_rows }
-};
-static const long asn_VAL_80_id_Cause = 1;
+static const long asn_VAL_80_id_CriticalityDiagnostics = 2;
 static const long asn_VAL_80_ignore = 1;
-static const long asn_VAL_80_mandatory = 2;
-static const asn_ioc_cell_t asn_IOS_ResetRequestIEs_1_rows[] = {
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_80_id_Cause },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_80_ignore },
+static const long asn_VAL_80_optional = 0;
+static const asn_ioc_cell_t asn_IOS_E2connectionUpdateFailure_IEs_1_rows[] = {
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_77_id_TransactionID },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_77_reject },
+	{ "&Value", aioc__type, &asn_DEF_TransactionID },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_77_mandatory },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_78_id_Cause },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_78_reject },
 	{ "&Value", aioc__type, &asn_DEF_Cause },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_80_mandatory }
-};
-static const asn_ioc_set_t asn_IOS_ResetRequestIEs_1[] = {
-	{ 1, 4, asn_IOS_ResetRequestIEs_1_rows }
-};
-static const long asn_VAL_81_id_CriticalityDiagnostics = 2;
-static const long asn_VAL_81_ignore = 1;
-static const long asn_VAL_81_optional = 0;
-static const asn_ioc_cell_t asn_IOS_ResetResponseIEs_1_rows[] = {
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_81_id_CriticalityDiagnostics },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_81_ignore },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_78_optional },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_79_id_TimeToWait },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_79_ignore },
+	{ "&Value", aioc__type, &asn_DEF_TimeToWait },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_79_optional },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_80_id_CriticalityDiagnostics },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_80_ignore },
 	{ "&Value", aioc__type, &asn_DEF_CriticalityDiagnostics },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_81_optional }
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_80_optional }
 };
-static const asn_ioc_set_t asn_IOS_ResetResponseIEs_1[] = {
-	{ 1, 4, asn_IOS_ResetResponseIEs_1_rows }
+static const asn_ioc_set_t asn_IOS_E2connectionUpdateFailure_IEs_1[] = {
+	{ 4, 4, asn_IOS_E2connectionUpdateFailure_IEs_1_rows }
 };
-static const long asn_VAL_82_id_RANfunctionsAdded = 10;
+static const long asn_VAL_81_id_TransactionID = 49;
+static const long asn_VAL_81_reject = 0;
+static const long asn_VAL_81_mandatory = 2;
+static const long asn_VAL_82_id_GlobalE2node_ID = 3;
 static const long asn_VAL_82_reject = 0;
 static const long asn_VAL_82_optional = 0;
-static const long asn_VAL_83_id_RANfunctionsModified = 12;
+static const long asn_VAL_83_id_E2nodeComponentConfigAddition = 50;
 static const long asn_VAL_83_reject = 0;
 static const long asn_VAL_83_optional = 0;
-static const long asn_VAL_84_id_RANfunctionsDeleted = 11;
+static const long asn_VAL_84_id_E2nodeComponentConfigUpdate = 33;
 static const long asn_VAL_84_reject = 0;
 static const long asn_VAL_84_optional = 0;
-static const asn_ioc_cell_t asn_IOS_RICserviceUpdate_IEs_1_rows[] = {
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_82_id_RANfunctionsAdded },
+static const long asn_VAL_85_id_E2nodeComponentConfigRemoval = 54;
+static const long asn_VAL_85_reject = 0;
+static const long asn_VAL_85_optional = 0;
+static const long asn_VAL_86_id_E2nodeTNLassociationRemoval = 58;
+static const long asn_VAL_86_reject = 0;
+static const long asn_VAL_86_optional = 0;
+static const asn_ioc_cell_t asn_IOS_E2nodeConfigurationUpdate_IEs_1_rows[] = {
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_81_id_TransactionID },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_81_reject },
+	{ "&Value", aioc__type, &asn_DEF_TransactionID },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_81_mandatory },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_82_id_GlobalE2node_ID },
 	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_82_reject },
-	{ "&Value", aioc__type, &asn_DEF_RANfunctions_List },
+	{ "&Value", aioc__type, &asn_DEF_GlobalE2node_ID },
 	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_82_optional },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_83_id_RANfunctionsModified },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_83_id_E2nodeComponentConfigAddition },
 	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_83_reject },
-	{ "&Value", aioc__type, &asn_DEF_RANfunctions_List },
+	{ "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigAddition_List },
 	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_83_optional },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_84_id_RANfunctionsDeleted },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_84_id_E2nodeComponentConfigUpdate },
 	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_84_reject },
-	{ "&Value", aioc__type, &asn_DEF_RANfunctionsID_List },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_84_optional }
+	{ "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigUpdate_List },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_84_optional },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_85_id_E2nodeComponentConfigRemoval },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_85_reject },
+	{ "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigRemoval_List },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_85_optional },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_86_id_E2nodeTNLassociationRemoval },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_86_reject },
+	{ "&Value", aioc__type, &asn_DEF_E2nodeTNLassociationRemoval_List },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_86_optional }
 };
-static const asn_ioc_set_t asn_IOS_RICserviceUpdate_IEs_1[] = {
-	{ 3, 4, asn_IOS_RICserviceUpdate_IEs_1_rows }
+static const asn_ioc_set_t asn_IOS_E2nodeConfigurationUpdate_IEs_1[] = {
+	{ 6, 4, asn_IOS_E2nodeConfigurationUpdate_IEs_1_rows }
 };
-static const long asn_VAL_87_id_RANfunctionsAccepted = 9;
-static const long asn_VAL_87_reject = 0;
-static const long asn_VAL_87_optional = 0;
-static const long asn_VAL_88_id_RANfunctionsRejected = 13;
-static const long asn_VAL_88_reject = 0;
-static const long asn_VAL_88_optional = 0;
-static const asn_ioc_cell_t asn_IOS_RICserviceUpdateAcknowledge_IEs_1_rows[] = {
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_87_id_RANfunctionsAccepted },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_87_reject },
-	{ "&Value", aioc__type, &asn_DEF_RANfunctionsID_List },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_87_optional },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_88_id_RANfunctionsRejected },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_88_reject },
-	{ "&Value", aioc__type, &asn_DEF_RANfunctionsIDcause_List },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_88_optional }
-};
-static const asn_ioc_set_t asn_IOS_RICserviceUpdateAcknowledge_IEs_1[] = {
-	{ 2, 4, asn_IOS_RICserviceUpdateAcknowledge_IEs_1_rows }
-};
-static const long asn_VAL_90_id_RANfunctionsRejected = 13;
-static const long asn_VAL_90_ignore = 1;
-static const long asn_VAL_90_optional = 0;
-static const long asn_VAL_91_id_TimeToWait = 31;
-static const long asn_VAL_91_ignore = 1;
-static const long asn_VAL_91_optional = 0;
-static const long asn_VAL_92_id_CriticalityDiagnostics = 2;
-static const long asn_VAL_92_ignore = 1;
+static const long asn_VAL_91_id_TransactionID = 49;
+static const long asn_VAL_91_reject = 0;
+static const long asn_VAL_91_mandatory = 2;
+static const long asn_VAL_92_id_E2nodeComponentConfigAdditionAck = 52;
+static const long asn_VAL_92_reject = 0;
 static const long asn_VAL_92_optional = 0;
-static const asn_ioc_cell_t asn_IOS_RICserviceUpdateFailure_IEs_1_rows[] = {
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_90_id_RANfunctionsRejected },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_90_ignore },
-	{ "&Value", aioc__type, &asn_DEF_RANfunctionsIDcause_List },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_90_optional },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_91_id_TimeToWait },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_91_ignore },
-	{ "&Value", aioc__type, &asn_DEF_TimeToWait },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_91_optional },
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_92_id_CriticalityDiagnostics },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_92_ignore },
-	{ "&Value", aioc__type, &asn_DEF_CriticalityDiagnostics },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_92_optional }
-};
-static const asn_ioc_set_t asn_IOS_RICserviceUpdateFailure_IEs_1[] = {
-	{ 3, 4, asn_IOS_RICserviceUpdateFailure_IEs_1_rows }
-};
-static const long asn_VAL_93_id_RANfunctionsAccepted = 9;
+static const long asn_VAL_93_id_E2nodeComponentConfigUpdateAck = 35;
 static const long asn_VAL_93_reject = 0;
 static const long asn_VAL_93_optional = 0;
-static const asn_ioc_cell_t asn_IOS_RICserviceQuery_IEs_1_rows[] = {
-	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_93_id_RANfunctionsAccepted },
+static const long asn_VAL_94_id_E2nodeComponentConfigRemovalAck = 56;
+static const long asn_VAL_94_reject = 0;
+static const long asn_VAL_94_optional = 0;
+static const asn_ioc_cell_t asn_IOS_E2nodeConfigurationUpdateAcknowledge_IEs_1_rows[] = {
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_91_id_TransactionID },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_91_reject },
+	{ "&Value", aioc__type, &asn_DEF_TransactionID },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_91_mandatory },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_92_id_E2nodeComponentConfigAdditionAck },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_92_reject },
+	{ "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigAdditionAck_List },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_92_optional },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_93_id_E2nodeComponentConfigUpdateAck },
 	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_93_reject },
+	{ "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigUpdateAck_List },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_93_optional },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_94_id_E2nodeComponentConfigRemovalAck },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_94_reject },
+	{ "&Value", aioc__type, &asn_DEF_E2nodeComponentConfigRemovalAck_List },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_94_optional }
+};
+static const asn_ioc_set_t asn_IOS_E2nodeConfigurationUpdateAcknowledge_IEs_1[] = {
+	{ 4, 4, asn_IOS_E2nodeConfigurationUpdateAcknowledge_IEs_1_rows }
+};
+static const long asn_VAL_98_id_TransactionID = 49;
+static const long asn_VAL_98_reject = 0;
+static const long asn_VAL_98_mandatory = 2;
+static const long asn_VAL_99_id_Cause = 1;
+static const long asn_VAL_99_ignore = 1;
+static const long asn_VAL_99_mandatory = 2;
+static const long asn_VAL_100_id_TimeToWait = 31;
+static const long asn_VAL_100_ignore = 1;
+static const long asn_VAL_100_optional = 0;
+static const long asn_VAL_101_id_CriticalityDiagnostics = 2;
+static const long asn_VAL_101_ignore = 1;
+static const long asn_VAL_101_optional = 0;
+static const asn_ioc_cell_t asn_IOS_E2nodeConfigurationUpdateFailure_IEs_1_rows[] = {
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_98_id_TransactionID },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_98_reject },
+	{ "&Value", aioc__type, &asn_DEF_TransactionID },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_98_mandatory },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_99_id_Cause },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_99_ignore },
+	{ "&Value", aioc__type, &asn_DEF_Cause },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_99_mandatory },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_100_id_TimeToWait },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_100_ignore },
+	{ "&Value", aioc__type, &asn_DEF_TimeToWait },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_100_optional },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_101_id_CriticalityDiagnostics },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_101_ignore },
+	{ "&Value", aioc__type, &asn_DEF_CriticalityDiagnostics },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_101_optional }
+};
+static const asn_ioc_set_t asn_IOS_E2nodeConfigurationUpdateFailure_IEs_1[] = {
+	{ 4, 4, asn_IOS_E2nodeConfigurationUpdateFailure_IEs_1_rows }
+};
+static const long asn_VAL_102_id_TransactionID = 49;
+static const long asn_VAL_102_reject = 0;
+static const long asn_VAL_102_mandatory = 2;
+static const long asn_VAL_103_id_Cause = 1;
+static const long asn_VAL_103_ignore = 1;
+static const long asn_VAL_103_mandatory = 2;
+static const asn_ioc_cell_t asn_IOS_ResetRequestIEs_1_rows[] = {
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_102_id_TransactionID },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_102_reject },
+	{ "&Value", aioc__type, &asn_DEF_TransactionID },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_102_mandatory },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_103_id_Cause },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_103_ignore },
+	{ "&Value", aioc__type, &asn_DEF_Cause },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_103_mandatory }
+};
+static const asn_ioc_set_t asn_IOS_ResetRequestIEs_1[] = {
+	{ 2, 4, asn_IOS_ResetRequestIEs_1_rows }
+};
+static const long asn_VAL_104_id_TransactionID = 49;
+static const long asn_VAL_104_reject = 0;
+static const long asn_VAL_104_mandatory = 2;
+static const long asn_VAL_105_id_CriticalityDiagnostics = 2;
+static const long asn_VAL_105_ignore = 1;
+static const long asn_VAL_105_optional = 0;
+static const asn_ioc_cell_t asn_IOS_ResetResponseIEs_1_rows[] = {
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_104_id_TransactionID },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_104_reject },
+	{ "&Value", aioc__type, &asn_DEF_TransactionID },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_104_mandatory },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_105_id_CriticalityDiagnostics },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_105_ignore },
+	{ "&Value", aioc__type, &asn_DEF_CriticalityDiagnostics },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_105_optional }
+};
+static const asn_ioc_set_t asn_IOS_ResetResponseIEs_1[] = {
+	{ 2, 4, asn_IOS_ResetResponseIEs_1_rows }
+};
+static const long asn_VAL_106_id_TransactionID = 49;
+static const long asn_VAL_106_reject = 0;
+static const long asn_VAL_106_mandatory = 2;
+static const long asn_VAL_107_id_RANfunctionsAdded = 10;
+static const long asn_VAL_107_reject = 0;
+static const long asn_VAL_107_optional = 0;
+static const long asn_VAL_108_id_RANfunctionsModified = 12;
+static const long asn_VAL_108_reject = 0;
+static const long asn_VAL_108_optional = 0;
+static const long asn_VAL_109_id_RANfunctionsDeleted = 11;
+static const long asn_VAL_109_reject = 0;
+static const long asn_VAL_109_optional = 0;
+static const asn_ioc_cell_t asn_IOS_RICserviceUpdate_IEs_1_rows[] = {
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_106_id_TransactionID },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_106_reject },
+	{ "&Value", aioc__type, &asn_DEF_TransactionID },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_106_mandatory },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_107_id_RANfunctionsAdded },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_107_reject },
+	{ "&Value", aioc__type, &asn_DEF_RANfunctions_List },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_107_optional },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_108_id_RANfunctionsModified },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_108_reject },
+	{ "&Value", aioc__type, &asn_DEF_RANfunctions_List },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_108_optional },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_109_id_RANfunctionsDeleted },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_109_reject },
 	{ "&Value", aioc__type, &asn_DEF_RANfunctionsID_List },
-	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_93_optional }
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_109_optional }
+};
+static const asn_ioc_set_t asn_IOS_RICserviceUpdate_IEs_1[] = {
+	{ 4, 4, asn_IOS_RICserviceUpdate_IEs_1_rows }
+};
+static const long asn_VAL_112_id_TransactionID = 49;
+static const long asn_VAL_112_reject = 0;
+static const long asn_VAL_112_mandatory = 2;
+static const long asn_VAL_113_id_RANfunctionsAccepted = 9;
+static const long asn_VAL_113_reject = 0;
+static const long asn_VAL_113_mandatory = 2;
+static const long asn_VAL_114_id_RANfunctionsRejected = 13;
+static const long asn_VAL_114_reject = 0;
+static const long asn_VAL_114_optional = 0;
+static const asn_ioc_cell_t asn_IOS_RICserviceUpdateAcknowledge_IEs_1_rows[] = {
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_112_id_TransactionID },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_112_reject },
+	{ "&Value", aioc__type, &asn_DEF_TransactionID },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_112_mandatory },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_113_id_RANfunctionsAccepted },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_113_reject },
+	{ "&Value", aioc__type, &asn_DEF_RANfunctionsID_List },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_113_mandatory },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_114_id_RANfunctionsRejected },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_114_reject },
+	{ "&Value", aioc__type, &asn_DEF_RANfunctionsIDcause_List },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_114_optional }
+};
+static const asn_ioc_set_t asn_IOS_RICserviceUpdateAcknowledge_IEs_1[] = {
+	{ 3, 4, asn_IOS_RICserviceUpdateAcknowledge_IEs_1_rows }
+};
+static const long asn_VAL_116_id_TransactionID = 49;
+static const long asn_VAL_116_reject = 0;
+static const long asn_VAL_116_mandatory = 2;
+static const long asn_VAL_117_id_Cause = 1;
+static const long asn_VAL_117_reject = 0;
+static const long asn_VAL_117_mandatory = 2;
+static const long asn_VAL_118_id_TimeToWait = 31;
+static const long asn_VAL_118_ignore = 1;
+static const long asn_VAL_118_optional = 0;
+static const long asn_VAL_119_id_CriticalityDiagnostics = 2;
+static const long asn_VAL_119_ignore = 1;
+static const long asn_VAL_119_optional = 0;
+static const asn_ioc_cell_t asn_IOS_RICserviceUpdateFailure_IEs_1_rows[] = {
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_116_id_TransactionID },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_116_reject },
+	{ "&Value", aioc__type, &asn_DEF_TransactionID },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_116_mandatory },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_117_id_Cause },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_117_reject },
+	{ "&Value", aioc__type, &asn_DEF_Cause },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_117_mandatory },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_118_id_TimeToWait },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_118_ignore },
+	{ "&Value", aioc__type, &asn_DEF_TimeToWait },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_118_optional },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_119_id_CriticalityDiagnostics },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_119_ignore },
+	{ "&Value", aioc__type, &asn_DEF_CriticalityDiagnostics },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_119_optional }
+};
+static const asn_ioc_set_t asn_IOS_RICserviceUpdateFailure_IEs_1[] = {
+	{ 4, 4, asn_IOS_RICserviceUpdateFailure_IEs_1_rows }
+};
+static const long asn_VAL_120_id_TransactionID = 49;
+static const long asn_VAL_120_reject = 0;
+static const long asn_VAL_120_mandatory = 2;
+static const long asn_VAL_121_id_RANfunctionsAccepted = 9;
+static const long asn_VAL_121_reject = 0;
+static const long asn_VAL_121_optional = 0;
+static const asn_ioc_cell_t asn_IOS_RICserviceQuery_IEs_1_rows[] = {
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_120_id_TransactionID },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_120_reject },
+	{ "&Value", aioc__type, &asn_DEF_TransactionID },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_120_mandatory },
+	{ "&id", aioc__value, &asn_DEF_ProtocolIE_ID, &asn_VAL_121_id_RANfunctionsAccepted },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_121_reject },
+	{ "&Value", aioc__type, &asn_DEF_RANfunctionsID_List },
+	{ "&presence", aioc__value, &asn_DEF_Presence, &asn_VAL_121_optional }
 };
 static const asn_ioc_set_t asn_IOS_RICserviceQuery_IEs_1[] = {
-	{ 1, 4, asn_IOS_RICserviceQuery_IEs_1_rows }
+	{ 2, 4, asn_IOS_RICserviceQuery_IEs_1_rows }
 };
 static int
 memb_id_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
@@ -1220,13 +1451,13 @@
 }
 
 static asn_type_selector_result_t
-select_E2connectionUpdate_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_RICsubscription_withCause_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_E2connectionUpdate_ItemIEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_RICsubscription_withCause_ItemIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2connectionUpdate_ItemIEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscription_withCause_ItemIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -1266,13 +1497,13 @@
 }
 
 static asn_type_selector_result_t
-select_E2connectionUpdate_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_RICsubscription_withCause_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_E2connectionUpdate_ItemIEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_RICsubscription_withCause_ItemIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2connectionUpdate_ItemIEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscription_withCause_ItemIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -1337,13 +1568,13 @@
 }
 
 static asn_type_selector_result_t
-select_E2connectionUpdateRemove_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2connectionUpdate_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_E2connectionUpdateRemove_ItemIEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2connectionUpdate_ItemIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2connectionUpdateRemove_ItemIEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2connectionUpdate_ItemIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -1383,13 +1614,13 @@
 }
 
 static asn_type_selector_result_t
-select_E2connectionUpdateRemove_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2connectionUpdate_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_E2connectionUpdateRemove_ItemIEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2connectionUpdate_ItemIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2connectionUpdateRemove_ItemIEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2connectionUpdate_ItemIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -1454,13 +1685,13 @@
 }
 
 static asn_type_selector_result_t
-select_E2connectionSetupFailed_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2connectionUpdateRemove_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_E2connectionSetupFailed_ItemIEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2connectionUpdateRemove_ItemIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2connectionSetupFailed_ItemIEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2connectionUpdateRemove_ItemIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -1500,13 +1731,13 @@
 }
 
 static asn_type_selector_result_t
-select_E2connectionSetupFailed_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2connectionUpdateRemove_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_E2connectionSetupFailed_ItemIEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2connectionUpdateRemove_ItemIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2connectionSetupFailed_ItemIEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2connectionUpdateRemove_ItemIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -1571,13 +1802,13 @@
 }
 
 static asn_type_selector_result_t
-select_E2nodeComponentConfigUpdate_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2connectionSetupFailed_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_E2nodeComponentConfigUpdate_ItemIEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2connectionSetupFailed_ItemIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeComponentConfigUpdate_ItemIEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2connectionSetupFailed_ItemIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -1617,13 +1848,13 @@
 }
 
 static asn_type_selector_result_t
-select_E2nodeComponentConfigUpdate_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2connectionSetupFailed_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_E2nodeComponentConfigUpdate_ItemIEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2connectionSetupFailed_ItemIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeComponentConfigUpdate_ItemIEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2connectionSetupFailed_ItemIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -1688,13 +1919,13 @@
 }
 
 static asn_type_selector_result_t
-select_E2nodeComponentConfigUpdateAck_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2nodeComponentConfigAddition_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_E2nodeComponentConfigUpdateAck_ItemIEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2nodeComponentConfigAddition_ItemIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeComponentConfigUpdateAck_ItemIEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeComponentConfigAddition_ItemIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -1734,13 +1965,13 @@
 }
 
 static asn_type_selector_result_t
-select_E2nodeComponentConfigUpdateAck_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2nodeComponentConfigAddition_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_E2nodeComponentConfigUpdateAck_ItemIEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2nodeComponentConfigAddition_ItemIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeComponentConfigUpdateAck_ItemIEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeComponentConfigAddition_ItemIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -1805,13 +2036,13 @@
 }
 
 static asn_type_selector_result_t
-select_RANfunction_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2nodeComponentConfigUpdate_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RANfunction_ItemIEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2nodeComponentConfigUpdate_ItemIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RANfunction_ItemIEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeComponentConfigUpdate_ItemIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -1851,13 +2082,13 @@
 }
 
 static asn_type_selector_result_t
-select_RANfunction_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2nodeComponentConfigUpdate_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RANfunction_ItemIEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2nodeComponentConfigUpdate_ItemIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RANfunction_ItemIEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeComponentConfigUpdate_ItemIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -1922,13 +2153,13 @@
 }
 
 static asn_type_selector_result_t
-select_RANfunctionID_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2nodeComponentConfigRemoval_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RANfunctionID_ItemIEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2nodeComponentConfigRemoval_ItemIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RANfunctionID_ItemIEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeComponentConfigRemoval_ItemIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -1968,13 +2199,13 @@
 }
 
 static asn_type_selector_result_t
-select_RANfunctionID_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2nodeComponentConfigRemoval_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RANfunctionID_ItemIEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2nodeComponentConfigRemoval_ItemIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RANfunctionID_ItemIEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeComponentConfigRemoval_ItemIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -2039,13 +2270,13 @@
 }
 
 static asn_type_selector_result_t
-select_RANfunctionIDcause_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2nodeTNLassociationRemoval_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RANfunctionIDcause_ItemIEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2nodeTNLassociationRemoval_ItemIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RANfunctionIDcause_ItemIEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeTNLassociationRemoval_ItemIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -2085,13 +2316,13 @@
 }
 
 static asn_type_selector_result_t
-select_RANfunctionIDcause_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2nodeTNLassociationRemoval_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RANfunctionIDcause_ItemIEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2nodeTNLassociationRemoval_ItemIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RANfunctionIDcause_ItemIEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeTNLassociationRemoval_ItemIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -2156,13 +2387,13 @@
 }
 
 static asn_type_selector_result_t
-select_RICsubscriptionRequest_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2nodeComponentConfigAdditionAck_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionRequest_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2nodeComponentConfigAdditionAck_ItemIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionRequest_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeComponentConfigAdditionAck_ItemIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -2202,13 +2433,13 @@
 }
 
 static asn_type_selector_result_t
-select_RICsubscriptionRequest_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2nodeComponentConfigAdditionAck_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionRequest_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2nodeComponentConfigAdditionAck_ItemIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionRequest_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeComponentConfigAdditionAck_ItemIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -2273,13 +2504,13 @@
 }
 
 static asn_type_selector_result_t
-select_RICsubscriptionResponse_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2nodeComponentConfigUpdateAck_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionResponse_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2nodeComponentConfigUpdateAck_ItemIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionResponse_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeComponentConfigUpdateAck_ItemIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -2319,13 +2550,13 @@
 }
 
 static asn_type_selector_result_t
-select_RICsubscriptionResponse_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2nodeComponentConfigUpdateAck_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionResponse_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2nodeComponentConfigUpdateAck_ItemIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionResponse_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeComponentConfigUpdateAck_ItemIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -2390,13 +2621,13 @@
 }
 
 static asn_type_selector_result_t
-select_RICsubscriptionFailure_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2nodeComponentConfigRemovalAck_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionFailure_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2nodeComponentConfigRemovalAck_ItemIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionFailure_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeComponentConfigRemovalAck_ItemIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -2436,13 +2667,13 @@
 }
 
 static asn_type_selector_result_t
-select_RICsubscriptionFailure_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2nodeComponentConfigRemovalAck_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionFailure_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2nodeComponentConfigRemovalAck_ItemIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionFailure_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeComponentConfigRemovalAck_ItemIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -2507,13 +2738,13 @@
 }
 
 static asn_type_selector_result_t
-select_RICsubscriptionDeleteRequest_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_RANfunction_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionDeleteRequest_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_RANfunction_ItemIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionDeleteRequest_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RANfunction_ItemIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -2553,13 +2784,13 @@
 }
 
 static asn_type_selector_result_t
-select_RICsubscriptionDeleteRequest_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_RANfunction_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionDeleteRequest_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_RANfunction_ItemIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionDeleteRequest_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RANfunction_ItemIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -2624,13 +2855,13 @@
 }
 
 static asn_type_selector_result_t
-select_RICsubscriptionDeleteResponse_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_RANfunctionID_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionDeleteResponse_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_RANfunctionID_ItemIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionDeleteResponse_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RANfunctionID_ItemIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -2670,13 +2901,13 @@
 }
 
 static asn_type_selector_result_t
-select_RICsubscriptionDeleteResponse_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_RANfunctionID_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionDeleteResponse_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_RANfunctionID_ItemIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionDeleteResponse_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RANfunctionID_ItemIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -2741,13 +2972,13 @@
 }
 
 static asn_type_selector_result_t
-select_RICsubscriptionDeleteFailure_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_RANfunctionIDcause_ItemIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionDeleteFailure_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_RANfunctionIDcause_ItemIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionDeleteFailure_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RANfunctionIDcause_ItemIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -2787,13 +3018,13 @@
 }
 
 static asn_type_selector_result_t
-select_RICsubscriptionDeleteFailure_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_RANfunctionIDcause_ItemIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionDeleteFailure_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_RANfunctionIDcause_ItemIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionDeleteFailure_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RANfunctionIDcause_ItemIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -2858,13 +3089,13 @@
 }
 
 static asn_type_selector_result_t
-select_RICindication_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_RICsubscriptionRequest_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RICindication_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionRequest_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICindication_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionRequest_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -2904,13 +3135,13 @@
 }
 
 static asn_type_selector_result_t
-select_RICindication_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_RICsubscriptionRequest_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RICindication_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionRequest_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICindication_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionRequest_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -2975,13 +3206,13 @@
 }
 
 static asn_type_selector_result_t
-select_RICcontrolRequest_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_RICsubscriptionResponse_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RICcontrolRequest_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionResponse_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICcontrolRequest_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionResponse_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -3021,13 +3252,13 @@
 }
 
 static asn_type_selector_result_t
-select_RICcontrolRequest_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_RICsubscriptionResponse_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RICcontrolRequest_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionResponse_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICcontrolRequest_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionResponse_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -3092,13 +3323,13 @@
 }
 
 static asn_type_selector_result_t
-select_RICcontrolAcknowledge_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_RICsubscriptionFailure_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RICcontrolAcknowledge_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionFailure_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICcontrolAcknowledge_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionFailure_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -3138,13 +3369,13 @@
 }
 
 static asn_type_selector_result_t
-select_RICcontrolAcknowledge_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_RICsubscriptionFailure_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RICcontrolAcknowledge_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionFailure_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICcontrolAcknowledge_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionFailure_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -3209,13 +3440,13 @@
 }
 
 static asn_type_selector_result_t
-select_RICcontrolFailure_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_RICsubscriptionDeleteRequest_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RICcontrolFailure_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionDeleteRequest_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICcontrolFailure_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionDeleteRequest_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -3255,13 +3486,13 @@
 }
 
 static asn_type_selector_result_t
-select_RICcontrolFailure_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_RICsubscriptionDeleteRequest_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RICcontrolFailure_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionDeleteRequest_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICcontrolFailure_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionDeleteRequest_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -3326,13 +3557,13 @@
 }
 
 static asn_type_selector_result_t
-select_ErrorIndication_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_RICsubscriptionDeleteResponse_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_ErrorIndication_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionDeleteResponse_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ErrorIndication_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionDeleteResponse_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -3372,13 +3603,13 @@
 }
 
 static asn_type_selector_result_t
-select_ErrorIndication_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_RICsubscriptionDeleteResponse_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_ErrorIndication_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionDeleteResponse_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ErrorIndication_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionDeleteResponse_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -3443,13 +3674,13 @@
 }
 
 static asn_type_selector_result_t
-select_E2setupRequestIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_RICsubscriptionDeleteFailure_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_E2setupRequestIEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionDeleteFailure_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2setupRequestIEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionDeleteFailure_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -3489,13 +3720,13 @@
 }
 
 static asn_type_selector_result_t
-select_E2setupRequestIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_RICsubscriptionDeleteFailure_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_E2setupRequestIEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionDeleteFailure_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2setupRequestIEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionDeleteFailure_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -3560,13 +3791,13 @@
 }
 
 static asn_type_selector_result_t
-select_E2setupResponseIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_RICsubscriptionDeleteRequired_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_E2setupResponseIEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionDeleteRequired_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2setupResponseIEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionDeleteRequired_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -3606,13 +3837,13 @@
 }
 
 static asn_type_selector_result_t
-select_E2setupResponseIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_RICsubscriptionDeleteRequired_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_E2setupResponseIEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_RICsubscriptionDeleteRequired_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2setupResponseIEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICsubscriptionDeleteRequired_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -3677,13 +3908,13 @@
 }
 
 static asn_type_selector_result_t
-select_E2setupFailureIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_RICindication_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_E2setupFailureIEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_RICindication_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2setupFailureIEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICindication_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -3723,13 +3954,13 @@
 }
 
 static asn_type_selector_result_t
-select_E2setupFailureIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_RICindication_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_E2setupFailureIEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_RICindication_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2setupFailureIEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICindication_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -3794,13 +4025,13 @@
 }
 
 static asn_type_selector_result_t
-select_E2connectionUpdate_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_RICcontrolRequest_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_E2connectionUpdate_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_RICcontrolRequest_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2connectionUpdate_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICcontrolRequest_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -3840,19 +4071,13 @@
 }
 
 static asn_type_selector_result_t
-select_E2connectionUpdate_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_RICcontrolRequest_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_E2connectionUpdate_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_RICcontrolRequest_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2connectionUpdate_IEs, id));
-	const int indexToPresence[4] = {
-		E2connectionUpdate_IEs__value_PR_NOTHING,
-		E2connectionUpdate_IEs__value_PR_E2connectionUpdate_List,
-		E2connectionUpdate_IEs__value_PR_E2connectionUpdateRemove_List,
-		E2connectionUpdate_IEs__value_PR_E2connectionUpdate_List
-	};
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICcontrolRequest_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -3864,7 +4089,7 @@
 	    presence_index++;
 	    if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
 	        result.type_descriptor = type_cell->type_descriptor;
-	        result.presence_index = indexToPresence[presence_index];
+	        result.presence_index = presence_index;
 	        break;
 	    }
 	}
@@ -3917,13 +4142,13 @@
 }
 
 static asn_type_selector_result_t
-select_E2connectionUpdateAck_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_RICcontrolAcknowledge_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_E2connectionUpdateAck_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_RICcontrolAcknowledge_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2connectionUpdateAck_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICcontrolAcknowledge_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -3963,13 +4188,13 @@
 }
 
 static asn_type_selector_result_t
-select_E2connectionUpdateAck_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_RICcontrolAcknowledge_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_E2connectionUpdateAck_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_RICcontrolAcknowledge_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2connectionUpdateAck_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICcontrolAcknowledge_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -4034,13 +4259,13 @@
 }
 
 static asn_type_selector_result_t
-select_E2connectionUpdateFailure_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_RICcontrolFailure_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_E2connectionUpdateFailure_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_RICcontrolFailure_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2connectionUpdateFailure_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICcontrolFailure_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -4080,13 +4305,13 @@
 }
 
 static asn_type_selector_result_t
-select_E2connectionUpdateFailure_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_RICcontrolFailure_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_E2connectionUpdateFailure_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_RICcontrolFailure_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2connectionUpdateFailure_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICcontrolFailure_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -4151,13 +4376,13 @@
 }
 
 static asn_type_selector_result_t
-select_E2nodeConfigurationUpdate_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_ErrorIndication_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_E2nodeConfigurationUpdate_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_ErrorIndication_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeConfigurationUpdate_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ErrorIndication_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -4197,13 +4422,13 @@
 }
 
 static asn_type_selector_result_t
-select_E2nodeConfigurationUpdate_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_ErrorIndication_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_E2nodeConfigurationUpdate_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_ErrorIndication_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeConfigurationUpdate_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ErrorIndication_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -4268,13 +4493,13 @@
 }
 
 static asn_type_selector_result_t
-select_E2nodeConfigurationUpdateAcknowledge_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2setupRequestIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_E2nodeConfigurationUpdateAcknowledge_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2setupRequestIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeConfigurationUpdateAcknowledge_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2setupRequestIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -4314,13 +4539,13 @@
 }
 
 static asn_type_selector_result_t
-select_E2nodeConfigurationUpdateAcknowledge_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2setupRequestIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_E2nodeConfigurationUpdateAcknowledge_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2setupRequestIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeConfigurationUpdateAcknowledge_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2setupRequestIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -4385,13 +4610,13 @@
 }
 
 static asn_type_selector_result_t
-select_E2nodeConfigurationUpdateFailure_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2setupResponseIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_E2nodeConfigurationUpdateFailure_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2setupResponseIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeConfigurationUpdateFailure_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2setupResponseIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -4431,13 +4656,13 @@
 }
 
 static asn_type_selector_result_t
-select_E2nodeConfigurationUpdateFailure_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2setupResponseIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_E2nodeConfigurationUpdateFailure_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2setupResponseIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeConfigurationUpdateFailure_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2setupResponseIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -4502,13 +4727,13 @@
 }
 
 static asn_type_selector_result_t
-select_ResetRequestIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2setupFailureIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_ResetRequestIEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2setupFailureIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ResetRequestIEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2setupFailureIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -4548,13 +4773,13 @@
 }
 
 static asn_type_selector_result_t
-select_ResetRequestIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2setupFailureIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_ResetRequestIEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2setupFailureIEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ResetRequestIEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2setupFailureIEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -4619,13 +4844,13 @@
 }
 
 static asn_type_selector_result_t
-select_ResetResponseIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2connectionUpdate_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_ResetResponseIEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2connectionUpdate_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ResetResponseIEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2connectionUpdate_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -4665,13 +4890,20 @@
 }
 
 static asn_type_selector_result_t
-select_ResetResponseIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2connectionUpdate_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_ResetResponseIEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2connectionUpdate_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ResetResponseIEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2connectionUpdate_IEs, id));
+	const int indexToPresence[5] = {
+		E2connectionUpdate_IEs__value_PR_NOTHING,
+		E2connectionUpdate_IEs__value_PR_TransactionID,
+		E2connectionUpdate_IEs__value_PR_E2connectionUpdate_List,
+		E2connectionUpdate_IEs__value_PR_E2connectionUpdateRemove_List,
+		E2connectionUpdate_IEs__value_PR_E2connectionUpdate_List
+	};
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -4683,7 +4915,7 @@
 	    presence_index++;
 	    if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
 	        result.type_descriptor = type_cell->type_descriptor;
-	        result.presence_index = presence_index;
+	        result.presence_index = indexToPresence[presence_index];
 	        break;
 	    }
 	}
@@ -4736,13 +4968,13 @@
 }
 
 static asn_type_selector_result_t
-select_RICserviceUpdate_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2connectionUpdateAck_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RICserviceUpdate_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2connectionUpdateAck_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICserviceUpdate_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2connectionUpdateAck_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -4782,19 +5014,13 @@
 }
 
 static asn_type_selector_result_t
-select_RICserviceUpdate_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2connectionUpdateAck_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RICserviceUpdate_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2connectionUpdateAck_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICserviceUpdate_IEs, id));
-	const int indexToPresence[4] = {
-		RICserviceUpdate_IEs__value_PR_NOTHING,
-		RICserviceUpdate_IEs__value_PR_RANfunctions_List,
-		RICserviceUpdate_IEs__value_PR_RANfunctions_List,
-		RICserviceUpdate_IEs__value_PR_RANfunctionsID_List
-	};
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2connectionUpdateAck_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -4806,7 +5032,7 @@
 	    presence_index++;
 	    if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
 	        result.type_descriptor = type_cell->type_descriptor;
-	        result.presence_index = indexToPresence[presence_index];
+	        result.presence_index = presence_index;
 	        break;
 	    }
 	}
@@ -4859,13 +5085,13 @@
 }
 
 static asn_type_selector_result_t
-select_RICserviceUpdateAcknowledge_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2connectionUpdateFailure_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RICserviceUpdateAcknowledge_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2connectionUpdateFailure_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICserviceUpdateAcknowledge_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2connectionUpdateFailure_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -4905,13 +5131,13 @@
 }
 
 static asn_type_selector_result_t
-select_RICserviceUpdateAcknowledge_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2connectionUpdateFailure_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RICserviceUpdateAcknowledge_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2connectionUpdateFailure_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICserviceUpdateAcknowledge_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2connectionUpdateFailure_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -4976,13 +5202,13 @@
 }
 
 static asn_type_selector_result_t
-select_RICserviceUpdateFailure_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2nodeConfigurationUpdate_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RICserviceUpdateFailure_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2nodeConfigurationUpdate_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 1; /* &criticality */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICserviceUpdateFailure_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeConfigurationUpdate_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -5022,13 +5248,13 @@
 }
 
 static asn_type_selector_result_t
-select_RICserviceUpdateFailure_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_E2nodeConfigurationUpdate_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
-	const asn_ioc_set_t *itable = asn_IOS_RICserviceUpdateFailure_IEs_1;
+	const asn_ioc_set_t *itable = asn_IOS_E2nodeConfigurationUpdate_IEs_1;
 	size_t constraining_column = 0; /* &id */
 	size_t for_column = 2; /* &Value */
 	size_t row, presence_index = 0;
-	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICserviceUpdateFailure_IEs, id));
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeConfigurationUpdate_IEs, id));
 	
 	for(row=0; row < itable->rows_count; row++) {
 	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
@@ -5093,6 +5319,832 @@
 }
 
 static asn_type_selector_result_t
+select_E2nodeConfigurationUpdateAcknowledge_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+	asn_type_selector_result_t result = {0, 0};
+	const asn_ioc_set_t *itable = asn_IOS_E2nodeConfigurationUpdateAcknowledge_IEs_1;
+	size_t constraining_column = 0; /* &id */
+	size_t for_column = 1; /* &criticality */
+	size_t row, presence_index = 0;
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeConfigurationUpdateAcknowledge_IEs, id));
+	
+	for(row=0; row < itable->rows_count; row++) {
+	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
+	    const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column];
+	
+	    if(type_cell->cell_kind == aioc__undefined)
+	        continue;
+	
+	    presence_index++;
+	    if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
+	        result.type_descriptor = type_cell->type_descriptor;
+	        result.presence_index = presence_index;
+	        break;
+	    }
+	}
+	
+	return result;
+}
+
+static int
+memb_criticality_constraint_145(const asn_TYPE_descriptor_t *td, const void *sptr,
+			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
+	
+	if(!sptr) {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: value not given (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+	
+	
+	if(1 /* No applicable constraints whatsoever */) {
+		/* Nothing is here. See below */
+	}
+	
+	return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
+}
+
+static asn_type_selector_result_t
+select_E2nodeConfigurationUpdateAcknowledge_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+	asn_type_selector_result_t result = {0, 0};
+	const asn_ioc_set_t *itable = asn_IOS_E2nodeConfigurationUpdateAcknowledge_IEs_1;
+	size_t constraining_column = 0; /* &id */
+	size_t for_column = 2; /* &Value */
+	size_t row, presence_index = 0;
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeConfigurationUpdateAcknowledge_IEs, id));
+	
+	for(row=0; row < itable->rows_count; row++) {
+	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
+	    const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column];
+	
+	    if(type_cell->cell_kind == aioc__undefined)
+	        continue;
+	
+	    presence_index++;
+	    if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
+	        result.type_descriptor = type_cell->type_descriptor;
+	        result.presence_index = presence_index;
+	        break;
+	    }
+	}
+	
+	return result;
+}
+
+static int
+memb_value_constraint_145(const asn_TYPE_descriptor_t *td, const void *sptr,
+			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
+	
+	if(!sptr) {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: value not given (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+	
+	
+	if(1 /* No applicable constraints whatsoever */) {
+		/* Nothing is here. See below */
+	}
+	
+	return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
+}
+
+static int
+memb_id_constraint_149(const asn_TYPE_descriptor_t *td, const void *sptr,
+			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
+	long value;
+	
+	if(!sptr) {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: value not given (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+	
+	value = *(const long *)sptr;
+	
+	if((value >= 0 && value <= 65535)) {
+		/* Constraint check succeeded */
+		return 0;
+	} else {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: constraint failed (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+}
+
+static asn_type_selector_result_t
+select_E2nodeConfigurationUpdateFailure_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+	asn_type_selector_result_t result = {0, 0};
+	const asn_ioc_set_t *itable = asn_IOS_E2nodeConfigurationUpdateFailure_IEs_1;
+	size_t constraining_column = 0; /* &id */
+	size_t for_column = 1; /* &criticality */
+	size_t row, presence_index = 0;
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeConfigurationUpdateFailure_IEs, id));
+	
+	for(row=0; row < itable->rows_count; row++) {
+	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
+	    const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column];
+	
+	    if(type_cell->cell_kind == aioc__undefined)
+	        continue;
+	
+	    presence_index++;
+	    if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
+	        result.type_descriptor = type_cell->type_descriptor;
+	        result.presence_index = presence_index;
+	        break;
+	    }
+	}
+	
+	return result;
+}
+
+static int
+memb_criticality_constraint_149(const asn_TYPE_descriptor_t *td, const void *sptr,
+			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
+	
+	if(!sptr) {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: value not given (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+	
+	
+	if(1 /* No applicable constraints whatsoever */) {
+		/* Nothing is here. See below */
+	}
+	
+	return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
+}
+
+static asn_type_selector_result_t
+select_E2nodeConfigurationUpdateFailure_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+	asn_type_selector_result_t result = {0, 0};
+	const asn_ioc_set_t *itable = asn_IOS_E2nodeConfigurationUpdateFailure_IEs_1;
+	size_t constraining_column = 0; /* &id */
+	size_t for_column = 2; /* &Value */
+	size_t row, presence_index = 0;
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct E2nodeConfigurationUpdateFailure_IEs, id));
+	
+	for(row=0; row < itable->rows_count; row++) {
+	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
+	    const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column];
+	
+	    if(type_cell->cell_kind == aioc__undefined)
+	        continue;
+	
+	    presence_index++;
+	    if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
+	        result.type_descriptor = type_cell->type_descriptor;
+	        result.presence_index = presence_index;
+	        break;
+	    }
+	}
+	
+	return result;
+}
+
+static int
+memb_value_constraint_149(const asn_TYPE_descriptor_t *td, const void *sptr,
+			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
+	
+	if(!sptr) {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: value not given (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+	
+	
+	if(1 /* No applicable constraints whatsoever */) {
+		/* Nothing is here. See below */
+	}
+	
+	return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
+}
+
+static int
+memb_id_constraint_153(const asn_TYPE_descriptor_t *td, const void *sptr,
+			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
+	long value;
+	
+	if(!sptr) {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: value not given (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+	
+	value = *(const long *)sptr;
+	
+	if((value >= 0 && value <= 65535)) {
+		/* Constraint check succeeded */
+		return 0;
+	} else {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: constraint failed (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+}
+
+static asn_type_selector_result_t
+select_ResetRequestIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+	asn_type_selector_result_t result = {0, 0};
+	const asn_ioc_set_t *itable = asn_IOS_ResetRequestIEs_1;
+	size_t constraining_column = 0; /* &id */
+	size_t for_column = 1; /* &criticality */
+	size_t row, presence_index = 0;
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ResetRequestIEs, id));
+	
+	for(row=0; row < itable->rows_count; row++) {
+	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
+	    const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column];
+	
+	    if(type_cell->cell_kind == aioc__undefined)
+	        continue;
+	
+	    presence_index++;
+	    if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
+	        result.type_descriptor = type_cell->type_descriptor;
+	        result.presence_index = presence_index;
+	        break;
+	    }
+	}
+	
+	return result;
+}
+
+static int
+memb_criticality_constraint_153(const asn_TYPE_descriptor_t *td, const void *sptr,
+			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
+	
+	if(!sptr) {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: value not given (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+	
+	
+	if(1 /* No applicable constraints whatsoever */) {
+		/* Nothing is here. See below */
+	}
+	
+	return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
+}
+
+static asn_type_selector_result_t
+select_ResetRequestIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+	asn_type_selector_result_t result = {0, 0};
+	const asn_ioc_set_t *itable = asn_IOS_ResetRequestIEs_1;
+	size_t constraining_column = 0; /* &id */
+	size_t for_column = 2; /* &Value */
+	size_t row, presence_index = 0;
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ResetRequestIEs, id));
+	
+	for(row=0; row < itable->rows_count; row++) {
+	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
+	    const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column];
+	
+	    if(type_cell->cell_kind == aioc__undefined)
+	        continue;
+	
+	    presence_index++;
+	    if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
+	        result.type_descriptor = type_cell->type_descriptor;
+	        result.presence_index = presence_index;
+	        break;
+	    }
+	}
+	
+	return result;
+}
+
+static int
+memb_value_constraint_153(const asn_TYPE_descriptor_t *td, const void *sptr,
+			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
+	
+	if(!sptr) {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: value not given (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+	
+	
+	if(1 /* No applicable constraints whatsoever */) {
+		/* Nothing is here. See below */
+	}
+	
+	return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
+}
+
+static int
+memb_id_constraint_157(const asn_TYPE_descriptor_t *td, const void *sptr,
+			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
+	long value;
+	
+	if(!sptr) {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: value not given (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+	
+	value = *(const long *)sptr;
+	
+	if((value >= 0 && value <= 65535)) {
+		/* Constraint check succeeded */
+		return 0;
+	} else {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: constraint failed (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+}
+
+static asn_type_selector_result_t
+select_ResetResponseIEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+	asn_type_selector_result_t result = {0, 0};
+	const asn_ioc_set_t *itable = asn_IOS_ResetResponseIEs_1;
+	size_t constraining_column = 0; /* &id */
+	size_t for_column = 1; /* &criticality */
+	size_t row, presence_index = 0;
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ResetResponseIEs, id));
+	
+	for(row=0; row < itable->rows_count; row++) {
+	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
+	    const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column];
+	
+	    if(type_cell->cell_kind == aioc__undefined)
+	        continue;
+	
+	    presence_index++;
+	    if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
+	        result.type_descriptor = type_cell->type_descriptor;
+	        result.presence_index = presence_index;
+	        break;
+	    }
+	}
+	
+	return result;
+}
+
+static int
+memb_criticality_constraint_157(const asn_TYPE_descriptor_t *td, const void *sptr,
+			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
+	
+	if(!sptr) {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: value not given (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+	
+	
+	if(1 /* No applicable constraints whatsoever */) {
+		/* Nothing is here. See below */
+	}
+	
+	return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
+}
+
+static asn_type_selector_result_t
+select_ResetResponseIEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+	asn_type_selector_result_t result = {0, 0};
+	const asn_ioc_set_t *itable = asn_IOS_ResetResponseIEs_1;
+	size_t constraining_column = 0; /* &id */
+	size_t for_column = 2; /* &Value */
+	size_t row, presence_index = 0;
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct ResetResponseIEs, id));
+	
+	for(row=0; row < itable->rows_count; row++) {
+	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
+	    const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column];
+	
+	    if(type_cell->cell_kind == aioc__undefined)
+	        continue;
+	
+	    presence_index++;
+	    if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
+	        result.type_descriptor = type_cell->type_descriptor;
+	        result.presence_index = presence_index;
+	        break;
+	    }
+	}
+	
+	return result;
+}
+
+static int
+memb_value_constraint_157(const asn_TYPE_descriptor_t *td, const void *sptr,
+			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
+	
+	if(!sptr) {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: value not given (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+	
+	
+	if(1 /* No applicable constraints whatsoever */) {
+		/* Nothing is here. See below */
+	}
+	
+	return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
+}
+
+static int
+memb_id_constraint_161(const asn_TYPE_descriptor_t *td, const void *sptr,
+			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
+	long value;
+	
+	if(!sptr) {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: value not given (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+	
+	value = *(const long *)sptr;
+	
+	if((value >= 0 && value <= 65535)) {
+		/* Constraint check succeeded */
+		return 0;
+	} else {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: constraint failed (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+}
+
+static asn_type_selector_result_t
+select_RICserviceUpdate_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+	asn_type_selector_result_t result = {0, 0};
+	const asn_ioc_set_t *itable = asn_IOS_RICserviceUpdate_IEs_1;
+	size_t constraining_column = 0; /* &id */
+	size_t for_column = 1; /* &criticality */
+	size_t row, presence_index = 0;
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICserviceUpdate_IEs, id));
+	
+	for(row=0; row < itable->rows_count; row++) {
+	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
+	    const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column];
+	
+	    if(type_cell->cell_kind == aioc__undefined)
+	        continue;
+	
+	    presence_index++;
+	    if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
+	        result.type_descriptor = type_cell->type_descriptor;
+	        result.presence_index = presence_index;
+	        break;
+	    }
+	}
+	
+	return result;
+}
+
+static int
+memb_criticality_constraint_161(const asn_TYPE_descriptor_t *td, const void *sptr,
+			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
+	
+	if(!sptr) {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: value not given (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+	
+	
+	if(1 /* No applicable constraints whatsoever */) {
+		/* Nothing is here. See below */
+	}
+	
+	return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
+}
+
+static asn_type_selector_result_t
+select_RICserviceUpdate_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+	asn_type_selector_result_t result = {0, 0};
+	const asn_ioc_set_t *itable = asn_IOS_RICserviceUpdate_IEs_1;
+	size_t constraining_column = 0; /* &id */
+	size_t for_column = 2; /* &Value */
+	size_t row, presence_index = 0;
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICserviceUpdate_IEs, id));
+	const int indexToPresence[5] = {
+		RICserviceUpdate_IEs__value_PR_NOTHING,
+		RICserviceUpdate_IEs__value_PR_TransactionID,
+		RICserviceUpdate_IEs__value_PR_RANfunctions_List,
+		RICserviceUpdate_IEs__value_PR_RANfunctions_List,
+		RICserviceUpdate_IEs__value_PR_RANfunctionsID_List
+	};
+	
+	for(row=0; row < itable->rows_count; row++) {
+	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
+	    const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column];
+	
+	    if(type_cell->cell_kind == aioc__undefined)
+	        continue;
+	
+	    presence_index++;
+	    if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
+	        result.type_descriptor = type_cell->type_descriptor;
+	        result.presence_index = indexToPresence[presence_index];
+	        break;
+	    }
+	}
+	
+	return result;
+}
+
+static int
+memb_value_constraint_161(const asn_TYPE_descriptor_t *td, const void *sptr,
+			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
+	
+	if(!sptr) {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: value not given (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+	
+	
+	if(1 /* No applicable constraints whatsoever */) {
+		/* Nothing is here. See below */
+	}
+	
+	return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
+}
+
+static int
+memb_id_constraint_165(const asn_TYPE_descriptor_t *td, const void *sptr,
+			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
+	long value;
+	
+	if(!sptr) {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: value not given (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+	
+	value = *(const long *)sptr;
+	
+	if((value >= 0 && value <= 65535)) {
+		/* Constraint check succeeded */
+		return 0;
+	} else {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: constraint failed (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+}
+
+static asn_type_selector_result_t
+select_RICserviceUpdateAcknowledge_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+	asn_type_selector_result_t result = {0, 0};
+	const asn_ioc_set_t *itable = asn_IOS_RICserviceUpdateAcknowledge_IEs_1;
+	size_t constraining_column = 0; /* &id */
+	size_t for_column = 1; /* &criticality */
+	size_t row, presence_index = 0;
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICserviceUpdateAcknowledge_IEs, id));
+	
+	for(row=0; row < itable->rows_count; row++) {
+	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
+	    const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column];
+	
+	    if(type_cell->cell_kind == aioc__undefined)
+	        continue;
+	
+	    presence_index++;
+	    if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
+	        result.type_descriptor = type_cell->type_descriptor;
+	        result.presence_index = presence_index;
+	        break;
+	    }
+	}
+	
+	return result;
+}
+
+static int
+memb_criticality_constraint_165(const asn_TYPE_descriptor_t *td, const void *sptr,
+			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
+	
+	if(!sptr) {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: value not given (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+	
+	
+	if(1 /* No applicable constraints whatsoever */) {
+		/* Nothing is here. See below */
+	}
+	
+	return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
+}
+
+static asn_type_selector_result_t
+select_RICserviceUpdateAcknowledge_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+	asn_type_selector_result_t result = {0, 0};
+	const asn_ioc_set_t *itable = asn_IOS_RICserviceUpdateAcknowledge_IEs_1;
+	size_t constraining_column = 0; /* &id */
+	size_t for_column = 2; /* &Value */
+	size_t row, presence_index = 0;
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICserviceUpdateAcknowledge_IEs, id));
+	
+	for(row=0; row < itable->rows_count; row++) {
+	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
+	    const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column];
+	
+	    if(type_cell->cell_kind == aioc__undefined)
+	        continue;
+	
+	    presence_index++;
+	    if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
+	        result.type_descriptor = type_cell->type_descriptor;
+	        result.presence_index = presence_index;
+	        break;
+	    }
+	}
+	
+	return result;
+}
+
+static int
+memb_value_constraint_165(const asn_TYPE_descriptor_t *td, const void *sptr,
+			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
+	
+	if(!sptr) {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: value not given (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+	
+	
+	if(1 /* No applicable constraints whatsoever */) {
+		/* Nothing is here. See below */
+	}
+	
+	return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
+}
+
+static int
+memb_id_constraint_169(const asn_TYPE_descriptor_t *td, const void *sptr,
+			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
+	long value;
+	
+	if(!sptr) {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: value not given (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+	
+	value = *(const long *)sptr;
+	
+	if((value >= 0 && value <= 65535)) {
+		/* Constraint check succeeded */
+		return 0;
+	} else {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: constraint failed (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+}
+
+static asn_type_selector_result_t
+select_RICserviceUpdateFailure_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+	asn_type_selector_result_t result = {0, 0};
+	const asn_ioc_set_t *itable = asn_IOS_RICserviceUpdateFailure_IEs_1;
+	size_t constraining_column = 0; /* &id */
+	size_t for_column = 1; /* &criticality */
+	size_t row, presence_index = 0;
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICserviceUpdateFailure_IEs, id));
+	
+	for(row=0; row < itable->rows_count; row++) {
+	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
+	    const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column];
+	
+	    if(type_cell->cell_kind == aioc__undefined)
+	        continue;
+	
+	    presence_index++;
+	    if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
+	        result.type_descriptor = type_cell->type_descriptor;
+	        result.presence_index = presence_index;
+	        break;
+	    }
+	}
+	
+	return result;
+}
+
+static int
+memb_criticality_constraint_169(const asn_TYPE_descriptor_t *td, const void *sptr,
+			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
+	
+	if(!sptr) {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: value not given (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+	
+	
+	if(1 /* No applicable constraints whatsoever */) {
+		/* Nothing is here. See below */
+	}
+	
+	return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
+}
+
+static asn_type_selector_result_t
+select_RICserviceUpdateFailure_IEs_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+	asn_type_selector_result_t result = {0, 0};
+	const asn_ioc_set_t *itable = asn_IOS_RICserviceUpdateFailure_IEs_1;
+	size_t constraining_column = 0; /* &id */
+	size_t for_column = 2; /* &Value */
+	size_t row, presence_index = 0;
+	const long *constraining_value = (const long *)((const char *)parent_sptr + offsetof(struct RICserviceUpdateFailure_IEs, id));
+	
+	for(row=0; row < itable->rows_count; row++) {
+	    const asn_ioc_cell_t *constraining_cell = &itable->rows[row * itable->columns_count + constraining_column];
+	    const asn_ioc_cell_t *type_cell = &itable->rows[row * itable->columns_count + for_column];
+	
+	    if(type_cell->cell_kind == aioc__undefined)
+	        continue;
+	
+	    presence_index++;
+	    if(constraining_cell->type_descriptor->op->compare_struct(constraining_cell->type_descriptor, constraining_value, constraining_cell->value_sptr) == 0) {
+	        result.type_descriptor = type_cell->type_descriptor;
+	        result.presence_index = presence_index;
+	        break;
+	    }
+	}
+	
+	return result;
+}
+
+static int
+memb_value_constraint_169(const asn_TYPE_descriptor_t *td, const void *sptr,
+			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
+	
+	if(!sptr) {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: value not given (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+	
+	
+	if(1 /* No applicable constraints whatsoever */) {
+		/* Nothing is here. See below */
+	}
+	
+	return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
+}
+
+static int
+memb_id_constraint_173(const asn_TYPE_descriptor_t *td, const void *sptr,
+			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
+	long value;
+	
+	if(!sptr) {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: value not given (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+	
+	value = *(const long *)sptr;
+	
+	if((value >= 0 && value <= 65535)) {
+		/* Constraint check succeeded */
+		return 0;
+	} else {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: constraint failed (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+}
+
+static asn_type_selector_result_t
 select_RICserviceQuery_IEs_criticality_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
 	const asn_ioc_set_t *itable = asn_IOS_RICserviceQuery_IEs_1;
@@ -5120,7 +6172,7 @@
 }
 
 static int
-memb_criticality_constraint_145(const asn_TYPE_descriptor_t *td, const void *sptr,
+memb_criticality_constraint_173(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	
 	if(!sptr) {
@@ -5166,7 +6218,7 @@
 }
 
 static int
-memb_value_constraint_145(const asn_TYPE_descriptor_t *td, const void *sptr,
+memb_value_constraint_173(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	
 	if(!sptr) {
@@ -5739,6 +6791,111 @@
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	0, 0	/* No PER value map */
 };
+static asn_per_constraints_t asn_PER_memb_id_constr_150 CC_NOTUSED = {
+	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (0..65535) */,
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	0, 0	/* No PER value map */
+};
+static asn_per_constraints_t asn_PER_memb_criticality_constr_151 CC_NOTUSED = {
+	{ APC_CONSTRAINED,	 2,  2,  0,  2 }	/* (0..2) */,
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	0, 0	/* No PER value map */
+};
+static asn_per_constraints_t asn_PER_memb_value_constr_152 CC_NOTUSED = {
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	0, 0	/* No PER value map */
+};
+static asn_per_constraints_t asn_PER_memb_id_constr_154 CC_NOTUSED = {
+	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (0..65535) */,
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	0, 0	/* No PER value map */
+};
+static asn_per_constraints_t asn_PER_memb_criticality_constr_155 CC_NOTUSED = {
+	{ APC_CONSTRAINED,	 2,  2,  0,  2 }	/* (0..2) */,
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	0, 0	/* No PER value map */
+};
+static asn_per_constraints_t asn_PER_memb_value_constr_156 CC_NOTUSED = {
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	0, 0	/* No PER value map */
+};
+static asn_per_constraints_t asn_PER_memb_id_constr_158 CC_NOTUSED = {
+	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (0..65535) */,
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	0, 0	/* No PER value map */
+};
+static asn_per_constraints_t asn_PER_memb_criticality_constr_159 CC_NOTUSED = {
+	{ APC_CONSTRAINED,	 2,  2,  0,  2 }	/* (0..2) */,
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	0, 0	/* No PER value map */
+};
+static asn_per_constraints_t asn_PER_memb_value_constr_160 CC_NOTUSED = {
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	0, 0	/* No PER value map */
+};
+static asn_per_constraints_t asn_PER_memb_id_constr_162 CC_NOTUSED = {
+	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (0..65535) */,
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	0, 0	/* No PER value map */
+};
+static asn_per_constraints_t asn_PER_memb_criticality_constr_163 CC_NOTUSED = {
+	{ APC_CONSTRAINED,	 2,  2,  0,  2 }	/* (0..2) */,
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	0, 0	/* No PER value map */
+};
+static asn_per_constraints_t asn_PER_memb_value_constr_164 CC_NOTUSED = {
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	0, 0	/* No PER value map */
+};
+static asn_per_constraints_t asn_PER_memb_id_constr_166 CC_NOTUSED = {
+	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (0..65535) */,
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	0, 0	/* No PER value map */
+};
+static asn_per_constraints_t asn_PER_memb_criticality_constr_167 CC_NOTUSED = {
+	{ APC_CONSTRAINED,	 2,  2,  0,  2 }	/* (0..2) */,
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	0, 0	/* No PER value map */
+};
+static asn_per_constraints_t asn_PER_memb_value_constr_168 CC_NOTUSED = {
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	0, 0	/* No PER value map */
+};
+static asn_per_constraints_t asn_PER_memb_id_constr_170 CC_NOTUSED = {
+	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (0..65535) */,
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	0, 0	/* No PER value map */
+};
+static asn_per_constraints_t asn_PER_memb_criticality_constr_171 CC_NOTUSED = {
+	{ APC_CONSTRAINED,	 2,  2,  0,  2 }	/* (0..2) */,
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	0, 0	/* No PER value map */
+};
+static asn_per_constraints_t asn_PER_memb_value_constr_172 CC_NOTUSED = {
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	0, 0	/* No PER value map */
+};
+static asn_per_constraints_t asn_PER_memb_id_constr_174 CC_NOTUSED = {
+	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (0..65535) */,
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	0, 0	/* No PER value map */
+};
+static asn_per_constraints_t asn_PER_memb_criticality_constr_175 CC_NOTUSED = {
+	{ APC_CONSTRAINED,	 2,  2,  0,  2 }	/* (0..2) */,
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	0, 0	/* No PER value map */
+};
+static asn_per_constraints_t asn_PER_memb_value_constr_176 CC_NOTUSED = {
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	0, 0	/* No PER value map */
+};
 static asn_TYPE_member_t asn_MBR_value_4[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICaction_ToBeSetup_ItemIEs__value, choice.RICaction_ToBeSetup_Item),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
@@ -5780,8 +6937,8 @@
 
 asn_TYPE_member_t asn_MBR_RICaction_ToBeSetup_ItemIEs_1[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICaction_ToBeSetup_ItemIEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
 		{ 0, &asn_PER_memb_id_constr_2,  memb_id_constraint_1 },
@@ -5789,8 +6946,8 @@
 		"id"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct RICaction_ToBeSetup_ItemIEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
 		select_RICaction_ToBeSetup_ItemIEs_criticality_type,
 		{ 0, &asn_PER_memb_criticality_constr_3,  memb_criticality_constraint_1 },
@@ -5798,8 +6955,8 @@
 		"criticality"
 		},
 	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICaction_ToBeSetup_ItemIEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
 		&asn_DEF_value_4,
 		select_RICaction_ToBeSetup_ItemIEs_value_type,
 		{ 0, &asn_PER_memb_value_constr_4,  memb_value_constraint_1 },
@@ -5811,14 +6968,15 @@
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
 static const asn_TYPE_tag2member_t asn_MAP_RICaction_ToBeSetup_ItemIEs_tag2el_1[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+    { (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 */
 };
 asn_SEQUENCE_specifics_t asn_SPC_RICaction_ToBeSetup_ItemIEs_specs_1 = {
 	sizeof(struct RICaction_ToBeSetup_ItemIEs),
 	offsetof(struct RICaction_ToBeSetup_ItemIEs, _asn_ctx),
 	asn_MAP_RICaction_ToBeSetup_ItemIEs_tag2el_1,
-	2,	/* Count of tags in the map */
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
@@ -5879,8 +7037,8 @@
 
 asn_TYPE_member_t asn_MBR_RICaction_Admitted_ItemIEs_5[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICaction_Admitted_ItemIEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
 		{ 0, &asn_PER_memb_id_constr_6,  memb_id_constraint_5 },
@@ -5888,8 +7046,8 @@
 		"id"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct RICaction_Admitted_ItemIEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
 		select_RICaction_Admitted_ItemIEs_criticality_type,
 		{ 0, &asn_PER_memb_criticality_constr_7,  memb_criticality_constraint_5 },
@@ -5897,8 +7055,8 @@
 		"criticality"
 		},
 	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICaction_Admitted_ItemIEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
 		&asn_DEF_value_8,
 		select_RICaction_Admitted_ItemIEs_value_type,
 		{ 0, &asn_PER_memb_value_constr_8,  memb_value_constraint_5 },
@@ -5910,14 +7068,15 @@
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
 static const asn_TYPE_tag2member_t asn_MAP_RICaction_Admitted_ItemIEs_tag2el_5[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+    { (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 */
 };
 asn_SEQUENCE_specifics_t asn_SPC_RICaction_Admitted_ItemIEs_specs_5 = {
 	sizeof(struct RICaction_Admitted_ItemIEs),
 	offsetof(struct RICaction_Admitted_ItemIEs, _asn_ctx),
 	asn_MAP_RICaction_Admitted_ItemIEs_tag2el_5,
-	2,	/* Count of tags in the map */
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
@@ -5978,8 +7137,8 @@
 
 asn_TYPE_member_t asn_MBR_RICaction_NotAdmitted_ItemIEs_9[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICaction_NotAdmitted_ItemIEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
 		{ 0, &asn_PER_memb_id_constr_10,  memb_id_constraint_9 },
@@ -5987,8 +7146,8 @@
 		"id"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct RICaction_NotAdmitted_ItemIEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
 		select_RICaction_NotAdmitted_ItemIEs_criticality_type,
 		{ 0, &asn_PER_memb_criticality_constr_11,  memb_criticality_constraint_9 },
@@ -5996,8 +7155,8 @@
 		"criticality"
 		},
 	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICaction_NotAdmitted_ItemIEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
 		&asn_DEF_value_12,
 		select_RICaction_NotAdmitted_ItemIEs_value_type,
 		{ 0, &asn_PER_memb_value_constr_12,  memb_value_constraint_9 },
@@ -6009,14 +7168,15 @@
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
 static const asn_TYPE_tag2member_t asn_MAP_RICaction_NotAdmitted_ItemIEs_tag2el_9[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+    { (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 */
 };
 asn_SEQUENCE_specifics_t asn_SPC_RICaction_NotAdmitted_ItemIEs_specs_9 = {
 	sizeof(struct RICaction_NotAdmitted_ItemIEs),
 	offsetof(struct RICaction_NotAdmitted_ItemIEs, _asn_ctx),
 	asn_MAP_RICaction_NotAdmitted_ItemIEs_tag2el_9,
-	2,	/* Count of tags in the map */
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
@@ -6037,24 +7197,24 @@
 };
 
 static asn_TYPE_member_t asn_MBR_value_16[] = {
-	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdate_ItemIEs__value, choice.E2connectionUpdate_Item),
+	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscription_withCause_ItemIEs__value, choice.RICsubscription_withCause_Item),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
-		&asn_DEF_E2connectionUpdate_Item,
+		&asn_DEF_RICsubscription_withCause_Item,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
-		"E2connectionUpdate-Item"
+		"RICsubscription-withCause-Item"
 		},
 };
 static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_16[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* E2connectionUpdate-Item */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RICsubscription-withCause-Item */
 };
 static asn_CHOICE_specifics_t asn_SPC_value_specs_16 = {
-	sizeof(struct E2connectionUpdate_ItemIEs__value),
-	offsetof(struct E2connectionUpdate_ItemIEs__value, _asn_ctx),
-	offsetof(struct E2connectionUpdate_ItemIEs__value, present),
-	sizeof(((struct E2connectionUpdate_ItemIEs__value *)0)->present),
+	sizeof(struct RICsubscription_withCause_ItemIEs__value),
+	offsetof(struct RICsubscription_withCause_ItemIEs__value, _asn_ctx),
+	offsetof(struct RICsubscription_withCause_ItemIEs__value, present),
+	sizeof(((struct RICsubscription_withCause_ItemIEs__value *)0)->present),
 	asn_MAP_value_tag2el_16,
 	1,	/* Count of tags in the map */
 	0, 0,
@@ -6075,85 +7235,86 @@
 	&asn_SPC_value_specs_16	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_E2connectionUpdate_ItemIEs_13[] = {
-	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdate_ItemIEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+asn_TYPE_member_t asn_MBR_RICsubscription_withCause_ItemIEs_13[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscription_withCause_ItemIEs, id),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
 		{ 0, &asn_PER_memb_id_constr_14,  memb_id_constraint_13 },
 		0, 0, /* No default value */
 		"id"
 		},
-	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdate_ItemIEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscription_withCause_ItemIEs, criticality),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
-		select_E2connectionUpdate_ItemIEs_criticality_type,
+		select_RICsubscription_withCause_ItemIEs_criticality_type,
 		{ 0, &asn_PER_memb_criticality_constr_15,  memb_criticality_constraint_13 },
 		0, 0, /* No default value */
 		"criticality"
 		},
-	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdate_ItemIEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
+	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICsubscription_withCause_ItemIEs, value),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
 		&asn_DEF_value_16,
-		select_E2connectionUpdate_ItemIEs_value_type,
+		select_RICsubscription_withCause_ItemIEs_value_type,
 		{ 0, &asn_PER_memb_value_constr_16,  memb_value_constraint_13 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_E2connectionUpdate_ItemIEs_tags_13[] = {
+static const ber_tlv_tag_t asn_DEF_RICsubscription_withCause_ItemIEs_tags_13[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_E2connectionUpdate_ItemIEs_tag2el_13[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_RICsubscription_withCause_ItemIEs_tag2el_13[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_E2connectionUpdate_ItemIEs_specs_13 = {
-	sizeof(struct E2connectionUpdate_ItemIEs),
-	offsetof(struct E2connectionUpdate_ItemIEs, _asn_ctx),
-	asn_MAP_E2connectionUpdate_ItemIEs_tag2el_13,
-	2,	/* Count of tags in the map */
+asn_SEQUENCE_specifics_t asn_SPC_RICsubscription_withCause_ItemIEs_specs_13 = {
+	sizeof(struct RICsubscription_withCause_ItemIEs),
+	offsetof(struct RICsubscription_withCause_ItemIEs, _asn_ctx),
+	asn_MAP_RICsubscription_withCause_ItemIEs_tag2el_13,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
-asn_TYPE_descriptor_t asn_DEF_E2connectionUpdate_ItemIEs = {
-	"E2connectionUpdate-ItemIEs",
-	"E2connectionUpdate-ItemIEs",
+asn_TYPE_descriptor_t asn_DEF_RICsubscription_withCause_ItemIEs = {
+	"RICsubscription-withCause-ItemIEs",
+	"RICsubscription-withCause-ItemIEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_E2connectionUpdate_ItemIEs_tags_13,
-	sizeof(asn_DEF_E2connectionUpdate_ItemIEs_tags_13)
-		/sizeof(asn_DEF_E2connectionUpdate_ItemIEs_tags_13[0]), /* 1 */
-	asn_DEF_E2connectionUpdate_ItemIEs_tags_13,	/* Same as above */
-	sizeof(asn_DEF_E2connectionUpdate_ItemIEs_tags_13)
-		/sizeof(asn_DEF_E2connectionUpdate_ItemIEs_tags_13[0]), /* 1 */
+	asn_DEF_RICsubscription_withCause_ItemIEs_tags_13,
+	sizeof(asn_DEF_RICsubscription_withCause_ItemIEs_tags_13)
+		/sizeof(asn_DEF_RICsubscription_withCause_ItemIEs_tags_13[0]), /* 1 */
+	asn_DEF_RICsubscription_withCause_ItemIEs_tags_13,	/* Same as above */
+	sizeof(asn_DEF_RICsubscription_withCause_ItemIEs_tags_13)
+		/sizeof(asn_DEF_RICsubscription_withCause_ItemIEs_tags_13[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_E2connectionUpdate_ItemIEs_13,
+	asn_MBR_RICsubscription_withCause_ItemIEs_13,
 	3,	/* Elements count */
-	&asn_SPC_E2connectionUpdate_ItemIEs_specs_13	/* Additional specs */
+	&asn_SPC_RICsubscription_withCause_ItemIEs_specs_13	/* Additional specs */
 };
 
 static asn_TYPE_member_t asn_MBR_value_20[] = {
-	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdateRemove_ItemIEs__value, choice.E2connectionUpdateRemove_Item),
+	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdate_ItemIEs__value, choice.E2connectionUpdate_Item),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
-		&asn_DEF_E2connectionUpdateRemove_Item,
+		&asn_DEF_E2connectionUpdate_Item,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
-		"E2connectionUpdateRemove-Item"
+		"E2connectionUpdate-Item"
 		},
 };
 static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_20[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* E2connectionUpdateRemove-Item */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* E2connectionUpdate-Item */
 };
 static asn_CHOICE_specifics_t asn_SPC_value_specs_20 = {
-	sizeof(struct E2connectionUpdateRemove_ItemIEs__value),
-	offsetof(struct E2connectionUpdateRemove_ItemIEs__value, _asn_ctx),
-	offsetof(struct E2connectionUpdateRemove_ItemIEs__value, present),
-	sizeof(((struct E2connectionUpdateRemove_ItemIEs__value *)0)->present),
+	sizeof(struct E2connectionUpdate_ItemIEs__value),
+	offsetof(struct E2connectionUpdate_ItemIEs__value, _asn_ctx),
+	offsetof(struct E2connectionUpdate_ItemIEs__value, present),
+	sizeof(((struct E2connectionUpdate_ItemIEs__value *)0)->present),
 	asn_MAP_value_tag2el_20,
 	1,	/* Count of tags in the map */
 	0, 0,
@@ -6174,85 +7335,86 @@
 	&asn_SPC_value_specs_20	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_E2connectionUpdateRemove_ItemIEs_17[] = {
-	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdateRemove_ItemIEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+asn_TYPE_member_t asn_MBR_E2connectionUpdate_ItemIEs_17[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdate_ItemIEs, id),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
 		{ 0, &asn_PER_memb_id_constr_18,  memb_id_constraint_17 },
 		0, 0, /* No default value */
 		"id"
 		},
-	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdateRemove_ItemIEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdate_ItemIEs, criticality),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
-		select_E2connectionUpdateRemove_ItemIEs_criticality_type,
+		select_E2connectionUpdate_ItemIEs_criticality_type,
 		{ 0, &asn_PER_memb_criticality_constr_19,  memb_criticality_constraint_17 },
 		0, 0, /* No default value */
 		"criticality"
 		},
-	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdateRemove_ItemIEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
+	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdate_ItemIEs, value),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
 		&asn_DEF_value_20,
-		select_E2connectionUpdateRemove_ItemIEs_value_type,
+		select_E2connectionUpdate_ItemIEs_value_type,
 		{ 0, &asn_PER_memb_value_constr_20,  memb_value_constraint_17 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_E2connectionUpdateRemove_ItemIEs_tags_17[] = {
+static const ber_tlv_tag_t asn_DEF_E2connectionUpdate_ItemIEs_tags_17[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_E2connectionUpdateRemove_ItemIEs_tag2el_17[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_E2connectionUpdate_ItemIEs_tag2el_17[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_E2connectionUpdateRemove_ItemIEs_specs_17 = {
-	sizeof(struct E2connectionUpdateRemove_ItemIEs),
-	offsetof(struct E2connectionUpdateRemove_ItemIEs, _asn_ctx),
-	asn_MAP_E2connectionUpdateRemove_ItemIEs_tag2el_17,
-	2,	/* Count of tags in the map */
+asn_SEQUENCE_specifics_t asn_SPC_E2connectionUpdate_ItemIEs_specs_17 = {
+	sizeof(struct E2connectionUpdate_ItemIEs),
+	offsetof(struct E2connectionUpdate_ItemIEs, _asn_ctx),
+	asn_MAP_E2connectionUpdate_ItemIEs_tag2el_17,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
-asn_TYPE_descriptor_t asn_DEF_E2connectionUpdateRemove_ItemIEs = {
-	"E2connectionUpdateRemove-ItemIEs",
-	"E2connectionUpdateRemove-ItemIEs",
+asn_TYPE_descriptor_t asn_DEF_E2connectionUpdate_ItemIEs = {
+	"E2connectionUpdate-ItemIEs",
+	"E2connectionUpdate-ItemIEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_E2connectionUpdateRemove_ItemIEs_tags_17,
-	sizeof(asn_DEF_E2connectionUpdateRemove_ItemIEs_tags_17)
-		/sizeof(asn_DEF_E2connectionUpdateRemove_ItemIEs_tags_17[0]), /* 1 */
-	asn_DEF_E2connectionUpdateRemove_ItemIEs_tags_17,	/* Same as above */
-	sizeof(asn_DEF_E2connectionUpdateRemove_ItemIEs_tags_17)
-		/sizeof(asn_DEF_E2connectionUpdateRemove_ItemIEs_tags_17[0]), /* 1 */
+	asn_DEF_E2connectionUpdate_ItemIEs_tags_17,
+	sizeof(asn_DEF_E2connectionUpdate_ItemIEs_tags_17)
+		/sizeof(asn_DEF_E2connectionUpdate_ItemIEs_tags_17[0]), /* 1 */
+	asn_DEF_E2connectionUpdate_ItemIEs_tags_17,	/* Same as above */
+	sizeof(asn_DEF_E2connectionUpdate_ItemIEs_tags_17)
+		/sizeof(asn_DEF_E2connectionUpdate_ItemIEs_tags_17[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_E2connectionUpdateRemove_ItemIEs_17,
+	asn_MBR_E2connectionUpdate_ItemIEs_17,
 	3,	/* Elements count */
-	&asn_SPC_E2connectionUpdateRemove_ItemIEs_specs_17	/* Additional specs */
+	&asn_SPC_E2connectionUpdate_ItemIEs_specs_17	/* Additional specs */
 };
 
 static asn_TYPE_member_t asn_MBR_value_24[] = {
-	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionSetupFailed_ItemIEs__value, choice.E2connectionSetupFailed_Item),
+	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdateRemove_ItemIEs__value, choice.E2connectionUpdateRemove_Item),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
-		&asn_DEF_E2connectionSetupFailed_Item,
+		&asn_DEF_E2connectionUpdateRemove_Item,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
-		"E2connectionSetupFailed-Item"
+		"E2connectionUpdateRemove-Item"
 		},
 };
 static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_24[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* E2connectionSetupFailed-Item */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* E2connectionUpdateRemove-Item */
 };
 static asn_CHOICE_specifics_t asn_SPC_value_specs_24 = {
-	sizeof(struct E2connectionSetupFailed_ItemIEs__value),
-	offsetof(struct E2connectionSetupFailed_ItemIEs__value, _asn_ctx),
-	offsetof(struct E2connectionSetupFailed_ItemIEs__value, present),
-	sizeof(((struct E2connectionSetupFailed_ItemIEs__value *)0)->present),
+	sizeof(struct E2connectionUpdateRemove_ItemIEs__value),
+	offsetof(struct E2connectionUpdateRemove_ItemIEs__value, _asn_ctx),
+	offsetof(struct E2connectionUpdateRemove_ItemIEs__value, present),
+	sizeof(((struct E2connectionUpdateRemove_ItemIEs__value *)0)->present),
 	asn_MAP_value_tag2el_24,
 	1,	/* Count of tags in the map */
 	0, 0,
@@ -6273,85 +7435,86 @@
 	&asn_SPC_value_specs_24	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_E2connectionSetupFailed_ItemIEs_21[] = {
-	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionSetupFailed_ItemIEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+asn_TYPE_member_t asn_MBR_E2connectionUpdateRemove_ItemIEs_21[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdateRemove_ItemIEs, id),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
 		{ 0, &asn_PER_memb_id_constr_22,  memb_id_constraint_21 },
 		0, 0, /* No default value */
 		"id"
 		},
-	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionSetupFailed_ItemIEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdateRemove_ItemIEs, criticality),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
-		select_E2connectionSetupFailed_ItemIEs_criticality_type,
+		select_E2connectionUpdateRemove_ItemIEs_criticality_type,
 		{ 0, &asn_PER_memb_criticality_constr_23,  memb_criticality_constraint_21 },
 		0, 0, /* No default value */
 		"criticality"
 		},
-	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2connectionSetupFailed_ItemIEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
+	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdateRemove_ItemIEs, value),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
 		&asn_DEF_value_24,
-		select_E2connectionSetupFailed_ItemIEs_value_type,
+		select_E2connectionUpdateRemove_ItemIEs_value_type,
 		{ 0, &asn_PER_memb_value_constr_24,  memb_value_constraint_21 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_E2connectionSetupFailed_ItemIEs_tags_21[] = {
+static const ber_tlv_tag_t asn_DEF_E2connectionUpdateRemove_ItemIEs_tags_21[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_E2connectionSetupFailed_ItemIEs_tag2el_21[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_E2connectionUpdateRemove_ItemIEs_tag2el_21[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_E2connectionSetupFailed_ItemIEs_specs_21 = {
-	sizeof(struct E2connectionSetupFailed_ItemIEs),
-	offsetof(struct E2connectionSetupFailed_ItemIEs, _asn_ctx),
-	asn_MAP_E2connectionSetupFailed_ItemIEs_tag2el_21,
-	2,	/* Count of tags in the map */
+asn_SEQUENCE_specifics_t asn_SPC_E2connectionUpdateRemove_ItemIEs_specs_21 = {
+	sizeof(struct E2connectionUpdateRemove_ItemIEs),
+	offsetof(struct E2connectionUpdateRemove_ItemIEs, _asn_ctx),
+	asn_MAP_E2connectionUpdateRemove_ItemIEs_tag2el_21,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
-asn_TYPE_descriptor_t asn_DEF_E2connectionSetupFailed_ItemIEs = {
-	"E2connectionSetupFailed-ItemIEs",
-	"E2connectionSetupFailed-ItemIEs",
+asn_TYPE_descriptor_t asn_DEF_E2connectionUpdateRemove_ItemIEs = {
+	"E2connectionUpdateRemove-ItemIEs",
+	"E2connectionUpdateRemove-ItemIEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_E2connectionSetupFailed_ItemIEs_tags_21,
-	sizeof(asn_DEF_E2connectionSetupFailed_ItemIEs_tags_21)
-		/sizeof(asn_DEF_E2connectionSetupFailed_ItemIEs_tags_21[0]), /* 1 */
-	asn_DEF_E2connectionSetupFailed_ItemIEs_tags_21,	/* Same as above */
-	sizeof(asn_DEF_E2connectionSetupFailed_ItemIEs_tags_21)
-		/sizeof(asn_DEF_E2connectionSetupFailed_ItemIEs_tags_21[0]), /* 1 */
+	asn_DEF_E2connectionUpdateRemove_ItemIEs_tags_21,
+	sizeof(asn_DEF_E2connectionUpdateRemove_ItemIEs_tags_21)
+		/sizeof(asn_DEF_E2connectionUpdateRemove_ItemIEs_tags_21[0]), /* 1 */
+	asn_DEF_E2connectionUpdateRemove_ItemIEs_tags_21,	/* Same as above */
+	sizeof(asn_DEF_E2connectionUpdateRemove_ItemIEs_tags_21)
+		/sizeof(asn_DEF_E2connectionUpdateRemove_ItemIEs_tags_21[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_E2connectionSetupFailed_ItemIEs_21,
+	asn_MBR_E2connectionUpdateRemove_ItemIEs_21,
 	3,	/* Elements count */
-	&asn_SPC_E2connectionSetupFailed_ItemIEs_specs_21	/* Additional specs */
+	&asn_SPC_E2connectionUpdateRemove_ItemIEs_specs_21	/* Additional specs */
 };
 
 static asn_TYPE_member_t asn_MBR_value_28[] = {
-	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdate_ItemIEs__value, choice.E2nodeComponentConfigUpdate_Item),
+	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionSetupFailed_ItemIEs__value, choice.E2connectionSetupFailed_Item),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
-		&asn_DEF_E2nodeComponentConfigUpdate_Item,
+		&asn_DEF_E2connectionSetupFailed_Item,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
-		"E2nodeComponentConfigUpdate-Item"
+		"E2connectionSetupFailed-Item"
 		},
 };
 static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_28[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* E2nodeComponentConfigUpdate-Item */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* E2connectionSetupFailed-Item */
 };
 static asn_CHOICE_specifics_t asn_SPC_value_specs_28 = {
-	sizeof(struct E2nodeComponentConfigUpdate_ItemIEs__value),
-	offsetof(struct E2nodeComponentConfigUpdate_ItemIEs__value, _asn_ctx),
-	offsetof(struct E2nodeComponentConfigUpdate_ItemIEs__value, present),
-	sizeof(((struct E2nodeComponentConfigUpdate_ItemIEs__value *)0)->present),
+	sizeof(struct E2connectionSetupFailed_ItemIEs__value),
+	offsetof(struct E2connectionSetupFailed_ItemIEs__value, _asn_ctx),
+	offsetof(struct E2connectionSetupFailed_ItemIEs__value, present),
+	sizeof(((struct E2connectionSetupFailed_ItemIEs__value *)0)->present),
 	asn_MAP_value_tag2el_28,
 	1,	/* Count of tags in the map */
 	0, 0,
@@ -6372,85 +7535,86 @@
 	&asn_SPC_value_specs_28	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdate_ItemIEs_25[] = {
-	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdate_ItemIEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+asn_TYPE_member_t asn_MBR_E2connectionSetupFailed_ItemIEs_25[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionSetupFailed_ItemIEs, id),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
 		{ 0, &asn_PER_memb_id_constr_26,  memb_id_constraint_25 },
 		0, 0, /* No default value */
 		"id"
 		},
-	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdate_ItemIEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionSetupFailed_ItemIEs, criticality),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
-		select_E2nodeComponentConfigUpdate_ItemIEs_criticality_type,
+		select_E2connectionSetupFailed_ItemIEs_criticality_type,
 		{ 0, &asn_PER_memb_criticality_constr_27,  memb_criticality_constraint_25 },
 		0, 0, /* No default value */
 		"criticality"
 		},
-	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdate_ItemIEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
+	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2connectionSetupFailed_ItemIEs, value),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
 		&asn_DEF_value_28,
-		select_E2nodeComponentConfigUpdate_ItemIEs_value_type,
+		select_E2connectionSetupFailed_ItemIEs_value_type,
 		{ 0, &asn_PER_memb_value_constr_28,  memb_value_constraint_25 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigUpdate_ItemIEs_tags_25[] = {
+static const ber_tlv_tag_t asn_DEF_E2connectionSetupFailed_ItemIEs_tags_25[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigUpdate_ItemIEs_tag2el_25[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_E2connectionSetupFailed_ItemIEs_tag2el_25[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdate_ItemIEs_specs_25 = {
-	sizeof(struct E2nodeComponentConfigUpdate_ItemIEs),
-	offsetof(struct E2nodeComponentConfigUpdate_ItemIEs, _asn_ctx),
-	asn_MAP_E2nodeComponentConfigUpdate_ItemIEs_tag2el_25,
-	2,	/* Count of tags in the map */
+asn_SEQUENCE_specifics_t asn_SPC_E2connectionSetupFailed_ItemIEs_specs_25 = {
+	sizeof(struct E2connectionSetupFailed_ItemIEs),
+	offsetof(struct E2connectionSetupFailed_ItemIEs, _asn_ctx),
+	asn_MAP_E2connectionSetupFailed_ItemIEs_tag2el_25,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
-asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdate_ItemIEs = {
-	"E2nodeComponentConfigUpdate-ItemIEs",
-	"E2nodeComponentConfigUpdate-ItemIEs",
+asn_TYPE_descriptor_t asn_DEF_E2connectionSetupFailed_ItemIEs = {
+	"E2connectionSetupFailed-ItemIEs",
+	"E2connectionSetupFailed-ItemIEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_E2nodeComponentConfigUpdate_ItemIEs_tags_25,
-	sizeof(asn_DEF_E2nodeComponentConfigUpdate_ItemIEs_tags_25)
-		/sizeof(asn_DEF_E2nodeComponentConfigUpdate_ItemIEs_tags_25[0]), /* 1 */
-	asn_DEF_E2nodeComponentConfigUpdate_ItemIEs_tags_25,	/* Same as above */
-	sizeof(asn_DEF_E2nodeComponentConfigUpdate_ItemIEs_tags_25)
-		/sizeof(asn_DEF_E2nodeComponentConfigUpdate_ItemIEs_tags_25[0]), /* 1 */
+	asn_DEF_E2connectionSetupFailed_ItemIEs_tags_25,
+	sizeof(asn_DEF_E2connectionSetupFailed_ItemIEs_tags_25)
+		/sizeof(asn_DEF_E2connectionSetupFailed_ItemIEs_tags_25[0]), /* 1 */
+	asn_DEF_E2connectionSetupFailed_ItemIEs_tags_25,	/* Same as above */
+	sizeof(asn_DEF_E2connectionSetupFailed_ItemIEs_tags_25)
+		/sizeof(asn_DEF_E2connectionSetupFailed_ItemIEs_tags_25[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_E2nodeComponentConfigUpdate_ItemIEs_25,
+	asn_MBR_E2connectionSetupFailed_ItemIEs_25,
 	3,	/* Elements count */
-	&asn_SPC_E2nodeComponentConfigUpdate_ItemIEs_specs_25	/* Additional specs */
+	&asn_SPC_E2connectionSetupFailed_ItemIEs_specs_25	/* Additional specs */
 };
 
 static asn_TYPE_member_t asn_MBR_value_32[] = {
-	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdateAck_ItemIEs__value, choice.E2nodeComponentConfigUpdateAck_Item),
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigAddition_ItemIEs__value, choice.E2nodeComponentConfigAddition_Item),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
-		&asn_DEF_E2nodeComponentConfigUpdateAck_Item,
+		&asn_DEF_E2nodeComponentConfigAddition_Item,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
-		"E2nodeComponentConfigUpdateAck-Item"
+		"E2nodeComponentConfigAddition-Item"
 		},
 };
 static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_32[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* E2nodeComponentConfigUpdateAck-Item */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* E2nodeComponentConfigAddition-Item */
 };
 static asn_CHOICE_specifics_t asn_SPC_value_specs_32 = {
-	sizeof(struct E2nodeComponentConfigUpdateAck_ItemIEs__value),
-	offsetof(struct E2nodeComponentConfigUpdateAck_ItemIEs__value, _asn_ctx),
-	offsetof(struct E2nodeComponentConfigUpdateAck_ItemIEs__value, present),
-	sizeof(((struct E2nodeComponentConfigUpdateAck_ItemIEs__value *)0)->present),
+	sizeof(struct E2nodeComponentConfigAddition_ItemIEs__value),
+	offsetof(struct E2nodeComponentConfigAddition_ItemIEs__value, _asn_ctx),
+	offsetof(struct E2nodeComponentConfigAddition_ItemIEs__value, present),
+	sizeof(((struct E2nodeComponentConfigAddition_ItemIEs__value *)0)->present),
 	asn_MAP_value_tag2el_32,
 	1,	/* Count of tags in the map */
 	0, 0,
@@ -6471,85 +7635,86 @@
 	&asn_SPC_value_specs_32	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdateAck_ItemIEs_29[] = {
-	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdateAck_ItemIEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+asn_TYPE_member_t asn_MBR_E2nodeComponentConfigAddition_ItemIEs_29[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigAddition_ItemIEs, id),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
 		{ 0, &asn_PER_memb_id_constr_30,  memb_id_constraint_29 },
 		0, 0, /* No default value */
 		"id"
 		},
-	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdateAck_ItemIEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigAddition_ItemIEs, criticality),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
-		select_E2nodeComponentConfigUpdateAck_ItemIEs_criticality_type,
+		select_E2nodeComponentConfigAddition_ItemIEs_criticality_type,
 		{ 0, &asn_PER_memb_criticality_constr_31,  memb_criticality_constraint_29 },
 		0, 0, /* No default value */
 		"criticality"
 		},
-	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdateAck_ItemIEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
+	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigAddition_ItemIEs, value),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
 		&asn_DEF_value_32,
-		select_E2nodeComponentConfigUpdateAck_ItemIEs_value_type,
+		select_E2nodeComponentConfigAddition_ItemIEs_value_type,
 		{ 0, &asn_PER_memb_value_constr_32,  memb_value_constraint_29 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigUpdateAck_ItemIEs_tags_29[] = {
+static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigAddition_ItemIEs_tags_29[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigUpdateAck_ItemIEs_tag2el_29[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigAddition_ItemIEs_tag2el_29[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdateAck_ItemIEs_specs_29 = {
-	sizeof(struct E2nodeComponentConfigUpdateAck_ItemIEs),
-	offsetof(struct E2nodeComponentConfigUpdateAck_ItemIEs, _asn_ctx),
-	asn_MAP_E2nodeComponentConfigUpdateAck_ItemIEs_tag2el_29,
-	2,	/* Count of tags in the map */
+asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigAddition_ItemIEs_specs_29 = {
+	sizeof(struct E2nodeComponentConfigAddition_ItemIEs),
+	offsetof(struct E2nodeComponentConfigAddition_ItemIEs, _asn_ctx),
+	asn_MAP_E2nodeComponentConfigAddition_ItemIEs_tag2el_29,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
-asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdateAck_ItemIEs = {
-	"E2nodeComponentConfigUpdateAck-ItemIEs",
-	"E2nodeComponentConfigUpdateAck-ItemIEs",
+asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigAddition_ItemIEs = {
+	"E2nodeComponentConfigAddition-ItemIEs",
+	"E2nodeComponentConfigAddition-ItemIEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_E2nodeComponentConfigUpdateAck_ItemIEs_tags_29,
-	sizeof(asn_DEF_E2nodeComponentConfigUpdateAck_ItemIEs_tags_29)
-		/sizeof(asn_DEF_E2nodeComponentConfigUpdateAck_ItemIEs_tags_29[0]), /* 1 */
-	asn_DEF_E2nodeComponentConfigUpdateAck_ItemIEs_tags_29,	/* Same as above */
-	sizeof(asn_DEF_E2nodeComponentConfigUpdateAck_ItemIEs_tags_29)
-		/sizeof(asn_DEF_E2nodeComponentConfigUpdateAck_ItemIEs_tags_29[0]), /* 1 */
+	asn_DEF_E2nodeComponentConfigAddition_ItemIEs_tags_29,
+	sizeof(asn_DEF_E2nodeComponentConfigAddition_ItemIEs_tags_29)
+		/sizeof(asn_DEF_E2nodeComponentConfigAddition_ItemIEs_tags_29[0]), /* 1 */
+	asn_DEF_E2nodeComponentConfigAddition_ItemIEs_tags_29,	/* Same as above */
+	sizeof(asn_DEF_E2nodeComponentConfigAddition_ItemIEs_tags_29)
+		/sizeof(asn_DEF_E2nodeComponentConfigAddition_ItemIEs_tags_29[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_E2nodeComponentConfigUpdateAck_ItemIEs_29,
+	asn_MBR_E2nodeComponentConfigAddition_ItemIEs_29,
 	3,	/* Elements count */
-	&asn_SPC_E2nodeComponentConfigUpdateAck_ItemIEs_specs_29	/* Additional specs */
+	&asn_SPC_E2nodeComponentConfigAddition_ItemIEs_specs_29	/* Additional specs */
 };
 
 static asn_TYPE_member_t asn_MBR_value_36[] = {
-	{ ATF_NOFLAGS, 0, offsetof(struct RANfunction_ItemIEs__value, choice.RANfunction_Item),
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdate_ItemIEs__value, choice.E2nodeComponentConfigUpdate_Item),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
-		&asn_DEF_RANfunction_Item,
+		&asn_DEF_E2nodeComponentConfigUpdate_Item,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
-		"RANfunction-Item"
+		"E2nodeComponentConfigUpdate-Item"
 		},
 };
 static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_36[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RANfunction-Item */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* E2nodeComponentConfigUpdate-Item */
 };
 static asn_CHOICE_specifics_t asn_SPC_value_specs_36 = {
-	sizeof(struct RANfunction_ItemIEs__value),
-	offsetof(struct RANfunction_ItemIEs__value, _asn_ctx),
-	offsetof(struct RANfunction_ItemIEs__value, present),
-	sizeof(((struct RANfunction_ItemIEs__value *)0)->present),
+	sizeof(struct E2nodeComponentConfigUpdate_ItemIEs__value),
+	offsetof(struct E2nodeComponentConfigUpdate_ItemIEs__value, _asn_ctx),
+	offsetof(struct E2nodeComponentConfigUpdate_ItemIEs__value, present),
+	sizeof(((struct E2nodeComponentConfigUpdate_ItemIEs__value *)0)->present),
 	asn_MAP_value_tag2el_36,
 	1,	/* Count of tags in the map */
 	0, 0,
@@ -6570,85 +7735,86 @@
 	&asn_SPC_value_specs_36	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_RANfunction_ItemIEs_33[] = {
-	{ ATF_NOFLAGS, 0, offsetof(struct RANfunction_ItemIEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdate_ItemIEs_33[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdate_ItemIEs, id),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
 		{ 0, &asn_PER_memb_id_constr_34,  memb_id_constraint_33 },
 		0, 0, /* No default value */
 		"id"
 		},
-	{ ATF_NOFLAGS, 0, offsetof(struct RANfunction_ItemIEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdate_ItemIEs, criticality),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
-		select_RANfunction_ItemIEs_criticality_type,
+		select_E2nodeComponentConfigUpdate_ItemIEs_criticality_type,
 		{ 0, &asn_PER_memb_criticality_constr_35,  memb_criticality_constraint_33 },
 		0, 0, /* No default value */
 		"criticality"
 		},
-	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RANfunction_ItemIEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
+	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdate_ItemIEs, value),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
 		&asn_DEF_value_36,
-		select_RANfunction_ItemIEs_value_type,
+		select_E2nodeComponentConfigUpdate_ItemIEs_value_type,
 		{ 0, &asn_PER_memb_value_constr_36,  memb_value_constraint_33 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_RANfunction_ItemIEs_tags_33[] = {
+static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigUpdate_ItemIEs_tags_33[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_RANfunction_ItemIEs_tag2el_33[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigUpdate_ItemIEs_tag2el_33[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_RANfunction_ItemIEs_specs_33 = {
-	sizeof(struct RANfunction_ItemIEs),
-	offsetof(struct RANfunction_ItemIEs, _asn_ctx),
-	asn_MAP_RANfunction_ItemIEs_tag2el_33,
-	2,	/* Count of tags in the map */
+asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdate_ItemIEs_specs_33 = {
+	sizeof(struct E2nodeComponentConfigUpdate_ItemIEs),
+	offsetof(struct E2nodeComponentConfigUpdate_ItemIEs, _asn_ctx),
+	asn_MAP_E2nodeComponentConfigUpdate_ItemIEs_tag2el_33,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
-asn_TYPE_descriptor_t asn_DEF_RANfunction_ItemIEs = {
-	"RANfunction-ItemIEs",
-	"RANfunction-ItemIEs",
+asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdate_ItemIEs = {
+	"E2nodeComponentConfigUpdate-ItemIEs",
+	"E2nodeComponentConfigUpdate-ItemIEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_RANfunction_ItemIEs_tags_33,
-	sizeof(asn_DEF_RANfunction_ItemIEs_tags_33)
-		/sizeof(asn_DEF_RANfunction_ItemIEs_tags_33[0]), /* 1 */
-	asn_DEF_RANfunction_ItemIEs_tags_33,	/* Same as above */
-	sizeof(asn_DEF_RANfunction_ItemIEs_tags_33)
-		/sizeof(asn_DEF_RANfunction_ItemIEs_tags_33[0]), /* 1 */
+	asn_DEF_E2nodeComponentConfigUpdate_ItemIEs_tags_33,
+	sizeof(asn_DEF_E2nodeComponentConfigUpdate_ItemIEs_tags_33)
+		/sizeof(asn_DEF_E2nodeComponentConfigUpdate_ItemIEs_tags_33[0]), /* 1 */
+	asn_DEF_E2nodeComponentConfigUpdate_ItemIEs_tags_33,	/* Same as above */
+	sizeof(asn_DEF_E2nodeComponentConfigUpdate_ItemIEs_tags_33)
+		/sizeof(asn_DEF_E2nodeComponentConfigUpdate_ItemIEs_tags_33[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_RANfunction_ItemIEs_33,
+	asn_MBR_E2nodeComponentConfigUpdate_ItemIEs_33,
 	3,	/* Elements count */
-	&asn_SPC_RANfunction_ItemIEs_specs_33	/* Additional specs */
+	&asn_SPC_E2nodeComponentConfigUpdate_ItemIEs_specs_33	/* Additional specs */
 };
 
 static asn_TYPE_member_t asn_MBR_value_40[] = {
-	{ ATF_NOFLAGS, 0, offsetof(struct RANfunctionID_ItemIEs__value, choice.RANfunctionID_Item),
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigRemoval_ItemIEs__value, choice.E2nodeComponentConfigRemoval_Item),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
-		&asn_DEF_RANfunctionID_Item,
+		&asn_DEF_E2nodeComponentConfigRemoval_Item,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
-		"RANfunctionID-Item"
+		"E2nodeComponentConfigRemoval-Item"
 		},
 };
 static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_40[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RANfunctionID-Item */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* E2nodeComponentConfigRemoval-Item */
 };
 static asn_CHOICE_specifics_t asn_SPC_value_specs_40 = {
-	sizeof(struct RANfunctionID_ItemIEs__value),
-	offsetof(struct RANfunctionID_ItemIEs__value, _asn_ctx),
-	offsetof(struct RANfunctionID_ItemIEs__value, present),
-	sizeof(((struct RANfunctionID_ItemIEs__value *)0)->present),
+	sizeof(struct E2nodeComponentConfigRemoval_ItemIEs__value),
+	offsetof(struct E2nodeComponentConfigRemoval_ItemIEs__value, _asn_ctx),
+	offsetof(struct E2nodeComponentConfigRemoval_ItemIEs__value, present),
+	sizeof(((struct E2nodeComponentConfigRemoval_ItemIEs__value *)0)->present),
 	asn_MAP_value_tag2el_40,
 	1,	/* Count of tags in the map */
 	0, 0,
@@ -6669,85 +7835,86 @@
 	&asn_SPC_value_specs_40	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_RANfunctionID_ItemIEs_37[] = {
-	{ ATF_NOFLAGS, 0, offsetof(struct RANfunctionID_ItemIEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+asn_TYPE_member_t asn_MBR_E2nodeComponentConfigRemoval_ItemIEs_37[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigRemoval_ItemIEs, id),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
 		{ 0, &asn_PER_memb_id_constr_38,  memb_id_constraint_37 },
 		0, 0, /* No default value */
 		"id"
 		},
-	{ ATF_NOFLAGS, 0, offsetof(struct RANfunctionID_ItemIEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigRemoval_ItemIEs, criticality),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
-		select_RANfunctionID_ItemIEs_criticality_type,
+		select_E2nodeComponentConfigRemoval_ItemIEs_criticality_type,
 		{ 0, &asn_PER_memb_criticality_constr_39,  memb_criticality_constraint_37 },
 		0, 0, /* No default value */
 		"criticality"
 		},
-	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RANfunctionID_ItemIEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
+	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigRemoval_ItemIEs, value),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
 		&asn_DEF_value_40,
-		select_RANfunctionID_ItemIEs_value_type,
+		select_E2nodeComponentConfigRemoval_ItemIEs_value_type,
 		{ 0, &asn_PER_memb_value_constr_40,  memb_value_constraint_37 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_RANfunctionID_ItemIEs_tags_37[] = {
+static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigRemoval_ItemIEs_tags_37[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_RANfunctionID_ItemIEs_tag2el_37[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigRemoval_ItemIEs_tag2el_37[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_RANfunctionID_ItemIEs_specs_37 = {
-	sizeof(struct RANfunctionID_ItemIEs),
-	offsetof(struct RANfunctionID_ItemIEs, _asn_ctx),
-	asn_MAP_RANfunctionID_ItemIEs_tag2el_37,
-	2,	/* Count of tags in the map */
+asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigRemoval_ItemIEs_specs_37 = {
+	sizeof(struct E2nodeComponentConfigRemoval_ItemIEs),
+	offsetof(struct E2nodeComponentConfigRemoval_ItemIEs, _asn_ctx),
+	asn_MAP_E2nodeComponentConfigRemoval_ItemIEs_tag2el_37,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
-asn_TYPE_descriptor_t asn_DEF_RANfunctionID_ItemIEs = {
-	"RANfunctionID-ItemIEs",
-	"RANfunctionID-ItemIEs",
+asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigRemoval_ItemIEs = {
+	"E2nodeComponentConfigRemoval-ItemIEs",
+	"E2nodeComponentConfigRemoval-ItemIEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_RANfunctionID_ItemIEs_tags_37,
-	sizeof(asn_DEF_RANfunctionID_ItemIEs_tags_37)
-		/sizeof(asn_DEF_RANfunctionID_ItemIEs_tags_37[0]), /* 1 */
-	asn_DEF_RANfunctionID_ItemIEs_tags_37,	/* Same as above */
-	sizeof(asn_DEF_RANfunctionID_ItemIEs_tags_37)
-		/sizeof(asn_DEF_RANfunctionID_ItemIEs_tags_37[0]), /* 1 */
+	asn_DEF_E2nodeComponentConfigRemoval_ItemIEs_tags_37,
+	sizeof(asn_DEF_E2nodeComponentConfigRemoval_ItemIEs_tags_37)
+		/sizeof(asn_DEF_E2nodeComponentConfigRemoval_ItemIEs_tags_37[0]), /* 1 */
+	asn_DEF_E2nodeComponentConfigRemoval_ItemIEs_tags_37,	/* Same as above */
+	sizeof(asn_DEF_E2nodeComponentConfigRemoval_ItemIEs_tags_37)
+		/sizeof(asn_DEF_E2nodeComponentConfigRemoval_ItemIEs_tags_37[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_RANfunctionID_ItemIEs_37,
+	asn_MBR_E2nodeComponentConfigRemoval_ItemIEs_37,
 	3,	/* Elements count */
-	&asn_SPC_RANfunctionID_ItemIEs_specs_37	/* Additional specs */
+	&asn_SPC_E2nodeComponentConfigRemoval_ItemIEs_specs_37	/* Additional specs */
 };
 
 static asn_TYPE_member_t asn_MBR_value_44[] = {
-	{ ATF_NOFLAGS, 0, offsetof(struct RANfunctionIDcause_ItemIEs__value, choice.RANfunctionIDcause_Item),
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeTNLassociationRemoval_ItemIEs__value, choice.E2nodeTNLassociationRemoval_Item),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
-		&asn_DEF_RANfunctionIDcause_Item,
+		&asn_DEF_E2nodeTNLassociationRemoval_Item,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
-		"RANfunctionIDcause-Item"
+		"E2nodeTNLassociationRemoval-Item"
 		},
 };
 static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_44[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RANfunctionIDcause-Item */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* E2nodeTNLassociationRemoval-Item */
 };
 static asn_CHOICE_specifics_t asn_SPC_value_specs_44 = {
-	sizeof(struct RANfunctionIDcause_ItemIEs__value),
-	offsetof(struct RANfunctionIDcause_ItemIEs__value, _asn_ctx),
-	offsetof(struct RANfunctionIDcause_ItemIEs__value, present),
-	sizeof(((struct RANfunctionIDcause_ItemIEs__value *)0)->present),
+	sizeof(struct E2nodeTNLassociationRemoval_ItemIEs__value),
+	offsetof(struct E2nodeTNLassociationRemoval_ItemIEs__value, _asn_ctx),
+	offsetof(struct E2nodeTNLassociationRemoval_ItemIEs__value, present),
+	sizeof(((struct E2nodeTNLassociationRemoval_ItemIEs__value *)0)->present),
 	asn_MAP_value_tag2el_44,
 	1,	/* Count of tags in the map */
 	0, 0,
@@ -6768,47 +7935,648 @@
 	&asn_SPC_value_specs_44	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_RANfunctionIDcause_ItemIEs_41[] = {
-	{ ATF_NOFLAGS, 0, offsetof(struct RANfunctionIDcause_ItemIEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+asn_TYPE_member_t asn_MBR_E2nodeTNLassociationRemoval_ItemIEs_41[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeTNLassociationRemoval_ItemIEs, id),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
 		{ 0, &asn_PER_memb_id_constr_42,  memb_id_constraint_41 },
 		0, 0, /* No default value */
 		"id"
 		},
-	{ ATF_NOFLAGS, 0, offsetof(struct RANfunctionIDcause_ItemIEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeTNLassociationRemoval_ItemIEs, criticality),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
-		select_RANfunctionIDcause_ItemIEs_criticality_type,
+		select_E2nodeTNLassociationRemoval_ItemIEs_criticality_type,
 		{ 0, &asn_PER_memb_criticality_constr_43,  memb_criticality_constraint_41 },
 		0, 0, /* No default value */
 		"criticality"
 		},
-	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RANfunctionIDcause_ItemIEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
+	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2nodeTNLassociationRemoval_ItemIEs, value),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
 		&asn_DEF_value_44,
-		select_RANfunctionIDcause_ItemIEs_value_type,
+		select_E2nodeTNLassociationRemoval_ItemIEs_value_type,
 		{ 0, &asn_PER_memb_value_constr_44,  memb_value_constraint_41 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_RANfunctionIDcause_ItemIEs_tags_41[] = {
+static const ber_tlv_tag_t asn_DEF_E2nodeTNLassociationRemoval_ItemIEs_tags_41[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_RANfunctionIDcause_ItemIEs_tag2el_41[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_E2nodeTNLassociationRemoval_ItemIEs_tag2el_41[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_RANfunctionIDcause_ItemIEs_specs_41 = {
+asn_SEQUENCE_specifics_t asn_SPC_E2nodeTNLassociationRemoval_ItemIEs_specs_41 = {
+	sizeof(struct E2nodeTNLassociationRemoval_ItemIEs),
+	offsetof(struct E2nodeTNLassociationRemoval_ItemIEs, _asn_ctx),
+	asn_MAP_E2nodeTNLassociationRemoval_ItemIEs_tag2el_41,
+	3,	/* Count of tags in the map */
+	0, 0, 0,	/* Optional elements (not needed) */
+	-1,	/* First extension addition */
+};
+asn_TYPE_descriptor_t asn_DEF_E2nodeTNLassociationRemoval_ItemIEs = {
+	"E2nodeTNLassociationRemoval-ItemIEs",
+	"E2nodeTNLassociationRemoval-ItemIEs",
+	&asn_OP_SEQUENCE,
+	asn_DEF_E2nodeTNLassociationRemoval_ItemIEs_tags_41,
+	sizeof(asn_DEF_E2nodeTNLassociationRemoval_ItemIEs_tags_41)
+		/sizeof(asn_DEF_E2nodeTNLassociationRemoval_ItemIEs_tags_41[0]), /* 1 */
+	asn_DEF_E2nodeTNLassociationRemoval_ItemIEs_tags_41,	/* Same as above */
+	sizeof(asn_DEF_E2nodeTNLassociationRemoval_ItemIEs_tags_41)
+		/sizeof(asn_DEF_E2nodeTNLassociationRemoval_ItemIEs_tags_41[0]), /* 1 */
+	{ 0, 0, SEQUENCE_constraint },
+	asn_MBR_E2nodeTNLassociationRemoval_ItemIEs_41,
+	3,	/* Elements count */
+	&asn_SPC_E2nodeTNLassociationRemoval_ItemIEs_specs_41	/* Additional specs */
+};
+
+static asn_TYPE_member_t asn_MBR_value_48[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigAdditionAck_ItemIEs__value, choice.E2nodeComponentConfigAdditionAck_Item),
+		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
+		0,
+		&asn_DEF_E2nodeComponentConfigAdditionAck_Item,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"E2nodeComponentConfigAdditionAck-Item"
+		},
+};
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_48[] = {
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* E2nodeComponentConfigAdditionAck-Item */
+};
+static asn_CHOICE_specifics_t asn_SPC_value_specs_48 = {
+	sizeof(struct E2nodeComponentConfigAdditionAck_ItemIEs__value),
+	offsetof(struct E2nodeComponentConfigAdditionAck_ItemIEs__value, _asn_ctx),
+	offsetof(struct E2nodeComponentConfigAdditionAck_ItemIEs__value, present),
+	sizeof(((struct E2nodeComponentConfigAdditionAck_ItemIEs__value *)0)->present),
+	asn_MAP_value_tag2el_48,
+	1,	/* Count of tags in the map */
+	0, 0,
+	-1	/* Extensions start */
+};
+static /* Use -fall-defs-global to expose */
+asn_TYPE_descriptor_t asn_DEF_value_48 = {
+	"value",
+	"value",
+	&asn_OP_OPEN_TYPE,
+	0,	/* No effective tags (pointer) */
+	0,	/* No effective tags (count) */
+	0,	/* No tags (pointer) */
+	0,	/* No tags (count) */
+	{ 0, 0, OPEN_TYPE_constraint },
+	asn_MBR_value_48,
+	1,	/* Elements count */
+	&asn_SPC_value_specs_48	/* Additional specs */
+};
+
+asn_TYPE_member_t asn_MBR_E2nodeComponentConfigAdditionAck_ItemIEs_45[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigAdditionAck_ItemIEs, id),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_ProtocolIE_ID,
+		0,
+		{ 0, &asn_PER_memb_id_constr_46,  memb_id_constraint_45 },
+		0, 0, /* No default value */
+		"id"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigAdditionAck_ItemIEs, criticality),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_Criticality,
+		select_E2nodeComponentConfigAdditionAck_ItemIEs_criticality_type,
+		{ 0, &asn_PER_memb_criticality_constr_47,  memb_criticality_constraint_45 },
+		0, 0, /* No default value */
+		"criticality"
+		},
+	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigAdditionAck_ItemIEs, value),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_48,
+		select_E2nodeComponentConfigAdditionAck_ItemIEs_value_type,
+		{ 0, &asn_PER_memb_value_constr_48,  memb_value_constraint_45 },
+		0, 0, /* No default value */
+		"value"
+		},
+};
+static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigAdditionAck_ItemIEs_tags_45[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigAdditionAck_ItemIEs_tag2el_45[] = {
+    { (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 */
+};
+asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigAdditionAck_ItemIEs_specs_45 = {
+	sizeof(struct E2nodeComponentConfigAdditionAck_ItemIEs),
+	offsetof(struct E2nodeComponentConfigAdditionAck_ItemIEs, _asn_ctx),
+	asn_MAP_E2nodeComponentConfigAdditionAck_ItemIEs_tag2el_45,
+	3,	/* Count of tags in the map */
+	0, 0, 0,	/* Optional elements (not needed) */
+	-1,	/* First extension addition */
+};
+asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigAdditionAck_ItemIEs = {
+	"E2nodeComponentConfigAdditionAck-ItemIEs",
+	"E2nodeComponentConfigAdditionAck-ItemIEs",
+	&asn_OP_SEQUENCE,
+	asn_DEF_E2nodeComponentConfigAdditionAck_ItemIEs_tags_45,
+	sizeof(asn_DEF_E2nodeComponentConfigAdditionAck_ItemIEs_tags_45)
+		/sizeof(asn_DEF_E2nodeComponentConfigAdditionAck_ItemIEs_tags_45[0]), /* 1 */
+	asn_DEF_E2nodeComponentConfigAdditionAck_ItemIEs_tags_45,	/* Same as above */
+	sizeof(asn_DEF_E2nodeComponentConfigAdditionAck_ItemIEs_tags_45)
+		/sizeof(asn_DEF_E2nodeComponentConfigAdditionAck_ItemIEs_tags_45[0]), /* 1 */
+	{ 0, 0, SEQUENCE_constraint },
+	asn_MBR_E2nodeComponentConfigAdditionAck_ItemIEs_45,
+	3,	/* Elements count */
+	&asn_SPC_E2nodeComponentConfigAdditionAck_ItemIEs_specs_45	/* Additional specs */
+};
+
+static asn_TYPE_member_t asn_MBR_value_52[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdateAck_ItemIEs__value, choice.E2nodeComponentConfigUpdateAck_Item),
+		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
+		0,
+		&asn_DEF_E2nodeComponentConfigUpdateAck_Item,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"E2nodeComponentConfigUpdateAck-Item"
+		},
+};
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_52[] = {
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* E2nodeComponentConfigUpdateAck-Item */
+};
+static asn_CHOICE_specifics_t asn_SPC_value_specs_52 = {
+	sizeof(struct E2nodeComponentConfigUpdateAck_ItemIEs__value),
+	offsetof(struct E2nodeComponentConfigUpdateAck_ItemIEs__value, _asn_ctx),
+	offsetof(struct E2nodeComponentConfigUpdateAck_ItemIEs__value, present),
+	sizeof(((struct E2nodeComponentConfigUpdateAck_ItemIEs__value *)0)->present),
+	asn_MAP_value_tag2el_52,
+	1,	/* Count of tags in the map */
+	0, 0,
+	-1	/* Extensions start */
+};
+static /* Use -fall-defs-global to expose */
+asn_TYPE_descriptor_t asn_DEF_value_52 = {
+	"value",
+	"value",
+	&asn_OP_OPEN_TYPE,
+	0,	/* No effective tags (pointer) */
+	0,	/* No effective tags (count) */
+	0,	/* No tags (pointer) */
+	0,	/* No tags (count) */
+	{ 0, 0, OPEN_TYPE_constraint },
+	asn_MBR_value_52,
+	1,	/* Elements count */
+	&asn_SPC_value_specs_52	/* Additional specs */
+};
+
+asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdateAck_ItemIEs_49[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdateAck_ItemIEs, id),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_ProtocolIE_ID,
+		0,
+		{ 0, &asn_PER_memb_id_constr_50,  memb_id_constraint_49 },
+		0, 0, /* No default value */
+		"id"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdateAck_ItemIEs, criticality),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_Criticality,
+		select_E2nodeComponentConfigUpdateAck_ItemIEs_criticality_type,
+		{ 0, &asn_PER_memb_criticality_constr_51,  memb_criticality_constraint_49 },
+		0, 0, /* No default value */
+		"criticality"
+		},
+	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigUpdateAck_ItemIEs, value),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_52,
+		select_E2nodeComponentConfigUpdateAck_ItemIEs_value_type,
+		{ 0, &asn_PER_memb_value_constr_52,  memb_value_constraint_49 },
+		0, 0, /* No default value */
+		"value"
+		},
+};
+static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigUpdateAck_ItemIEs_tags_49[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigUpdateAck_ItemIEs_tag2el_49[] = {
+    { (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 */
+};
+asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdateAck_ItemIEs_specs_49 = {
+	sizeof(struct E2nodeComponentConfigUpdateAck_ItemIEs),
+	offsetof(struct E2nodeComponentConfigUpdateAck_ItemIEs, _asn_ctx),
+	asn_MAP_E2nodeComponentConfigUpdateAck_ItemIEs_tag2el_49,
+	3,	/* Count of tags in the map */
+	0, 0, 0,	/* Optional elements (not needed) */
+	-1,	/* First extension addition */
+};
+asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdateAck_ItemIEs = {
+	"E2nodeComponentConfigUpdateAck-ItemIEs",
+	"E2nodeComponentConfigUpdateAck-ItemIEs",
+	&asn_OP_SEQUENCE,
+	asn_DEF_E2nodeComponentConfigUpdateAck_ItemIEs_tags_49,
+	sizeof(asn_DEF_E2nodeComponentConfigUpdateAck_ItemIEs_tags_49)
+		/sizeof(asn_DEF_E2nodeComponentConfigUpdateAck_ItemIEs_tags_49[0]), /* 1 */
+	asn_DEF_E2nodeComponentConfigUpdateAck_ItemIEs_tags_49,	/* Same as above */
+	sizeof(asn_DEF_E2nodeComponentConfigUpdateAck_ItemIEs_tags_49)
+		/sizeof(asn_DEF_E2nodeComponentConfigUpdateAck_ItemIEs_tags_49[0]), /* 1 */
+	{ 0, 0, SEQUENCE_constraint },
+	asn_MBR_E2nodeComponentConfigUpdateAck_ItemIEs_49,
+	3,	/* Elements count */
+	&asn_SPC_E2nodeComponentConfigUpdateAck_ItemIEs_specs_49	/* Additional specs */
+};
+
+static asn_TYPE_member_t asn_MBR_value_56[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigRemovalAck_ItemIEs__value, choice.E2nodeComponentConfigRemovalAck_Item),
+		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
+		0,
+		&asn_DEF_E2nodeComponentConfigRemovalAck_Item,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"E2nodeComponentConfigRemovalAck-Item"
+		},
+};
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_56[] = {
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* E2nodeComponentConfigRemovalAck-Item */
+};
+static asn_CHOICE_specifics_t asn_SPC_value_specs_56 = {
+	sizeof(struct E2nodeComponentConfigRemovalAck_ItemIEs__value),
+	offsetof(struct E2nodeComponentConfigRemovalAck_ItemIEs__value, _asn_ctx),
+	offsetof(struct E2nodeComponentConfigRemovalAck_ItemIEs__value, present),
+	sizeof(((struct E2nodeComponentConfigRemovalAck_ItemIEs__value *)0)->present),
+	asn_MAP_value_tag2el_56,
+	1,	/* Count of tags in the map */
+	0, 0,
+	-1	/* Extensions start */
+};
+static /* Use -fall-defs-global to expose */
+asn_TYPE_descriptor_t asn_DEF_value_56 = {
+	"value",
+	"value",
+	&asn_OP_OPEN_TYPE,
+	0,	/* No effective tags (pointer) */
+	0,	/* No effective tags (count) */
+	0,	/* No tags (pointer) */
+	0,	/* No tags (count) */
+	{ 0, 0, OPEN_TYPE_constraint },
+	asn_MBR_value_56,
+	1,	/* Elements count */
+	&asn_SPC_value_specs_56	/* Additional specs */
+};
+
+asn_TYPE_member_t asn_MBR_E2nodeComponentConfigRemovalAck_ItemIEs_53[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigRemovalAck_ItemIEs, id),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_ProtocolIE_ID,
+		0,
+		{ 0, &asn_PER_memb_id_constr_54,  memb_id_constraint_53 },
+		0, 0, /* No default value */
+		"id"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigRemovalAck_ItemIEs, criticality),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_Criticality,
+		select_E2nodeComponentConfigRemovalAck_ItemIEs_criticality_type,
+		{ 0, &asn_PER_memb_criticality_constr_55,  memb_criticality_constraint_53 },
+		0, 0, /* No default value */
+		"criticality"
+		},
+	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2nodeComponentConfigRemovalAck_ItemIEs, value),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_56,
+		select_E2nodeComponentConfigRemovalAck_ItemIEs_value_type,
+		{ 0, &asn_PER_memb_value_constr_56,  memb_value_constraint_53 },
+		0, 0, /* No default value */
+		"value"
+		},
+};
+static const ber_tlv_tag_t asn_DEF_E2nodeComponentConfigRemovalAck_ItemIEs_tags_53[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_E2nodeComponentConfigRemovalAck_ItemIEs_tag2el_53[] = {
+    { (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 */
+};
+asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigRemovalAck_ItemIEs_specs_53 = {
+	sizeof(struct E2nodeComponentConfigRemovalAck_ItemIEs),
+	offsetof(struct E2nodeComponentConfigRemovalAck_ItemIEs, _asn_ctx),
+	asn_MAP_E2nodeComponentConfigRemovalAck_ItemIEs_tag2el_53,
+	3,	/* Count of tags in the map */
+	0, 0, 0,	/* Optional elements (not needed) */
+	-1,	/* First extension addition */
+};
+asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigRemovalAck_ItemIEs = {
+	"E2nodeComponentConfigRemovalAck-ItemIEs",
+	"E2nodeComponentConfigRemovalAck-ItemIEs",
+	&asn_OP_SEQUENCE,
+	asn_DEF_E2nodeComponentConfigRemovalAck_ItemIEs_tags_53,
+	sizeof(asn_DEF_E2nodeComponentConfigRemovalAck_ItemIEs_tags_53)
+		/sizeof(asn_DEF_E2nodeComponentConfigRemovalAck_ItemIEs_tags_53[0]), /* 1 */
+	asn_DEF_E2nodeComponentConfigRemovalAck_ItemIEs_tags_53,	/* Same as above */
+	sizeof(asn_DEF_E2nodeComponentConfigRemovalAck_ItemIEs_tags_53)
+		/sizeof(asn_DEF_E2nodeComponentConfigRemovalAck_ItemIEs_tags_53[0]), /* 1 */
+	{ 0, 0, SEQUENCE_constraint },
+	asn_MBR_E2nodeComponentConfigRemovalAck_ItemIEs_53,
+	3,	/* Elements count */
+	&asn_SPC_E2nodeComponentConfigRemovalAck_ItemIEs_specs_53	/* Additional specs */
+};
+
+static asn_TYPE_member_t asn_MBR_value_60[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANfunction_ItemIEs__value, choice.RANfunction_Item),
+		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
+		0,
+		&asn_DEF_RANfunction_Item,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"RANfunction-Item"
+		},
+};
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_60[] = {
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RANfunction-Item */
+};
+static asn_CHOICE_specifics_t asn_SPC_value_specs_60 = {
+	sizeof(struct RANfunction_ItemIEs__value),
+	offsetof(struct RANfunction_ItemIEs__value, _asn_ctx),
+	offsetof(struct RANfunction_ItemIEs__value, present),
+	sizeof(((struct RANfunction_ItemIEs__value *)0)->present),
+	asn_MAP_value_tag2el_60,
+	1,	/* Count of tags in the map */
+	0, 0,
+	-1	/* Extensions start */
+};
+static /* Use -fall-defs-global to expose */
+asn_TYPE_descriptor_t asn_DEF_value_60 = {
+	"value",
+	"value",
+	&asn_OP_OPEN_TYPE,
+	0,	/* No effective tags (pointer) */
+	0,	/* No effective tags (count) */
+	0,	/* No tags (pointer) */
+	0,	/* No tags (count) */
+	{ 0, 0, OPEN_TYPE_constraint },
+	asn_MBR_value_60,
+	1,	/* Elements count */
+	&asn_SPC_value_specs_60	/* Additional specs */
+};
+
+asn_TYPE_member_t asn_MBR_RANfunction_ItemIEs_57[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANfunction_ItemIEs, id),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_ProtocolIE_ID,
+		0,
+		{ 0, &asn_PER_memb_id_constr_58,  memb_id_constraint_57 },
+		0, 0, /* No default value */
+		"id"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANfunction_ItemIEs, criticality),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_Criticality,
+		select_RANfunction_ItemIEs_criticality_type,
+		{ 0, &asn_PER_memb_criticality_constr_59,  memb_criticality_constraint_57 },
+		0, 0, /* No default value */
+		"criticality"
+		},
+	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RANfunction_ItemIEs, value),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_60,
+		select_RANfunction_ItemIEs_value_type,
+		{ 0, &asn_PER_memb_value_constr_60,  memb_value_constraint_57 },
+		0, 0, /* No default value */
+		"value"
+		},
+};
+static const ber_tlv_tag_t asn_DEF_RANfunction_ItemIEs_tags_57[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANfunction_ItemIEs_tag2el_57[] = {
+    { (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 */
+};
+asn_SEQUENCE_specifics_t asn_SPC_RANfunction_ItemIEs_specs_57 = {
+	sizeof(struct RANfunction_ItemIEs),
+	offsetof(struct RANfunction_ItemIEs, _asn_ctx),
+	asn_MAP_RANfunction_ItemIEs_tag2el_57,
+	3,	/* Count of tags in the map */
+	0, 0, 0,	/* Optional elements (not needed) */
+	-1,	/* First extension addition */
+};
+asn_TYPE_descriptor_t asn_DEF_RANfunction_ItemIEs = {
+	"RANfunction-ItemIEs",
+	"RANfunction-ItemIEs",
+	&asn_OP_SEQUENCE,
+	asn_DEF_RANfunction_ItemIEs_tags_57,
+	sizeof(asn_DEF_RANfunction_ItemIEs_tags_57)
+		/sizeof(asn_DEF_RANfunction_ItemIEs_tags_57[0]), /* 1 */
+	asn_DEF_RANfunction_ItemIEs_tags_57,	/* Same as above */
+	sizeof(asn_DEF_RANfunction_ItemIEs_tags_57)
+		/sizeof(asn_DEF_RANfunction_ItemIEs_tags_57[0]), /* 1 */
+	{ 0, 0, SEQUENCE_constraint },
+	asn_MBR_RANfunction_ItemIEs_57,
+	3,	/* Elements count */
+	&asn_SPC_RANfunction_ItemIEs_specs_57	/* Additional specs */
+};
+
+static asn_TYPE_member_t asn_MBR_value_64[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANfunctionID_ItemIEs__value, choice.RANfunctionID_Item),
+		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
+		0,
+		&asn_DEF_RANfunctionID_Item,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"RANfunctionID-Item"
+		},
+};
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_64[] = {
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RANfunctionID-Item */
+};
+static asn_CHOICE_specifics_t asn_SPC_value_specs_64 = {
+	sizeof(struct RANfunctionID_ItemIEs__value),
+	offsetof(struct RANfunctionID_ItemIEs__value, _asn_ctx),
+	offsetof(struct RANfunctionID_ItemIEs__value, present),
+	sizeof(((struct RANfunctionID_ItemIEs__value *)0)->present),
+	asn_MAP_value_tag2el_64,
+	1,	/* Count of tags in the map */
+	0, 0,
+	-1	/* Extensions start */
+};
+static /* Use -fall-defs-global to expose */
+asn_TYPE_descriptor_t asn_DEF_value_64 = {
+	"value",
+	"value",
+	&asn_OP_OPEN_TYPE,
+	0,	/* No effective tags (pointer) */
+	0,	/* No effective tags (count) */
+	0,	/* No tags (pointer) */
+	0,	/* No tags (count) */
+	{ 0, 0, OPEN_TYPE_constraint },
+	asn_MBR_value_64,
+	1,	/* Elements count */
+	&asn_SPC_value_specs_64	/* Additional specs */
+};
+
+asn_TYPE_member_t asn_MBR_RANfunctionID_ItemIEs_61[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANfunctionID_ItemIEs, id),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_ProtocolIE_ID,
+		0,
+		{ 0, &asn_PER_memb_id_constr_62,  memb_id_constraint_61 },
+		0, 0, /* No default value */
+		"id"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANfunctionID_ItemIEs, criticality),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_Criticality,
+		select_RANfunctionID_ItemIEs_criticality_type,
+		{ 0, &asn_PER_memb_criticality_constr_63,  memb_criticality_constraint_61 },
+		0, 0, /* No default value */
+		"criticality"
+		},
+	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RANfunctionID_ItemIEs, value),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_64,
+		select_RANfunctionID_ItemIEs_value_type,
+		{ 0, &asn_PER_memb_value_constr_64,  memb_value_constraint_61 },
+		0, 0, /* No default value */
+		"value"
+		},
+};
+static const ber_tlv_tag_t asn_DEF_RANfunctionID_ItemIEs_tags_61[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANfunctionID_ItemIEs_tag2el_61[] = {
+    { (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 */
+};
+asn_SEQUENCE_specifics_t asn_SPC_RANfunctionID_ItemIEs_specs_61 = {
+	sizeof(struct RANfunctionID_ItemIEs),
+	offsetof(struct RANfunctionID_ItemIEs, _asn_ctx),
+	asn_MAP_RANfunctionID_ItemIEs_tag2el_61,
+	3,	/* Count of tags in the map */
+	0, 0, 0,	/* Optional elements (not needed) */
+	-1,	/* First extension addition */
+};
+asn_TYPE_descriptor_t asn_DEF_RANfunctionID_ItemIEs = {
+	"RANfunctionID-ItemIEs",
+	"RANfunctionID-ItemIEs",
+	&asn_OP_SEQUENCE,
+	asn_DEF_RANfunctionID_ItemIEs_tags_61,
+	sizeof(asn_DEF_RANfunctionID_ItemIEs_tags_61)
+		/sizeof(asn_DEF_RANfunctionID_ItemIEs_tags_61[0]), /* 1 */
+	asn_DEF_RANfunctionID_ItemIEs_tags_61,	/* Same as above */
+	sizeof(asn_DEF_RANfunctionID_ItemIEs_tags_61)
+		/sizeof(asn_DEF_RANfunctionID_ItemIEs_tags_61[0]), /* 1 */
+	{ 0, 0, SEQUENCE_constraint },
+	asn_MBR_RANfunctionID_ItemIEs_61,
+	3,	/* Elements count */
+	&asn_SPC_RANfunctionID_ItemIEs_specs_61	/* Additional specs */
+};
+
+static asn_TYPE_member_t asn_MBR_value_68[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANfunctionIDcause_ItemIEs__value, choice.RANfunctionIDcause_Item),
+		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
+		0,
+		&asn_DEF_RANfunctionIDcause_Item,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"RANfunctionIDcause-Item"
+		},
+};
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_68[] = {
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RANfunctionIDcause-Item */
+};
+static asn_CHOICE_specifics_t asn_SPC_value_specs_68 = {
+	sizeof(struct RANfunctionIDcause_ItemIEs__value),
+	offsetof(struct RANfunctionIDcause_ItemIEs__value, _asn_ctx),
+	offsetof(struct RANfunctionIDcause_ItemIEs__value, present),
+	sizeof(((struct RANfunctionIDcause_ItemIEs__value *)0)->present),
+	asn_MAP_value_tag2el_68,
+	1,	/* Count of tags in the map */
+	0, 0,
+	-1	/* Extensions start */
+};
+static /* Use -fall-defs-global to expose */
+asn_TYPE_descriptor_t asn_DEF_value_68 = {
+	"value",
+	"value",
+	&asn_OP_OPEN_TYPE,
+	0,	/* No effective tags (pointer) */
+	0,	/* No effective tags (count) */
+	0,	/* No tags (pointer) */
+	0,	/* No tags (count) */
+	{ 0, 0, OPEN_TYPE_constraint },
+	asn_MBR_value_68,
+	1,	/* Elements count */
+	&asn_SPC_value_specs_68	/* Additional specs */
+};
+
+asn_TYPE_member_t asn_MBR_RANfunctionIDcause_ItemIEs_65[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RANfunctionIDcause_ItemIEs, id),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_ProtocolIE_ID,
+		0,
+		{ 0, &asn_PER_memb_id_constr_66,  memb_id_constraint_65 },
+		0, 0, /* No default value */
+		"id"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RANfunctionIDcause_ItemIEs, criticality),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_Criticality,
+		select_RANfunctionIDcause_ItemIEs_criticality_type,
+		{ 0, &asn_PER_memb_criticality_constr_67,  memb_criticality_constraint_65 },
+		0, 0, /* No default value */
+		"criticality"
+		},
+	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RANfunctionIDcause_ItemIEs, value),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_68,
+		select_RANfunctionIDcause_ItemIEs_value_type,
+		{ 0, &asn_PER_memb_value_constr_68,  memb_value_constraint_65 },
+		0, 0, /* No default value */
+		"value"
+		},
+};
+static const ber_tlv_tag_t asn_DEF_RANfunctionIDcause_ItemIEs_tags_65[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RANfunctionIDcause_ItemIEs_tag2el_65[] = {
+    { (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 */
+};
+asn_SEQUENCE_specifics_t asn_SPC_RANfunctionIDcause_ItemIEs_specs_65 = {
 	sizeof(struct RANfunctionIDcause_ItemIEs),
 	offsetof(struct RANfunctionIDcause_ItemIEs, _asn_ctx),
-	asn_MAP_RANfunctionIDcause_ItemIEs_tag2el_41,
-	2,	/* Count of tags in the map */
+	asn_MAP_RANfunctionIDcause_ItemIEs_tag2el_65,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
@@ -6816,19 +8584,19 @@
 	"RANfunctionIDcause-ItemIEs",
 	"RANfunctionIDcause-ItemIEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_RANfunctionIDcause_ItemIEs_tags_41,
-	sizeof(asn_DEF_RANfunctionIDcause_ItemIEs_tags_41)
-		/sizeof(asn_DEF_RANfunctionIDcause_ItemIEs_tags_41[0]), /* 1 */
-	asn_DEF_RANfunctionIDcause_ItemIEs_tags_41,	/* Same as above */
-	sizeof(asn_DEF_RANfunctionIDcause_ItemIEs_tags_41)
-		/sizeof(asn_DEF_RANfunctionIDcause_ItemIEs_tags_41[0]), /* 1 */
+	asn_DEF_RANfunctionIDcause_ItemIEs_tags_65,
+	sizeof(asn_DEF_RANfunctionIDcause_ItemIEs_tags_65)
+		/sizeof(asn_DEF_RANfunctionIDcause_ItemIEs_tags_65[0]), /* 1 */
+	asn_DEF_RANfunctionIDcause_ItemIEs_tags_65,	/* Same as above */
+	sizeof(asn_DEF_RANfunctionIDcause_ItemIEs_tags_65)
+		/sizeof(asn_DEF_RANfunctionIDcause_ItemIEs_tags_65[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_RANfunctionIDcause_ItemIEs_41,
+	asn_MBR_RANfunctionIDcause_ItemIEs_65,
 	3,	/* Elements count */
-	&asn_SPC_RANfunctionIDcause_ItemIEs_specs_41	/* Additional specs */
+	&asn_SPC_RANfunctionIDcause_ItemIEs_specs_65	/* Additional specs */
 };
 
-static asn_TYPE_member_t asn_MBR_value_48[] = {
+static asn_TYPE_member_t asn_MBR_value_72[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionRequest_IEs__value, choice.RICrequestID),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -6857,26 +8625,26 @@
 		"RICsubscriptionDetails"
 		},
 };
-static const unsigned asn_MAP_value_to_canonical_48[] = { 1, 0, 2 };
-static const unsigned asn_MAP_value_from_canonical_48[] = { 1, 0, 2 };
-static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_48[] = {
+static const unsigned asn_MAP_value_to_canonical_72[] = { 1, 0, 2 };
+static const unsigned asn_MAP_value_from_canonical_72[] = { 1, 0, 2 };
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_72[] = {
     { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* RANfunctionID */
     { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 1 }, /* RICrequestID */
     { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -1, 0 } /* RICsubscriptionDetails */
 };
-static asn_CHOICE_specifics_t asn_SPC_value_specs_48 = {
+static asn_CHOICE_specifics_t asn_SPC_value_specs_72 = {
 	sizeof(struct RICsubscriptionRequest_IEs__value),
 	offsetof(struct RICsubscriptionRequest_IEs__value, _asn_ctx),
 	offsetof(struct RICsubscriptionRequest_IEs__value, present),
 	sizeof(((struct RICsubscriptionRequest_IEs__value *)0)->present),
-	asn_MAP_value_tag2el_48,
+	asn_MAP_value_tag2el_72,
 	3,	/* Count of tags in the map */
-	asn_MAP_value_to_canonical_48,
-	asn_MAP_value_from_canonical_48,
+	asn_MAP_value_to_canonical_72,
+	asn_MAP_value_from_canonical_72,
 	-1	/* Extensions start */
 };
 static /* Use -fall-defs-global to expose */
-asn_TYPE_descriptor_t asn_DEF_value_48 = {
+asn_TYPE_descriptor_t asn_DEF_value_72 = {
 	"value",
 	"value",
 	&asn_OP_OPEN_TYPE,
@@ -6885,52 +8653,53 @@
 	0,	/* No tags (pointer) */
 	0,	/* No tags (count) */
 	{ 0, 0, OPEN_TYPE_constraint },
-	asn_MBR_value_48,
+	asn_MBR_value_72,
 	3,	/* Elements count */
-	&asn_SPC_value_specs_48	/* Additional specs */
+	&asn_SPC_value_specs_72	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_RICsubscriptionRequest_IEs_45[] = {
+asn_TYPE_member_t asn_MBR_RICsubscriptionRequest_IEs_69[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionRequest_IEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
-		{ 0, &asn_PER_memb_id_constr_46,  memb_id_constraint_45 },
+		{ 0, &asn_PER_memb_id_constr_70,  memb_id_constraint_69 },
 		0, 0, /* No default value */
 		"id"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionRequest_IEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
 		select_RICsubscriptionRequest_IEs_criticality_type,
-		{ 0, &asn_PER_memb_criticality_constr_47,  memb_criticality_constraint_45 },
+		{ 0, &asn_PER_memb_criticality_constr_71,  memb_criticality_constraint_69 },
 		0, 0, /* No default value */
 		"criticality"
 		},
 	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionRequest_IEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
-		&asn_DEF_value_48,
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_72,
 		select_RICsubscriptionRequest_IEs_value_type,
-		{ 0, &asn_PER_memb_value_constr_48,  memb_value_constraint_45 },
+		{ 0, &asn_PER_memb_value_constr_72,  memb_value_constraint_69 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_RICsubscriptionRequest_IEs_tags_45[] = {
+static const ber_tlv_tag_t asn_DEF_RICsubscriptionRequest_IEs_tags_69[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_RICsubscriptionRequest_IEs_tag2el_45[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_RICsubscriptionRequest_IEs_tag2el_69[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionRequest_IEs_specs_45 = {
+asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionRequest_IEs_specs_69 = {
 	sizeof(struct RICsubscriptionRequest_IEs),
 	offsetof(struct RICsubscriptionRequest_IEs, _asn_ctx),
-	asn_MAP_RICsubscriptionRequest_IEs_tag2el_45,
-	2,	/* Count of tags in the map */
+	asn_MAP_RICsubscriptionRequest_IEs_tag2el_69,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
@@ -6938,19 +8707,19 @@
 	"RICsubscriptionRequest-IEs",
 	"RICsubscriptionRequest-IEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_RICsubscriptionRequest_IEs_tags_45,
-	sizeof(asn_DEF_RICsubscriptionRequest_IEs_tags_45)
-		/sizeof(asn_DEF_RICsubscriptionRequest_IEs_tags_45[0]), /* 1 */
-	asn_DEF_RICsubscriptionRequest_IEs_tags_45,	/* Same as above */
-	sizeof(asn_DEF_RICsubscriptionRequest_IEs_tags_45)
-		/sizeof(asn_DEF_RICsubscriptionRequest_IEs_tags_45[0]), /* 1 */
+	asn_DEF_RICsubscriptionRequest_IEs_tags_69,
+	sizeof(asn_DEF_RICsubscriptionRequest_IEs_tags_69)
+		/sizeof(asn_DEF_RICsubscriptionRequest_IEs_tags_69[0]), /* 1 */
+	asn_DEF_RICsubscriptionRequest_IEs_tags_69,	/* Same as above */
+	sizeof(asn_DEF_RICsubscriptionRequest_IEs_tags_69)
+		/sizeof(asn_DEF_RICsubscriptionRequest_IEs_tags_69[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_RICsubscriptionRequest_IEs_45,
+	asn_MBR_RICsubscriptionRequest_IEs_69,
 	3,	/* Elements count */
-	&asn_SPC_RICsubscriptionRequest_IEs_specs_45	/* Additional specs */
+	&asn_SPC_RICsubscriptionRequest_IEs_specs_69	/* Additional specs */
 };
 
-static asn_TYPE_member_t asn_MBR_value_52[] = {
+static asn_TYPE_member_t asn_MBR_value_76[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionResponse_IEs__value, choice.RICrequestID),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -6988,27 +8757,27 @@
 		"RICaction-NotAdmitted-List"
 		},
 };
-static const unsigned asn_MAP_value_to_canonical_52[] = { 1, 0, 2, 3 };
-static const unsigned asn_MAP_value_from_canonical_52[] = { 1, 0, 2, 3 };
-static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_52[] = {
+static const unsigned asn_MAP_value_to_canonical_76[] = { 1, 0, 2, 3 };
+static const unsigned asn_MAP_value_from_canonical_76[] = { 1, 0, 2, 3 };
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_76[] = {
     { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* RANfunctionID */
     { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 2 }, /* RICrequestID */
     { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -1, 1 }, /* RICaction-Admitted-List */
     { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -2, 0 } /* RICaction-NotAdmitted-List */
 };
-static asn_CHOICE_specifics_t asn_SPC_value_specs_52 = {
+static asn_CHOICE_specifics_t asn_SPC_value_specs_76 = {
 	sizeof(struct RICsubscriptionResponse_IEs__value),
 	offsetof(struct RICsubscriptionResponse_IEs__value, _asn_ctx),
 	offsetof(struct RICsubscriptionResponse_IEs__value, present),
 	sizeof(((struct RICsubscriptionResponse_IEs__value *)0)->present),
-	asn_MAP_value_tag2el_52,
+	asn_MAP_value_tag2el_76,
 	4,	/* Count of tags in the map */
-	asn_MAP_value_to_canonical_52,
-	asn_MAP_value_from_canonical_52,
+	asn_MAP_value_to_canonical_76,
+	asn_MAP_value_from_canonical_76,
 	-1	/* Extensions start */
 };
 static /* Use -fall-defs-global to expose */
-asn_TYPE_descriptor_t asn_DEF_value_52 = {
+asn_TYPE_descriptor_t asn_DEF_value_76 = {
 	"value",
 	"value",
 	&asn_OP_OPEN_TYPE,
@@ -7017,52 +8786,53 @@
 	0,	/* No tags (pointer) */
 	0,	/* No tags (count) */
 	{ 0, 0, OPEN_TYPE_constraint },
-	asn_MBR_value_52,
+	asn_MBR_value_76,
 	4,	/* Elements count */
-	&asn_SPC_value_specs_52	/* Additional specs */
+	&asn_SPC_value_specs_76	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_RICsubscriptionResponse_IEs_49[] = {
+asn_TYPE_member_t asn_MBR_RICsubscriptionResponse_IEs_73[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionResponse_IEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
-		{ 0, &asn_PER_memb_id_constr_50,  memb_id_constraint_49 },
+		{ 0, &asn_PER_memb_id_constr_74,  memb_id_constraint_73 },
 		0, 0, /* No default value */
 		"id"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionResponse_IEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
 		select_RICsubscriptionResponse_IEs_criticality_type,
-		{ 0, &asn_PER_memb_criticality_constr_51,  memb_criticality_constraint_49 },
+		{ 0, &asn_PER_memb_criticality_constr_75,  memb_criticality_constraint_73 },
 		0, 0, /* No default value */
 		"criticality"
 		},
 	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionResponse_IEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
-		&asn_DEF_value_52,
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_76,
 		select_RICsubscriptionResponse_IEs_value_type,
-		{ 0, &asn_PER_memb_value_constr_52,  memb_value_constraint_49 },
+		{ 0, &asn_PER_memb_value_constr_76,  memb_value_constraint_73 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_RICsubscriptionResponse_IEs_tags_49[] = {
+static const ber_tlv_tag_t asn_DEF_RICsubscriptionResponse_IEs_tags_73[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_RICsubscriptionResponse_IEs_tag2el_49[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_RICsubscriptionResponse_IEs_tag2el_73[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionResponse_IEs_specs_49 = {
+asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionResponse_IEs_specs_73 = {
 	sizeof(struct RICsubscriptionResponse_IEs),
 	offsetof(struct RICsubscriptionResponse_IEs, _asn_ctx),
-	asn_MAP_RICsubscriptionResponse_IEs_tag2el_49,
-	2,	/* Count of tags in the map */
+	asn_MAP_RICsubscriptionResponse_IEs_tag2el_73,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
@@ -7070,19 +8840,19 @@
 	"RICsubscriptionResponse-IEs",
 	"RICsubscriptionResponse-IEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_RICsubscriptionResponse_IEs_tags_49,
-	sizeof(asn_DEF_RICsubscriptionResponse_IEs_tags_49)
-		/sizeof(asn_DEF_RICsubscriptionResponse_IEs_tags_49[0]), /* 1 */
-	asn_DEF_RICsubscriptionResponse_IEs_tags_49,	/* Same as above */
-	sizeof(asn_DEF_RICsubscriptionResponse_IEs_tags_49)
-		/sizeof(asn_DEF_RICsubscriptionResponse_IEs_tags_49[0]), /* 1 */
+	asn_DEF_RICsubscriptionResponse_IEs_tags_73,
+	sizeof(asn_DEF_RICsubscriptionResponse_IEs_tags_73)
+		/sizeof(asn_DEF_RICsubscriptionResponse_IEs_tags_73[0]), /* 1 */
+	asn_DEF_RICsubscriptionResponse_IEs_tags_73,	/* Same as above */
+	sizeof(asn_DEF_RICsubscriptionResponse_IEs_tags_73)
+		/sizeof(asn_DEF_RICsubscriptionResponse_IEs_tags_73[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_RICsubscriptionResponse_IEs_49,
+	asn_MBR_RICsubscriptionResponse_IEs_73,
 	3,	/* Elements count */
-	&asn_SPC_RICsubscriptionResponse_IEs_specs_49	/* Additional specs */
+	&asn_SPC_RICsubscriptionResponse_IEs_specs_73	/* Additional specs */
 };
 
-static asn_TYPE_member_t asn_MBR_value_56[] = {
+static asn_TYPE_member_t asn_MBR_value_80[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionFailure_IEs__value, choice.RICrequestID),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -7101,14 +8871,14 @@
 		0, 0, /* No default value */
 		"RANfunctionID"
 		},
-	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionFailure_IEs__value, choice.RICaction_NotAdmitted_List),
-		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
+	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionFailure_IEs__value, choice.Cause),
+		-1 /* Ambiguous tag (CHOICE?) */,
 		0,
-		&asn_DEF_RICaction_NotAdmitted_List,
+		&asn_DEF_Cause,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
-		"RICaction-NotAdmitted-List"
+		"Cause"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionFailure_IEs__value, choice.CriticalityDiagnostics),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
@@ -7120,27 +8890,32 @@
 		"CriticalityDiagnostics"
 		},
 };
-static const unsigned asn_MAP_value_to_canonical_56[] = { 1, 0, 2, 3 };
-static const unsigned asn_MAP_value_from_canonical_56[] = { 1, 0, 2, 3 };
-static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_56[] = {
+static const unsigned asn_MAP_value_to_canonical_80[] = { 1, 0, 3, 2 };
+static const unsigned asn_MAP_value_from_canonical_80[] = { 1, 0, 3, 2 };
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_80[] = {
     { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* RANfunctionID */
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 2 }, /* RICrequestID */
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -1, 1 }, /* RICaction-NotAdmitted-List */
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -2, 0 } /* CriticalityDiagnostics */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 1 }, /* RICrequestID */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -1, 0 }, /* CriticalityDiagnostics */
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 2, 0, 0 }, /* ricRequest */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 2, 0, 0 }, /* ricService */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* e2Node */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 2, 0, 0 }, /* transport */
+    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 2, 0, 0 }, /* protocol */
+    { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 2, 0, 0 } /* misc */
 };
-static asn_CHOICE_specifics_t asn_SPC_value_specs_56 = {
+static asn_CHOICE_specifics_t asn_SPC_value_specs_80 = {
 	sizeof(struct RICsubscriptionFailure_IEs__value),
 	offsetof(struct RICsubscriptionFailure_IEs__value, _asn_ctx),
 	offsetof(struct RICsubscriptionFailure_IEs__value, present),
 	sizeof(((struct RICsubscriptionFailure_IEs__value *)0)->present),
-	asn_MAP_value_tag2el_56,
-	4,	/* Count of tags in the map */
-	asn_MAP_value_to_canonical_56,
-	asn_MAP_value_from_canonical_56,
+	asn_MAP_value_tag2el_80,
+	9,	/* Count of tags in the map */
+	asn_MAP_value_to_canonical_80,
+	asn_MAP_value_from_canonical_80,
 	-1	/* Extensions start */
 };
 static /* Use -fall-defs-global to expose */
-asn_TYPE_descriptor_t asn_DEF_value_56 = {
+asn_TYPE_descriptor_t asn_DEF_value_80 = {
 	"value",
 	"value",
 	&asn_OP_OPEN_TYPE,
@@ -7149,52 +8924,53 @@
 	0,	/* No tags (pointer) */
 	0,	/* No tags (count) */
 	{ 0, 0, OPEN_TYPE_constraint },
-	asn_MBR_value_56,
+	asn_MBR_value_80,
 	4,	/* Elements count */
-	&asn_SPC_value_specs_56	/* Additional specs */
+	&asn_SPC_value_specs_80	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_RICsubscriptionFailure_IEs_53[] = {
+asn_TYPE_member_t asn_MBR_RICsubscriptionFailure_IEs_77[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionFailure_IEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
-		{ 0, &asn_PER_memb_id_constr_54,  memb_id_constraint_53 },
+		{ 0, &asn_PER_memb_id_constr_78,  memb_id_constraint_77 },
 		0, 0, /* No default value */
 		"id"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionFailure_IEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
 		select_RICsubscriptionFailure_IEs_criticality_type,
-		{ 0, &asn_PER_memb_criticality_constr_55,  memb_criticality_constraint_53 },
+		{ 0, &asn_PER_memb_criticality_constr_79,  memb_criticality_constraint_77 },
 		0, 0, /* No default value */
 		"criticality"
 		},
 	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionFailure_IEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
-		&asn_DEF_value_56,
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_80,
 		select_RICsubscriptionFailure_IEs_value_type,
-		{ 0, &asn_PER_memb_value_constr_56,  memb_value_constraint_53 },
+		{ 0, &asn_PER_memb_value_constr_80,  memb_value_constraint_77 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_RICsubscriptionFailure_IEs_tags_53[] = {
+static const ber_tlv_tag_t asn_DEF_RICsubscriptionFailure_IEs_tags_77[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_RICsubscriptionFailure_IEs_tag2el_53[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_RICsubscriptionFailure_IEs_tag2el_77[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionFailure_IEs_specs_53 = {
+asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionFailure_IEs_specs_77 = {
 	sizeof(struct RICsubscriptionFailure_IEs),
 	offsetof(struct RICsubscriptionFailure_IEs, _asn_ctx),
-	asn_MAP_RICsubscriptionFailure_IEs_tag2el_53,
-	2,	/* Count of tags in the map */
+	asn_MAP_RICsubscriptionFailure_IEs_tag2el_77,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
@@ -7202,19 +8978,19 @@
 	"RICsubscriptionFailure-IEs",
 	"RICsubscriptionFailure-IEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_RICsubscriptionFailure_IEs_tags_53,
-	sizeof(asn_DEF_RICsubscriptionFailure_IEs_tags_53)
-		/sizeof(asn_DEF_RICsubscriptionFailure_IEs_tags_53[0]), /* 1 */
-	asn_DEF_RICsubscriptionFailure_IEs_tags_53,	/* Same as above */
-	sizeof(asn_DEF_RICsubscriptionFailure_IEs_tags_53)
-		/sizeof(asn_DEF_RICsubscriptionFailure_IEs_tags_53[0]), /* 1 */
+	asn_DEF_RICsubscriptionFailure_IEs_tags_77,
+	sizeof(asn_DEF_RICsubscriptionFailure_IEs_tags_77)
+		/sizeof(asn_DEF_RICsubscriptionFailure_IEs_tags_77[0]), /* 1 */
+	asn_DEF_RICsubscriptionFailure_IEs_tags_77,	/* Same as above */
+	sizeof(asn_DEF_RICsubscriptionFailure_IEs_tags_77)
+		/sizeof(asn_DEF_RICsubscriptionFailure_IEs_tags_77[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_RICsubscriptionFailure_IEs_53,
+	asn_MBR_RICsubscriptionFailure_IEs_77,
 	3,	/* Elements count */
-	&asn_SPC_RICsubscriptionFailure_IEs_specs_53	/* Additional specs */
+	&asn_SPC_RICsubscriptionFailure_IEs_specs_77	/* Additional specs */
 };
 
-static asn_TYPE_member_t asn_MBR_value_60[] = {
+static asn_TYPE_member_t asn_MBR_value_84[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteRequest_IEs__value, choice.RICrequestID),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -7234,25 +9010,25 @@
 		"RANfunctionID"
 		},
 };
-static const unsigned asn_MAP_value_to_canonical_60[] = { 1, 0 };
-static const unsigned asn_MAP_value_from_canonical_60[] = { 1, 0 };
-static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_60[] = {
+static const unsigned asn_MAP_value_to_canonical_84[] = { 1, 0 };
+static const unsigned asn_MAP_value_from_canonical_84[] = { 1, 0 };
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_84[] = {
     { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* RANfunctionID */
     { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RICrequestID */
 };
-static asn_CHOICE_specifics_t asn_SPC_value_specs_60 = {
+static asn_CHOICE_specifics_t asn_SPC_value_specs_84 = {
 	sizeof(struct RICsubscriptionDeleteRequest_IEs__value),
 	offsetof(struct RICsubscriptionDeleteRequest_IEs__value, _asn_ctx),
 	offsetof(struct RICsubscriptionDeleteRequest_IEs__value, present),
 	sizeof(((struct RICsubscriptionDeleteRequest_IEs__value *)0)->present),
-	asn_MAP_value_tag2el_60,
+	asn_MAP_value_tag2el_84,
 	2,	/* Count of tags in the map */
-	asn_MAP_value_to_canonical_60,
-	asn_MAP_value_from_canonical_60,
+	asn_MAP_value_to_canonical_84,
+	asn_MAP_value_from_canonical_84,
 	-1	/* Extensions start */
 };
 static /* Use -fall-defs-global to expose */
-asn_TYPE_descriptor_t asn_DEF_value_60 = {
+asn_TYPE_descriptor_t asn_DEF_value_84 = {
 	"value",
 	"value",
 	&asn_OP_OPEN_TYPE,
@@ -7261,52 +9037,53 @@
 	0,	/* No tags (pointer) */
 	0,	/* No tags (count) */
 	{ 0, 0, OPEN_TYPE_constraint },
-	asn_MBR_value_60,
+	asn_MBR_value_84,
 	2,	/* Elements count */
-	&asn_SPC_value_specs_60	/* Additional specs */
+	&asn_SPC_value_specs_84	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteRequest_IEs_57[] = {
+asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteRequest_IEs_81[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteRequest_IEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
-		{ 0, &asn_PER_memb_id_constr_58,  memb_id_constraint_57 },
+		{ 0, &asn_PER_memb_id_constr_82,  memb_id_constraint_81 },
 		0, 0, /* No default value */
 		"id"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteRequest_IEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
 		select_RICsubscriptionDeleteRequest_IEs_criticality_type,
-		{ 0, &asn_PER_memb_criticality_constr_59,  memb_criticality_constraint_57 },
+		{ 0, &asn_PER_memb_criticality_constr_83,  memb_criticality_constraint_81 },
 		0, 0, /* No default value */
 		"criticality"
 		},
 	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteRequest_IEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
-		&asn_DEF_value_60,
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_84,
 		select_RICsubscriptionDeleteRequest_IEs_value_type,
-		{ 0, &asn_PER_memb_value_constr_60,  memb_value_constraint_57 },
+		{ 0, &asn_PER_memb_value_constr_84,  memb_value_constraint_81 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_RICsubscriptionDeleteRequest_IEs_tags_57[] = {
+static const ber_tlv_tag_t asn_DEF_RICsubscriptionDeleteRequest_IEs_tags_81[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_RICsubscriptionDeleteRequest_IEs_tag2el_57[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_RICsubscriptionDeleteRequest_IEs_tag2el_81[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteRequest_IEs_specs_57 = {
+asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteRequest_IEs_specs_81 = {
 	sizeof(struct RICsubscriptionDeleteRequest_IEs),
 	offsetof(struct RICsubscriptionDeleteRequest_IEs, _asn_ctx),
-	asn_MAP_RICsubscriptionDeleteRequest_IEs_tag2el_57,
-	2,	/* Count of tags in the map */
+	asn_MAP_RICsubscriptionDeleteRequest_IEs_tag2el_81,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
@@ -7314,19 +9091,19 @@
 	"RICsubscriptionDeleteRequest-IEs",
 	"RICsubscriptionDeleteRequest-IEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_RICsubscriptionDeleteRequest_IEs_tags_57,
-	sizeof(asn_DEF_RICsubscriptionDeleteRequest_IEs_tags_57)
-		/sizeof(asn_DEF_RICsubscriptionDeleteRequest_IEs_tags_57[0]), /* 1 */
-	asn_DEF_RICsubscriptionDeleteRequest_IEs_tags_57,	/* Same as above */
-	sizeof(asn_DEF_RICsubscriptionDeleteRequest_IEs_tags_57)
-		/sizeof(asn_DEF_RICsubscriptionDeleteRequest_IEs_tags_57[0]), /* 1 */
+	asn_DEF_RICsubscriptionDeleteRequest_IEs_tags_81,
+	sizeof(asn_DEF_RICsubscriptionDeleteRequest_IEs_tags_81)
+		/sizeof(asn_DEF_RICsubscriptionDeleteRequest_IEs_tags_81[0]), /* 1 */
+	asn_DEF_RICsubscriptionDeleteRequest_IEs_tags_81,	/* Same as above */
+	sizeof(asn_DEF_RICsubscriptionDeleteRequest_IEs_tags_81)
+		/sizeof(asn_DEF_RICsubscriptionDeleteRequest_IEs_tags_81[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_RICsubscriptionDeleteRequest_IEs_57,
+	asn_MBR_RICsubscriptionDeleteRequest_IEs_81,
 	3,	/* Elements count */
-	&asn_SPC_RICsubscriptionDeleteRequest_IEs_specs_57	/* Additional specs */
+	&asn_SPC_RICsubscriptionDeleteRequest_IEs_specs_81	/* Additional specs */
 };
 
-static asn_TYPE_member_t asn_MBR_value_64[] = {
+static asn_TYPE_member_t asn_MBR_value_88[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteResponse_IEs__value, choice.RICrequestID),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -7346,25 +9123,25 @@
 		"RANfunctionID"
 		},
 };
-static const unsigned asn_MAP_value_to_canonical_64[] = { 1, 0 };
-static const unsigned asn_MAP_value_from_canonical_64[] = { 1, 0 };
-static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_64[] = {
+static const unsigned asn_MAP_value_to_canonical_88[] = { 1, 0 };
+static const unsigned asn_MAP_value_from_canonical_88[] = { 1, 0 };
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_88[] = {
     { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* RANfunctionID */
     { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RICrequestID */
 };
-static asn_CHOICE_specifics_t asn_SPC_value_specs_64 = {
+static asn_CHOICE_specifics_t asn_SPC_value_specs_88 = {
 	sizeof(struct RICsubscriptionDeleteResponse_IEs__value),
 	offsetof(struct RICsubscriptionDeleteResponse_IEs__value, _asn_ctx),
 	offsetof(struct RICsubscriptionDeleteResponse_IEs__value, present),
 	sizeof(((struct RICsubscriptionDeleteResponse_IEs__value *)0)->present),
-	asn_MAP_value_tag2el_64,
+	asn_MAP_value_tag2el_88,
 	2,	/* Count of tags in the map */
-	asn_MAP_value_to_canonical_64,
-	asn_MAP_value_from_canonical_64,
+	asn_MAP_value_to_canonical_88,
+	asn_MAP_value_from_canonical_88,
 	-1	/* Extensions start */
 };
 static /* Use -fall-defs-global to expose */
-asn_TYPE_descriptor_t asn_DEF_value_64 = {
+asn_TYPE_descriptor_t asn_DEF_value_88 = {
 	"value",
 	"value",
 	&asn_OP_OPEN_TYPE,
@@ -7373,52 +9150,53 @@
 	0,	/* No tags (pointer) */
 	0,	/* No tags (count) */
 	{ 0, 0, OPEN_TYPE_constraint },
-	asn_MBR_value_64,
+	asn_MBR_value_88,
 	2,	/* Elements count */
-	&asn_SPC_value_specs_64	/* Additional specs */
+	&asn_SPC_value_specs_88	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteResponse_IEs_61[] = {
+asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteResponse_IEs_85[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteResponse_IEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
-		{ 0, &asn_PER_memb_id_constr_62,  memb_id_constraint_61 },
+		{ 0, &asn_PER_memb_id_constr_86,  memb_id_constraint_85 },
 		0, 0, /* No default value */
 		"id"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteResponse_IEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
 		select_RICsubscriptionDeleteResponse_IEs_criticality_type,
-		{ 0, &asn_PER_memb_criticality_constr_63,  memb_criticality_constraint_61 },
+		{ 0, &asn_PER_memb_criticality_constr_87,  memb_criticality_constraint_85 },
 		0, 0, /* No default value */
 		"criticality"
 		},
 	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteResponse_IEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
-		&asn_DEF_value_64,
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_88,
 		select_RICsubscriptionDeleteResponse_IEs_value_type,
-		{ 0, &asn_PER_memb_value_constr_64,  memb_value_constraint_61 },
+		{ 0, &asn_PER_memb_value_constr_88,  memb_value_constraint_85 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_RICsubscriptionDeleteResponse_IEs_tags_61[] = {
+static const ber_tlv_tag_t asn_DEF_RICsubscriptionDeleteResponse_IEs_tags_85[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_RICsubscriptionDeleteResponse_IEs_tag2el_61[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_RICsubscriptionDeleteResponse_IEs_tag2el_85[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteResponse_IEs_specs_61 = {
+asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteResponse_IEs_specs_85 = {
 	sizeof(struct RICsubscriptionDeleteResponse_IEs),
 	offsetof(struct RICsubscriptionDeleteResponse_IEs, _asn_ctx),
-	asn_MAP_RICsubscriptionDeleteResponse_IEs_tag2el_61,
-	2,	/* Count of tags in the map */
+	asn_MAP_RICsubscriptionDeleteResponse_IEs_tag2el_85,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
@@ -7426,19 +9204,19 @@
 	"RICsubscriptionDeleteResponse-IEs",
 	"RICsubscriptionDeleteResponse-IEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_RICsubscriptionDeleteResponse_IEs_tags_61,
-	sizeof(asn_DEF_RICsubscriptionDeleteResponse_IEs_tags_61)
-		/sizeof(asn_DEF_RICsubscriptionDeleteResponse_IEs_tags_61[0]), /* 1 */
-	asn_DEF_RICsubscriptionDeleteResponse_IEs_tags_61,	/* Same as above */
-	sizeof(asn_DEF_RICsubscriptionDeleteResponse_IEs_tags_61)
-		/sizeof(asn_DEF_RICsubscriptionDeleteResponse_IEs_tags_61[0]), /* 1 */
+	asn_DEF_RICsubscriptionDeleteResponse_IEs_tags_85,
+	sizeof(asn_DEF_RICsubscriptionDeleteResponse_IEs_tags_85)
+		/sizeof(asn_DEF_RICsubscriptionDeleteResponse_IEs_tags_85[0]), /* 1 */
+	asn_DEF_RICsubscriptionDeleteResponse_IEs_tags_85,	/* Same as above */
+	sizeof(asn_DEF_RICsubscriptionDeleteResponse_IEs_tags_85)
+		/sizeof(asn_DEF_RICsubscriptionDeleteResponse_IEs_tags_85[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_RICsubscriptionDeleteResponse_IEs_61,
+	asn_MBR_RICsubscriptionDeleteResponse_IEs_85,
 	3,	/* Elements count */
-	&asn_SPC_RICsubscriptionDeleteResponse_IEs_specs_61	/* Additional specs */
+	&asn_SPC_RICsubscriptionDeleteResponse_IEs_specs_85	/* Additional specs */
 };
 
-static asn_TYPE_member_t asn_MBR_value_68[] = {
+static asn_TYPE_member_t asn_MBR_value_92[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteFailure_IEs__value, choice.RICrequestID),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -7476,31 +9254,32 @@
 		"CriticalityDiagnostics"
 		},
 };
-static const unsigned asn_MAP_value_to_canonical_68[] = { 1, 0, 3, 2 };
-static const unsigned asn_MAP_value_from_canonical_68[] = { 1, 0, 3, 2 };
-static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_68[] = {
+static const unsigned asn_MAP_value_to_canonical_92[] = { 1, 0, 3, 2 };
+static const unsigned asn_MAP_value_from_canonical_92[] = { 1, 0, 3, 2 };
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_92[] = {
     { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* RANfunctionID */
     { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 1 }, /* RICrequestID */
     { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -1, 0 }, /* CriticalityDiagnostics */
     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 2, 0, 0 }, /* ricRequest */
     { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 2, 0, 0 }, /* ricService */
-    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* transport */
-    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 2, 0, 0 }, /* protocol */
-    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 2, 0, 0 } /* misc */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* e2Node */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 2, 0, 0 }, /* transport */
+    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 2, 0, 0 }, /* protocol */
+    { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 2, 0, 0 } /* misc */
 };
-static asn_CHOICE_specifics_t asn_SPC_value_specs_68 = {
+static asn_CHOICE_specifics_t asn_SPC_value_specs_92 = {
 	sizeof(struct RICsubscriptionDeleteFailure_IEs__value),
 	offsetof(struct RICsubscriptionDeleteFailure_IEs__value, _asn_ctx),
 	offsetof(struct RICsubscriptionDeleteFailure_IEs__value, present),
 	sizeof(((struct RICsubscriptionDeleteFailure_IEs__value *)0)->present),
-	asn_MAP_value_tag2el_68,
-	8,	/* Count of tags in the map */
-	asn_MAP_value_to_canonical_68,
-	asn_MAP_value_from_canonical_68,
+	asn_MAP_value_tag2el_92,
+	9,	/* Count of tags in the map */
+	asn_MAP_value_to_canonical_92,
+	asn_MAP_value_from_canonical_92,
 	-1	/* Extensions start */
 };
 static /* Use -fall-defs-global to expose */
-asn_TYPE_descriptor_t asn_DEF_value_68 = {
+asn_TYPE_descriptor_t asn_DEF_value_92 = {
 	"value",
 	"value",
 	&asn_OP_OPEN_TYPE,
@@ -7509,52 +9288,53 @@
 	0,	/* No tags (pointer) */
 	0,	/* No tags (count) */
 	{ 0, 0, OPEN_TYPE_constraint },
-	asn_MBR_value_68,
+	asn_MBR_value_92,
 	4,	/* Elements count */
-	&asn_SPC_value_specs_68	/* Additional specs */
+	&asn_SPC_value_specs_92	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteFailure_IEs_65[] = {
+asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteFailure_IEs_89[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteFailure_IEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
-		{ 0, &asn_PER_memb_id_constr_66,  memb_id_constraint_65 },
+		{ 0, &asn_PER_memb_id_constr_90,  memb_id_constraint_89 },
 		0, 0, /* No default value */
 		"id"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteFailure_IEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
 		select_RICsubscriptionDeleteFailure_IEs_criticality_type,
-		{ 0, &asn_PER_memb_criticality_constr_67,  memb_criticality_constraint_65 },
+		{ 0, &asn_PER_memb_criticality_constr_91,  memb_criticality_constraint_89 },
 		0, 0, /* No default value */
 		"criticality"
 		},
 	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteFailure_IEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
-		&asn_DEF_value_68,
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_92,
 		select_RICsubscriptionDeleteFailure_IEs_value_type,
-		{ 0, &asn_PER_memb_value_constr_68,  memb_value_constraint_65 },
+		{ 0, &asn_PER_memb_value_constr_92,  memb_value_constraint_89 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_RICsubscriptionDeleteFailure_IEs_tags_65[] = {
+static const ber_tlv_tag_t asn_DEF_RICsubscriptionDeleteFailure_IEs_tags_89[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_RICsubscriptionDeleteFailure_IEs_tag2el_65[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_RICsubscriptionDeleteFailure_IEs_tag2el_89[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteFailure_IEs_specs_65 = {
+asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteFailure_IEs_specs_89 = {
 	sizeof(struct RICsubscriptionDeleteFailure_IEs),
 	offsetof(struct RICsubscriptionDeleteFailure_IEs, _asn_ctx),
-	asn_MAP_RICsubscriptionDeleteFailure_IEs_tag2el_65,
-	2,	/* Count of tags in the map */
+	asn_MAP_RICsubscriptionDeleteFailure_IEs_tag2el_89,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
@@ -7562,19 +9342,119 @@
 	"RICsubscriptionDeleteFailure-IEs",
 	"RICsubscriptionDeleteFailure-IEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_RICsubscriptionDeleteFailure_IEs_tags_65,
-	sizeof(asn_DEF_RICsubscriptionDeleteFailure_IEs_tags_65)
-		/sizeof(asn_DEF_RICsubscriptionDeleteFailure_IEs_tags_65[0]), /* 1 */
-	asn_DEF_RICsubscriptionDeleteFailure_IEs_tags_65,	/* Same as above */
-	sizeof(asn_DEF_RICsubscriptionDeleteFailure_IEs_tags_65)
-		/sizeof(asn_DEF_RICsubscriptionDeleteFailure_IEs_tags_65[0]), /* 1 */
+	asn_DEF_RICsubscriptionDeleteFailure_IEs_tags_89,
+	sizeof(asn_DEF_RICsubscriptionDeleteFailure_IEs_tags_89)
+		/sizeof(asn_DEF_RICsubscriptionDeleteFailure_IEs_tags_89[0]), /* 1 */
+	asn_DEF_RICsubscriptionDeleteFailure_IEs_tags_89,	/* Same as above */
+	sizeof(asn_DEF_RICsubscriptionDeleteFailure_IEs_tags_89)
+		/sizeof(asn_DEF_RICsubscriptionDeleteFailure_IEs_tags_89[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_RICsubscriptionDeleteFailure_IEs_65,
+	asn_MBR_RICsubscriptionDeleteFailure_IEs_89,
 	3,	/* Elements count */
-	&asn_SPC_RICsubscriptionDeleteFailure_IEs_specs_65	/* Additional specs */
+	&asn_SPC_RICsubscriptionDeleteFailure_IEs_specs_89	/* Additional specs */
 };
 
-static asn_TYPE_member_t asn_MBR_value_72[] = {
+static asn_TYPE_member_t asn_MBR_value_96[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteRequired_IEs__value, choice.RICsubscription_List_withCause),
+		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
+		0,
+		&asn_DEF_RICsubscription_List_withCause,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"RICsubscription-List-withCause"
+		},
+};
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_96[] = {
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RICsubscription-List-withCause */
+};
+static asn_CHOICE_specifics_t asn_SPC_value_specs_96 = {
+	sizeof(struct RICsubscriptionDeleteRequired_IEs__value),
+	offsetof(struct RICsubscriptionDeleteRequired_IEs__value, _asn_ctx),
+	offsetof(struct RICsubscriptionDeleteRequired_IEs__value, present),
+	sizeof(((struct RICsubscriptionDeleteRequired_IEs__value *)0)->present),
+	asn_MAP_value_tag2el_96,
+	1,	/* Count of tags in the map */
+	0, 0,
+	-1	/* Extensions start */
+};
+static /* Use -fall-defs-global to expose */
+asn_TYPE_descriptor_t asn_DEF_value_96 = {
+	"value",
+	"value",
+	&asn_OP_OPEN_TYPE,
+	0,	/* No effective tags (pointer) */
+	0,	/* No effective tags (count) */
+	0,	/* No tags (pointer) */
+	0,	/* No tags (count) */
+	{ 0, 0, OPEN_TYPE_constraint },
+	asn_MBR_value_96,
+	1,	/* Elements count */
+	&asn_SPC_value_specs_96	/* Additional specs */
+};
+
+asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteRequired_IEs_93[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteRequired_IEs, id),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_ProtocolIE_ID,
+		0,
+		{ 0, &asn_PER_memb_id_constr_94,  memb_id_constraint_93 },
+		0, 0, /* No default value */
+		"id"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteRequired_IEs, criticality),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_Criticality,
+		select_RICsubscriptionDeleteRequired_IEs_criticality_type,
+		{ 0, &asn_PER_memb_criticality_constr_95,  memb_criticality_constraint_93 },
+		0, 0, /* No default value */
+		"criticality"
+		},
+	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteRequired_IEs, value),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_96,
+		select_RICsubscriptionDeleteRequired_IEs_value_type,
+		{ 0, &asn_PER_memb_value_constr_96,  memb_value_constraint_93 },
+		0, 0, /* No default value */
+		"value"
+		},
+};
+static const ber_tlv_tag_t asn_DEF_RICsubscriptionDeleteRequired_IEs_tags_93[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RICsubscriptionDeleteRequired_IEs_tag2el_93[] = {
+    { (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 */
+};
+asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteRequired_IEs_specs_93 = {
+	sizeof(struct RICsubscriptionDeleteRequired_IEs),
+	offsetof(struct RICsubscriptionDeleteRequired_IEs, _asn_ctx),
+	asn_MAP_RICsubscriptionDeleteRequired_IEs_tag2el_93,
+	3,	/* Count of tags in the map */
+	0, 0, 0,	/* Optional elements (not needed) */
+	-1,	/* First extension addition */
+};
+asn_TYPE_descriptor_t asn_DEF_RICsubscriptionDeleteRequired_IEs = {
+	"RICsubscriptionDeleteRequired-IEs",
+	"RICsubscriptionDeleteRequired-IEs",
+	&asn_OP_SEQUENCE,
+	asn_DEF_RICsubscriptionDeleteRequired_IEs_tags_93,
+	sizeof(asn_DEF_RICsubscriptionDeleteRequired_IEs_tags_93)
+		/sizeof(asn_DEF_RICsubscriptionDeleteRequired_IEs_tags_93[0]), /* 1 */
+	asn_DEF_RICsubscriptionDeleteRequired_IEs_tags_93,	/* Same as above */
+	sizeof(asn_DEF_RICsubscriptionDeleteRequired_IEs_tags_93)
+		/sizeof(asn_DEF_RICsubscriptionDeleteRequired_IEs_tags_93[0]), /* 1 */
+	{ 0, 0, SEQUENCE_constraint },
+	asn_MBR_RICsubscriptionDeleteRequired_IEs_93,
+	3,	/* Elements count */
+	&asn_SPC_RICsubscriptionDeleteRequired_IEs_specs_93	/* Additional specs */
+};
+
+static asn_TYPE_member_t asn_MBR_value_100[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICindication_IEs__value, choice.RICrequestID),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -7648,9 +9528,9 @@
 		"RICcallProcessID"
 		},
 };
-static const unsigned asn_MAP_value_to_canonical_72[] = { 1, 2, 3, 5, 6, 7, 4, 0 };
-static const unsigned asn_MAP_value_from_canonical_72[] = { 7, 0, 1, 2, 6, 3, 4, 5 };
-static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_72[] = {
+static const unsigned asn_MAP_value_to_canonical_100[] = { 1, 2, 3, 5, 6, 7, 4, 0 };
+static const unsigned asn_MAP_value_from_canonical_100[] = { 7, 0, 1, 2, 6, 3, 4, 5 };
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_100[] = {
     { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 2 }, /* RANfunctionID */
     { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 2, -1, 1 }, /* RICactionID */
     { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 3, -2, 0 }, /* RICindicationSN */
@@ -7660,19 +9540,19 @@
     { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 4, 0, 0 }, /* RICindicationType */
     { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RICrequestID */
 };
-static asn_CHOICE_specifics_t asn_SPC_value_specs_72 = {
+static asn_CHOICE_specifics_t asn_SPC_value_specs_100 = {
 	sizeof(struct RICindication_IEs__value),
 	offsetof(struct RICindication_IEs__value, _asn_ctx),
 	offsetof(struct RICindication_IEs__value, present),
 	sizeof(((struct RICindication_IEs__value *)0)->present),
-	asn_MAP_value_tag2el_72,
+	asn_MAP_value_tag2el_100,
 	8,	/* Count of tags in the map */
-	asn_MAP_value_to_canonical_72,
-	asn_MAP_value_from_canonical_72,
+	asn_MAP_value_to_canonical_100,
+	asn_MAP_value_from_canonical_100,
 	-1	/* Extensions start */
 };
 static /* Use -fall-defs-global to expose */
-asn_TYPE_descriptor_t asn_DEF_value_72 = {
+asn_TYPE_descriptor_t asn_DEF_value_100 = {
 	"value",
 	"value",
 	&asn_OP_OPEN_TYPE,
@@ -7681,52 +9561,53 @@
 	0,	/* No tags (pointer) */
 	0,	/* No tags (count) */
 	{ 0, 0, OPEN_TYPE_constraint },
-	asn_MBR_value_72,
+	asn_MBR_value_100,
 	8,	/* Elements count */
-	&asn_SPC_value_specs_72	/* Additional specs */
+	&asn_SPC_value_specs_100	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_RICindication_IEs_69[] = {
+asn_TYPE_member_t asn_MBR_RICindication_IEs_97[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICindication_IEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
-		{ 0, &asn_PER_memb_id_constr_70,  memb_id_constraint_69 },
+		{ 0, &asn_PER_memb_id_constr_98,  memb_id_constraint_97 },
 		0, 0, /* No default value */
 		"id"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct RICindication_IEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
 		select_RICindication_IEs_criticality_type,
-		{ 0, &asn_PER_memb_criticality_constr_71,  memb_criticality_constraint_69 },
+		{ 0, &asn_PER_memb_criticality_constr_99,  memb_criticality_constraint_97 },
 		0, 0, /* No default value */
 		"criticality"
 		},
 	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICindication_IEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
-		&asn_DEF_value_72,
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_100,
 		select_RICindication_IEs_value_type,
-		{ 0, &asn_PER_memb_value_constr_72,  memb_value_constraint_69 },
+		{ 0, &asn_PER_memb_value_constr_100,  memb_value_constraint_97 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_RICindication_IEs_tags_69[] = {
+static const ber_tlv_tag_t asn_DEF_RICindication_IEs_tags_97[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_RICindication_IEs_tag2el_69[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_RICindication_IEs_tag2el_97[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_RICindication_IEs_specs_69 = {
+asn_SEQUENCE_specifics_t asn_SPC_RICindication_IEs_specs_97 = {
 	sizeof(struct RICindication_IEs),
 	offsetof(struct RICindication_IEs, _asn_ctx),
-	asn_MAP_RICindication_IEs_tag2el_69,
-	2,	/* Count of tags in the map */
+	asn_MAP_RICindication_IEs_tag2el_97,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
@@ -7734,19 +9615,19 @@
 	"RICindication-IEs",
 	"RICindication-IEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_RICindication_IEs_tags_69,
-	sizeof(asn_DEF_RICindication_IEs_tags_69)
-		/sizeof(asn_DEF_RICindication_IEs_tags_69[0]), /* 1 */
-	asn_DEF_RICindication_IEs_tags_69,	/* Same as above */
-	sizeof(asn_DEF_RICindication_IEs_tags_69)
-		/sizeof(asn_DEF_RICindication_IEs_tags_69[0]), /* 1 */
+	asn_DEF_RICindication_IEs_tags_97,
+	sizeof(asn_DEF_RICindication_IEs_tags_97)
+		/sizeof(asn_DEF_RICindication_IEs_tags_97[0]), /* 1 */
+	asn_DEF_RICindication_IEs_tags_97,	/* Same as above */
+	sizeof(asn_DEF_RICindication_IEs_tags_97)
+		/sizeof(asn_DEF_RICindication_IEs_tags_97[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_RICindication_IEs_69,
+	asn_MBR_RICindication_IEs_97,
 	3,	/* Elements count */
-	&asn_SPC_RICindication_IEs_specs_69	/* Additional specs */
+	&asn_SPC_RICindication_IEs_specs_97	/* Additional specs */
 };
 
-static asn_TYPE_member_t asn_MBR_value_76[] = {
+static asn_TYPE_member_t asn_MBR_value_104[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICcontrolRequest_IEs__value, choice.RICrequestID),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -7802,9 +9683,9 @@
 		"RICcontrolAckRequest"
 		},
 };
-static const unsigned asn_MAP_value_to_canonical_76[] = { 1, 2, 3, 4, 5, 0 };
-static const unsigned asn_MAP_value_from_canonical_76[] = { 5, 0, 1, 2, 3, 4 };
-static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_76[] = {
+static const unsigned asn_MAP_value_to_canonical_104[] = { 1, 2, 3, 4, 5, 0 };
+static const unsigned asn_MAP_value_from_canonical_104[] = { 5, 0, 1, 2, 3, 4 };
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_104[] = {
     { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* RANfunctionID */
     { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 2, 0, 2 }, /* RICcallProcessID */
     { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 3, -1, 1 }, /* RICcontrolHeader */
@@ -7812,19 +9693,19 @@
     { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 5, 0, 0 }, /* RICcontrolAckRequest */
     { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RICrequestID */
 };
-static asn_CHOICE_specifics_t asn_SPC_value_specs_76 = {
+static asn_CHOICE_specifics_t asn_SPC_value_specs_104 = {
 	sizeof(struct RICcontrolRequest_IEs__value),
 	offsetof(struct RICcontrolRequest_IEs__value, _asn_ctx),
 	offsetof(struct RICcontrolRequest_IEs__value, present),
 	sizeof(((struct RICcontrolRequest_IEs__value *)0)->present),
-	asn_MAP_value_tag2el_76,
+	asn_MAP_value_tag2el_104,
 	6,	/* Count of tags in the map */
-	asn_MAP_value_to_canonical_76,
-	asn_MAP_value_from_canonical_76,
+	asn_MAP_value_to_canonical_104,
+	asn_MAP_value_from_canonical_104,
 	-1	/* Extensions start */
 };
 static /* Use -fall-defs-global to expose */
-asn_TYPE_descriptor_t asn_DEF_value_76 = {
+asn_TYPE_descriptor_t asn_DEF_value_104 = {
 	"value",
 	"value",
 	&asn_OP_OPEN_TYPE,
@@ -7833,52 +9714,53 @@
 	0,	/* No tags (pointer) */
 	0,	/* No tags (count) */
 	{ 0, 0, OPEN_TYPE_constraint },
-	asn_MBR_value_76,
+	asn_MBR_value_104,
 	6,	/* Elements count */
-	&asn_SPC_value_specs_76	/* Additional specs */
+	&asn_SPC_value_specs_104	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_RICcontrolRequest_IEs_73[] = {
+asn_TYPE_member_t asn_MBR_RICcontrolRequest_IEs_101[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICcontrolRequest_IEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
-		{ 0, &asn_PER_memb_id_constr_74,  memb_id_constraint_73 },
+		{ 0, &asn_PER_memb_id_constr_102,  memb_id_constraint_101 },
 		0, 0, /* No default value */
 		"id"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct RICcontrolRequest_IEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
 		select_RICcontrolRequest_IEs_criticality_type,
-		{ 0, &asn_PER_memb_criticality_constr_75,  memb_criticality_constraint_73 },
+		{ 0, &asn_PER_memb_criticality_constr_103,  memb_criticality_constraint_101 },
 		0, 0, /* No default value */
 		"criticality"
 		},
 	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICcontrolRequest_IEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
-		&asn_DEF_value_76,
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_104,
 		select_RICcontrolRequest_IEs_value_type,
-		{ 0, &asn_PER_memb_value_constr_76,  memb_value_constraint_73 },
+		{ 0, &asn_PER_memb_value_constr_104,  memb_value_constraint_101 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_RICcontrolRequest_IEs_tags_73[] = {
+static const ber_tlv_tag_t asn_DEF_RICcontrolRequest_IEs_tags_101[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_RICcontrolRequest_IEs_tag2el_73[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_RICcontrolRequest_IEs_tag2el_101[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_RICcontrolRequest_IEs_specs_73 = {
+asn_SEQUENCE_specifics_t asn_SPC_RICcontrolRequest_IEs_specs_101 = {
 	sizeof(struct RICcontrolRequest_IEs),
 	offsetof(struct RICcontrolRequest_IEs, _asn_ctx),
-	asn_MAP_RICcontrolRequest_IEs_tag2el_73,
-	2,	/* Count of tags in the map */
+	asn_MAP_RICcontrolRequest_IEs_tag2el_101,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
@@ -7886,19 +9768,19 @@
 	"RICcontrolRequest-IEs",
 	"RICcontrolRequest-IEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_RICcontrolRequest_IEs_tags_73,
-	sizeof(asn_DEF_RICcontrolRequest_IEs_tags_73)
-		/sizeof(asn_DEF_RICcontrolRequest_IEs_tags_73[0]), /* 1 */
-	asn_DEF_RICcontrolRequest_IEs_tags_73,	/* Same as above */
-	sizeof(asn_DEF_RICcontrolRequest_IEs_tags_73)
-		/sizeof(asn_DEF_RICcontrolRequest_IEs_tags_73[0]), /* 1 */
+	asn_DEF_RICcontrolRequest_IEs_tags_101,
+	sizeof(asn_DEF_RICcontrolRequest_IEs_tags_101)
+		/sizeof(asn_DEF_RICcontrolRequest_IEs_tags_101[0]), /* 1 */
+	asn_DEF_RICcontrolRequest_IEs_tags_101,	/* Same as above */
+	sizeof(asn_DEF_RICcontrolRequest_IEs_tags_101)
+		/sizeof(asn_DEF_RICcontrolRequest_IEs_tags_101[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_RICcontrolRequest_IEs_73,
+	asn_MBR_RICcontrolRequest_IEs_101,
 	3,	/* Elements count */
-	&asn_SPC_RICcontrolRequest_IEs_specs_73	/* Additional specs */
+	&asn_SPC_RICcontrolRequest_IEs_specs_101	/* Additional specs */
 };
 
-static asn_TYPE_member_t asn_MBR_value_80[] = {
+static asn_TYPE_member_t asn_MBR_value_108[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICcontrolAcknowledge_IEs__value, choice.RICrequestID),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -7926,15 +9808,6 @@
 		0, 0, /* No default value */
 		"RICcallProcessID"
 		},
-	{ ATF_NOFLAGS, 0, offsetof(struct RICcontrolAcknowledge_IEs__value, choice.RICcontrolStatus),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
-		&asn_DEF_RICcontrolStatus,
-		0,
-		{ 0, 0, 0 },
-		0, 0, /* No default value */
-		"RICcontrolStatus"
-		},
 	{ ATF_NOFLAGS, 0, offsetof(struct RICcontrolAcknowledge_IEs__value, choice.RICcontrolOutcome),
 		(ASN_TAG_CLASS_UNIVERSAL | (4 << 2)),
 		0,
@@ -7945,28 +9818,27 @@
 		"RICcontrolOutcome"
 		},
 };
-static const unsigned asn_MAP_value_to_canonical_80[] = { 1, 2, 4, 3, 0 };
-static const unsigned asn_MAP_value_from_canonical_80[] = { 4, 0, 1, 3, 2 };
-static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_80[] = {
+static const unsigned asn_MAP_value_to_canonical_108[] = { 1, 2, 3, 0 };
+static const unsigned asn_MAP_value_from_canonical_108[] = { 3, 0, 1, 2 };
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_108[] = {
     { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* RANfunctionID */
     { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 2, 0, 1 }, /* RICcallProcessID */
-    { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 4, -1, 0 }, /* RICcontrolOutcome */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 3, 0, 0 }, /* RICcontrolStatus */
+    { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 3, -1, 0 }, /* RICcontrolOutcome */
     { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RICrequestID */
 };
-static asn_CHOICE_specifics_t asn_SPC_value_specs_80 = {
+static asn_CHOICE_specifics_t asn_SPC_value_specs_108 = {
 	sizeof(struct RICcontrolAcknowledge_IEs__value),
 	offsetof(struct RICcontrolAcknowledge_IEs__value, _asn_ctx),
 	offsetof(struct RICcontrolAcknowledge_IEs__value, present),
 	sizeof(((struct RICcontrolAcknowledge_IEs__value *)0)->present),
-	asn_MAP_value_tag2el_80,
-	5,	/* Count of tags in the map */
-	asn_MAP_value_to_canonical_80,
-	asn_MAP_value_from_canonical_80,
+	asn_MAP_value_tag2el_108,
+	4,	/* Count of tags in the map */
+	asn_MAP_value_to_canonical_108,
+	asn_MAP_value_from_canonical_108,
 	-1	/* Extensions start */
 };
 static /* Use -fall-defs-global to expose */
-asn_TYPE_descriptor_t asn_DEF_value_80 = {
+asn_TYPE_descriptor_t asn_DEF_value_108 = {
 	"value",
 	"value",
 	&asn_OP_OPEN_TYPE,
@@ -7975,52 +9847,53 @@
 	0,	/* No tags (pointer) */
 	0,	/* No tags (count) */
 	{ 0, 0, OPEN_TYPE_constraint },
-	asn_MBR_value_80,
-	5,	/* Elements count */
-	&asn_SPC_value_specs_80	/* Additional specs */
+	asn_MBR_value_108,
+	4,	/* Elements count */
+	&asn_SPC_value_specs_108	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_RICcontrolAcknowledge_IEs_77[] = {
+asn_TYPE_member_t asn_MBR_RICcontrolAcknowledge_IEs_105[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICcontrolAcknowledge_IEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
-		{ 0, &asn_PER_memb_id_constr_78,  memb_id_constraint_77 },
+		{ 0, &asn_PER_memb_id_constr_106,  memb_id_constraint_105 },
 		0, 0, /* No default value */
 		"id"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct RICcontrolAcknowledge_IEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
 		select_RICcontrolAcknowledge_IEs_criticality_type,
-		{ 0, &asn_PER_memb_criticality_constr_79,  memb_criticality_constraint_77 },
+		{ 0, &asn_PER_memb_criticality_constr_107,  memb_criticality_constraint_105 },
 		0, 0, /* No default value */
 		"criticality"
 		},
 	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICcontrolAcknowledge_IEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
-		&asn_DEF_value_80,
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_108,
 		select_RICcontrolAcknowledge_IEs_value_type,
-		{ 0, &asn_PER_memb_value_constr_80,  memb_value_constraint_77 },
+		{ 0, &asn_PER_memb_value_constr_108,  memb_value_constraint_105 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_RICcontrolAcknowledge_IEs_tags_77[] = {
+static const ber_tlv_tag_t asn_DEF_RICcontrolAcknowledge_IEs_tags_105[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_RICcontrolAcknowledge_IEs_tag2el_77[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_RICcontrolAcknowledge_IEs_tag2el_105[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_RICcontrolAcknowledge_IEs_specs_77 = {
+asn_SEQUENCE_specifics_t asn_SPC_RICcontrolAcknowledge_IEs_specs_105 = {
 	sizeof(struct RICcontrolAcknowledge_IEs),
 	offsetof(struct RICcontrolAcknowledge_IEs, _asn_ctx),
-	asn_MAP_RICcontrolAcknowledge_IEs_tag2el_77,
-	2,	/* Count of tags in the map */
+	asn_MAP_RICcontrolAcknowledge_IEs_tag2el_105,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
@@ -8028,19 +9901,19 @@
 	"RICcontrolAcknowledge-IEs",
 	"RICcontrolAcknowledge-IEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_RICcontrolAcknowledge_IEs_tags_77,
-	sizeof(asn_DEF_RICcontrolAcknowledge_IEs_tags_77)
-		/sizeof(asn_DEF_RICcontrolAcknowledge_IEs_tags_77[0]), /* 1 */
-	asn_DEF_RICcontrolAcknowledge_IEs_tags_77,	/* Same as above */
-	sizeof(asn_DEF_RICcontrolAcknowledge_IEs_tags_77)
-		/sizeof(asn_DEF_RICcontrolAcknowledge_IEs_tags_77[0]), /* 1 */
+	asn_DEF_RICcontrolAcknowledge_IEs_tags_105,
+	sizeof(asn_DEF_RICcontrolAcknowledge_IEs_tags_105)
+		/sizeof(asn_DEF_RICcontrolAcknowledge_IEs_tags_105[0]), /* 1 */
+	asn_DEF_RICcontrolAcknowledge_IEs_tags_105,	/* Same as above */
+	sizeof(asn_DEF_RICcontrolAcknowledge_IEs_tags_105)
+		/sizeof(asn_DEF_RICcontrolAcknowledge_IEs_tags_105[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_RICcontrolAcknowledge_IEs_77,
+	asn_MBR_RICcontrolAcknowledge_IEs_105,
 	3,	/* Elements count */
-	&asn_SPC_RICcontrolAcknowledge_IEs_specs_77	/* Additional specs */
+	&asn_SPC_RICcontrolAcknowledge_IEs_specs_105	/* Additional specs */
 };
 
-static asn_TYPE_member_t asn_MBR_value_84[] = {
+static asn_TYPE_member_t asn_MBR_value_112[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICcontrolFailure_IEs__value, choice.RICrequestID),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -8087,32 +9960,33 @@
 		"RICcontrolOutcome"
 		},
 };
-static const unsigned asn_MAP_value_to_canonical_84[] = { 1, 2, 4, 0, 3 };
-static const unsigned asn_MAP_value_from_canonical_84[] = { 3, 0, 1, 4, 2 };
-static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_84[] = {
+static const unsigned asn_MAP_value_to_canonical_112[] = { 1, 2, 4, 0, 3 };
+static const unsigned asn_MAP_value_from_canonical_112[] = { 3, 0, 1, 4, 2 };
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_112[] = {
     { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* RANfunctionID */
     { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 2, 0, 1 }, /* RICcallProcessID */
     { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 4, -1, 0 }, /* RICcontrolOutcome */
     { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 }, /* RICrequestID */
     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 3, 0, 0 }, /* ricRequest */
     { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 3, 0, 0 }, /* ricService */
-    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 3, 0, 0 }, /* transport */
-    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* protocol */
-    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 3, 0, 0 } /* misc */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 3, 0, 0 }, /* e2Node */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* transport */
+    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 3, 0, 0 }, /* protocol */
+    { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 3, 0, 0 } /* misc */
 };
-static asn_CHOICE_specifics_t asn_SPC_value_specs_84 = {
+static asn_CHOICE_specifics_t asn_SPC_value_specs_112 = {
 	sizeof(struct RICcontrolFailure_IEs__value),
 	offsetof(struct RICcontrolFailure_IEs__value, _asn_ctx),
 	offsetof(struct RICcontrolFailure_IEs__value, present),
 	sizeof(((struct RICcontrolFailure_IEs__value *)0)->present),
-	asn_MAP_value_tag2el_84,
-	9,	/* Count of tags in the map */
-	asn_MAP_value_to_canonical_84,
-	asn_MAP_value_from_canonical_84,
+	asn_MAP_value_tag2el_112,
+	10,	/* Count of tags in the map */
+	asn_MAP_value_to_canonical_112,
+	asn_MAP_value_from_canonical_112,
 	-1	/* Extensions start */
 };
 static /* Use -fall-defs-global to expose */
-asn_TYPE_descriptor_t asn_DEF_value_84 = {
+asn_TYPE_descriptor_t asn_DEF_value_112 = {
 	"value",
 	"value",
 	&asn_OP_OPEN_TYPE,
@@ -8121,52 +9995,53 @@
 	0,	/* No tags (pointer) */
 	0,	/* No tags (count) */
 	{ 0, 0, OPEN_TYPE_constraint },
-	asn_MBR_value_84,
+	asn_MBR_value_112,
 	5,	/* Elements count */
-	&asn_SPC_value_specs_84	/* Additional specs */
+	&asn_SPC_value_specs_112	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_RICcontrolFailure_IEs_81[] = {
+asn_TYPE_member_t asn_MBR_RICcontrolFailure_IEs_109[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICcontrolFailure_IEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
-		{ 0, &asn_PER_memb_id_constr_82,  memb_id_constraint_81 },
+		{ 0, &asn_PER_memb_id_constr_110,  memb_id_constraint_109 },
 		0, 0, /* No default value */
 		"id"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct RICcontrolFailure_IEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
 		select_RICcontrolFailure_IEs_criticality_type,
-		{ 0, &asn_PER_memb_criticality_constr_83,  memb_criticality_constraint_81 },
+		{ 0, &asn_PER_memb_criticality_constr_111,  memb_criticality_constraint_109 },
 		0, 0, /* No default value */
 		"criticality"
 		},
 	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICcontrolFailure_IEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
-		&asn_DEF_value_84,
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_112,
 		select_RICcontrolFailure_IEs_value_type,
-		{ 0, &asn_PER_memb_value_constr_84,  memb_value_constraint_81 },
+		{ 0, &asn_PER_memb_value_constr_112,  memb_value_constraint_109 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_RICcontrolFailure_IEs_tags_81[] = {
+static const ber_tlv_tag_t asn_DEF_RICcontrolFailure_IEs_tags_109[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_RICcontrolFailure_IEs_tag2el_81[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_RICcontrolFailure_IEs_tag2el_109[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_RICcontrolFailure_IEs_specs_81 = {
+asn_SEQUENCE_specifics_t asn_SPC_RICcontrolFailure_IEs_specs_109 = {
 	sizeof(struct RICcontrolFailure_IEs),
 	offsetof(struct RICcontrolFailure_IEs, _asn_ctx),
-	asn_MAP_RICcontrolFailure_IEs_tag2el_81,
-	2,	/* Count of tags in the map */
+	asn_MAP_RICcontrolFailure_IEs_tag2el_109,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
@@ -8174,19 +10049,28 @@
 	"RICcontrolFailure-IEs",
 	"RICcontrolFailure-IEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_RICcontrolFailure_IEs_tags_81,
-	sizeof(asn_DEF_RICcontrolFailure_IEs_tags_81)
-		/sizeof(asn_DEF_RICcontrolFailure_IEs_tags_81[0]), /* 1 */
-	asn_DEF_RICcontrolFailure_IEs_tags_81,	/* Same as above */
-	sizeof(asn_DEF_RICcontrolFailure_IEs_tags_81)
-		/sizeof(asn_DEF_RICcontrolFailure_IEs_tags_81[0]), /* 1 */
+	asn_DEF_RICcontrolFailure_IEs_tags_109,
+	sizeof(asn_DEF_RICcontrolFailure_IEs_tags_109)
+		/sizeof(asn_DEF_RICcontrolFailure_IEs_tags_109[0]), /* 1 */
+	asn_DEF_RICcontrolFailure_IEs_tags_109,	/* Same as above */
+	sizeof(asn_DEF_RICcontrolFailure_IEs_tags_109)
+		/sizeof(asn_DEF_RICcontrolFailure_IEs_tags_109[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_RICcontrolFailure_IEs_81,
+	asn_MBR_RICcontrolFailure_IEs_109,
 	3,	/* Elements count */
-	&asn_SPC_RICcontrolFailure_IEs_specs_81	/* Additional specs */
+	&asn_SPC_RICcontrolFailure_IEs_specs_109	/* Additional specs */
 };
 
-static asn_TYPE_member_t asn_MBR_value_88[] = {
+static asn_TYPE_member_t asn_MBR_value_116[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct ErrorIndication_IEs__value, choice.TransactionID),
+		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
+		0,
+		&asn_DEF_TransactionID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"TransactionID"
+		},
 	{ ATF_NOFLAGS, 0, offsetof(struct ErrorIndication_IEs__value, choice.RICrequestID),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -8224,31 +10108,33 @@
 		"CriticalityDiagnostics"
 		},
 };
-static const unsigned asn_MAP_value_to_canonical_88[] = { 1, 0, 3, 2 };
-static const unsigned asn_MAP_value_from_canonical_88[] = { 1, 0, 3, 2 };
-static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_88[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* RANfunctionID */
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 1 }, /* RICrequestID */
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -1, 0 }, /* CriticalityDiagnostics */
-    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 2, 0, 0 }, /* ricRequest */
-    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 2, 0, 0 }, /* ricService */
-    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* transport */
-    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 2, 0, 0 }, /* protocol */
-    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 2, 0, 0 } /* misc */
+static const unsigned asn_MAP_value_to_canonical_116[] = { 0, 2, 1, 4, 3 };
+static const unsigned asn_MAP_value_from_canonical_116[] = { 0, 2, 1, 4, 3 };
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_116[] = {
+    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 1 }, /* TransactionID */
+    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 2, -1, 0 }, /* RANfunctionID */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, 0, 1 }, /* RICrequestID */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 4, -1, 0 }, /* CriticalityDiagnostics */
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 3, 0, 0 }, /* ricRequest */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 3, 0, 0 }, /* ricService */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 3, 0, 0 }, /* e2Node */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* transport */
+    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 3, 0, 0 }, /* protocol */
+    { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 3, 0, 0 } /* misc */
 };
-static asn_CHOICE_specifics_t asn_SPC_value_specs_88 = {
+static asn_CHOICE_specifics_t asn_SPC_value_specs_116 = {
 	sizeof(struct ErrorIndication_IEs__value),
 	offsetof(struct ErrorIndication_IEs__value, _asn_ctx),
 	offsetof(struct ErrorIndication_IEs__value, present),
 	sizeof(((struct ErrorIndication_IEs__value *)0)->present),
-	asn_MAP_value_tag2el_88,
-	8,	/* Count of tags in the map */
-	asn_MAP_value_to_canonical_88,
-	asn_MAP_value_from_canonical_88,
+	asn_MAP_value_tag2el_116,
+	10,	/* Count of tags in the map */
+	asn_MAP_value_to_canonical_116,
+	asn_MAP_value_from_canonical_116,
 	-1	/* Extensions start */
 };
 static /* Use -fall-defs-global to expose */
-asn_TYPE_descriptor_t asn_DEF_value_88 = {
+asn_TYPE_descriptor_t asn_DEF_value_116 = {
 	"value",
 	"value",
 	&asn_OP_OPEN_TYPE,
@@ -8257,52 +10143,53 @@
 	0,	/* No tags (pointer) */
 	0,	/* No tags (count) */
 	{ 0, 0, OPEN_TYPE_constraint },
-	asn_MBR_value_88,
-	4,	/* Elements count */
-	&asn_SPC_value_specs_88	/* Additional specs */
+	asn_MBR_value_116,
+	5,	/* Elements count */
+	&asn_SPC_value_specs_116	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_ErrorIndication_IEs_85[] = {
+asn_TYPE_member_t asn_MBR_ErrorIndication_IEs_113[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct ErrorIndication_IEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
-		{ 0, &asn_PER_memb_id_constr_86,  memb_id_constraint_85 },
+		{ 0, &asn_PER_memb_id_constr_114,  memb_id_constraint_113 },
 		0, 0, /* No default value */
 		"id"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct ErrorIndication_IEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
 		select_ErrorIndication_IEs_criticality_type,
-		{ 0, &asn_PER_memb_criticality_constr_87,  memb_criticality_constraint_85 },
+		{ 0, &asn_PER_memb_criticality_constr_115,  memb_criticality_constraint_113 },
 		0, 0, /* No default value */
 		"criticality"
 		},
 	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct ErrorIndication_IEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
-		&asn_DEF_value_88,
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_116,
 		select_ErrorIndication_IEs_value_type,
-		{ 0, &asn_PER_memb_value_constr_88,  memb_value_constraint_85 },
+		{ 0, &asn_PER_memb_value_constr_116,  memb_value_constraint_113 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_ErrorIndication_IEs_tags_85[] = {
+static const ber_tlv_tag_t asn_DEF_ErrorIndication_IEs_tags_113[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_ErrorIndication_IEs_tag2el_85[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_ErrorIndication_IEs_tag2el_113[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_ErrorIndication_IEs_specs_85 = {
+asn_SEQUENCE_specifics_t asn_SPC_ErrorIndication_IEs_specs_113 = {
 	sizeof(struct ErrorIndication_IEs),
 	offsetof(struct ErrorIndication_IEs, _asn_ctx),
-	asn_MAP_ErrorIndication_IEs_tag2el_85,
-	2,	/* Count of tags in the map */
+	asn_MAP_ErrorIndication_IEs_tag2el_113,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
@@ -8310,19 +10197,28 @@
 	"ErrorIndication-IEs",
 	"ErrorIndication-IEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_ErrorIndication_IEs_tags_85,
-	sizeof(asn_DEF_ErrorIndication_IEs_tags_85)
-		/sizeof(asn_DEF_ErrorIndication_IEs_tags_85[0]), /* 1 */
-	asn_DEF_ErrorIndication_IEs_tags_85,	/* Same as above */
-	sizeof(asn_DEF_ErrorIndication_IEs_tags_85)
-		/sizeof(asn_DEF_ErrorIndication_IEs_tags_85[0]), /* 1 */
+	asn_DEF_ErrorIndication_IEs_tags_113,
+	sizeof(asn_DEF_ErrorIndication_IEs_tags_113)
+		/sizeof(asn_DEF_ErrorIndication_IEs_tags_113[0]), /* 1 */
+	asn_DEF_ErrorIndication_IEs_tags_113,	/* Same as above */
+	sizeof(asn_DEF_ErrorIndication_IEs_tags_113)
+		/sizeof(asn_DEF_ErrorIndication_IEs_tags_113[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_ErrorIndication_IEs_85,
+	asn_MBR_ErrorIndication_IEs_113,
 	3,	/* Elements count */
-	&asn_SPC_ErrorIndication_IEs_specs_85	/* Additional specs */
+	&asn_SPC_ErrorIndication_IEs_specs_113	/* Additional specs */
 };
 
-static asn_TYPE_member_t asn_MBR_value_92[] = {
+static asn_TYPE_member_t asn_MBR_value_120[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2setupRequestIEs__value, choice.TransactionID),
+		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
+		0,
+		&asn_DEF_TransactionID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"TransactionID"
+		},
 	{ ATF_NOFLAGS, 0, offsetof(struct E2setupRequestIEs__value, choice.GlobalE2node_ID),
 		-1 /* Ambiguous tag (CHOICE?) */,
 		0,
@@ -8341,39 +10237,40 @@
 		0, 0, /* No default value */
 		"RANfunctions-List"
 		},
-	{ ATF_NOFLAGS, 0, offsetof(struct E2setupRequestIEs__value, choice.E2nodeComponentConfigUpdate_List),
+	{ ATF_NOFLAGS, 0, offsetof(struct E2setupRequestIEs__value, choice.E2nodeComponentConfigAddition_List),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
-		&asn_DEF_E2nodeComponentConfigUpdate_List,
+		&asn_DEF_E2nodeComponentConfigAddition_List,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
-		"E2nodeComponentConfigUpdate-List"
+		"E2nodeComponentConfigAddition-List"
 		},
 };
-static const unsigned asn_MAP_value_to_canonical_92[] = { 1, 2, 0 };
-static const unsigned asn_MAP_value_from_canonical_92[] = { 2, 0, 1 };
-static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_92[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, 0, 1 }, /* RANfunctions-List */
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -1, 0 }, /* E2nodeComponentConfigUpdate-List */
-    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* gNB */
-    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 0, 0, 0 }, /* en-gNB */
-    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 0, 0, 0 }, /* ng-eNB */
-    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 0, 0, 0 } /* eNB */
+static const unsigned asn_MAP_value_to_canonical_120[] = { 0, 2, 3, 1 };
+static const unsigned asn_MAP_value_from_canonical_120[] = { 0, 3, 1, 2 };
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_120[] = {
+    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* TransactionID */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, 0, 1 }, /* RANfunctions-List */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -1, 0 }, /* E2nodeComponentConfigAddition-List */
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 1, 0, 0 }, /* gNB */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* en-gNB */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 1, 0, 0 }, /* ng-eNB */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 1, 0, 0 } /* eNB */
 };
-static asn_CHOICE_specifics_t asn_SPC_value_specs_92 = {
+static asn_CHOICE_specifics_t asn_SPC_value_specs_120 = {
 	sizeof(struct E2setupRequestIEs__value),
 	offsetof(struct E2setupRequestIEs__value, _asn_ctx),
 	offsetof(struct E2setupRequestIEs__value, present),
 	sizeof(((struct E2setupRequestIEs__value *)0)->present),
-	asn_MAP_value_tag2el_92,
-	6,	/* Count of tags in the map */
-	asn_MAP_value_to_canonical_92,
-	asn_MAP_value_from_canonical_92,
+	asn_MAP_value_tag2el_120,
+	7,	/* Count of tags in the map */
+	asn_MAP_value_to_canonical_120,
+	asn_MAP_value_from_canonical_120,
 	-1	/* Extensions start */
 };
 static /* Use -fall-defs-global to expose */
-asn_TYPE_descriptor_t asn_DEF_value_92 = {
+asn_TYPE_descriptor_t asn_DEF_value_120 = {
 	"value",
 	"value",
 	&asn_OP_OPEN_TYPE,
@@ -8382,52 +10279,53 @@
 	0,	/* No tags (pointer) */
 	0,	/* No tags (count) */
 	{ 0, 0, OPEN_TYPE_constraint },
-	asn_MBR_value_92,
-	3,	/* Elements count */
-	&asn_SPC_value_specs_92	/* Additional specs */
+	asn_MBR_value_120,
+	4,	/* Elements count */
+	&asn_SPC_value_specs_120	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_E2setupRequestIEs_89[] = {
+asn_TYPE_member_t asn_MBR_E2setupRequestIEs_117[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct E2setupRequestIEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
-		{ 0, &asn_PER_memb_id_constr_90,  memb_id_constraint_89 },
+		{ 0, &asn_PER_memb_id_constr_118,  memb_id_constraint_117 },
 		0, 0, /* No default value */
 		"id"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct E2setupRequestIEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
 		select_E2setupRequestIEs_criticality_type,
-		{ 0, &asn_PER_memb_criticality_constr_91,  memb_criticality_constraint_89 },
+		{ 0, &asn_PER_memb_criticality_constr_119,  memb_criticality_constraint_117 },
 		0, 0, /* No default value */
 		"criticality"
 		},
 	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2setupRequestIEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
-		&asn_DEF_value_92,
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_120,
 		select_E2setupRequestIEs_value_type,
-		{ 0, &asn_PER_memb_value_constr_92,  memb_value_constraint_89 },
+		{ 0, &asn_PER_memb_value_constr_120,  memb_value_constraint_117 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_E2setupRequestIEs_tags_89[] = {
+static const ber_tlv_tag_t asn_DEF_E2setupRequestIEs_tags_117[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_E2setupRequestIEs_tag2el_89[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_E2setupRequestIEs_tag2el_117[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_E2setupRequestIEs_specs_89 = {
+asn_SEQUENCE_specifics_t asn_SPC_E2setupRequestIEs_specs_117 = {
 	sizeof(struct E2setupRequestIEs),
 	offsetof(struct E2setupRequestIEs, _asn_ctx),
-	asn_MAP_E2setupRequestIEs_tag2el_89,
-	2,	/* Count of tags in the map */
+	asn_MAP_E2setupRequestIEs_tag2el_117,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
@@ -8435,19 +10333,28 @@
 	"E2setupRequestIEs",
 	"E2setupRequestIEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_E2setupRequestIEs_tags_89,
-	sizeof(asn_DEF_E2setupRequestIEs_tags_89)
-		/sizeof(asn_DEF_E2setupRequestIEs_tags_89[0]), /* 1 */
-	asn_DEF_E2setupRequestIEs_tags_89,	/* Same as above */
-	sizeof(asn_DEF_E2setupRequestIEs_tags_89)
-		/sizeof(asn_DEF_E2setupRequestIEs_tags_89[0]), /* 1 */
+	asn_DEF_E2setupRequestIEs_tags_117,
+	sizeof(asn_DEF_E2setupRequestIEs_tags_117)
+		/sizeof(asn_DEF_E2setupRequestIEs_tags_117[0]), /* 1 */
+	asn_DEF_E2setupRequestIEs_tags_117,	/* Same as above */
+	sizeof(asn_DEF_E2setupRequestIEs_tags_117)
+		/sizeof(asn_DEF_E2setupRequestIEs_tags_117[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_E2setupRequestIEs_89,
+	asn_MBR_E2setupRequestIEs_117,
 	3,	/* Elements count */
-	&asn_SPC_E2setupRequestIEs_specs_89	/* Additional specs */
+	&asn_SPC_E2setupRequestIEs_specs_117	/* Additional specs */
 };
 
-static asn_TYPE_member_t asn_MBR_value_96[] = {
+static asn_TYPE_member_t asn_MBR_value_124[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2setupResponseIEs__value, choice.TransactionID),
+		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
+		0,
+		&asn_DEF_TransactionID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"TransactionID"
+		},
 	{ ATF_NOFLAGS, 0, offsetof(struct E2setupResponseIEs__value, choice.GlobalRIC_ID),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -8475,34 +10382,35 @@
 		0, 0, /* No default value */
 		"RANfunctionsIDcause-List"
 		},
-	{ ATF_NOFLAGS, 0, offsetof(struct E2setupResponseIEs__value, choice.E2nodeComponentConfigUpdateAck_List),
+	{ ATF_NOFLAGS, 0, offsetof(struct E2setupResponseIEs__value, choice.E2nodeComponentConfigAdditionAck_List),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
-		&asn_DEF_E2nodeComponentConfigUpdateAck_List,
+		&asn_DEF_E2nodeComponentConfigAdditionAck_List,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
-		"E2nodeComponentConfigUpdateAck-List"
+		"E2nodeComponentConfigAdditionAck-List"
 		},
 };
-static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_96[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 3 }, /* GlobalRIC-ID */
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 2 }, /* RANfunctionsID-List */
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -2, 1 }, /* RANfunctionsIDcause-List */
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -3, 0 } /* E2nodeComponentConfigUpdateAck-List */
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_124[] = {
+    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* TransactionID */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, 0, 3 }, /* GlobalRIC-ID */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -1, 2 }, /* RANfunctionsID-List */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -2, 1 }, /* RANfunctionsIDcause-List */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 4, -3, 0 } /* E2nodeComponentConfigAdditionAck-List */
 };
-static asn_CHOICE_specifics_t asn_SPC_value_specs_96 = {
+static asn_CHOICE_specifics_t asn_SPC_value_specs_124 = {
 	sizeof(struct E2setupResponseIEs__value),
 	offsetof(struct E2setupResponseIEs__value, _asn_ctx),
 	offsetof(struct E2setupResponseIEs__value, present),
 	sizeof(((struct E2setupResponseIEs__value *)0)->present),
-	asn_MAP_value_tag2el_96,
-	4,	/* Count of tags in the map */
+	asn_MAP_value_tag2el_124,
+	5,	/* Count of tags in the map */
 	0, 0,
 	-1	/* Extensions start */
 };
 static /* Use -fall-defs-global to expose */
-asn_TYPE_descriptor_t asn_DEF_value_96 = {
+asn_TYPE_descriptor_t asn_DEF_value_124 = {
 	"value",
 	"value",
 	&asn_OP_OPEN_TYPE,
@@ -8511,52 +10419,53 @@
 	0,	/* No tags (pointer) */
 	0,	/* No tags (count) */
 	{ 0, 0, OPEN_TYPE_constraint },
-	asn_MBR_value_96,
-	4,	/* Elements count */
-	&asn_SPC_value_specs_96	/* Additional specs */
+	asn_MBR_value_124,
+	5,	/* Elements count */
+	&asn_SPC_value_specs_124	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_E2setupResponseIEs_93[] = {
+asn_TYPE_member_t asn_MBR_E2setupResponseIEs_121[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct E2setupResponseIEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
-		{ 0, &asn_PER_memb_id_constr_94,  memb_id_constraint_93 },
+		{ 0, &asn_PER_memb_id_constr_122,  memb_id_constraint_121 },
 		0, 0, /* No default value */
 		"id"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct E2setupResponseIEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
 		select_E2setupResponseIEs_criticality_type,
-		{ 0, &asn_PER_memb_criticality_constr_95,  memb_criticality_constraint_93 },
+		{ 0, &asn_PER_memb_criticality_constr_123,  memb_criticality_constraint_121 },
 		0, 0, /* No default value */
 		"criticality"
 		},
 	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2setupResponseIEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
-		&asn_DEF_value_96,
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_124,
 		select_E2setupResponseIEs_value_type,
-		{ 0, &asn_PER_memb_value_constr_96,  memb_value_constraint_93 },
+		{ 0, &asn_PER_memb_value_constr_124,  memb_value_constraint_121 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_E2setupResponseIEs_tags_93[] = {
+static const ber_tlv_tag_t asn_DEF_E2setupResponseIEs_tags_121[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_E2setupResponseIEs_tag2el_93[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_E2setupResponseIEs_tag2el_121[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_E2setupResponseIEs_specs_93 = {
+asn_SEQUENCE_specifics_t asn_SPC_E2setupResponseIEs_specs_121 = {
 	sizeof(struct E2setupResponseIEs),
 	offsetof(struct E2setupResponseIEs, _asn_ctx),
-	asn_MAP_E2setupResponseIEs_tag2el_93,
-	2,	/* Count of tags in the map */
+	asn_MAP_E2setupResponseIEs_tag2el_121,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
@@ -8564,19 +10473,28 @@
 	"E2setupResponseIEs",
 	"E2setupResponseIEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_E2setupResponseIEs_tags_93,
-	sizeof(asn_DEF_E2setupResponseIEs_tags_93)
-		/sizeof(asn_DEF_E2setupResponseIEs_tags_93[0]), /* 1 */
-	asn_DEF_E2setupResponseIEs_tags_93,	/* Same as above */
-	sizeof(asn_DEF_E2setupResponseIEs_tags_93)
-		/sizeof(asn_DEF_E2setupResponseIEs_tags_93[0]), /* 1 */
+	asn_DEF_E2setupResponseIEs_tags_121,
+	sizeof(asn_DEF_E2setupResponseIEs_tags_121)
+		/sizeof(asn_DEF_E2setupResponseIEs_tags_121[0]), /* 1 */
+	asn_DEF_E2setupResponseIEs_tags_121,	/* Same as above */
+	sizeof(asn_DEF_E2setupResponseIEs_tags_121)
+		/sizeof(asn_DEF_E2setupResponseIEs_tags_121[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_E2setupResponseIEs_93,
+	asn_MBR_E2setupResponseIEs_121,
 	3,	/* Elements count */
-	&asn_SPC_E2setupResponseIEs_specs_93	/* Additional specs */
+	&asn_SPC_E2setupResponseIEs_specs_121	/* Additional specs */
 };
 
-static asn_TYPE_member_t asn_MBR_value_100[] = {
+static asn_TYPE_member_t asn_MBR_value_128[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2setupFailureIEs__value, choice.TransactionID),
+		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
+		0,
+		&asn_DEF_TransactionID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"TransactionID"
+		},
 	{ ATF_NOFLAGS, 0, offsetof(struct E2setupFailureIEs__value, choice.Cause),
 		-1 /* Ambiguous tag (CHOICE?) */,
 		0,
@@ -8614,31 +10532,33 @@
 		"TNLinformation"
 		},
 };
-static const unsigned asn_MAP_value_to_canonical_100[] = { 1, 2, 3, 0 };
-static const unsigned asn_MAP_value_from_canonical_100[] = { 3, 0, 1, 2 };
-static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_100[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 }, /* TimeToWait */
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, 0, 1 }, /* CriticalityDiagnostics */
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -1, 0 }, /* TNLinformation */
-    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ricRequest */
-    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 0, 0, 0 }, /* ricService */
-    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 0, 0, 0 }, /* transport */
-    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 0, 0, 0 }, /* protocol */
-    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 0, 0, 0 } /* misc */
+static const unsigned asn_MAP_value_to_canonical_128[] = { 0, 2, 3, 4, 1 };
+static const unsigned asn_MAP_value_from_canonical_128[] = { 0, 4, 1, 2, 3 };
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_128[] = {
+    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* TransactionID */
+    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 2, 0, 0 }, /* TimeToWait */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, 0, 1 }, /* CriticalityDiagnostics */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 4, -1, 0 }, /* TNLinformation */
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 1, 0, 0 }, /* ricRequest */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ricService */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 1, 0, 0 }, /* e2Node */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 1, 0, 0 }, /* transport */
+    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 1, 0, 0 }, /* protocol */
+    { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 1, 0, 0 } /* misc */
 };
-static asn_CHOICE_specifics_t asn_SPC_value_specs_100 = {
+static asn_CHOICE_specifics_t asn_SPC_value_specs_128 = {
 	sizeof(struct E2setupFailureIEs__value),
 	offsetof(struct E2setupFailureIEs__value, _asn_ctx),
 	offsetof(struct E2setupFailureIEs__value, present),
 	sizeof(((struct E2setupFailureIEs__value *)0)->present),
-	asn_MAP_value_tag2el_100,
-	8,	/* Count of tags in the map */
-	asn_MAP_value_to_canonical_100,
-	asn_MAP_value_from_canonical_100,
+	asn_MAP_value_tag2el_128,
+	10,	/* Count of tags in the map */
+	asn_MAP_value_to_canonical_128,
+	asn_MAP_value_from_canonical_128,
 	-1	/* Extensions start */
 };
 static /* Use -fall-defs-global to expose */
-asn_TYPE_descriptor_t asn_DEF_value_100 = {
+asn_TYPE_descriptor_t asn_DEF_value_128 = {
 	"value",
 	"value",
 	&asn_OP_OPEN_TYPE,
@@ -8647,52 +10567,53 @@
 	0,	/* No tags (pointer) */
 	0,	/* No tags (count) */
 	{ 0, 0, OPEN_TYPE_constraint },
-	asn_MBR_value_100,
-	4,	/* Elements count */
-	&asn_SPC_value_specs_100	/* Additional specs */
+	asn_MBR_value_128,
+	5,	/* Elements count */
+	&asn_SPC_value_specs_128	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_E2setupFailureIEs_97[] = {
+asn_TYPE_member_t asn_MBR_E2setupFailureIEs_125[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct E2setupFailureIEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
-		{ 0, &asn_PER_memb_id_constr_98,  memb_id_constraint_97 },
+		{ 0, &asn_PER_memb_id_constr_126,  memb_id_constraint_125 },
 		0, 0, /* No default value */
 		"id"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct E2setupFailureIEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
 		select_E2setupFailureIEs_criticality_type,
-		{ 0, &asn_PER_memb_criticality_constr_99,  memb_criticality_constraint_97 },
+		{ 0, &asn_PER_memb_criticality_constr_127,  memb_criticality_constraint_125 },
 		0, 0, /* No default value */
 		"criticality"
 		},
 	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2setupFailureIEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
-		&asn_DEF_value_100,
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_128,
 		select_E2setupFailureIEs_value_type,
-		{ 0, &asn_PER_memb_value_constr_100,  memb_value_constraint_97 },
+		{ 0, &asn_PER_memb_value_constr_128,  memb_value_constraint_125 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_E2setupFailureIEs_tags_97[] = {
+static const ber_tlv_tag_t asn_DEF_E2setupFailureIEs_tags_125[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_E2setupFailureIEs_tag2el_97[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_E2setupFailureIEs_tag2el_125[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_E2setupFailureIEs_specs_97 = {
+asn_SEQUENCE_specifics_t asn_SPC_E2setupFailureIEs_specs_125 = {
 	sizeof(struct E2setupFailureIEs),
 	offsetof(struct E2setupFailureIEs, _asn_ctx),
-	asn_MAP_E2setupFailureIEs_tag2el_97,
-	2,	/* Count of tags in the map */
+	asn_MAP_E2setupFailureIEs_tag2el_125,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
@@ -8700,19 +10621,28 @@
 	"E2setupFailureIEs",
 	"E2setupFailureIEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_E2setupFailureIEs_tags_97,
-	sizeof(asn_DEF_E2setupFailureIEs_tags_97)
-		/sizeof(asn_DEF_E2setupFailureIEs_tags_97[0]), /* 1 */
-	asn_DEF_E2setupFailureIEs_tags_97,	/* Same as above */
-	sizeof(asn_DEF_E2setupFailureIEs_tags_97)
-		/sizeof(asn_DEF_E2setupFailureIEs_tags_97[0]), /* 1 */
+	asn_DEF_E2setupFailureIEs_tags_125,
+	sizeof(asn_DEF_E2setupFailureIEs_tags_125)
+		/sizeof(asn_DEF_E2setupFailureIEs_tags_125[0]), /* 1 */
+	asn_DEF_E2setupFailureIEs_tags_125,	/* Same as above */
+	sizeof(asn_DEF_E2setupFailureIEs_tags_125)
+		/sizeof(asn_DEF_E2setupFailureIEs_tags_125[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_E2setupFailureIEs_97,
+	asn_MBR_E2setupFailureIEs_125,
 	3,	/* Elements count */
-	&asn_SPC_E2setupFailureIEs_specs_97	/* Additional specs */
+	&asn_SPC_E2setupFailureIEs_specs_125	/* Additional specs */
 };
 
-static asn_TYPE_member_t asn_MBR_value_104[] = {
+static asn_TYPE_member_t asn_MBR_value_132[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdate_IEs__value, choice.TransactionID),
+		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
+		0,
+		&asn_DEF_TransactionID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"TransactionID"
+		},
 	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdate_IEs__value, choice.E2connectionUpdate_List),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -8732,22 +10662,23 @@
 		"E2connectionUpdateRemove-List"
 		},
 };
-static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_104[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 1 }, /* E2connectionUpdate-List */
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 0 } /* E2connectionUpdateRemove-List */
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_132[] = {
+    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* TransactionID */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, 0, 1 }, /* E2connectionUpdate-List */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -1, 0 } /* E2connectionUpdateRemove-List */
 };
-static asn_CHOICE_specifics_t asn_SPC_value_specs_104 = {
+static asn_CHOICE_specifics_t asn_SPC_value_specs_132 = {
 	sizeof(struct E2connectionUpdate_IEs__value),
 	offsetof(struct E2connectionUpdate_IEs__value, _asn_ctx),
 	offsetof(struct E2connectionUpdate_IEs__value, present),
 	sizeof(((struct E2connectionUpdate_IEs__value *)0)->present),
-	asn_MAP_value_tag2el_104,
-	2,	/* Count of tags in the map */
+	asn_MAP_value_tag2el_132,
+	3,	/* Count of tags in the map */
 	0, 0,
 	-1	/* Extensions start */
 };
 static /* Use -fall-defs-global to expose */
-asn_TYPE_descriptor_t asn_DEF_value_104 = {
+asn_TYPE_descriptor_t asn_DEF_value_132 = {
 	"value",
 	"value",
 	&asn_OP_OPEN_TYPE,
@@ -8756,52 +10687,53 @@
 	0,	/* No tags (pointer) */
 	0,	/* No tags (count) */
 	{ 0, 0, OPEN_TYPE_constraint },
-	asn_MBR_value_104,
-	2,	/* Elements count */
-	&asn_SPC_value_specs_104	/* Additional specs */
+	asn_MBR_value_132,
+	3,	/* Elements count */
+	&asn_SPC_value_specs_132	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_E2connectionUpdate_IEs_101[] = {
+asn_TYPE_member_t asn_MBR_E2connectionUpdate_IEs_129[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdate_IEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
-		{ 0, &asn_PER_memb_id_constr_102,  memb_id_constraint_101 },
+		{ 0, &asn_PER_memb_id_constr_130,  memb_id_constraint_129 },
 		0, 0, /* No default value */
 		"id"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdate_IEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
 		select_E2connectionUpdate_IEs_criticality_type,
-		{ 0, &asn_PER_memb_criticality_constr_103,  memb_criticality_constraint_101 },
+		{ 0, &asn_PER_memb_criticality_constr_131,  memb_criticality_constraint_129 },
 		0, 0, /* No default value */
 		"criticality"
 		},
 	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdate_IEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
-		&asn_DEF_value_104,
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_132,
 		select_E2connectionUpdate_IEs_value_type,
-		{ 0, &asn_PER_memb_value_constr_104,  memb_value_constraint_101 },
+		{ 0, &asn_PER_memb_value_constr_132,  memb_value_constraint_129 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_E2connectionUpdate_IEs_tags_101[] = {
+static const ber_tlv_tag_t asn_DEF_E2connectionUpdate_IEs_tags_129[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_E2connectionUpdate_IEs_tag2el_101[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_E2connectionUpdate_IEs_tag2el_129[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_E2connectionUpdate_IEs_specs_101 = {
+asn_SEQUENCE_specifics_t asn_SPC_E2connectionUpdate_IEs_specs_129 = {
 	sizeof(struct E2connectionUpdate_IEs),
 	offsetof(struct E2connectionUpdate_IEs, _asn_ctx),
-	asn_MAP_E2connectionUpdate_IEs_tag2el_101,
-	2,	/* Count of tags in the map */
+	asn_MAP_E2connectionUpdate_IEs_tag2el_129,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
@@ -8809,19 +10741,28 @@
 	"E2connectionUpdate-IEs",
 	"E2connectionUpdate-IEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_E2connectionUpdate_IEs_tags_101,
-	sizeof(asn_DEF_E2connectionUpdate_IEs_tags_101)
-		/sizeof(asn_DEF_E2connectionUpdate_IEs_tags_101[0]), /* 1 */
-	asn_DEF_E2connectionUpdate_IEs_tags_101,	/* Same as above */
-	sizeof(asn_DEF_E2connectionUpdate_IEs_tags_101)
-		/sizeof(asn_DEF_E2connectionUpdate_IEs_tags_101[0]), /* 1 */
+	asn_DEF_E2connectionUpdate_IEs_tags_129,
+	sizeof(asn_DEF_E2connectionUpdate_IEs_tags_129)
+		/sizeof(asn_DEF_E2connectionUpdate_IEs_tags_129[0]), /* 1 */
+	asn_DEF_E2connectionUpdate_IEs_tags_129,	/* Same as above */
+	sizeof(asn_DEF_E2connectionUpdate_IEs_tags_129)
+		/sizeof(asn_DEF_E2connectionUpdate_IEs_tags_129[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_E2connectionUpdate_IEs_101,
+	asn_MBR_E2connectionUpdate_IEs_129,
 	3,	/* Elements count */
-	&asn_SPC_E2connectionUpdate_IEs_specs_101	/* Additional specs */
+	&asn_SPC_E2connectionUpdate_IEs_specs_129	/* Additional specs */
 };
 
-static asn_TYPE_member_t asn_MBR_value_108[] = {
+static asn_TYPE_member_t asn_MBR_value_136[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdateAck_IEs__value, choice.TransactionID),
+		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
+		0,
+		&asn_DEF_TransactionID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"TransactionID"
+		},
 	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdateAck_IEs__value, choice.E2connectionUpdate_List),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -8841,22 +10782,23 @@
 		"E2connectionSetupFailed-List"
 		},
 };
-static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_108[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 1 }, /* E2connectionUpdate-List */
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 0 } /* E2connectionSetupFailed-List */
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_136[] = {
+    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* TransactionID */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, 0, 1 }, /* E2connectionUpdate-List */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -1, 0 } /* E2connectionSetupFailed-List */
 };
-static asn_CHOICE_specifics_t asn_SPC_value_specs_108 = {
+static asn_CHOICE_specifics_t asn_SPC_value_specs_136 = {
 	sizeof(struct E2connectionUpdateAck_IEs__value),
 	offsetof(struct E2connectionUpdateAck_IEs__value, _asn_ctx),
 	offsetof(struct E2connectionUpdateAck_IEs__value, present),
 	sizeof(((struct E2connectionUpdateAck_IEs__value *)0)->present),
-	asn_MAP_value_tag2el_108,
-	2,	/* Count of tags in the map */
+	asn_MAP_value_tag2el_136,
+	3,	/* Count of tags in the map */
 	0, 0,
 	-1	/* Extensions start */
 };
 static /* Use -fall-defs-global to expose */
-asn_TYPE_descriptor_t asn_DEF_value_108 = {
+asn_TYPE_descriptor_t asn_DEF_value_136 = {
 	"value",
 	"value",
 	&asn_OP_OPEN_TYPE,
@@ -8865,52 +10807,53 @@
 	0,	/* No tags (pointer) */
 	0,	/* No tags (count) */
 	{ 0, 0, OPEN_TYPE_constraint },
-	asn_MBR_value_108,
-	2,	/* Elements count */
-	&asn_SPC_value_specs_108	/* Additional specs */
+	asn_MBR_value_136,
+	3,	/* Elements count */
+	&asn_SPC_value_specs_136	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_E2connectionUpdateAck_IEs_105[] = {
+asn_TYPE_member_t asn_MBR_E2connectionUpdateAck_IEs_133[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdateAck_IEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
-		{ 0, &asn_PER_memb_id_constr_106,  memb_id_constraint_105 },
+		{ 0, &asn_PER_memb_id_constr_134,  memb_id_constraint_133 },
 		0, 0, /* No default value */
 		"id"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdateAck_IEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
 		select_E2connectionUpdateAck_IEs_criticality_type,
-		{ 0, &asn_PER_memb_criticality_constr_107,  memb_criticality_constraint_105 },
+		{ 0, &asn_PER_memb_criticality_constr_135,  memb_criticality_constraint_133 },
 		0, 0, /* No default value */
 		"criticality"
 		},
 	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdateAck_IEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
-		&asn_DEF_value_108,
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_136,
 		select_E2connectionUpdateAck_IEs_value_type,
-		{ 0, &asn_PER_memb_value_constr_108,  memb_value_constraint_105 },
+		{ 0, &asn_PER_memb_value_constr_136,  memb_value_constraint_133 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_E2connectionUpdateAck_IEs_tags_105[] = {
+static const ber_tlv_tag_t asn_DEF_E2connectionUpdateAck_IEs_tags_133[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_E2connectionUpdateAck_IEs_tag2el_105[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_E2connectionUpdateAck_IEs_tag2el_133[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_E2connectionUpdateAck_IEs_specs_105 = {
+asn_SEQUENCE_specifics_t asn_SPC_E2connectionUpdateAck_IEs_specs_133 = {
 	sizeof(struct E2connectionUpdateAck_IEs),
 	offsetof(struct E2connectionUpdateAck_IEs, _asn_ctx),
-	asn_MAP_E2connectionUpdateAck_IEs_tag2el_105,
-	2,	/* Count of tags in the map */
+	asn_MAP_E2connectionUpdateAck_IEs_tag2el_133,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
@@ -8918,19 +10861,28 @@
 	"E2connectionUpdateAck-IEs",
 	"E2connectionUpdateAck-IEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_E2connectionUpdateAck_IEs_tags_105,
-	sizeof(asn_DEF_E2connectionUpdateAck_IEs_tags_105)
-		/sizeof(asn_DEF_E2connectionUpdateAck_IEs_tags_105[0]), /* 1 */
-	asn_DEF_E2connectionUpdateAck_IEs_tags_105,	/* Same as above */
-	sizeof(asn_DEF_E2connectionUpdateAck_IEs_tags_105)
-		/sizeof(asn_DEF_E2connectionUpdateAck_IEs_tags_105[0]), /* 1 */
+	asn_DEF_E2connectionUpdateAck_IEs_tags_133,
+	sizeof(asn_DEF_E2connectionUpdateAck_IEs_tags_133)
+		/sizeof(asn_DEF_E2connectionUpdateAck_IEs_tags_133[0]), /* 1 */
+	asn_DEF_E2connectionUpdateAck_IEs_tags_133,	/* Same as above */
+	sizeof(asn_DEF_E2connectionUpdateAck_IEs_tags_133)
+		/sizeof(asn_DEF_E2connectionUpdateAck_IEs_tags_133[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_E2connectionUpdateAck_IEs_105,
+	asn_MBR_E2connectionUpdateAck_IEs_133,
 	3,	/* Elements count */
-	&asn_SPC_E2connectionUpdateAck_IEs_specs_105	/* Additional specs */
+	&asn_SPC_E2connectionUpdateAck_IEs_specs_133	/* Additional specs */
 };
 
-static asn_TYPE_member_t asn_MBR_value_112[] = {
+static asn_TYPE_member_t asn_MBR_value_140[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdateFailure_IEs__value, choice.TransactionID),
+		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
+		0,
+		&asn_DEF_TransactionID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"TransactionID"
+		},
 	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdateFailure_IEs__value, choice.Cause),
 		-1 /* Ambiguous tag (CHOICE?) */,
 		0,
@@ -8959,30 +10911,32 @@
 		"CriticalityDiagnostics"
 		},
 };
-static const unsigned asn_MAP_value_to_canonical_112[] = { 1, 2, 0 };
-static const unsigned asn_MAP_value_from_canonical_112[] = { 2, 0, 1 };
-static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_112[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 }, /* TimeToWait */
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, 0, 0 }, /* CriticalityDiagnostics */
-    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ricRequest */
-    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 0, 0, 0 }, /* ricService */
-    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 0, 0, 0 }, /* transport */
-    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 0, 0, 0 }, /* protocol */
-    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 0, 0, 0 } /* misc */
+static const unsigned asn_MAP_value_to_canonical_140[] = { 0, 2, 3, 1 };
+static const unsigned asn_MAP_value_from_canonical_140[] = { 0, 3, 1, 2 };
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_140[] = {
+    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* TransactionID */
+    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 2, 0, 0 }, /* TimeToWait */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, 0, 0 }, /* CriticalityDiagnostics */
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 1, 0, 0 }, /* ricRequest */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ricService */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 1, 0, 0 }, /* e2Node */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 1, 0, 0 }, /* transport */
+    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 1, 0, 0 }, /* protocol */
+    { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 1, 0, 0 } /* misc */
 };
-static asn_CHOICE_specifics_t asn_SPC_value_specs_112 = {
+static asn_CHOICE_specifics_t asn_SPC_value_specs_140 = {
 	sizeof(struct E2connectionUpdateFailure_IEs__value),
 	offsetof(struct E2connectionUpdateFailure_IEs__value, _asn_ctx),
 	offsetof(struct E2connectionUpdateFailure_IEs__value, present),
 	sizeof(((struct E2connectionUpdateFailure_IEs__value *)0)->present),
-	asn_MAP_value_tag2el_112,
-	7,	/* Count of tags in the map */
-	asn_MAP_value_to_canonical_112,
-	asn_MAP_value_from_canonical_112,
+	asn_MAP_value_tag2el_140,
+	9,	/* Count of tags in the map */
+	asn_MAP_value_to_canonical_140,
+	asn_MAP_value_from_canonical_140,
 	-1	/* Extensions start */
 };
 static /* Use -fall-defs-global to expose */
-asn_TYPE_descriptor_t asn_DEF_value_112 = {
+asn_TYPE_descriptor_t asn_DEF_value_140 = {
 	"value",
 	"value",
 	&asn_OP_OPEN_TYPE,
@@ -8991,52 +10945,53 @@
 	0,	/* No tags (pointer) */
 	0,	/* No tags (count) */
 	{ 0, 0, OPEN_TYPE_constraint },
-	asn_MBR_value_112,
-	3,	/* Elements count */
-	&asn_SPC_value_specs_112	/* Additional specs */
+	asn_MBR_value_140,
+	4,	/* Elements count */
+	&asn_SPC_value_specs_140	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_E2connectionUpdateFailure_IEs_109[] = {
+asn_TYPE_member_t asn_MBR_E2connectionUpdateFailure_IEs_137[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdateFailure_IEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
-		{ 0, &asn_PER_memb_id_constr_110,  memb_id_constraint_109 },
+		{ 0, &asn_PER_memb_id_constr_138,  memb_id_constraint_137 },
 		0, 0, /* No default value */
 		"id"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdateFailure_IEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
 		select_E2connectionUpdateFailure_IEs_criticality_type,
-		{ 0, &asn_PER_memb_criticality_constr_111,  memb_criticality_constraint_109 },
+		{ 0, &asn_PER_memb_criticality_constr_139,  memb_criticality_constraint_137 },
 		0, 0, /* No default value */
 		"criticality"
 		},
 	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2connectionUpdateFailure_IEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
-		&asn_DEF_value_112,
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_140,
 		select_E2connectionUpdateFailure_IEs_value_type,
-		{ 0, &asn_PER_memb_value_constr_112,  memb_value_constraint_109 },
+		{ 0, &asn_PER_memb_value_constr_140,  memb_value_constraint_137 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_E2connectionUpdateFailure_IEs_tags_109[] = {
+static const ber_tlv_tag_t asn_DEF_E2connectionUpdateFailure_IEs_tags_137[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_E2connectionUpdateFailure_IEs_tag2el_109[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_E2connectionUpdateFailure_IEs_tag2el_137[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_E2connectionUpdateFailure_IEs_specs_109 = {
+asn_SEQUENCE_specifics_t asn_SPC_E2connectionUpdateFailure_IEs_specs_137 = {
 	sizeof(struct E2connectionUpdateFailure_IEs),
 	offsetof(struct E2connectionUpdateFailure_IEs, _asn_ctx),
-	asn_MAP_E2connectionUpdateFailure_IEs_tag2el_109,
-	2,	/* Count of tags in the map */
+	asn_MAP_E2connectionUpdateFailure_IEs_tag2el_137,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
@@ -9044,19 +10999,46 @@
 	"E2connectionUpdateFailure-IEs",
 	"E2connectionUpdateFailure-IEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_E2connectionUpdateFailure_IEs_tags_109,
-	sizeof(asn_DEF_E2connectionUpdateFailure_IEs_tags_109)
-		/sizeof(asn_DEF_E2connectionUpdateFailure_IEs_tags_109[0]), /* 1 */
-	asn_DEF_E2connectionUpdateFailure_IEs_tags_109,	/* Same as above */
-	sizeof(asn_DEF_E2connectionUpdateFailure_IEs_tags_109)
-		/sizeof(asn_DEF_E2connectionUpdateFailure_IEs_tags_109[0]), /* 1 */
+	asn_DEF_E2connectionUpdateFailure_IEs_tags_137,
+	sizeof(asn_DEF_E2connectionUpdateFailure_IEs_tags_137)
+		/sizeof(asn_DEF_E2connectionUpdateFailure_IEs_tags_137[0]), /* 1 */
+	asn_DEF_E2connectionUpdateFailure_IEs_tags_137,	/* Same as above */
+	sizeof(asn_DEF_E2connectionUpdateFailure_IEs_tags_137)
+		/sizeof(asn_DEF_E2connectionUpdateFailure_IEs_tags_137[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_E2connectionUpdateFailure_IEs_109,
+	asn_MBR_E2connectionUpdateFailure_IEs_137,
 	3,	/* Elements count */
-	&asn_SPC_E2connectionUpdateFailure_IEs_specs_109	/* Additional specs */
+	&asn_SPC_E2connectionUpdateFailure_IEs_specs_137	/* Additional specs */
 };
 
-static asn_TYPE_member_t asn_MBR_value_116[] = {
+static asn_TYPE_member_t asn_MBR_value_144[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdate_IEs__value, choice.TransactionID),
+		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
+		0,
+		&asn_DEF_TransactionID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"TransactionID"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdate_IEs__value, choice.GlobalE2node_ID),
+		-1 /* Ambiguous tag (CHOICE?) */,
+		0,
+		&asn_DEF_GlobalE2node_ID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"GlobalE2node-ID"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdate_IEs__value, choice.E2nodeComponentConfigAddition_List),
+		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
+		0,
+		&asn_DEF_E2nodeComponentConfigAddition_List,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"E2nodeComponentConfigAddition-List"
+		},
 	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdate_IEs__value, choice.E2nodeComponentConfigUpdate_List),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -9066,22 +11048,51 @@
 		0, 0, /* No default value */
 		"E2nodeComponentConfigUpdate-List"
 		},
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdate_IEs__value, choice.E2nodeComponentConfigRemoval_List),
+		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
+		0,
+		&asn_DEF_E2nodeComponentConfigRemoval_List,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"E2nodeComponentConfigRemoval-List"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdate_IEs__value, choice.E2nodeTNLassociationRemoval_List),
+		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
+		0,
+		&asn_DEF_E2nodeTNLassociationRemoval_List,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"E2nodeTNLassociationRemoval-List"
+		},
 };
-static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_116[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* E2nodeComponentConfigUpdate-List */
+static const unsigned asn_MAP_value_to_canonical_144[] = { 0, 2, 3, 4, 5, 1 };
+static const unsigned asn_MAP_value_from_canonical_144[] = { 0, 5, 1, 2, 3, 4 };
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_144[] = {
+    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* TransactionID */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, 0, 3 }, /* E2nodeComponentConfigAddition-List */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -1, 2 }, /* E2nodeComponentConfigUpdate-List */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 4, -2, 1 }, /* E2nodeComponentConfigRemoval-List */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 5, -3, 0 }, /* E2nodeTNLassociationRemoval-List */
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 1, 0, 0 }, /* gNB */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* en-gNB */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 1, 0, 0 }, /* ng-eNB */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 1, 0, 0 } /* eNB */
 };
-static asn_CHOICE_specifics_t asn_SPC_value_specs_116 = {
+static asn_CHOICE_specifics_t asn_SPC_value_specs_144 = {
 	sizeof(struct E2nodeConfigurationUpdate_IEs__value),
 	offsetof(struct E2nodeConfigurationUpdate_IEs__value, _asn_ctx),
 	offsetof(struct E2nodeConfigurationUpdate_IEs__value, present),
 	sizeof(((struct E2nodeConfigurationUpdate_IEs__value *)0)->present),
-	asn_MAP_value_tag2el_116,
-	1,	/* Count of tags in the map */
-	0, 0,
+	asn_MAP_value_tag2el_144,
+	9,	/* Count of tags in the map */
+	asn_MAP_value_to_canonical_144,
+	asn_MAP_value_from_canonical_144,
 	-1	/* Extensions start */
 };
 static /* Use -fall-defs-global to expose */
-asn_TYPE_descriptor_t asn_DEF_value_116 = {
+asn_TYPE_descriptor_t asn_DEF_value_144 = {
 	"value",
 	"value",
 	&asn_OP_OPEN_TYPE,
@@ -9090,52 +11101,53 @@
 	0,	/* No tags (pointer) */
 	0,	/* No tags (count) */
 	{ 0, 0, OPEN_TYPE_constraint },
-	asn_MBR_value_116,
-	1,	/* Elements count */
-	&asn_SPC_value_specs_116	/* Additional specs */
+	asn_MBR_value_144,
+	6,	/* Elements count */
+	&asn_SPC_value_specs_144	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_E2nodeConfigurationUpdate_IEs_113[] = {
+asn_TYPE_member_t asn_MBR_E2nodeConfigurationUpdate_IEs_141[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdate_IEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
-		{ 0, &asn_PER_memb_id_constr_114,  memb_id_constraint_113 },
+		{ 0, &asn_PER_memb_id_constr_142,  memb_id_constraint_141 },
 		0, 0, /* No default value */
 		"id"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdate_IEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
 		select_E2nodeConfigurationUpdate_IEs_criticality_type,
-		{ 0, &asn_PER_memb_criticality_constr_115,  memb_criticality_constraint_113 },
+		{ 0, &asn_PER_memb_criticality_constr_143,  memb_criticality_constraint_141 },
 		0, 0, /* No default value */
 		"criticality"
 		},
 	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdate_IEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
-		&asn_DEF_value_116,
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_144,
 		select_E2nodeConfigurationUpdate_IEs_value_type,
-		{ 0, &asn_PER_memb_value_constr_116,  memb_value_constraint_113 },
+		{ 0, &asn_PER_memb_value_constr_144,  memb_value_constraint_141 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_E2nodeConfigurationUpdate_IEs_tags_113[] = {
+static const ber_tlv_tag_t asn_DEF_E2nodeConfigurationUpdate_IEs_tags_141[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_E2nodeConfigurationUpdate_IEs_tag2el_113[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_E2nodeConfigurationUpdate_IEs_tag2el_141[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_E2nodeConfigurationUpdate_IEs_specs_113 = {
+asn_SEQUENCE_specifics_t asn_SPC_E2nodeConfigurationUpdate_IEs_specs_141 = {
 	sizeof(struct E2nodeConfigurationUpdate_IEs),
 	offsetof(struct E2nodeConfigurationUpdate_IEs, _asn_ctx),
-	asn_MAP_E2nodeConfigurationUpdate_IEs_tag2el_113,
-	2,	/* Count of tags in the map */
+	asn_MAP_E2nodeConfigurationUpdate_IEs_tag2el_141,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
@@ -9143,19 +11155,37 @@
 	"E2nodeConfigurationUpdate-IEs",
 	"E2nodeConfigurationUpdate-IEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_E2nodeConfigurationUpdate_IEs_tags_113,
-	sizeof(asn_DEF_E2nodeConfigurationUpdate_IEs_tags_113)
-		/sizeof(asn_DEF_E2nodeConfigurationUpdate_IEs_tags_113[0]), /* 1 */
-	asn_DEF_E2nodeConfigurationUpdate_IEs_tags_113,	/* Same as above */
-	sizeof(asn_DEF_E2nodeConfigurationUpdate_IEs_tags_113)
-		/sizeof(asn_DEF_E2nodeConfigurationUpdate_IEs_tags_113[0]), /* 1 */
+	asn_DEF_E2nodeConfigurationUpdate_IEs_tags_141,
+	sizeof(asn_DEF_E2nodeConfigurationUpdate_IEs_tags_141)
+		/sizeof(asn_DEF_E2nodeConfigurationUpdate_IEs_tags_141[0]), /* 1 */
+	asn_DEF_E2nodeConfigurationUpdate_IEs_tags_141,	/* Same as above */
+	sizeof(asn_DEF_E2nodeConfigurationUpdate_IEs_tags_141)
+		/sizeof(asn_DEF_E2nodeConfigurationUpdate_IEs_tags_141[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_E2nodeConfigurationUpdate_IEs_113,
+	asn_MBR_E2nodeConfigurationUpdate_IEs_141,
 	3,	/* Elements count */
-	&asn_SPC_E2nodeConfigurationUpdate_IEs_specs_113	/* Additional specs */
+	&asn_SPC_E2nodeConfigurationUpdate_IEs_specs_141	/* Additional specs */
 };
 
-static asn_TYPE_member_t asn_MBR_value_120[] = {
+static asn_TYPE_member_t asn_MBR_value_148[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdateAcknowledge_IEs__value, choice.TransactionID),
+		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
+		0,
+		&asn_DEF_TransactionID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"TransactionID"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdateAcknowledge_IEs__value, choice.E2nodeComponentConfigAdditionAck_List),
+		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
+		0,
+		&asn_DEF_E2nodeComponentConfigAdditionAck_List,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"E2nodeComponentConfigAdditionAck-List"
+		},
 	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdateAcknowledge_IEs__value, choice.E2nodeComponentConfigUpdateAck_List),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -9165,22 +11195,34 @@
 		0, 0, /* No default value */
 		"E2nodeComponentConfigUpdateAck-List"
 		},
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdateAcknowledge_IEs__value, choice.E2nodeComponentConfigRemovalAck_List),
+		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
+		0,
+		&asn_DEF_E2nodeComponentConfigRemovalAck_List,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"E2nodeComponentConfigRemovalAck-List"
+		},
 };
-static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_120[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* E2nodeComponentConfigUpdateAck-List */
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_148[] = {
+    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* TransactionID */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, 0, 2 }, /* E2nodeComponentConfigAdditionAck-List */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -1, 1 }, /* E2nodeComponentConfigUpdateAck-List */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, -2, 0 } /* E2nodeComponentConfigRemovalAck-List */
 };
-static asn_CHOICE_specifics_t asn_SPC_value_specs_120 = {
+static asn_CHOICE_specifics_t asn_SPC_value_specs_148 = {
 	sizeof(struct E2nodeConfigurationUpdateAcknowledge_IEs__value),
 	offsetof(struct E2nodeConfigurationUpdateAcknowledge_IEs__value, _asn_ctx),
 	offsetof(struct E2nodeConfigurationUpdateAcknowledge_IEs__value, present),
 	sizeof(((struct E2nodeConfigurationUpdateAcknowledge_IEs__value *)0)->present),
-	asn_MAP_value_tag2el_120,
-	1,	/* Count of tags in the map */
+	asn_MAP_value_tag2el_148,
+	4,	/* Count of tags in the map */
 	0, 0,
 	-1	/* Extensions start */
 };
 static /* Use -fall-defs-global to expose */
-asn_TYPE_descriptor_t asn_DEF_value_120 = {
+asn_TYPE_descriptor_t asn_DEF_value_148 = {
 	"value",
 	"value",
 	&asn_OP_OPEN_TYPE,
@@ -9189,52 +11231,53 @@
 	0,	/* No tags (pointer) */
 	0,	/* No tags (count) */
 	{ 0, 0, OPEN_TYPE_constraint },
-	asn_MBR_value_120,
-	1,	/* Elements count */
-	&asn_SPC_value_specs_120	/* Additional specs */
+	asn_MBR_value_148,
+	4,	/* Elements count */
+	&asn_SPC_value_specs_148	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_E2nodeConfigurationUpdateAcknowledge_IEs_117[] = {
+asn_TYPE_member_t asn_MBR_E2nodeConfigurationUpdateAcknowledge_IEs_145[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdateAcknowledge_IEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
-		{ 0, &asn_PER_memb_id_constr_118,  memb_id_constraint_117 },
+		{ 0, &asn_PER_memb_id_constr_146,  memb_id_constraint_145 },
 		0, 0, /* No default value */
 		"id"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdateAcknowledge_IEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
 		select_E2nodeConfigurationUpdateAcknowledge_IEs_criticality_type,
-		{ 0, &asn_PER_memb_criticality_constr_119,  memb_criticality_constraint_117 },
+		{ 0, &asn_PER_memb_criticality_constr_147,  memb_criticality_constraint_145 },
 		0, 0, /* No default value */
 		"criticality"
 		},
 	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdateAcknowledge_IEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
-		&asn_DEF_value_120,
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_148,
 		select_E2nodeConfigurationUpdateAcknowledge_IEs_value_type,
-		{ 0, &asn_PER_memb_value_constr_120,  memb_value_constraint_117 },
+		{ 0, &asn_PER_memb_value_constr_148,  memb_value_constraint_145 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_E2nodeConfigurationUpdateAcknowledge_IEs_tags_117[] = {
+static const ber_tlv_tag_t asn_DEF_E2nodeConfigurationUpdateAcknowledge_IEs_tags_145[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_E2nodeConfigurationUpdateAcknowledge_IEs_tag2el_117[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_E2nodeConfigurationUpdateAcknowledge_IEs_tag2el_145[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_E2nodeConfigurationUpdateAcknowledge_IEs_specs_117 = {
+asn_SEQUENCE_specifics_t asn_SPC_E2nodeConfigurationUpdateAcknowledge_IEs_specs_145 = {
 	sizeof(struct E2nodeConfigurationUpdateAcknowledge_IEs),
 	offsetof(struct E2nodeConfigurationUpdateAcknowledge_IEs, _asn_ctx),
-	asn_MAP_E2nodeConfigurationUpdateAcknowledge_IEs_tag2el_117,
-	2,	/* Count of tags in the map */
+	asn_MAP_E2nodeConfigurationUpdateAcknowledge_IEs_tag2el_145,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
@@ -9242,19 +11285,28 @@
 	"E2nodeConfigurationUpdateAcknowledge-IEs",
 	"E2nodeConfigurationUpdateAcknowledge-IEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_E2nodeConfigurationUpdateAcknowledge_IEs_tags_117,
-	sizeof(asn_DEF_E2nodeConfigurationUpdateAcknowledge_IEs_tags_117)
-		/sizeof(asn_DEF_E2nodeConfigurationUpdateAcknowledge_IEs_tags_117[0]), /* 1 */
-	asn_DEF_E2nodeConfigurationUpdateAcknowledge_IEs_tags_117,	/* Same as above */
-	sizeof(asn_DEF_E2nodeConfigurationUpdateAcknowledge_IEs_tags_117)
-		/sizeof(asn_DEF_E2nodeConfigurationUpdateAcknowledge_IEs_tags_117[0]), /* 1 */
+	asn_DEF_E2nodeConfigurationUpdateAcknowledge_IEs_tags_145,
+	sizeof(asn_DEF_E2nodeConfigurationUpdateAcknowledge_IEs_tags_145)
+		/sizeof(asn_DEF_E2nodeConfigurationUpdateAcknowledge_IEs_tags_145[0]), /* 1 */
+	asn_DEF_E2nodeConfigurationUpdateAcknowledge_IEs_tags_145,	/* Same as above */
+	sizeof(asn_DEF_E2nodeConfigurationUpdateAcknowledge_IEs_tags_145)
+		/sizeof(asn_DEF_E2nodeConfigurationUpdateAcknowledge_IEs_tags_145[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_E2nodeConfigurationUpdateAcknowledge_IEs_117,
+	asn_MBR_E2nodeConfigurationUpdateAcknowledge_IEs_145,
 	3,	/* Elements count */
-	&asn_SPC_E2nodeConfigurationUpdateAcknowledge_IEs_specs_117	/* Additional specs */
+	&asn_SPC_E2nodeConfigurationUpdateAcknowledge_IEs_specs_145	/* Additional specs */
 };
 
-static asn_TYPE_member_t asn_MBR_value_124[] = {
+static asn_TYPE_member_t asn_MBR_value_152[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdateFailure_IEs__value, choice.TransactionID),
+		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
+		0,
+		&asn_DEF_TransactionID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"TransactionID"
+		},
 	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdateFailure_IEs__value, choice.Cause),
 		-1 /* Ambiguous tag (CHOICE?) */,
 		0,
@@ -9283,30 +11335,32 @@
 		"CriticalityDiagnostics"
 		},
 };
-static const unsigned asn_MAP_value_to_canonical_124[] = { 1, 2, 0 };
-static const unsigned asn_MAP_value_from_canonical_124[] = { 2, 0, 1 };
-static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_124[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 }, /* TimeToWait */
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, 0, 0 }, /* CriticalityDiagnostics */
-    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ricRequest */
-    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 0, 0, 0 }, /* ricService */
-    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 0, 0, 0 }, /* transport */
-    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 0, 0, 0 }, /* protocol */
-    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 0, 0, 0 } /* misc */
+static const unsigned asn_MAP_value_to_canonical_152[] = { 0, 2, 3, 1 };
+static const unsigned asn_MAP_value_from_canonical_152[] = { 0, 3, 1, 2 };
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_152[] = {
+    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* TransactionID */
+    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 2, 0, 0 }, /* TimeToWait */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, 0, 0 }, /* CriticalityDiagnostics */
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 1, 0, 0 }, /* ricRequest */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ricService */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 1, 0, 0 }, /* e2Node */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 1, 0, 0 }, /* transport */
+    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 1, 0, 0 }, /* protocol */
+    { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 1, 0, 0 } /* misc */
 };
-static asn_CHOICE_specifics_t asn_SPC_value_specs_124 = {
+static asn_CHOICE_specifics_t asn_SPC_value_specs_152 = {
 	sizeof(struct E2nodeConfigurationUpdateFailure_IEs__value),
 	offsetof(struct E2nodeConfigurationUpdateFailure_IEs__value, _asn_ctx),
 	offsetof(struct E2nodeConfigurationUpdateFailure_IEs__value, present),
 	sizeof(((struct E2nodeConfigurationUpdateFailure_IEs__value *)0)->present),
-	asn_MAP_value_tag2el_124,
-	7,	/* Count of tags in the map */
-	asn_MAP_value_to_canonical_124,
-	asn_MAP_value_from_canonical_124,
+	asn_MAP_value_tag2el_152,
+	9,	/* Count of tags in the map */
+	asn_MAP_value_to_canonical_152,
+	asn_MAP_value_from_canonical_152,
 	-1	/* Extensions start */
 };
 static /* Use -fall-defs-global to expose */
-asn_TYPE_descriptor_t asn_DEF_value_124 = {
+asn_TYPE_descriptor_t asn_DEF_value_152 = {
 	"value",
 	"value",
 	&asn_OP_OPEN_TYPE,
@@ -9315,52 +11369,53 @@
 	0,	/* No tags (pointer) */
 	0,	/* No tags (count) */
 	{ 0, 0, OPEN_TYPE_constraint },
-	asn_MBR_value_124,
-	3,	/* Elements count */
-	&asn_SPC_value_specs_124	/* Additional specs */
+	asn_MBR_value_152,
+	4,	/* Elements count */
+	&asn_SPC_value_specs_152	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_E2nodeConfigurationUpdateFailure_IEs_121[] = {
+asn_TYPE_member_t asn_MBR_E2nodeConfigurationUpdateFailure_IEs_149[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdateFailure_IEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
-		{ 0, &asn_PER_memb_id_constr_122,  memb_id_constraint_121 },
+		{ 0, &asn_PER_memb_id_constr_150,  memb_id_constraint_149 },
 		0, 0, /* No default value */
 		"id"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdateFailure_IEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
 		select_E2nodeConfigurationUpdateFailure_IEs_criticality_type,
-		{ 0, &asn_PER_memb_criticality_constr_123,  memb_criticality_constraint_121 },
+		{ 0, &asn_PER_memb_criticality_constr_151,  memb_criticality_constraint_149 },
 		0, 0, /* No default value */
 		"criticality"
 		},
 	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2nodeConfigurationUpdateFailure_IEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
-		&asn_DEF_value_124,
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_152,
 		select_E2nodeConfigurationUpdateFailure_IEs_value_type,
-		{ 0, &asn_PER_memb_value_constr_124,  memb_value_constraint_121 },
+		{ 0, &asn_PER_memb_value_constr_152,  memb_value_constraint_149 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_E2nodeConfigurationUpdateFailure_IEs_tags_121[] = {
+static const ber_tlv_tag_t asn_DEF_E2nodeConfigurationUpdateFailure_IEs_tags_149[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_E2nodeConfigurationUpdateFailure_IEs_tag2el_121[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_E2nodeConfigurationUpdateFailure_IEs_tag2el_149[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_E2nodeConfigurationUpdateFailure_IEs_specs_121 = {
+asn_SEQUENCE_specifics_t asn_SPC_E2nodeConfigurationUpdateFailure_IEs_specs_149 = {
 	sizeof(struct E2nodeConfigurationUpdateFailure_IEs),
 	offsetof(struct E2nodeConfigurationUpdateFailure_IEs, _asn_ctx),
-	asn_MAP_E2nodeConfigurationUpdateFailure_IEs_tag2el_121,
-	2,	/* Count of tags in the map */
+	asn_MAP_E2nodeConfigurationUpdateFailure_IEs_tag2el_149,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
@@ -9368,19 +11423,28 @@
 	"E2nodeConfigurationUpdateFailure-IEs",
 	"E2nodeConfigurationUpdateFailure-IEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_E2nodeConfigurationUpdateFailure_IEs_tags_121,
-	sizeof(asn_DEF_E2nodeConfigurationUpdateFailure_IEs_tags_121)
-		/sizeof(asn_DEF_E2nodeConfigurationUpdateFailure_IEs_tags_121[0]), /* 1 */
-	asn_DEF_E2nodeConfigurationUpdateFailure_IEs_tags_121,	/* Same as above */
-	sizeof(asn_DEF_E2nodeConfigurationUpdateFailure_IEs_tags_121)
-		/sizeof(asn_DEF_E2nodeConfigurationUpdateFailure_IEs_tags_121[0]), /* 1 */
+	asn_DEF_E2nodeConfigurationUpdateFailure_IEs_tags_149,
+	sizeof(asn_DEF_E2nodeConfigurationUpdateFailure_IEs_tags_149)
+		/sizeof(asn_DEF_E2nodeConfigurationUpdateFailure_IEs_tags_149[0]), /* 1 */
+	asn_DEF_E2nodeConfigurationUpdateFailure_IEs_tags_149,	/* Same as above */
+	sizeof(asn_DEF_E2nodeConfigurationUpdateFailure_IEs_tags_149)
+		/sizeof(asn_DEF_E2nodeConfigurationUpdateFailure_IEs_tags_149[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_E2nodeConfigurationUpdateFailure_IEs_121,
+	asn_MBR_E2nodeConfigurationUpdateFailure_IEs_149,
 	3,	/* Elements count */
-	&asn_SPC_E2nodeConfigurationUpdateFailure_IEs_specs_121	/* Additional specs */
+	&asn_SPC_E2nodeConfigurationUpdateFailure_IEs_specs_149	/* Additional specs */
 };
 
-static asn_TYPE_member_t asn_MBR_value_128[] = {
+static asn_TYPE_member_t asn_MBR_value_156[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct ResetRequestIEs__value, choice.TransactionID),
+		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
+		0,
+		&asn_DEF_TransactionID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"TransactionID"
+		},
 	{ ATF_NOFLAGS, 0, offsetof(struct ResetRequestIEs__value, choice.Cause),
 		-1 /* Ambiguous tag (CHOICE?) */,
 		0,
@@ -9391,25 +11455,27 @@
 		"Cause"
 		},
 };
-static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_128[] = {
-    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ricRequest */
-    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 0, 0, 0 }, /* ricService */
-    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 0, 0, 0 }, /* transport */
-    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 0, 0, 0 }, /* protocol */
-    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 0, 0, 0 } /* misc */
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_156[] = {
+    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* TransactionID */
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 1, 0, 0 }, /* ricRequest */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ricService */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 1, 0, 0 }, /* e2Node */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 1, 0, 0 }, /* transport */
+    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 1, 0, 0 }, /* protocol */
+    { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 1, 0, 0 } /* misc */
 };
-static asn_CHOICE_specifics_t asn_SPC_value_specs_128 = {
+static asn_CHOICE_specifics_t asn_SPC_value_specs_156 = {
 	sizeof(struct ResetRequestIEs__value),
 	offsetof(struct ResetRequestIEs__value, _asn_ctx),
 	offsetof(struct ResetRequestIEs__value, present),
 	sizeof(((struct ResetRequestIEs__value *)0)->present),
-	asn_MAP_value_tag2el_128,
-	5,	/* Count of tags in the map */
+	asn_MAP_value_tag2el_156,
+	7,	/* Count of tags in the map */
 	0, 0,
 	-1	/* Extensions start */
 };
 static /* Use -fall-defs-global to expose */
-asn_TYPE_descriptor_t asn_DEF_value_128 = {
+asn_TYPE_descriptor_t asn_DEF_value_156 = {
 	"value",
 	"value",
 	&asn_OP_OPEN_TYPE,
@@ -9418,52 +11484,53 @@
 	0,	/* No tags (pointer) */
 	0,	/* No tags (count) */
 	{ 0, 0, OPEN_TYPE_constraint },
-	asn_MBR_value_128,
-	1,	/* Elements count */
-	&asn_SPC_value_specs_128	/* Additional specs */
+	asn_MBR_value_156,
+	2,	/* Elements count */
+	&asn_SPC_value_specs_156	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_ResetRequestIEs_125[] = {
+asn_TYPE_member_t asn_MBR_ResetRequestIEs_153[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct ResetRequestIEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
-		{ 0, &asn_PER_memb_id_constr_126,  memb_id_constraint_125 },
+		{ 0, &asn_PER_memb_id_constr_154,  memb_id_constraint_153 },
 		0, 0, /* No default value */
 		"id"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct ResetRequestIEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
 		select_ResetRequestIEs_criticality_type,
-		{ 0, &asn_PER_memb_criticality_constr_127,  memb_criticality_constraint_125 },
+		{ 0, &asn_PER_memb_criticality_constr_155,  memb_criticality_constraint_153 },
 		0, 0, /* No default value */
 		"criticality"
 		},
 	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct ResetRequestIEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
-		&asn_DEF_value_128,
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_156,
 		select_ResetRequestIEs_value_type,
-		{ 0, &asn_PER_memb_value_constr_128,  memb_value_constraint_125 },
+		{ 0, &asn_PER_memb_value_constr_156,  memb_value_constraint_153 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_ResetRequestIEs_tags_125[] = {
+static const ber_tlv_tag_t asn_DEF_ResetRequestIEs_tags_153[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_ResetRequestIEs_tag2el_125[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_ResetRequestIEs_tag2el_153[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_ResetRequestIEs_specs_125 = {
+asn_SEQUENCE_specifics_t asn_SPC_ResetRequestIEs_specs_153 = {
 	sizeof(struct ResetRequestIEs),
 	offsetof(struct ResetRequestIEs, _asn_ctx),
-	asn_MAP_ResetRequestIEs_tag2el_125,
-	2,	/* Count of tags in the map */
+	asn_MAP_ResetRequestIEs_tag2el_153,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
@@ -9471,19 +11538,28 @@
 	"ResetRequestIEs",
 	"ResetRequestIEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_ResetRequestIEs_tags_125,
-	sizeof(asn_DEF_ResetRequestIEs_tags_125)
-		/sizeof(asn_DEF_ResetRequestIEs_tags_125[0]), /* 1 */
-	asn_DEF_ResetRequestIEs_tags_125,	/* Same as above */
-	sizeof(asn_DEF_ResetRequestIEs_tags_125)
-		/sizeof(asn_DEF_ResetRequestIEs_tags_125[0]), /* 1 */
+	asn_DEF_ResetRequestIEs_tags_153,
+	sizeof(asn_DEF_ResetRequestIEs_tags_153)
+		/sizeof(asn_DEF_ResetRequestIEs_tags_153[0]), /* 1 */
+	asn_DEF_ResetRequestIEs_tags_153,	/* Same as above */
+	sizeof(asn_DEF_ResetRequestIEs_tags_153)
+		/sizeof(asn_DEF_ResetRequestIEs_tags_153[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_ResetRequestIEs_125,
+	asn_MBR_ResetRequestIEs_153,
 	3,	/* Elements count */
-	&asn_SPC_ResetRequestIEs_specs_125	/* Additional specs */
+	&asn_SPC_ResetRequestIEs_specs_153	/* Additional specs */
 };
 
-static asn_TYPE_member_t asn_MBR_value_132[] = {
+static asn_TYPE_member_t asn_MBR_value_160[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct ResetResponseIEs__value, choice.TransactionID),
+		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
+		0,
+		&asn_DEF_TransactionID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"TransactionID"
+		},
 	{ ATF_NOFLAGS, 0, offsetof(struct ResetResponseIEs__value, choice.CriticalityDiagnostics),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -9494,21 +11570,22 @@
 		"CriticalityDiagnostics"
 		},
 };
-static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_132[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* CriticalityDiagnostics */
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_160[] = {
+    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* TransactionID */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, 0, 0 } /* CriticalityDiagnostics */
 };
-static asn_CHOICE_specifics_t asn_SPC_value_specs_132 = {
+static asn_CHOICE_specifics_t asn_SPC_value_specs_160 = {
 	sizeof(struct ResetResponseIEs__value),
 	offsetof(struct ResetResponseIEs__value, _asn_ctx),
 	offsetof(struct ResetResponseIEs__value, present),
 	sizeof(((struct ResetResponseIEs__value *)0)->present),
-	asn_MAP_value_tag2el_132,
-	1,	/* Count of tags in the map */
+	asn_MAP_value_tag2el_160,
+	2,	/* Count of tags in the map */
 	0, 0,
 	-1	/* Extensions start */
 };
 static /* Use -fall-defs-global to expose */
-asn_TYPE_descriptor_t asn_DEF_value_132 = {
+asn_TYPE_descriptor_t asn_DEF_value_160 = {
 	"value",
 	"value",
 	&asn_OP_OPEN_TYPE,
@@ -9517,52 +11594,53 @@
 	0,	/* No tags (pointer) */
 	0,	/* No tags (count) */
 	{ 0, 0, OPEN_TYPE_constraint },
-	asn_MBR_value_132,
-	1,	/* Elements count */
-	&asn_SPC_value_specs_132	/* Additional specs */
+	asn_MBR_value_160,
+	2,	/* Elements count */
+	&asn_SPC_value_specs_160	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_ResetResponseIEs_129[] = {
+asn_TYPE_member_t asn_MBR_ResetResponseIEs_157[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct ResetResponseIEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
-		{ 0, &asn_PER_memb_id_constr_130,  memb_id_constraint_129 },
+		{ 0, &asn_PER_memb_id_constr_158,  memb_id_constraint_157 },
 		0, 0, /* No default value */
 		"id"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct ResetResponseIEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
 		select_ResetResponseIEs_criticality_type,
-		{ 0, &asn_PER_memb_criticality_constr_131,  memb_criticality_constraint_129 },
+		{ 0, &asn_PER_memb_criticality_constr_159,  memb_criticality_constraint_157 },
 		0, 0, /* No default value */
 		"criticality"
 		},
 	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct ResetResponseIEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
-		&asn_DEF_value_132,
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_160,
 		select_ResetResponseIEs_value_type,
-		{ 0, &asn_PER_memb_value_constr_132,  memb_value_constraint_129 },
+		{ 0, &asn_PER_memb_value_constr_160,  memb_value_constraint_157 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_ResetResponseIEs_tags_129[] = {
+static const ber_tlv_tag_t asn_DEF_ResetResponseIEs_tags_157[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_ResetResponseIEs_tag2el_129[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_ResetResponseIEs_tag2el_157[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_ResetResponseIEs_specs_129 = {
+asn_SEQUENCE_specifics_t asn_SPC_ResetResponseIEs_specs_157 = {
 	sizeof(struct ResetResponseIEs),
 	offsetof(struct ResetResponseIEs, _asn_ctx),
-	asn_MAP_ResetResponseIEs_tag2el_129,
-	2,	/* Count of tags in the map */
+	asn_MAP_ResetResponseIEs_tag2el_157,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
@@ -9570,19 +11648,28 @@
 	"ResetResponseIEs",
 	"ResetResponseIEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_ResetResponseIEs_tags_129,
-	sizeof(asn_DEF_ResetResponseIEs_tags_129)
-		/sizeof(asn_DEF_ResetResponseIEs_tags_129[0]), /* 1 */
-	asn_DEF_ResetResponseIEs_tags_129,	/* Same as above */
-	sizeof(asn_DEF_ResetResponseIEs_tags_129)
-		/sizeof(asn_DEF_ResetResponseIEs_tags_129[0]), /* 1 */
+	asn_DEF_ResetResponseIEs_tags_157,
+	sizeof(asn_DEF_ResetResponseIEs_tags_157)
+		/sizeof(asn_DEF_ResetResponseIEs_tags_157[0]), /* 1 */
+	asn_DEF_ResetResponseIEs_tags_157,	/* Same as above */
+	sizeof(asn_DEF_ResetResponseIEs_tags_157)
+		/sizeof(asn_DEF_ResetResponseIEs_tags_157[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_ResetResponseIEs_129,
+	asn_MBR_ResetResponseIEs_157,
 	3,	/* Elements count */
-	&asn_SPC_ResetResponseIEs_specs_129	/* Additional specs */
+	&asn_SPC_ResetResponseIEs_specs_157	/* Additional specs */
 };
 
-static asn_TYPE_member_t asn_MBR_value_136[] = {
+static asn_TYPE_member_t asn_MBR_value_164[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdate_IEs__value, choice.TransactionID),
+		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
+		0,
+		&asn_DEF_TransactionID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"TransactionID"
+		},
 	{ ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdate_IEs__value, choice.RANfunctions_List),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -9602,22 +11689,23 @@
 		"RANfunctionsID-List"
 		},
 };
-static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_136[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 1 }, /* RANfunctions-List */
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 0 } /* RANfunctionsID-List */
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_164[] = {
+    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* TransactionID */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, 0, 1 }, /* RANfunctions-List */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -1, 0 } /* RANfunctionsID-List */
 };
-static asn_CHOICE_specifics_t asn_SPC_value_specs_136 = {
+static asn_CHOICE_specifics_t asn_SPC_value_specs_164 = {
 	sizeof(struct RICserviceUpdate_IEs__value),
 	offsetof(struct RICserviceUpdate_IEs__value, _asn_ctx),
 	offsetof(struct RICserviceUpdate_IEs__value, present),
 	sizeof(((struct RICserviceUpdate_IEs__value *)0)->present),
-	asn_MAP_value_tag2el_136,
-	2,	/* Count of tags in the map */
+	asn_MAP_value_tag2el_164,
+	3,	/* Count of tags in the map */
 	0, 0,
 	-1	/* Extensions start */
 };
 static /* Use -fall-defs-global to expose */
-asn_TYPE_descriptor_t asn_DEF_value_136 = {
+asn_TYPE_descriptor_t asn_DEF_value_164 = {
 	"value",
 	"value",
 	&asn_OP_OPEN_TYPE,
@@ -9626,52 +11714,53 @@
 	0,	/* No tags (pointer) */
 	0,	/* No tags (count) */
 	{ 0, 0, OPEN_TYPE_constraint },
-	asn_MBR_value_136,
-	2,	/* Elements count */
-	&asn_SPC_value_specs_136	/* Additional specs */
+	asn_MBR_value_164,
+	3,	/* Elements count */
+	&asn_SPC_value_specs_164	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_RICserviceUpdate_IEs_133[] = {
+asn_TYPE_member_t asn_MBR_RICserviceUpdate_IEs_161[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdate_IEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
-		{ 0, &asn_PER_memb_id_constr_134,  memb_id_constraint_133 },
+		{ 0, &asn_PER_memb_id_constr_162,  memb_id_constraint_161 },
 		0, 0, /* No default value */
 		"id"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdate_IEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
 		select_RICserviceUpdate_IEs_criticality_type,
-		{ 0, &asn_PER_memb_criticality_constr_135,  memb_criticality_constraint_133 },
+		{ 0, &asn_PER_memb_criticality_constr_163,  memb_criticality_constraint_161 },
 		0, 0, /* No default value */
 		"criticality"
 		},
 	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdate_IEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
-		&asn_DEF_value_136,
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_164,
 		select_RICserviceUpdate_IEs_value_type,
-		{ 0, &asn_PER_memb_value_constr_136,  memb_value_constraint_133 },
+		{ 0, &asn_PER_memb_value_constr_164,  memb_value_constraint_161 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_RICserviceUpdate_IEs_tags_133[] = {
+static const ber_tlv_tag_t asn_DEF_RICserviceUpdate_IEs_tags_161[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_RICserviceUpdate_IEs_tag2el_133[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_RICserviceUpdate_IEs_tag2el_161[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_RICserviceUpdate_IEs_specs_133 = {
+asn_SEQUENCE_specifics_t asn_SPC_RICserviceUpdate_IEs_specs_161 = {
 	sizeof(struct RICserviceUpdate_IEs),
 	offsetof(struct RICserviceUpdate_IEs, _asn_ctx),
-	asn_MAP_RICserviceUpdate_IEs_tag2el_133,
-	2,	/* Count of tags in the map */
+	asn_MAP_RICserviceUpdate_IEs_tag2el_161,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
@@ -9679,19 +11768,28 @@
 	"RICserviceUpdate-IEs",
 	"RICserviceUpdate-IEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_RICserviceUpdate_IEs_tags_133,
-	sizeof(asn_DEF_RICserviceUpdate_IEs_tags_133)
-		/sizeof(asn_DEF_RICserviceUpdate_IEs_tags_133[0]), /* 1 */
-	asn_DEF_RICserviceUpdate_IEs_tags_133,	/* Same as above */
-	sizeof(asn_DEF_RICserviceUpdate_IEs_tags_133)
-		/sizeof(asn_DEF_RICserviceUpdate_IEs_tags_133[0]), /* 1 */
+	asn_DEF_RICserviceUpdate_IEs_tags_161,
+	sizeof(asn_DEF_RICserviceUpdate_IEs_tags_161)
+		/sizeof(asn_DEF_RICserviceUpdate_IEs_tags_161[0]), /* 1 */
+	asn_DEF_RICserviceUpdate_IEs_tags_161,	/* Same as above */
+	sizeof(asn_DEF_RICserviceUpdate_IEs_tags_161)
+		/sizeof(asn_DEF_RICserviceUpdate_IEs_tags_161[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_RICserviceUpdate_IEs_133,
+	asn_MBR_RICserviceUpdate_IEs_161,
 	3,	/* Elements count */
-	&asn_SPC_RICserviceUpdate_IEs_specs_133	/* Additional specs */
+	&asn_SPC_RICserviceUpdate_IEs_specs_161	/* Additional specs */
 };
 
-static asn_TYPE_member_t asn_MBR_value_140[] = {
+static asn_TYPE_member_t asn_MBR_value_168[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdateAcknowledge_IEs__value, choice.TransactionID),
+		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
+		0,
+		&asn_DEF_TransactionID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"TransactionID"
+		},
 	{ ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdateAcknowledge_IEs__value, choice.RANfunctionsID_List),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -9711,22 +11809,23 @@
 		"RANfunctionsIDcause-List"
 		},
 };
-static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_140[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 1 }, /* RANfunctionsID-List */
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 0 } /* RANfunctionsIDcause-List */
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_168[] = {
+    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* TransactionID */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, 0, 1 }, /* RANfunctionsID-List */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -1, 0 } /* RANfunctionsIDcause-List */
 };
-static asn_CHOICE_specifics_t asn_SPC_value_specs_140 = {
+static asn_CHOICE_specifics_t asn_SPC_value_specs_168 = {
 	sizeof(struct RICserviceUpdateAcknowledge_IEs__value),
 	offsetof(struct RICserviceUpdateAcknowledge_IEs__value, _asn_ctx),
 	offsetof(struct RICserviceUpdateAcknowledge_IEs__value, present),
 	sizeof(((struct RICserviceUpdateAcknowledge_IEs__value *)0)->present),
-	asn_MAP_value_tag2el_140,
-	2,	/* Count of tags in the map */
+	asn_MAP_value_tag2el_168,
+	3,	/* Count of tags in the map */
 	0, 0,
 	-1	/* Extensions start */
 };
 static /* Use -fall-defs-global to expose */
-asn_TYPE_descriptor_t asn_DEF_value_140 = {
+asn_TYPE_descriptor_t asn_DEF_value_168 = {
 	"value",
 	"value",
 	&asn_OP_OPEN_TYPE,
@@ -9735,52 +11834,53 @@
 	0,	/* No tags (pointer) */
 	0,	/* No tags (count) */
 	{ 0, 0, OPEN_TYPE_constraint },
-	asn_MBR_value_140,
-	2,	/* Elements count */
-	&asn_SPC_value_specs_140	/* Additional specs */
+	asn_MBR_value_168,
+	3,	/* Elements count */
+	&asn_SPC_value_specs_168	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_RICserviceUpdateAcknowledge_IEs_137[] = {
+asn_TYPE_member_t asn_MBR_RICserviceUpdateAcknowledge_IEs_165[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdateAcknowledge_IEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
-		{ 0, &asn_PER_memb_id_constr_138,  memb_id_constraint_137 },
+		{ 0, &asn_PER_memb_id_constr_166,  memb_id_constraint_165 },
 		0, 0, /* No default value */
 		"id"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdateAcknowledge_IEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
 		select_RICserviceUpdateAcknowledge_IEs_criticality_type,
-		{ 0, &asn_PER_memb_criticality_constr_139,  memb_criticality_constraint_137 },
+		{ 0, &asn_PER_memb_criticality_constr_167,  memb_criticality_constraint_165 },
 		0, 0, /* No default value */
 		"criticality"
 		},
 	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdateAcknowledge_IEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
-		&asn_DEF_value_140,
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_168,
 		select_RICserviceUpdateAcknowledge_IEs_value_type,
-		{ 0, &asn_PER_memb_value_constr_140,  memb_value_constraint_137 },
+		{ 0, &asn_PER_memb_value_constr_168,  memb_value_constraint_165 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_RICserviceUpdateAcknowledge_IEs_tags_137[] = {
+static const ber_tlv_tag_t asn_DEF_RICserviceUpdateAcknowledge_IEs_tags_165[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_RICserviceUpdateAcknowledge_IEs_tag2el_137[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_RICserviceUpdateAcknowledge_IEs_tag2el_165[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_RICserviceUpdateAcknowledge_IEs_specs_137 = {
+asn_SEQUENCE_specifics_t asn_SPC_RICserviceUpdateAcknowledge_IEs_specs_165 = {
 	sizeof(struct RICserviceUpdateAcknowledge_IEs),
 	offsetof(struct RICserviceUpdateAcknowledge_IEs, _asn_ctx),
-	asn_MAP_RICserviceUpdateAcknowledge_IEs_tag2el_137,
-	2,	/* Count of tags in the map */
+	asn_MAP_RICserviceUpdateAcknowledge_IEs_tag2el_165,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
@@ -9788,27 +11888,36 @@
 	"RICserviceUpdateAcknowledge-IEs",
 	"RICserviceUpdateAcknowledge-IEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_RICserviceUpdateAcknowledge_IEs_tags_137,
-	sizeof(asn_DEF_RICserviceUpdateAcknowledge_IEs_tags_137)
-		/sizeof(asn_DEF_RICserviceUpdateAcknowledge_IEs_tags_137[0]), /* 1 */
-	asn_DEF_RICserviceUpdateAcknowledge_IEs_tags_137,	/* Same as above */
-	sizeof(asn_DEF_RICserviceUpdateAcknowledge_IEs_tags_137)
-		/sizeof(asn_DEF_RICserviceUpdateAcknowledge_IEs_tags_137[0]), /* 1 */
+	asn_DEF_RICserviceUpdateAcknowledge_IEs_tags_165,
+	sizeof(asn_DEF_RICserviceUpdateAcknowledge_IEs_tags_165)
+		/sizeof(asn_DEF_RICserviceUpdateAcknowledge_IEs_tags_165[0]), /* 1 */
+	asn_DEF_RICserviceUpdateAcknowledge_IEs_tags_165,	/* Same as above */
+	sizeof(asn_DEF_RICserviceUpdateAcknowledge_IEs_tags_165)
+		/sizeof(asn_DEF_RICserviceUpdateAcknowledge_IEs_tags_165[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_RICserviceUpdateAcknowledge_IEs_137,
+	asn_MBR_RICserviceUpdateAcknowledge_IEs_165,
 	3,	/* Elements count */
-	&asn_SPC_RICserviceUpdateAcknowledge_IEs_specs_137	/* Additional specs */
+	&asn_SPC_RICserviceUpdateAcknowledge_IEs_specs_165	/* Additional specs */
 };
 
-static asn_TYPE_member_t asn_MBR_value_144[] = {
-	{ ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdateFailure_IEs__value, choice.RANfunctionsIDcause_List),
-		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
+static asn_TYPE_member_t asn_MBR_value_172[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdateFailure_IEs__value, choice.TransactionID),
+		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
 		0,
-		&asn_DEF_RANfunctionsIDcause_List,
+		&asn_DEF_TransactionID,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
-		"RANfunctionsIDcause-List"
+		"TransactionID"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdateFailure_IEs__value, choice.Cause),
+		-1 /* Ambiguous tag (CHOICE?) */,
+		0,
+		&asn_DEF_Cause,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"Cause"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdateFailure_IEs__value, choice.TimeToWait),
 		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
@@ -9829,26 +11938,32 @@
 		"CriticalityDiagnostics"
 		},
 };
-static const unsigned asn_MAP_value_to_canonical_144[] = { 1, 0, 2 };
-static const unsigned asn_MAP_value_from_canonical_144[] = { 1, 0, 2 };
-static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_144[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 }, /* TimeToWait */
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 1 }, /* RANfunctionsIDcause-List */
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 2, -1, 0 } /* CriticalityDiagnostics */
+static const unsigned asn_MAP_value_to_canonical_172[] = { 0, 2, 3, 1 };
+static const unsigned asn_MAP_value_from_canonical_172[] = { 0, 3, 1, 2 };
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_172[] = {
+    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* TransactionID */
+    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 2, 0, 0 }, /* TimeToWait */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 3, 0, 0 }, /* CriticalityDiagnostics */
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 1, 0, 0 }, /* ricRequest */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ricService */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 1, 0, 0 }, /* e2Node */
+    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 1, 0, 0 }, /* transport */
+    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 1, 0, 0 }, /* protocol */
+    { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 1, 0, 0 } /* misc */
 };
-static asn_CHOICE_specifics_t asn_SPC_value_specs_144 = {
+static asn_CHOICE_specifics_t asn_SPC_value_specs_172 = {
 	sizeof(struct RICserviceUpdateFailure_IEs__value),
 	offsetof(struct RICserviceUpdateFailure_IEs__value, _asn_ctx),
 	offsetof(struct RICserviceUpdateFailure_IEs__value, present),
 	sizeof(((struct RICserviceUpdateFailure_IEs__value *)0)->present),
-	asn_MAP_value_tag2el_144,
-	3,	/* Count of tags in the map */
-	asn_MAP_value_to_canonical_144,
-	asn_MAP_value_from_canonical_144,
+	asn_MAP_value_tag2el_172,
+	9,	/* Count of tags in the map */
+	asn_MAP_value_to_canonical_172,
+	asn_MAP_value_from_canonical_172,
 	-1	/* Extensions start */
 };
 static /* Use -fall-defs-global to expose */
-asn_TYPE_descriptor_t asn_DEF_value_144 = {
+asn_TYPE_descriptor_t asn_DEF_value_172 = {
 	"value",
 	"value",
 	&asn_OP_OPEN_TYPE,
@@ -9857,52 +11972,53 @@
 	0,	/* No tags (pointer) */
 	0,	/* No tags (count) */
 	{ 0, 0, OPEN_TYPE_constraint },
-	asn_MBR_value_144,
-	3,	/* Elements count */
-	&asn_SPC_value_specs_144	/* Additional specs */
+	asn_MBR_value_172,
+	4,	/* Elements count */
+	&asn_SPC_value_specs_172	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_RICserviceUpdateFailure_IEs_141[] = {
+asn_TYPE_member_t asn_MBR_RICserviceUpdateFailure_IEs_169[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdateFailure_IEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
-		{ 0, &asn_PER_memb_id_constr_142,  memb_id_constraint_141 },
+		{ 0, &asn_PER_memb_id_constr_170,  memb_id_constraint_169 },
 		0, 0, /* No default value */
 		"id"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdateFailure_IEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
 		select_RICserviceUpdateFailure_IEs_criticality_type,
-		{ 0, &asn_PER_memb_criticality_constr_143,  memb_criticality_constraint_141 },
+		{ 0, &asn_PER_memb_criticality_constr_171,  memb_criticality_constraint_169 },
 		0, 0, /* No default value */
 		"criticality"
 		},
 	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdateFailure_IEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
-		&asn_DEF_value_144,
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_172,
 		select_RICserviceUpdateFailure_IEs_value_type,
-		{ 0, &asn_PER_memb_value_constr_144,  memb_value_constraint_141 },
+		{ 0, &asn_PER_memb_value_constr_172,  memb_value_constraint_169 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_RICserviceUpdateFailure_IEs_tags_141[] = {
+static const ber_tlv_tag_t asn_DEF_RICserviceUpdateFailure_IEs_tags_169[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_RICserviceUpdateFailure_IEs_tag2el_141[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_RICserviceUpdateFailure_IEs_tag2el_169[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_RICserviceUpdateFailure_IEs_specs_141 = {
+asn_SEQUENCE_specifics_t asn_SPC_RICserviceUpdateFailure_IEs_specs_169 = {
 	sizeof(struct RICserviceUpdateFailure_IEs),
 	offsetof(struct RICserviceUpdateFailure_IEs, _asn_ctx),
-	asn_MAP_RICserviceUpdateFailure_IEs_tag2el_141,
-	2,	/* Count of tags in the map */
+	asn_MAP_RICserviceUpdateFailure_IEs_tag2el_169,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
@@ -9910,19 +12026,28 @@
 	"RICserviceUpdateFailure-IEs",
 	"RICserviceUpdateFailure-IEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_RICserviceUpdateFailure_IEs_tags_141,
-	sizeof(asn_DEF_RICserviceUpdateFailure_IEs_tags_141)
-		/sizeof(asn_DEF_RICserviceUpdateFailure_IEs_tags_141[0]), /* 1 */
-	asn_DEF_RICserviceUpdateFailure_IEs_tags_141,	/* Same as above */
-	sizeof(asn_DEF_RICserviceUpdateFailure_IEs_tags_141)
-		/sizeof(asn_DEF_RICserviceUpdateFailure_IEs_tags_141[0]), /* 1 */
+	asn_DEF_RICserviceUpdateFailure_IEs_tags_169,
+	sizeof(asn_DEF_RICserviceUpdateFailure_IEs_tags_169)
+		/sizeof(asn_DEF_RICserviceUpdateFailure_IEs_tags_169[0]), /* 1 */
+	asn_DEF_RICserviceUpdateFailure_IEs_tags_169,	/* Same as above */
+	sizeof(asn_DEF_RICserviceUpdateFailure_IEs_tags_169)
+		/sizeof(asn_DEF_RICserviceUpdateFailure_IEs_tags_169[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_RICserviceUpdateFailure_IEs_141,
+	asn_MBR_RICserviceUpdateFailure_IEs_169,
 	3,	/* Elements count */
-	&asn_SPC_RICserviceUpdateFailure_IEs_specs_141	/* Additional specs */
+	&asn_SPC_RICserviceUpdateFailure_IEs_specs_169	/* Additional specs */
 };
 
-static asn_TYPE_member_t asn_MBR_value_148[] = {
+static asn_TYPE_member_t asn_MBR_value_176[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RICserviceQuery_IEs__value, choice.TransactionID),
+		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
+		0,
+		&asn_DEF_TransactionID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"TransactionID"
+		},
 	{ ATF_NOFLAGS, 0, offsetof(struct RICserviceQuery_IEs__value, choice.RANfunctionsID_List),
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
@@ -9933,21 +12058,22 @@
 		"RANfunctionsID-List"
 		},
 };
-static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_148[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RANfunctionsID-List */
+static const asn_TYPE_tag2member_t asn_MAP_value_tag2el_176[] = {
+    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* TransactionID */
+    { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, 0, 0 } /* RANfunctionsID-List */
 };
-static asn_CHOICE_specifics_t asn_SPC_value_specs_148 = {
+static asn_CHOICE_specifics_t asn_SPC_value_specs_176 = {
 	sizeof(struct RICserviceQuery_IEs__value),
 	offsetof(struct RICserviceQuery_IEs__value, _asn_ctx),
 	offsetof(struct RICserviceQuery_IEs__value, present),
 	sizeof(((struct RICserviceQuery_IEs__value *)0)->present),
-	asn_MAP_value_tag2el_148,
-	1,	/* Count of tags in the map */
+	asn_MAP_value_tag2el_176,
+	2,	/* Count of tags in the map */
 	0, 0,
 	-1	/* Extensions start */
 };
 static /* Use -fall-defs-global to expose */
-asn_TYPE_descriptor_t asn_DEF_value_148 = {
+asn_TYPE_descriptor_t asn_DEF_value_176 = {
 	"value",
 	"value",
 	&asn_OP_OPEN_TYPE,
@@ -9956,52 +12082,53 @@
 	0,	/* No tags (pointer) */
 	0,	/* No tags (count) */
 	{ 0, 0, OPEN_TYPE_constraint },
-	asn_MBR_value_148,
-	1,	/* Elements count */
-	&asn_SPC_value_specs_148	/* Additional specs */
+	asn_MBR_value_176,
+	2,	/* Elements count */
+	&asn_SPC_value_specs_176	/* Additional specs */
 };
 
-asn_TYPE_member_t asn_MBR_RICserviceQuery_IEs_145[] = {
+asn_TYPE_member_t asn_MBR_RICserviceQuery_IEs_173[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICserviceQuery_IEs, id),
-		(ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_ProtocolIE_ID,
 		0,
-		{ 0, &asn_PER_memb_id_constr_146,  memb_id_constraint_145 },
+		{ 0, &asn_PER_memb_id_constr_174,  memb_id_constraint_173 },
 		0, 0, /* No default value */
 		"id"
 		},
 	{ ATF_NOFLAGS, 0, offsetof(struct RICserviceQuery_IEs, criticality),
-		(ASN_TAG_CLASS_UNIVERSAL | (10 << 2)),
-		0,
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_Criticality,
 		select_RICserviceQuery_IEs_criticality_type,
-		{ 0, &asn_PER_memb_criticality_constr_147,  memb_criticality_constraint_145 },
+		{ 0, &asn_PER_memb_criticality_constr_175,  memb_criticality_constraint_173 },
 		0, 0, /* No default value */
 		"criticality"
 		},
 	{ ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct RICserviceQuery_IEs, value),
-		-1 /* Ambiguous tag (ANY?) */,
-		0,
-		&asn_DEF_value_148,
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_value_176,
 		select_RICserviceQuery_IEs_value_type,
-		{ 0, &asn_PER_memb_value_constr_148,  memb_value_constraint_145 },
+		{ 0, &asn_PER_memb_value_constr_176,  memb_value_constraint_173 },
 		0, 0, /* No default value */
 		"value"
 		},
 };
-static const ber_tlv_tag_t asn_DEF_RICserviceQuery_IEs_tags_145[] = {
+static const ber_tlv_tag_t asn_DEF_RICserviceQuery_IEs_tags_173[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-static const asn_TYPE_tag2member_t asn_MAP_RICserviceQuery_IEs_tag2el_145[] = {
-    { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 }, /* id */
-    { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 1, 0, 0 } /* criticality */
+static const asn_TYPE_tag2member_t asn_MAP_RICserviceQuery_IEs_tag2el_173[] = {
+    { (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 */
 };
-asn_SEQUENCE_specifics_t asn_SPC_RICserviceQuery_IEs_specs_145 = {
+asn_SEQUENCE_specifics_t asn_SPC_RICserviceQuery_IEs_specs_173 = {
 	sizeof(struct RICserviceQuery_IEs),
 	offsetof(struct RICserviceQuery_IEs, _asn_ctx),
-	asn_MAP_RICserviceQuery_IEs_tag2el_145,
-	2,	/* Count of tags in the map */
+	asn_MAP_RICserviceQuery_IEs_tag2el_173,
+	3,	/* Count of tags in the map */
 	0, 0, 0,	/* Optional elements (not needed) */
 	-1,	/* First extension addition */
 };
@@ -10009,15 +12136,15 @@
 	"RICserviceQuery-IEs",
 	"RICserviceQuery-IEs",
 	&asn_OP_SEQUENCE,
-	asn_DEF_RICserviceQuery_IEs_tags_145,
-	sizeof(asn_DEF_RICserviceQuery_IEs_tags_145)
-		/sizeof(asn_DEF_RICserviceQuery_IEs_tags_145[0]), /* 1 */
-	asn_DEF_RICserviceQuery_IEs_tags_145,	/* Same as above */
-	sizeof(asn_DEF_RICserviceQuery_IEs_tags_145)
-		/sizeof(asn_DEF_RICserviceQuery_IEs_tags_145[0]), /* 1 */
+	asn_DEF_RICserviceQuery_IEs_tags_173,
+	sizeof(asn_DEF_RICserviceQuery_IEs_tags_173)
+		/sizeof(asn_DEF_RICserviceQuery_IEs_tags_173[0]), /* 1 */
+	asn_DEF_RICserviceQuery_IEs_tags_173,	/* Same as above */
+	sizeof(asn_DEF_RICserviceQuery_IEs_tags_173)
+		/sizeof(asn_DEF_RICserviceQuery_IEs_tags_173[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_RICserviceQuery_IEs_145,
+	asn_MBR_RICserviceQuery_IEs_173,
 	3,	/* Elements count */
-	&asn_SPC_RICserviceQuery_IEs_specs_145	/* Additional specs */
+	&asn_SPC_RICserviceQuery_IEs_specs_173	/* Additional specs */
 };
 
diff --git a/e2sim/src/ASN1c/ProtocolIE-Field.h b/e2sim/src/ASN1c/ProtocolIE-Field.h
index bf80722..1efc9c1 100644
--- a/e2sim/src/ASN1c/ProtocolIE-Field.h
+++ b/e2sim/src/ASN1c/ProtocolIE-Field.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-Containers"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_ProtocolIE_Field_H_
@@ -23,11 +23,17 @@
 #include "constr_SEQUENCE.h"
 #include "RICaction-Admitted-Item.h"
 #include "RICaction-NotAdmitted-Item.h"
+#include "RICsubscription-withCause-Item.h"
 #include "E2connectionUpdate-Item.h"
 #include "E2connectionUpdateRemove-Item.h"
 #include "E2connectionSetupFailed-Item.h"
+#include "E2nodeComponentConfigAddition-Item.h"
 #include "E2nodeComponentConfigUpdate-Item.h"
+#include "E2nodeComponentConfigRemoval-Item.h"
+#include "E2nodeTNLassociationRemoval-Item.h"
+#include "E2nodeComponentConfigAdditionAck-Item.h"
 #include "E2nodeComponentConfigUpdateAck-Item.h"
+#include "E2nodeComponentConfigRemovalAck-Item.h"
 #include "RANfunction-Item.h"
 #include "RANfunctionID-Item.h"
 #include "RANfunctionIDcause-Item.h"
@@ -36,8 +42,9 @@
 #include "RICsubscriptionDetails.h"
 #include "RICaction-Admitted-List.h"
 #include "RICaction-NotAdmitted-List.h"
-#include "CriticalityDiagnostics.h"
 #include "Cause.h"
+#include "CriticalityDiagnostics.h"
+#include "RICsubscription-List-withCause.h"
 #include "RICactionID.h"
 #include "RICindicationSN.h"
 #include "RICindicationType.h"
@@ -47,20 +54,25 @@
 #include "RICcontrolHeader.h"
 #include "RICcontrolMessage.h"
 #include "RICcontrolAckRequest.h"
-#include "RICcontrolStatus.h"
 #include "RICcontrolOutcome.h"
+#include "TransactionID.h"
 #include "GlobalE2node-ID.h"
 #include "RANfunctions-List.h"
-#include "E2nodeComponentConfigUpdate-List.h"
+#include "E2nodeComponentConfigAddition-List.h"
 #include "GlobalRIC-ID.h"
 #include "RANfunctionsID-List.h"
 #include "RANfunctionsIDcause-List.h"
-#include "E2nodeComponentConfigUpdateAck-List.h"
+#include "E2nodeComponentConfigAdditionAck-List.h"
 #include "TimeToWait.h"
 #include "TNLinformation.h"
 #include "E2connectionUpdate-List.h"
 #include "E2connectionUpdateRemove-List.h"
 #include "E2connectionSetupFailed-List.h"
+#include "E2nodeComponentConfigUpdate-List.h"
+#include "E2nodeComponentConfigRemoval-List.h"
+#include "E2nodeTNLassociationRemoval-List.h"
+#include "E2nodeComponentConfigUpdateAck-List.h"
+#include "E2nodeComponentConfigRemovalAck-List.h"
 
 #ifdef __cplusplus
 extern "C" {
@@ -79,6 +91,10 @@
 	RICaction_NotAdmitted_ItemIEs__value_PR_NOTHING,	/* No components present */
 	RICaction_NotAdmitted_ItemIEs__value_PR_RICaction_NotAdmitted_Item
 } RICaction_NotAdmitted_ItemIEs__value_PR;
+typedef enum RICsubscription_withCause_ItemIEs__value_PR {
+	RICsubscription_withCause_ItemIEs__value_PR_NOTHING,	/* No components present */
+	RICsubscription_withCause_ItemIEs__value_PR_RICsubscription_withCause_Item
+} RICsubscription_withCause_ItemIEs__value_PR;
 typedef enum E2connectionUpdate_ItemIEs__value_PR {
 	E2connectionUpdate_ItemIEs__value_PR_NOTHING,	/* No components present */
 	E2connectionUpdate_ItemIEs__value_PR_E2connectionUpdate_Item
@@ -91,14 +107,34 @@
 	E2connectionSetupFailed_ItemIEs__value_PR_NOTHING,	/* No components present */
 	E2connectionSetupFailed_ItemIEs__value_PR_E2connectionSetupFailed_Item
 } E2connectionSetupFailed_ItemIEs__value_PR;
+typedef enum E2nodeComponentConfigAddition_ItemIEs__value_PR {
+	E2nodeComponentConfigAddition_ItemIEs__value_PR_NOTHING,	/* No components present */
+	E2nodeComponentConfigAddition_ItemIEs__value_PR_E2nodeComponentConfigAddition_Item
+} E2nodeComponentConfigAddition_ItemIEs__value_PR;
 typedef enum E2nodeComponentConfigUpdate_ItemIEs__value_PR {
 	E2nodeComponentConfigUpdate_ItemIEs__value_PR_NOTHING,	/* No components present */
 	E2nodeComponentConfigUpdate_ItemIEs__value_PR_E2nodeComponentConfigUpdate_Item
 } E2nodeComponentConfigUpdate_ItemIEs__value_PR;
+typedef enum E2nodeComponentConfigRemoval_ItemIEs__value_PR {
+	E2nodeComponentConfigRemoval_ItemIEs__value_PR_NOTHING,	/* No components present */
+	E2nodeComponentConfigRemoval_ItemIEs__value_PR_E2nodeComponentConfigRemoval_Item
+} E2nodeComponentConfigRemoval_ItemIEs__value_PR;
+typedef enum E2nodeTNLassociationRemoval_ItemIEs__value_PR {
+	E2nodeTNLassociationRemoval_ItemIEs__value_PR_NOTHING,	/* No components present */
+	E2nodeTNLassociationRemoval_ItemIEs__value_PR_E2nodeTNLassociationRemoval_Item
+} E2nodeTNLassociationRemoval_ItemIEs__value_PR;
+typedef enum E2nodeComponentConfigAdditionAck_ItemIEs__value_PR {
+	E2nodeComponentConfigAdditionAck_ItemIEs__value_PR_NOTHING,	/* No components present */
+	E2nodeComponentConfigAdditionAck_ItemIEs__value_PR_E2nodeComponentConfigAdditionAck_Item
+} E2nodeComponentConfigAdditionAck_ItemIEs__value_PR;
 typedef enum E2nodeComponentConfigUpdateAck_ItemIEs__value_PR {
 	E2nodeComponentConfigUpdateAck_ItemIEs__value_PR_NOTHING,	/* No components present */
 	E2nodeComponentConfigUpdateAck_ItemIEs__value_PR_E2nodeComponentConfigUpdateAck_Item
 } E2nodeComponentConfigUpdateAck_ItemIEs__value_PR;
+typedef enum E2nodeComponentConfigRemovalAck_ItemIEs__value_PR {
+	E2nodeComponentConfigRemovalAck_ItemIEs__value_PR_NOTHING,	/* No components present */
+	E2nodeComponentConfigRemovalAck_ItemIEs__value_PR_E2nodeComponentConfigRemovalAck_Item
+} E2nodeComponentConfigRemovalAck_ItemIEs__value_PR;
 typedef enum RANfunction_ItemIEs__value_PR {
 	RANfunction_ItemIEs__value_PR_NOTHING,	/* No components present */
 	RANfunction_ItemIEs__value_PR_RANfunction_Item
@@ -128,7 +164,7 @@
 	RICsubscriptionFailure_IEs__value_PR_NOTHING,	/* No components present */
 	RICsubscriptionFailure_IEs__value_PR_RICrequestID,
 	RICsubscriptionFailure_IEs__value_PR_RANfunctionID,
-	RICsubscriptionFailure_IEs__value_PR_RICaction_NotAdmitted_List,
+	RICsubscriptionFailure_IEs__value_PR_Cause,
 	RICsubscriptionFailure_IEs__value_PR_CriticalityDiagnostics
 } RICsubscriptionFailure_IEs__value_PR;
 typedef enum RICsubscriptionDeleteRequest_IEs__value_PR {
@@ -148,6 +184,10 @@
 	RICsubscriptionDeleteFailure_IEs__value_PR_Cause,
 	RICsubscriptionDeleteFailure_IEs__value_PR_CriticalityDiagnostics
 } RICsubscriptionDeleteFailure_IEs__value_PR;
+typedef enum RICsubscriptionDeleteRequired_IEs__value_PR {
+	RICsubscriptionDeleteRequired_IEs__value_PR_NOTHING,	/* No components present */
+	RICsubscriptionDeleteRequired_IEs__value_PR_RICsubscription_List_withCause
+} RICsubscriptionDeleteRequired_IEs__value_PR;
 typedef enum RICindication_IEs__value_PR {
 	RICindication_IEs__value_PR_NOTHING,	/* No components present */
 	RICindication_IEs__value_PR_RICrequestID,
@@ -173,7 +213,6 @@
 	RICcontrolAcknowledge_IEs__value_PR_RICrequestID,
 	RICcontrolAcknowledge_IEs__value_PR_RANfunctionID,
 	RICcontrolAcknowledge_IEs__value_PR_RICcallProcessID,
-	RICcontrolAcknowledge_IEs__value_PR_RICcontrolStatus,
 	RICcontrolAcknowledge_IEs__value_PR_RICcontrolOutcome
 } RICcontrolAcknowledge_IEs__value_PR;
 typedef enum RICcontrolFailure_IEs__value_PR {
@@ -186,6 +225,7 @@
 } RICcontrolFailure_IEs__value_PR;
 typedef enum ErrorIndication_IEs__value_PR {
 	ErrorIndication_IEs__value_PR_NOTHING,	/* No components present */
+	ErrorIndication_IEs__value_PR_TransactionID,
 	ErrorIndication_IEs__value_PR_RICrequestID,
 	ErrorIndication_IEs__value_PR_RANfunctionID,
 	ErrorIndication_IEs__value_PR_Cause,
@@ -193,19 +233,22 @@
 } ErrorIndication_IEs__value_PR;
 typedef enum E2setupRequestIEs__value_PR {
 	E2setupRequestIEs__value_PR_NOTHING,	/* No components present */
+	E2setupRequestIEs__value_PR_TransactionID,
 	E2setupRequestIEs__value_PR_GlobalE2node_ID,
 	E2setupRequestIEs__value_PR_RANfunctions_List,
-	E2setupRequestIEs__value_PR_E2nodeComponentConfigUpdate_List
+	E2setupRequestIEs__value_PR_E2nodeComponentConfigAddition_List
 } E2setupRequestIEs__value_PR;
 typedef enum E2setupResponseIEs__value_PR {
 	E2setupResponseIEs__value_PR_NOTHING,	/* No components present */
+	E2setupResponseIEs__value_PR_TransactionID,
 	E2setupResponseIEs__value_PR_GlobalRIC_ID,
 	E2setupResponseIEs__value_PR_RANfunctionsID_List,
 	E2setupResponseIEs__value_PR_RANfunctionsIDcause_List,
-	E2setupResponseIEs__value_PR_E2nodeComponentConfigUpdateAck_List
+	E2setupResponseIEs__value_PR_E2nodeComponentConfigAdditionAck_List
 } E2setupResponseIEs__value_PR;
 typedef enum E2setupFailureIEs__value_PR {
 	E2setupFailureIEs__value_PR_NOTHING,	/* No components present */
+	E2setupFailureIEs__value_PR_TransactionID,
 	E2setupFailureIEs__value_PR_Cause,
 	E2setupFailureIEs__value_PR_TimeToWait,
 	E2setupFailureIEs__value_PR_CriticalityDiagnostics,
@@ -213,60 +256,78 @@
 } E2setupFailureIEs__value_PR;
 typedef enum E2connectionUpdate_IEs__value_PR {
 	E2connectionUpdate_IEs__value_PR_NOTHING,	/* No components present */
+	E2connectionUpdate_IEs__value_PR_TransactionID,
 	E2connectionUpdate_IEs__value_PR_E2connectionUpdate_List,
 	E2connectionUpdate_IEs__value_PR_E2connectionUpdateRemove_List
 } E2connectionUpdate_IEs__value_PR;
 typedef enum E2connectionUpdateAck_IEs__value_PR {
 	E2connectionUpdateAck_IEs__value_PR_NOTHING,	/* No components present */
+	E2connectionUpdateAck_IEs__value_PR_TransactionID,
 	E2connectionUpdateAck_IEs__value_PR_E2connectionUpdate_List,
 	E2connectionUpdateAck_IEs__value_PR_E2connectionSetupFailed_List
 } E2connectionUpdateAck_IEs__value_PR;
 typedef enum E2connectionUpdateFailure_IEs__value_PR {
 	E2connectionUpdateFailure_IEs__value_PR_NOTHING,	/* No components present */
+	E2connectionUpdateFailure_IEs__value_PR_TransactionID,
 	E2connectionUpdateFailure_IEs__value_PR_Cause,
 	E2connectionUpdateFailure_IEs__value_PR_TimeToWait,
 	E2connectionUpdateFailure_IEs__value_PR_CriticalityDiagnostics
 } E2connectionUpdateFailure_IEs__value_PR;
 typedef enum E2nodeConfigurationUpdate_IEs__value_PR {
 	E2nodeConfigurationUpdate_IEs__value_PR_NOTHING,	/* No components present */
-	E2nodeConfigurationUpdate_IEs__value_PR_E2nodeComponentConfigUpdate_List
+	E2nodeConfigurationUpdate_IEs__value_PR_TransactionID,
+	E2nodeConfigurationUpdate_IEs__value_PR_GlobalE2node_ID,
+	E2nodeConfigurationUpdate_IEs__value_PR_E2nodeComponentConfigAddition_List,
+	E2nodeConfigurationUpdate_IEs__value_PR_E2nodeComponentConfigUpdate_List,
+	E2nodeConfigurationUpdate_IEs__value_PR_E2nodeComponentConfigRemoval_List,
+	E2nodeConfigurationUpdate_IEs__value_PR_E2nodeTNLassociationRemoval_List
 } E2nodeConfigurationUpdate_IEs__value_PR;
 typedef enum E2nodeConfigurationUpdateAcknowledge_IEs__value_PR {
 	E2nodeConfigurationUpdateAcknowledge_IEs__value_PR_NOTHING,	/* No components present */
-	E2nodeConfigurationUpdateAcknowledge_IEs__value_PR_E2nodeComponentConfigUpdateAck_List
+	E2nodeConfigurationUpdateAcknowledge_IEs__value_PR_TransactionID,
+	E2nodeConfigurationUpdateAcknowledge_IEs__value_PR_E2nodeComponentConfigAdditionAck_List,
+	E2nodeConfigurationUpdateAcknowledge_IEs__value_PR_E2nodeComponentConfigUpdateAck_List,
+	E2nodeConfigurationUpdateAcknowledge_IEs__value_PR_E2nodeComponentConfigRemovalAck_List
 } E2nodeConfigurationUpdateAcknowledge_IEs__value_PR;
 typedef enum E2nodeConfigurationUpdateFailure_IEs__value_PR {
 	E2nodeConfigurationUpdateFailure_IEs__value_PR_NOTHING,	/* No components present */
+	E2nodeConfigurationUpdateFailure_IEs__value_PR_TransactionID,
 	E2nodeConfigurationUpdateFailure_IEs__value_PR_Cause,
 	E2nodeConfigurationUpdateFailure_IEs__value_PR_TimeToWait,
 	E2nodeConfigurationUpdateFailure_IEs__value_PR_CriticalityDiagnostics
 } E2nodeConfigurationUpdateFailure_IEs__value_PR;
 typedef enum ResetRequestIEs__value_PR {
 	ResetRequestIEs__value_PR_NOTHING,	/* No components present */
+	ResetRequestIEs__value_PR_TransactionID,
 	ResetRequestIEs__value_PR_Cause
 } ResetRequestIEs__value_PR;
 typedef enum ResetResponseIEs__value_PR {
 	ResetResponseIEs__value_PR_NOTHING,	/* No components present */
+	ResetResponseIEs__value_PR_TransactionID,
 	ResetResponseIEs__value_PR_CriticalityDiagnostics
 } ResetResponseIEs__value_PR;
 typedef enum RICserviceUpdate_IEs__value_PR {
 	RICserviceUpdate_IEs__value_PR_NOTHING,	/* No components present */
+	RICserviceUpdate_IEs__value_PR_TransactionID,
 	RICserviceUpdate_IEs__value_PR_RANfunctions_List,
 	RICserviceUpdate_IEs__value_PR_RANfunctionsID_List
 } RICserviceUpdate_IEs__value_PR;
 typedef enum RICserviceUpdateAcknowledge_IEs__value_PR {
 	RICserviceUpdateAcknowledge_IEs__value_PR_NOTHING,	/* No components present */
+	RICserviceUpdateAcknowledge_IEs__value_PR_TransactionID,
 	RICserviceUpdateAcknowledge_IEs__value_PR_RANfunctionsID_List,
 	RICserviceUpdateAcknowledge_IEs__value_PR_RANfunctionsIDcause_List
 } RICserviceUpdateAcknowledge_IEs__value_PR;
 typedef enum RICserviceUpdateFailure_IEs__value_PR {
 	RICserviceUpdateFailure_IEs__value_PR_NOTHING,	/* No components present */
-	RICserviceUpdateFailure_IEs__value_PR_RANfunctionsIDcause_List,
+	RICserviceUpdateFailure_IEs__value_PR_TransactionID,
+	RICserviceUpdateFailure_IEs__value_PR_Cause,
 	RICserviceUpdateFailure_IEs__value_PR_TimeToWait,
 	RICserviceUpdateFailure_IEs__value_PR_CriticalityDiagnostics
 } RICserviceUpdateFailure_IEs__value_PR;
 typedef enum RICserviceQuery_IEs__value_PR {
 	RICserviceQuery_IEs__value_PR_NOTHING,	/* No components present */
+	RICserviceQuery_IEs__value_PR_TransactionID,
 	RICserviceQuery_IEs__value_PR_RANfunctionsID_List
 } RICserviceQuery_IEs__value_PR;
 
@@ -319,6 +380,22 @@
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
 } RICaction_NotAdmitted_ItemIEs_t;
+typedef struct RICsubscription_withCause_ItemIEs {
+	ProtocolIE_ID_t	 id;
+	Criticality_t	 criticality;
+	struct RICsubscription_withCause_ItemIEs__value {
+		RICsubscription_withCause_ItemIEs__value_PR present;
+		union RICsubscription_withCause_ItemIEs__value_u {
+			RICsubscription_withCause_Item_t	 RICsubscription_withCause_Item;
+		} choice;
+		
+		/* Context for parsing across buffer boundaries */
+		asn_struct_ctx_t _asn_ctx;
+	} value;
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RICsubscription_withCause_ItemIEs_t;
 typedef struct E2connectionUpdate_ItemIEs {
 	ProtocolIE_ID_t	 id;
 	Criticality_t	 criticality;
@@ -367,6 +444,22 @@
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
 } E2connectionSetupFailed_ItemIEs_t;
+typedef struct E2nodeComponentConfigAddition_ItemIEs {
+	ProtocolIE_ID_t	 id;
+	Criticality_t	 criticality;
+	struct E2nodeComponentConfigAddition_ItemIEs__value {
+		E2nodeComponentConfigAddition_ItemIEs__value_PR present;
+		union E2nodeComponentConfigAddition_ItemIEs__value_u {
+			E2nodeComponentConfigAddition_Item_t	 E2nodeComponentConfigAddition_Item;
+		} choice;
+		
+		/* Context for parsing across buffer boundaries */
+		asn_struct_ctx_t _asn_ctx;
+	} value;
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} E2nodeComponentConfigAddition_ItemIEs_t;
 typedef struct E2nodeComponentConfigUpdate_ItemIEs {
 	ProtocolIE_ID_t	 id;
 	Criticality_t	 criticality;
@@ -383,6 +476,54 @@
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
 } E2nodeComponentConfigUpdate_ItemIEs_t;
+typedef struct E2nodeComponentConfigRemoval_ItemIEs {
+	ProtocolIE_ID_t	 id;
+	Criticality_t	 criticality;
+	struct E2nodeComponentConfigRemoval_ItemIEs__value {
+		E2nodeComponentConfigRemoval_ItemIEs__value_PR present;
+		union E2nodeComponentConfigRemoval_ItemIEs__value_u {
+			E2nodeComponentConfigRemoval_Item_t	 E2nodeComponentConfigRemoval_Item;
+		} choice;
+		
+		/* Context for parsing across buffer boundaries */
+		asn_struct_ctx_t _asn_ctx;
+	} value;
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} E2nodeComponentConfigRemoval_ItemIEs_t;
+typedef struct E2nodeTNLassociationRemoval_ItemIEs {
+	ProtocolIE_ID_t	 id;
+	Criticality_t	 criticality;
+	struct E2nodeTNLassociationRemoval_ItemIEs__value {
+		E2nodeTNLassociationRemoval_ItemIEs__value_PR present;
+		union E2nodeTNLassociationRemoval_ItemIEs__value_u {
+			E2nodeTNLassociationRemoval_Item_t	 E2nodeTNLassociationRemoval_Item;
+		} choice;
+		
+		/* Context for parsing across buffer boundaries */
+		asn_struct_ctx_t _asn_ctx;
+	} value;
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} E2nodeTNLassociationRemoval_ItemIEs_t;
+typedef struct E2nodeComponentConfigAdditionAck_ItemIEs {
+	ProtocolIE_ID_t	 id;
+	Criticality_t	 criticality;
+	struct E2nodeComponentConfigAdditionAck_ItemIEs__value {
+		E2nodeComponentConfigAdditionAck_ItemIEs__value_PR present;
+		union E2nodeComponentConfigAdditionAck_ItemIEs__value_u {
+			E2nodeComponentConfigAdditionAck_Item_t	 E2nodeComponentConfigAdditionAck_Item;
+		} choice;
+		
+		/* Context for parsing across buffer boundaries */
+		asn_struct_ctx_t _asn_ctx;
+	} value;
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} E2nodeComponentConfigAdditionAck_ItemIEs_t;
 typedef struct E2nodeComponentConfigUpdateAck_ItemIEs {
 	ProtocolIE_ID_t	 id;
 	Criticality_t	 criticality;
@@ -399,6 +540,22 @@
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
 } E2nodeComponentConfigUpdateAck_ItemIEs_t;
+typedef struct E2nodeComponentConfigRemovalAck_ItemIEs {
+	ProtocolIE_ID_t	 id;
+	Criticality_t	 criticality;
+	struct E2nodeComponentConfigRemovalAck_ItemIEs__value {
+		E2nodeComponentConfigRemovalAck_ItemIEs__value_PR present;
+		union E2nodeComponentConfigRemovalAck_ItemIEs__value_u {
+			E2nodeComponentConfigRemovalAck_Item_t	 E2nodeComponentConfigRemovalAck_Item;
+		} choice;
+		
+		/* Context for parsing across buffer boundaries */
+		asn_struct_ctx_t _asn_ctx;
+	} value;
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} E2nodeComponentConfigRemovalAck_ItemIEs_t;
 typedef struct RANfunction_ItemIEs {
 	ProtocolIE_ID_t	 id;
 	Criticality_t	 criticality;
@@ -492,7 +649,7 @@
 		union RICsubscriptionFailure_IEs__value_u {
 			RICrequestID_t	 RICrequestID;
 			RANfunctionID_t	 RANfunctionID;
-			RICaction_NotAdmitted_List_t	 RICaction_NotAdmitted_List;
+			Cause_t	 Cause;
 			CriticalityDiagnostics_t	 CriticalityDiagnostics;
 		} choice;
 		
@@ -556,6 +713,22 @@
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
 } RICsubscriptionDeleteFailure_IEs_t;
+typedef struct RICsubscriptionDeleteRequired_IEs {
+	ProtocolIE_ID_t	 id;
+	Criticality_t	 criticality;
+	struct RICsubscriptionDeleteRequired_IEs__value {
+		RICsubscriptionDeleteRequired_IEs__value_PR present;
+		union RICsubscriptionDeleteRequired_IEs__value_u {
+			RICsubscription_List_withCause_t	 RICsubscription_List_withCause;
+		} choice;
+		
+		/* Context for parsing across buffer boundaries */
+		asn_struct_ctx_t _asn_ctx;
+	} value;
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RICsubscriptionDeleteRequired_IEs_t;
 typedef struct RICindication_IEs {
 	ProtocolIE_ID_t	 id;
 	Criticality_t	 criticality;
@@ -609,7 +782,6 @@
 			RICrequestID_t	 RICrequestID;
 			RANfunctionID_t	 RANfunctionID;
 			RICcallProcessID_t	 RICcallProcessID;
-			RICcontrolStatus_t	 RICcontrolStatus;
 			RICcontrolOutcome_t	 RICcontrolOutcome;
 		} choice;
 		
@@ -646,6 +818,7 @@
 	struct ErrorIndication_IEs__value {
 		ErrorIndication_IEs__value_PR present;
 		union ErrorIndication_IEs__value_u {
+			TransactionID_t	 TransactionID;
 			RICrequestID_t	 RICrequestID;
 			RANfunctionID_t	 RANfunctionID;
 			Cause_t	 Cause;
@@ -665,9 +838,10 @@
 	struct E2setupRequestIEs__value {
 		E2setupRequestIEs__value_PR present;
 		union E2setupRequestIEs__value_u {
+			TransactionID_t	 TransactionID;
 			GlobalE2node_ID_t	 GlobalE2node_ID;
 			RANfunctions_List_t	 RANfunctions_List;
-			E2nodeComponentConfigUpdate_List_t	 E2nodeComponentConfigUpdate_List;
+			E2nodeComponentConfigAddition_List_t	 E2nodeComponentConfigAddition_List;
 		} choice;
 		
 		/* Context for parsing across buffer boundaries */
@@ -683,10 +857,11 @@
 	struct E2setupResponseIEs__value {
 		E2setupResponseIEs__value_PR present;
 		union E2setupResponseIEs__value_u {
+			TransactionID_t	 TransactionID;
 			GlobalRIC_ID_t	 GlobalRIC_ID;
 			RANfunctionsID_List_t	 RANfunctionsID_List;
 			RANfunctionsIDcause_List_t	 RANfunctionsIDcause_List;
-			E2nodeComponentConfigUpdateAck_List_t	 E2nodeComponentConfigUpdateAck_List;
+			E2nodeComponentConfigAdditionAck_List_t	 E2nodeComponentConfigAdditionAck_List;
 		} choice;
 		
 		/* Context for parsing across buffer boundaries */
@@ -702,6 +877,7 @@
 	struct E2setupFailureIEs__value {
 		E2setupFailureIEs__value_PR present;
 		union E2setupFailureIEs__value_u {
+			TransactionID_t	 TransactionID;
 			Cause_t	 Cause;
 			TimeToWait_t	 TimeToWait;
 			CriticalityDiagnostics_t	 CriticalityDiagnostics;
@@ -721,6 +897,7 @@
 	struct E2connectionUpdate_IEs__value {
 		E2connectionUpdate_IEs__value_PR present;
 		union E2connectionUpdate_IEs__value_u {
+			TransactionID_t	 TransactionID;
 			E2connectionUpdate_List_t	 E2connectionUpdate_List;
 			E2connectionUpdateRemove_List_t	 E2connectionUpdateRemove_List;
 		} choice;
@@ -738,6 +915,7 @@
 	struct E2connectionUpdateAck_IEs__value {
 		E2connectionUpdateAck_IEs__value_PR present;
 		union E2connectionUpdateAck_IEs__value_u {
+			TransactionID_t	 TransactionID;
 			E2connectionUpdate_List_t	 E2connectionUpdate_List;
 			E2connectionSetupFailed_List_t	 E2connectionSetupFailed_List;
 		} choice;
@@ -755,6 +933,7 @@
 	struct E2connectionUpdateFailure_IEs__value {
 		E2connectionUpdateFailure_IEs__value_PR present;
 		union E2connectionUpdateFailure_IEs__value_u {
+			TransactionID_t	 TransactionID;
 			Cause_t	 Cause;
 			TimeToWait_t	 TimeToWait;
 			CriticalityDiagnostics_t	 CriticalityDiagnostics;
@@ -773,7 +952,12 @@
 	struct E2nodeConfigurationUpdate_IEs__value {
 		E2nodeConfigurationUpdate_IEs__value_PR present;
 		union E2nodeConfigurationUpdate_IEs__value_u {
+			TransactionID_t	 TransactionID;
+			GlobalE2node_ID_t	 GlobalE2node_ID;
+			E2nodeComponentConfigAddition_List_t	 E2nodeComponentConfigAddition_List;
 			E2nodeComponentConfigUpdate_List_t	 E2nodeComponentConfigUpdate_List;
+			E2nodeComponentConfigRemoval_List_t	 E2nodeComponentConfigRemoval_List;
+			E2nodeTNLassociationRemoval_List_t	 E2nodeTNLassociationRemoval_List;
 		} choice;
 		
 		/* Context for parsing across buffer boundaries */
@@ -789,7 +973,10 @@
 	struct E2nodeConfigurationUpdateAcknowledge_IEs__value {
 		E2nodeConfigurationUpdateAcknowledge_IEs__value_PR present;
 		union E2nodeConfigurationUpdateAcknowledge_IEs__value_u {
+			TransactionID_t	 TransactionID;
+			E2nodeComponentConfigAdditionAck_List_t	 E2nodeComponentConfigAdditionAck_List;
 			E2nodeComponentConfigUpdateAck_List_t	 E2nodeComponentConfigUpdateAck_List;
+			E2nodeComponentConfigRemovalAck_List_t	 E2nodeComponentConfigRemovalAck_List;
 		} choice;
 		
 		/* Context for parsing across buffer boundaries */
@@ -805,6 +992,7 @@
 	struct E2nodeConfigurationUpdateFailure_IEs__value {
 		E2nodeConfigurationUpdateFailure_IEs__value_PR present;
 		union E2nodeConfigurationUpdateFailure_IEs__value_u {
+			TransactionID_t	 TransactionID;
 			Cause_t	 Cause;
 			TimeToWait_t	 TimeToWait;
 			CriticalityDiagnostics_t	 CriticalityDiagnostics;
@@ -823,6 +1011,7 @@
 	struct ResetRequestIEs__value {
 		ResetRequestIEs__value_PR present;
 		union ResetRequestIEs__value_u {
+			TransactionID_t	 TransactionID;
 			Cause_t	 Cause;
 		} choice;
 		
@@ -839,6 +1028,7 @@
 	struct ResetResponseIEs__value {
 		ResetResponseIEs__value_PR present;
 		union ResetResponseIEs__value_u {
+			TransactionID_t	 TransactionID;
 			CriticalityDiagnostics_t	 CriticalityDiagnostics;
 		} choice;
 		
@@ -855,6 +1045,7 @@
 	struct RICserviceUpdate_IEs__value {
 		RICserviceUpdate_IEs__value_PR present;
 		union RICserviceUpdate_IEs__value_u {
+			TransactionID_t	 TransactionID;
 			RANfunctions_List_t	 RANfunctions_List;
 			RANfunctionsID_List_t	 RANfunctionsID_List;
 		} choice;
@@ -872,6 +1063,7 @@
 	struct RICserviceUpdateAcknowledge_IEs__value {
 		RICserviceUpdateAcknowledge_IEs__value_PR present;
 		union RICserviceUpdateAcknowledge_IEs__value_u {
+			TransactionID_t	 TransactionID;
 			RANfunctionsID_List_t	 RANfunctionsID_List;
 			RANfunctionsIDcause_List_t	 RANfunctionsIDcause_List;
 		} choice;
@@ -889,7 +1081,8 @@
 	struct RICserviceUpdateFailure_IEs__value {
 		RICserviceUpdateFailure_IEs__value_PR present;
 		union RICserviceUpdateFailure_IEs__value_u {
-			RANfunctionsIDcause_List_t	 RANfunctionsIDcause_List;
+			TransactionID_t	 TransactionID;
+			Cause_t	 Cause;
 			TimeToWait_t	 TimeToWait;
 			CriticalityDiagnostics_t	 CriticalityDiagnostics;
 		} choice;
@@ -907,6 +1100,7 @@
 	struct RICserviceQuery_IEs__value {
 		RICserviceQuery_IEs__value_PR present;
 		union RICserviceQuery_IEs__value_u {
+			TransactionID_t	 TransactionID;
 			RANfunctionsID_List_t	 RANfunctionsID_List;
 		} choice;
 		
@@ -928,108 +1122,129 @@
 extern asn_TYPE_descriptor_t asn_DEF_RICaction_NotAdmitted_ItemIEs;
 extern asn_SEQUENCE_specifics_t asn_SPC_RICaction_NotAdmitted_ItemIEs_specs_9;
 extern asn_TYPE_member_t asn_MBR_RICaction_NotAdmitted_ItemIEs_9[3];
+extern asn_TYPE_descriptor_t asn_DEF_RICsubscription_withCause_ItemIEs;
+extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscription_withCause_ItemIEs_specs_13;
+extern asn_TYPE_member_t asn_MBR_RICsubscription_withCause_ItemIEs_13[3];
 extern asn_TYPE_descriptor_t asn_DEF_E2connectionUpdate_ItemIEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_E2connectionUpdate_ItemIEs_specs_13;
-extern asn_TYPE_member_t asn_MBR_E2connectionUpdate_ItemIEs_13[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_E2connectionUpdate_ItemIEs_specs_17;
+extern asn_TYPE_member_t asn_MBR_E2connectionUpdate_ItemIEs_17[3];
 extern asn_TYPE_descriptor_t asn_DEF_E2connectionUpdateRemove_ItemIEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_E2connectionUpdateRemove_ItemIEs_specs_17;
-extern asn_TYPE_member_t asn_MBR_E2connectionUpdateRemove_ItemIEs_17[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_E2connectionUpdateRemove_ItemIEs_specs_21;
+extern asn_TYPE_member_t asn_MBR_E2connectionUpdateRemove_ItemIEs_21[3];
 extern asn_TYPE_descriptor_t asn_DEF_E2connectionSetupFailed_ItemIEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_E2connectionSetupFailed_ItemIEs_specs_21;
-extern asn_TYPE_member_t asn_MBR_E2connectionSetupFailed_ItemIEs_21[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_E2connectionSetupFailed_ItemIEs_specs_25;
+extern asn_TYPE_member_t asn_MBR_E2connectionSetupFailed_ItemIEs_25[3];
+extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigAddition_ItemIEs;
+extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigAddition_ItemIEs_specs_29;
+extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigAddition_ItemIEs_29[3];
 extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdate_ItemIEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdate_ItemIEs_specs_25;
-extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdate_ItemIEs_25[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdate_ItemIEs_specs_33;
+extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdate_ItemIEs_33[3];
+extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigRemoval_ItemIEs;
+extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigRemoval_ItemIEs_specs_37;
+extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigRemoval_ItemIEs_37[3];
+extern asn_TYPE_descriptor_t asn_DEF_E2nodeTNLassociationRemoval_ItemIEs;
+extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeTNLassociationRemoval_ItemIEs_specs_41;
+extern asn_TYPE_member_t asn_MBR_E2nodeTNLassociationRemoval_ItemIEs_41[3];
+extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigAdditionAck_ItemIEs;
+extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigAdditionAck_ItemIEs_specs_45;
+extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigAdditionAck_ItemIEs_45[3];
 extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigUpdateAck_ItemIEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdateAck_ItemIEs_specs_29;
-extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdateAck_ItemIEs_29[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigUpdateAck_ItemIEs_specs_49;
+extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigUpdateAck_ItemIEs_49[3];
+extern asn_TYPE_descriptor_t asn_DEF_E2nodeComponentConfigRemovalAck_ItemIEs;
+extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeComponentConfigRemovalAck_ItemIEs_specs_53;
+extern asn_TYPE_member_t asn_MBR_E2nodeComponentConfigRemovalAck_ItemIEs_53[3];
 extern asn_TYPE_descriptor_t asn_DEF_RANfunction_ItemIEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_RANfunction_ItemIEs_specs_33;
-extern asn_TYPE_member_t asn_MBR_RANfunction_ItemIEs_33[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_RANfunction_ItemIEs_specs_57;
+extern asn_TYPE_member_t asn_MBR_RANfunction_ItemIEs_57[3];
 extern asn_TYPE_descriptor_t asn_DEF_RANfunctionID_ItemIEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_RANfunctionID_ItemIEs_specs_37;
-extern asn_TYPE_member_t asn_MBR_RANfunctionID_ItemIEs_37[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_RANfunctionID_ItemIEs_specs_61;
+extern asn_TYPE_member_t asn_MBR_RANfunctionID_ItemIEs_61[3];
 extern asn_TYPE_descriptor_t asn_DEF_RANfunctionIDcause_ItemIEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_RANfunctionIDcause_ItemIEs_specs_41;
-extern asn_TYPE_member_t asn_MBR_RANfunctionIDcause_ItemIEs_41[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_RANfunctionIDcause_ItemIEs_specs_65;
+extern asn_TYPE_member_t asn_MBR_RANfunctionIDcause_ItemIEs_65[3];
 extern asn_TYPE_descriptor_t asn_DEF_RICsubscriptionRequest_IEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionRequest_IEs_specs_45;
-extern asn_TYPE_member_t asn_MBR_RICsubscriptionRequest_IEs_45[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionRequest_IEs_specs_69;
+extern asn_TYPE_member_t asn_MBR_RICsubscriptionRequest_IEs_69[3];
 extern asn_TYPE_descriptor_t asn_DEF_RICsubscriptionResponse_IEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionResponse_IEs_specs_49;
-extern asn_TYPE_member_t asn_MBR_RICsubscriptionResponse_IEs_49[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionResponse_IEs_specs_73;
+extern asn_TYPE_member_t asn_MBR_RICsubscriptionResponse_IEs_73[3];
 extern asn_TYPE_descriptor_t asn_DEF_RICsubscriptionFailure_IEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionFailure_IEs_specs_53;
-extern asn_TYPE_member_t asn_MBR_RICsubscriptionFailure_IEs_53[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionFailure_IEs_specs_77;
+extern asn_TYPE_member_t asn_MBR_RICsubscriptionFailure_IEs_77[3];
 extern asn_TYPE_descriptor_t asn_DEF_RICsubscriptionDeleteRequest_IEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteRequest_IEs_specs_57;
-extern asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteRequest_IEs_57[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteRequest_IEs_specs_81;
+extern asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteRequest_IEs_81[3];
 extern asn_TYPE_descriptor_t asn_DEF_RICsubscriptionDeleteResponse_IEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteResponse_IEs_specs_61;
-extern asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteResponse_IEs_61[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteResponse_IEs_specs_85;
+extern asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteResponse_IEs_85[3];
 extern asn_TYPE_descriptor_t asn_DEF_RICsubscriptionDeleteFailure_IEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteFailure_IEs_specs_65;
-extern asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteFailure_IEs_65[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteFailure_IEs_specs_89;
+extern asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteFailure_IEs_89[3];
+extern asn_TYPE_descriptor_t asn_DEF_RICsubscriptionDeleteRequired_IEs;
+extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteRequired_IEs_specs_93;
+extern asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteRequired_IEs_93[3];
 extern asn_TYPE_descriptor_t asn_DEF_RICindication_IEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_RICindication_IEs_specs_69;
-extern asn_TYPE_member_t asn_MBR_RICindication_IEs_69[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_RICindication_IEs_specs_97;
+extern asn_TYPE_member_t asn_MBR_RICindication_IEs_97[3];
 extern asn_TYPE_descriptor_t asn_DEF_RICcontrolRequest_IEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_RICcontrolRequest_IEs_specs_73;
-extern asn_TYPE_member_t asn_MBR_RICcontrolRequest_IEs_73[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_RICcontrolRequest_IEs_specs_101;
+extern asn_TYPE_member_t asn_MBR_RICcontrolRequest_IEs_101[3];
 extern asn_TYPE_descriptor_t asn_DEF_RICcontrolAcknowledge_IEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_RICcontrolAcknowledge_IEs_specs_77;
-extern asn_TYPE_member_t asn_MBR_RICcontrolAcknowledge_IEs_77[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_RICcontrolAcknowledge_IEs_specs_105;
+extern asn_TYPE_member_t asn_MBR_RICcontrolAcknowledge_IEs_105[3];
 extern asn_TYPE_descriptor_t asn_DEF_RICcontrolFailure_IEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_RICcontrolFailure_IEs_specs_81;
-extern asn_TYPE_member_t asn_MBR_RICcontrolFailure_IEs_81[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_RICcontrolFailure_IEs_specs_109;
+extern asn_TYPE_member_t asn_MBR_RICcontrolFailure_IEs_109[3];
 extern asn_TYPE_descriptor_t asn_DEF_ErrorIndication_IEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_ErrorIndication_IEs_specs_85;
-extern asn_TYPE_member_t asn_MBR_ErrorIndication_IEs_85[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_ErrorIndication_IEs_specs_113;
+extern asn_TYPE_member_t asn_MBR_ErrorIndication_IEs_113[3];
 extern asn_TYPE_descriptor_t asn_DEF_E2setupRequestIEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_E2setupRequestIEs_specs_89;
-extern asn_TYPE_member_t asn_MBR_E2setupRequestIEs_89[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_E2setupRequestIEs_specs_117;
+extern asn_TYPE_member_t asn_MBR_E2setupRequestIEs_117[3];
 extern asn_TYPE_descriptor_t asn_DEF_E2setupResponseIEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_E2setupResponseIEs_specs_93;
-extern asn_TYPE_member_t asn_MBR_E2setupResponseIEs_93[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_E2setupResponseIEs_specs_121;
+extern asn_TYPE_member_t asn_MBR_E2setupResponseIEs_121[3];
 extern asn_TYPE_descriptor_t asn_DEF_E2setupFailureIEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_E2setupFailureIEs_specs_97;
-extern asn_TYPE_member_t asn_MBR_E2setupFailureIEs_97[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_E2setupFailureIEs_specs_125;
+extern asn_TYPE_member_t asn_MBR_E2setupFailureIEs_125[3];
 extern asn_TYPE_descriptor_t asn_DEF_E2connectionUpdate_IEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_E2connectionUpdate_IEs_specs_101;
-extern asn_TYPE_member_t asn_MBR_E2connectionUpdate_IEs_101[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_E2connectionUpdate_IEs_specs_129;
+extern asn_TYPE_member_t asn_MBR_E2connectionUpdate_IEs_129[3];
 extern asn_TYPE_descriptor_t asn_DEF_E2connectionUpdateAck_IEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_E2connectionUpdateAck_IEs_specs_105;
-extern asn_TYPE_member_t asn_MBR_E2connectionUpdateAck_IEs_105[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_E2connectionUpdateAck_IEs_specs_133;
+extern asn_TYPE_member_t asn_MBR_E2connectionUpdateAck_IEs_133[3];
 extern asn_TYPE_descriptor_t asn_DEF_E2connectionUpdateFailure_IEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_E2connectionUpdateFailure_IEs_specs_109;
-extern asn_TYPE_member_t asn_MBR_E2connectionUpdateFailure_IEs_109[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_E2connectionUpdateFailure_IEs_specs_137;
+extern asn_TYPE_member_t asn_MBR_E2connectionUpdateFailure_IEs_137[3];
 extern asn_TYPE_descriptor_t asn_DEF_E2nodeConfigurationUpdate_IEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeConfigurationUpdate_IEs_specs_113;
-extern asn_TYPE_member_t asn_MBR_E2nodeConfigurationUpdate_IEs_113[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeConfigurationUpdate_IEs_specs_141;
+extern asn_TYPE_member_t asn_MBR_E2nodeConfigurationUpdate_IEs_141[3];
 extern asn_TYPE_descriptor_t asn_DEF_E2nodeConfigurationUpdateAcknowledge_IEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeConfigurationUpdateAcknowledge_IEs_specs_117;
-extern asn_TYPE_member_t asn_MBR_E2nodeConfigurationUpdateAcknowledge_IEs_117[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeConfigurationUpdateAcknowledge_IEs_specs_145;
+extern asn_TYPE_member_t asn_MBR_E2nodeConfigurationUpdateAcknowledge_IEs_145[3];
 extern asn_TYPE_descriptor_t asn_DEF_E2nodeConfigurationUpdateFailure_IEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeConfigurationUpdateFailure_IEs_specs_121;
-extern asn_TYPE_member_t asn_MBR_E2nodeConfigurationUpdateFailure_IEs_121[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_E2nodeConfigurationUpdateFailure_IEs_specs_149;
+extern asn_TYPE_member_t asn_MBR_E2nodeConfigurationUpdateFailure_IEs_149[3];
 extern asn_TYPE_descriptor_t asn_DEF_ResetRequestIEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_ResetRequestIEs_specs_125;
-extern asn_TYPE_member_t asn_MBR_ResetRequestIEs_125[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_ResetRequestIEs_specs_153;
+extern asn_TYPE_member_t asn_MBR_ResetRequestIEs_153[3];
 extern asn_TYPE_descriptor_t asn_DEF_ResetResponseIEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_ResetResponseIEs_specs_129;
-extern asn_TYPE_member_t asn_MBR_ResetResponseIEs_129[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_ResetResponseIEs_specs_157;
+extern asn_TYPE_member_t asn_MBR_ResetResponseIEs_157[3];
 extern asn_TYPE_descriptor_t asn_DEF_RICserviceUpdate_IEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_RICserviceUpdate_IEs_specs_133;
-extern asn_TYPE_member_t asn_MBR_RICserviceUpdate_IEs_133[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_RICserviceUpdate_IEs_specs_161;
+extern asn_TYPE_member_t asn_MBR_RICserviceUpdate_IEs_161[3];
 extern asn_TYPE_descriptor_t asn_DEF_RICserviceUpdateAcknowledge_IEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_RICserviceUpdateAcknowledge_IEs_specs_137;
-extern asn_TYPE_member_t asn_MBR_RICserviceUpdateAcknowledge_IEs_137[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_RICserviceUpdateAcknowledge_IEs_specs_165;
+extern asn_TYPE_member_t asn_MBR_RICserviceUpdateAcknowledge_IEs_165[3];
 extern asn_TYPE_descriptor_t asn_DEF_RICserviceUpdateFailure_IEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_RICserviceUpdateFailure_IEs_specs_141;
-extern asn_TYPE_member_t asn_MBR_RICserviceUpdateFailure_IEs_141[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_RICserviceUpdateFailure_IEs_specs_169;
+extern asn_TYPE_member_t asn_MBR_RICserviceUpdateFailure_IEs_169[3];
 extern asn_TYPE_descriptor_t asn_DEF_RICserviceQuery_IEs;
-extern asn_SEQUENCE_specifics_t asn_SPC_RICserviceQuery_IEs_specs_145;
-extern asn_TYPE_member_t asn_MBR_RICserviceQuery_IEs_145[3];
+extern asn_SEQUENCE_specifics_t asn_SPC_RICserviceQuery_IEs_specs_173;
+extern asn_TYPE_member_t asn_MBR_RICserviceQuery_IEs_173[3];
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/ProtocolIE-FieldPair.c b/e2sim/src/ASN1c/ProtocolIE-FieldPair.c
index 74ff309..78bc305 100644
--- a/e2sim/src/ASN1c/ProtocolIE-FieldPair.c
+++ b/e2sim/src/ASN1c/ProtocolIE-FieldPair.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-Containers"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "ProtocolIE-FieldPair.h"
diff --git a/e2sim/src/ASN1c/ProtocolIE-FieldPair.h b/e2sim/src/ASN1c/ProtocolIE-FieldPair.h
index 7437097..843a218 100644
--- a/e2sim/src/ASN1c/ProtocolIE-FieldPair.h
+++ b/e2sim/src/ASN1c/ProtocolIE-FieldPair.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-Containers"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_ProtocolIE_FieldPair_H_
diff --git a/e2sim/src/ASN1c/ProtocolIE-ID.c b/e2sim/src/ASN1c/ProtocolIE-ID.c
index 5d11b66..c859d4e 100644
--- a/e2sim/src/ASN1c/ProtocolIE-ID.c
+++ b/e2sim/src/ASN1c/ProtocolIE-ID.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-CommonDataTypes"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "ProtocolIE-ID.h"
diff --git a/e2sim/src/ASN1c/ProtocolIE-ID.h b/e2sim/src/ASN1c/ProtocolIE-ID.h
index 77b6c57..697ebe3 100644
--- a/e2sim/src/ASN1c/ProtocolIE-ID.h
+++ b/e2sim/src/ASN1c/ProtocolIE-ID.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-CommonDataTypes"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_ProtocolIE_ID_H_
@@ -81,6 +81,19 @@
 #define ProtocolIE_ID_id_E2connectionUpdateRemove	((ProtocolIE_ID_t)46)
 #define ProtocolIE_ID_id_E2connectionUpdateRemove_Item	((ProtocolIE_ID_t)47)
 #define ProtocolIE_ID_id_TNLinformation	((ProtocolIE_ID_t)48)
+#define ProtocolIE_ID_id_TransactionID	((ProtocolIE_ID_t)49)
+#define ProtocolIE_ID_id_E2nodeComponentConfigAddition	((ProtocolIE_ID_t)50)
+#define ProtocolIE_ID_id_E2nodeComponentConfigAddition_Item	((ProtocolIE_ID_t)51)
+#define ProtocolIE_ID_id_E2nodeComponentConfigAdditionAck	((ProtocolIE_ID_t)52)
+#define ProtocolIE_ID_id_E2nodeComponentConfigAdditionAck_Item	((ProtocolIE_ID_t)53)
+#define ProtocolIE_ID_id_E2nodeComponentConfigRemoval	((ProtocolIE_ID_t)54)
+#define ProtocolIE_ID_id_E2nodeComponentConfigRemoval_Item	((ProtocolIE_ID_t)55)
+#define ProtocolIE_ID_id_E2nodeComponentConfigRemovalAck	((ProtocolIE_ID_t)56)
+#define ProtocolIE_ID_id_E2nodeComponentConfigRemovalAck_Item	((ProtocolIE_ID_t)57)
+#define ProtocolIE_ID_id_E2nodeTNLassociationRemoval	((ProtocolIE_ID_t)58)
+#define ProtocolIE_ID_id_E2nodeTNLassociationRemoval_Item	((ProtocolIE_ID_t)59)
+#define ProtocolIE_ID_id_RICsubscriptionToBeRemoved	((ProtocolIE_ID_t)50)
+#define ProtocolIE_ID_id_RICsubscription_withCause_Item	((ProtocolIE_ID_t)51)
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/ProtocolIE-SingleContainer.c b/e2sim/src/ASN1c/ProtocolIE-SingleContainer.c
index 73b92ab..c9581cf 100644
--- a/e2sim/src/ASN1c/ProtocolIE-SingleContainer.c
+++ b/e2sim/src/ASN1c/ProtocolIE-SingleContainer.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-Containers"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "ProtocolIE-SingleContainer.h"
@@ -20,6 +20,10 @@
  * so here we adjust the DEF accordingly.
  */
 /*
+ * This type is implemented using RICsubscription_withCause_ItemIEs,
+ * so here we adjust the DEF accordingly.
+ */
+/*
  * This type is implemented using E2connectionUpdate_ItemIEs,
  * so here we adjust the DEF accordingly.
  */
@@ -32,14 +36,34 @@
  * so here we adjust the DEF accordingly.
  */
 /*
+ * This type is implemented using E2nodeComponentConfigAddition_ItemIEs,
+ * so here we adjust the DEF accordingly.
+ */
+/*
  * This type is implemented using E2nodeComponentConfigUpdate_ItemIEs,
  * so here we adjust the DEF accordingly.
  */
 /*
+ * This type is implemented using E2nodeComponentConfigRemoval_ItemIEs,
+ * so here we adjust the DEF accordingly.
+ */
+/*
+ * This type is implemented using E2nodeTNLassociationRemoval_ItemIEs,
+ * so here we adjust the DEF accordingly.
+ */
+/*
+ * This type is implemented using E2nodeComponentConfigAdditionAck_ItemIEs,
+ * so here we adjust the DEF accordingly.
+ */
+/*
  * This type is implemented using E2nodeComponentConfigUpdateAck_ItemIEs,
  * so here we adjust the DEF accordingly.
  */
 /*
+ * This type is implemented using E2nodeComponentConfigRemovalAck_ItemIEs,
+ * so here we adjust the DEF accordingly.
+ */
+/*
  * This type is implemented using RANfunction_ItemIEs,
  * so here we adjust the DEF accordingly.
  */
@@ -51,212 +75,326 @@
  * This type is implemented using RANfunctionIDcause_ItemIEs,
  * so here we adjust the DEF accordingly.
  */
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_229P0_tags_1[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_1920P0_tags_1[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_229P0 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P0 = {
 	"ProtocolIE-SingleContainer",
 	"ProtocolIE-SingleContainer",
 	&asn_OP_SEQUENCE,
-	asn_DEF_ProtocolIE_SingleContainer_229P0_tags_1,
-	sizeof(asn_DEF_ProtocolIE_SingleContainer_229P0_tags_1)
-		/sizeof(asn_DEF_ProtocolIE_SingleContainer_229P0_tags_1[0]), /* 1 */
-	asn_DEF_ProtocolIE_SingleContainer_229P0_tags_1,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_SingleContainer_229P0_tags_1)
-		/sizeof(asn_DEF_ProtocolIE_SingleContainer_229P0_tags_1[0]), /* 1 */
+	asn_DEF_ProtocolIE_SingleContainer_1920P0_tags_1,
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P0_tags_1)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P0_tags_1[0]), /* 1 */
+	asn_DEF_ProtocolIE_SingleContainer_1920P0_tags_1,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P0_tags_1)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P0_tags_1[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
 	asn_MBR_RICaction_ToBeSetup_ItemIEs_1,
 	3,	/* Elements count */
 	&asn_SPC_RICaction_ToBeSetup_ItemIEs_specs_1	/* Additional specs */
 };
 
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_229P1_tags_2[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_1920P1_tags_2[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_229P1 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P1 = {
 	"ProtocolIE-SingleContainer",
 	"ProtocolIE-SingleContainer",
 	&asn_OP_SEQUENCE,
-	asn_DEF_ProtocolIE_SingleContainer_229P1_tags_2,
-	sizeof(asn_DEF_ProtocolIE_SingleContainer_229P1_tags_2)
-		/sizeof(asn_DEF_ProtocolIE_SingleContainer_229P1_tags_2[0]), /* 1 */
-	asn_DEF_ProtocolIE_SingleContainer_229P1_tags_2,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_SingleContainer_229P1_tags_2)
-		/sizeof(asn_DEF_ProtocolIE_SingleContainer_229P1_tags_2[0]), /* 1 */
+	asn_DEF_ProtocolIE_SingleContainer_1920P1_tags_2,
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P1_tags_2)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P1_tags_2[0]), /* 1 */
+	asn_DEF_ProtocolIE_SingleContainer_1920P1_tags_2,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P1_tags_2)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P1_tags_2[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
 	asn_MBR_RICaction_Admitted_ItemIEs_5,
 	3,	/* Elements count */
 	&asn_SPC_RICaction_Admitted_ItemIEs_specs_5	/* Additional specs */
 };
 
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_229P2_tags_3[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_1920P2_tags_3[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_229P2 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P2 = {
 	"ProtocolIE-SingleContainer",
 	"ProtocolIE-SingleContainer",
 	&asn_OP_SEQUENCE,
-	asn_DEF_ProtocolIE_SingleContainer_229P2_tags_3,
-	sizeof(asn_DEF_ProtocolIE_SingleContainer_229P2_tags_3)
-		/sizeof(asn_DEF_ProtocolIE_SingleContainer_229P2_tags_3[0]), /* 1 */
-	asn_DEF_ProtocolIE_SingleContainer_229P2_tags_3,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_SingleContainer_229P2_tags_3)
-		/sizeof(asn_DEF_ProtocolIE_SingleContainer_229P2_tags_3[0]), /* 1 */
+	asn_DEF_ProtocolIE_SingleContainer_1920P2_tags_3,
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P2_tags_3)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P2_tags_3[0]), /* 1 */
+	asn_DEF_ProtocolIE_SingleContainer_1920P2_tags_3,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P2_tags_3)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P2_tags_3[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
 	asn_MBR_RICaction_NotAdmitted_ItemIEs_9,
 	3,	/* Elements count */
 	&asn_SPC_RICaction_NotAdmitted_ItemIEs_specs_9	/* Additional specs */
 };
 
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_229P3_tags_4[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_1920P3_tags_4[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_229P3 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P3 = {
 	"ProtocolIE-SingleContainer",
 	"ProtocolIE-SingleContainer",
 	&asn_OP_SEQUENCE,
-	asn_DEF_ProtocolIE_SingleContainer_229P3_tags_4,
-	sizeof(asn_DEF_ProtocolIE_SingleContainer_229P3_tags_4)
-		/sizeof(asn_DEF_ProtocolIE_SingleContainer_229P3_tags_4[0]), /* 1 */
-	asn_DEF_ProtocolIE_SingleContainer_229P3_tags_4,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_SingleContainer_229P3_tags_4)
-		/sizeof(asn_DEF_ProtocolIE_SingleContainer_229P3_tags_4[0]), /* 1 */
+	asn_DEF_ProtocolIE_SingleContainer_1920P3_tags_4,
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P3_tags_4)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P3_tags_4[0]), /* 1 */
+	asn_DEF_ProtocolIE_SingleContainer_1920P3_tags_4,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P3_tags_4)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P3_tags_4[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_E2connectionUpdate_ItemIEs_13,
+	asn_MBR_RICsubscription_withCause_ItemIEs_13,
 	3,	/* Elements count */
-	&asn_SPC_E2connectionUpdate_ItemIEs_specs_13	/* Additional specs */
+	&asn_SPC_RICsubscription_withCause_ItemIEs_specs_13	/* Additional specs */
 };
 
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_229P4_tags_5[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_1920P4_tags_5[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_229P4 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P4 = {
 	"ProtocolIE-SingleContainer",
 	"ProtocolIE-SingleContainer",
 	&asn_OP_SEQUENCE,
-	asn_DEF_ProtocolIE_SingleContainer_229P4_tags_5,
-	sizeof(asn_DEF_ProtocolIE_SingleContainer_229P4_tags_5)
-		/sizeof(asn_DEF_ProtocolIE_SingleContainer_229P4_tags_5[0]), /* 1 */
-	asn_DEF_ProtocolIE_SingleContainer_229P4_tags_5,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_SingleContainer_229P4_tags_5)
-		/sizeof(asn_DEF_ProtocolIE_SingleContainer_229P4_tags_5[0]), /* 1 */
+	asn_DEF_ProtocolIE_SingleContainer_1920P4_tags_5,
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P4_tags_5)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P4_tags_5[0]), /* 1 */
+	asn_DEF_ProtocolIE_SingleContainer_1920P4_tags_5,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P4_tags_5)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P4_tags_5[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_E2connectionUpdateRemove_ItemIEs_17,
+	asn_MBR_E2connectionUpdate_ItemIEs_17,
 	3,	/* Elements count */
-	&asn_SPC_E2connectionUpdateRemove_ItemIEs_specs_17	/* Additional specs */
+	&asn_SPC_E2connectionUpdate_ItemIEs_specs_17	/* Additional specs */
 };
 
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_229P5_tags_6[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_1920P5_tags_6[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_229P5 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P5 = {
 	"ProtocolIE-SingleContainer",
 	"ProtocolIE-SingleContainer",
 	&asn_OP_SEQUENCE,
-	asn_DEF_ProtocolIE_SingleContainer_229P5_tags_6,
-	sizeof(asn_DEF_ProtocolIE_SingleContainer_229P5_tags_6)
-		/sizeof(asn_DEF_ProtocolIE_SingleContainer_229P5_tags_6[0]), /* 1 */
-	asn_DEF_ProtocolIE_SingleContainer_229P5_tags_6,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_SingleContainer_229P5_tags_6)
-		/sizeof(asn_DEF_ProtocolIE_SingleContainer_229P5_tags_6[0]), /* 1 */
+	asn_DEF_ProtocolIE_SingleContainer_1920P5_tags_6,
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P5_tags_6)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P5_tags_6[0]), /* 1 */
+	asn_DEF_ProtocolIE_SingleContainer_1920P5_tags_6,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P5_tags_6)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P5_tags_6[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_E2connectionSetupFailed_ItemIEs_21,
+	asn_MBR_E2connectionUpdateRemove_ItemIEs_21,
 	3,	/* Elements count */
-	&asn_SPC_E2connectionSetupFailed_ItemIEs_specs_21	/* Additional specs */
+	&asn_SPC_E2connectionUpdateRemove_ItemIEs_specs_21	/* Additional specs */
 };
 
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_229P6_tags_7[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_1920P6_tags_7[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_229P6 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P6 = {
 	"ProtocolIE-SingleContainer",
 	"ProtocolIE-SingleContainer",
 	&asn_OP_SEQUENCE,
-	asn_DEF_ProtocolIE_SingleContainer_229P6_tags_7,
-	sizeof(asn_DEF_ProtocolIE_SingleContainer_229P6_tags_7)
-		/sizeof(asn_DEF_ProtocolIE_SingleContainer_229P6_tags_7[0]), /* 1 */
-	asn_DEF_ProtocolIE_SingleContainer_229P6_tags_7,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_SingleContainer_229P6_tags_7)
-		/sizeof(asn_DEF_ProtocolIE_SingleContainer_229P6_tags_7[0]), /* 1 */
+	asn_DEF_ProtocolIE_SingleContainer_1920P6_tags_7,
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P6_tags_7)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P6_tags_7[0]), /* 1 */
+	asn_DEF_ProtocolIE_SingleContainer_1920P6_tags_7,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P6_tags_7)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P6_tags_7[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_E2nodeComponentConfigUpdate_ItemIEs_25,
+	asn_MBR_E2connectionSetupFailed_ItemIEs_25,
 	3,	/* Elements count */
-	&asn_SPC_E2nodeComponentConfigUpdate_ItemIEs_specs_25	/* Additional specs */
+	&asn_SPC_E2connectionSetupFailed_ItemIEs_specs_25	/* Additional specs */
 };
 
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_229P7_tags_8[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_1920P7_tags_8[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_229P7 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P7 = {
 	"ProtocolIE-SingleContainer",
 	"ProtocolIE-SingleContainer",
 	&asn_OP_SEQUENCE,
-	asn_DEF_ProtocolIE_SingleContainer_229P7_tags_8,
-	sizeof(asn_DEF_ProtocolIE_SingleContainer_229P7_tags_8)
-		/sizeof(asn_DEF_ProtocolIE_SingleContainer_229P7_tags_8[0]), /* 1 */
-	asn_DEF_ProtocolIE_SingleContainer_229P7_tags_8,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_SingleContainer_229P7_tags_8)
-		/sizeof(asn_DEF_ProtocolIE_SingleContainer_229P7_tags_8[0]), /* 1 */
+	asn_DEF_ProtocolIE_SingleContainer_1920P7_tags_8,
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P7_tags_8)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P7_tags_8[0]), /* 1 */
+	asn_DEF_ProtocolIE_SingleContainer_1920P7_tags_8,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P7_tags_8)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P7_tags_8[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_E2nodeComponentConfigUpdateAck_ItemIEs_29,
+	asn_MBR_E2nodeComponentConfigAddition_ItemIEs_29,
 	3,	/* Elements count */
-	&asn_SPC_E2nodeComponentConfigUpdateAck_ItemIEs_specs_29	/* Additional specs */
+	&asn_SPC_E2nodeComponentConfigAddition_ItemIEs_specs_29	/* Additional specs */
 };
 
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_229P8_tags_9[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_1920P8_tags_9[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_229P8 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P8 = {
 	"ProtocolIE-SingleContainer",
 	"ProtocolIE-SingleContainer",
 	&asn_OP_SEQUENCE,
-	asn_DEF_ProtocolIE_SingleContainer_229P8_tags_9,
-	sizeof(asn_DEF_ProtocolIE_SingleContainer_229P8_tags_9)
-		/sizeof(asn_DEF_ProtocolIE_SingleContainer_229P8_tags_9[0]), /* 1 */
-	asn_DEF_ProtocolIE_SingleContainer_229P8_tags_9,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_SingleContainer_229P8_tags_9)
-		/sizeof(asn_DEF_ProtocolIE_SingleContainer_229P8_tags_9[0]), /* 1 */
+	asn_DEF_ProtocolIE_SingleContainer_1920P8_tags_9,
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P8_tags_9)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P8_tags_9[0]), /* 1 */
+	asn_DEF_ProtocolIE_SingleContainer_1920P8_tags_9,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P8_tags_9)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P8_tags_9[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_RANfunction_ItemIEs_33,
+	asn_MBR_E2nodeComponentConfigUpdate_ItemIEs_33,
 	3,	/* Elements count */
-	&asn_SPC_RANfunction_ItemIEs_specs_33	/* Additional specs */
+	&asn_SPC_E2nodeComponentConfigUpdate_ItemIEs_specs_33	/* Additional specs */
 };
 
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_229P9_tags_10[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_1920P9_tags_10[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_229P9 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P9 = {
 	"ProtocolIE-SingleContainer",
 	"ProtocolIE-SingleContainer",
 	&asn_OP_SEQUENCE,
-	asn_DEF_ProtocolIE_SingleContainer_229P9_tags_10,
-	sizeof(asn_DEF_ProtocolIE_SingleContainer_229P9_tags_10)
-		/sizeof(asn_DEF_ProtocolIE_SingleContainer_229P9_tags_10[0]), /* 1 */
-	asn_DEF_ProtocolIE_SingleContainer_229P9_tags_10,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_SingleContainer_229P9_tags_10)
-		/sizeof(asn_DEF_ProtocolIE_SingleContainer_229P9_tags_10[0]), /* 1 */
+	asn_DEF_ProtocolIE_SingleContainer_1920P9_tags_10,
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P9_tags_10)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P9_tags_10[0]), /* 1 */
+	asn_DEF_ProtocolIE_SingleContainer_1920P9_tags_10,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P9_tags_10)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P9_tags_10[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_RANfunctionID_ItemIEs_37,
+	asn_MBR_E2nodeComponentConfigRemoval_ItemIEs_37,
 	3,	/* Elements count */
-	&asn_SPC_RANfunctionID_ItemIEs_specs_37	/* Additional specs */
+	&asn_SPC_E2nodeComponentConfigRemoval_ItemIEs_specs_37	/* Additional specs */
 };
 
-static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_229P10_tags_11[] = {
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_1920P10_tags_11[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_229P10 = {
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P10 = {
 	"ProtocolIE-SingleContainer",
 	"ProtocolIE-SingleContainer",
 	&asn_OP_SEQUENCE,
-	asn_DEF_ProtocolIE_SingleContainer_229P10_tags_11,
-	sizeof(asn_DEF_ProtocolIE_SingleContainer_229P10_tags_11)
-		/sizeof(asn_DEF_ProtocolIE_SingleContainer_229P10_tags_11[0]), /* 1 */
-	asn_DEF_ProtocolIE_SingleContainer_229P10_tags_11,	/* Same as above */
-	sizeof(asn_DEF_ProtocolIE_SingleContainer_229P10_tags_11)
-		/sizeof(asn_DEF_ProtocolIE_SingleContainer_229P10_tags_11[0]), /* 1 */
+	asn_DEF_ProtocolIE_SingleContainer_1920P10_tags_11,
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P10_tags_11)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P10_tags_11[0]), /* 1 */
+	asn_DEF_ProtocolIE_SingleContainer_1920P10_tags_11,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P10_tags_11)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P10_tags_11[0]), /* 1 */
 	{ 0, 0, SEQUENCE_constraint },
-	asn_MBR_RANfunctionIDcause_ItemIEs_41,
+	asn_MBR_E2nodeTNLassociationRemoval_ItemIEs_41,
 	3,	/* Elements count */
-	&asn_SPC_RANfunctionIDcause_ItemIEs_specs_41	/* Additional specs */
+	&asn_SPC_E2nodeTNLassociationRemoval_ItemIEs_specs_41	/* Additional specs */
+};
+
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_1920P11_tags_12[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P11 = {
+	"ProtocolIE-SingleContainer",
+	"ProtocolIE-SingleContainer",
+	&asn_OP_SEQUENCE,
+	asn_DEF_ProtocolIE_SingleContainer_1920P11_tags_12,
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P11_tags_12)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P11_tags_12[0]), /* 1 */
+	asn_DEF_ProtocolIE_SingleContainer_1920P11_tags_12,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P11_tags_12)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P11_tags_12[0]), /* 1 */
+	{ 0, 0, SEQUENCE_constraint },
+	asn_MBR_E2nodeComponentConfigAdditionAck_ItemIEs_45,
+	3,	/* Elements count */
+	&asn_SPC_E2nodeComponentConfigAdditionAck_ItemIEs_specs_45	/* Additional specs */
+};
+
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_1920P12_tags_13[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P12 = {
+	"ProtocolIE-SingleContainer",
+	"ProtocolIE-SingleContainer",
+	&asn_OP_SEQUENCE,
+	asn_DEF_ProtocolIE_SingleContainer_1920P12_tags_13,
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P12_tags_13)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P12_tags_13[0]), /* 1 */
+	asn_DEF_ProtocolIE_SingleContainer_1920P12_tags_13,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P12_tags_13)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P12_tags_13[0]), /* 1 */
+	{ 0, 0, SEQUENCE_constraint },
+	asn_MBR_E2nodeComponentConfigUpdateAck_ItemIEs_49,
+	3,	/* Elements count */
+	&asn_SPC_E2nodeComponentConfigUpdateAck_ItemIEs_specs_49	/* Additional specs */
+};
+
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_1920P13_tags_14[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P13 = {
+	"ProtocolIE-SingleContainer",
+	"ProtocolIE-SingleContainer",
+	&asn_OP_SEQUENCE,
+	asn_DEF_ProtocolIE_SingleContainer_1920P13_tags_14,
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P13_tags_14)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P13_tags_14[0]), /* 1 */
+	asn_DEF_ProtocolIE_SingleContainer_1920P13_tags_14,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P13_tags_14)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P13_tags_14[0]), /* 1 */
+	{ 0, 0, SEQUENCE_constraint },
+	asn_MBR_E2nodeComponentConfigRemovalAck_ItemIEs_53,
+	3,	/* Elements count */
+	&asn_SPC_E2nodeComponentConfigRemovalAck_ItemIEs_specs_53	/* Additional specs */
+};
+
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_1920P14_tags_15[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P14 = {
+	"ProtocolIE-SingleContainer",
+	"ProtocolIE-SingleContainer",
+	&asn_OP_SEQUENCE,
+	asn_DEF_ProtocolIE_SingleContainer_1920P14_tags_15,
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P14_tags_15)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P14_tags_15[0]), /* 1 */
+	asn_DEF_ProtocolIE_SingleContainer_1920P14_tags_15,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P14_tags_15)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P14_tags_15[0]), /* 1 */
+	{ 0, 0, SEQUENCE_constraint },
+	asn_MBR_RANfunction_ItemIEs_57,
+	3,	/* Elements count */
+	&asn_SPC_RANfunction_ItemIEs_specs_57	/* Additional specs */
+};
+
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_1920P15_tags_16[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P15 = {
+	"ProtocolIE-SingleContainer",
+	"ProtocolIE-SingleContainer",
+	&asn_OP_SEQUENCE,
+	asn_DEF_ProtocolIE_SingleContainer_1920P15_tags_16,
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P15_tags_16)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P15_tags_16[0]), /* 1 */
+	asn_DEF_ProtocolIE_SingleContainer_1920P15_tags_16,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P15_tags_16)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P15_tags_16[0]), /* 1 */
+	{ 0, 0, SEQUENCE_constraint },
+	asn_MBR_RANfunctionID_ItemIEs_61,
+	3,	/* Elements count */
+	&asn_SPC_RANfunctionID_ItemIEs_specs_61	/* Additional specs */
+};
+
+static const ber_tlv_tag_t asn_DEF_ProtocolIE_SingleContainer_1920P16_tags_17[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P16 = {
+	"ProtocolIE-SingleContainer",
+	"ProtocolIE-SingleContainer",
+	&asn_OP_SEQUENCE,
+	asn_DEF_ProtocolIE_SingleContainer_1920P16_tags_17,
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P16_tags_17)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P16_tags_17[0]), /* 1 */
+	asn_DEF_ProtocolIE_SingleContainer_1920P16_tags_17,	/* Same as above */
+	sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P16_tags_17)
+		/sizeof(asn_DEF_ProtocolIE_SingleContainer_1920P16_tags_17[0]), /* 1 */
+	{ 0, 0, SEQUENCE_constraint },
+	asn_MBR_RANfunctionIDcause_ItemIEs_65,
+	3,	/* Elements count */
+	&asn_SPC_RANfunctionIDcause_ItemIEs_specs_65	/* Additional specs */
 };
 
diff --git a/e2sim/src/ASN1c/ProtocolIE-SingleContainer.h b/e2sim/src/ASN1c/ProtocolIE-SingleContainer.h
index 31495a1..99dd596 100644
--- a/e2sim/src/ASN1c/ProtocolIE-SingleContainer.h
+++ b/e2sim/src/ASN1c/ProtocolIE-SingleContainer.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-Containers"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_ProtocolIE_SingleContainer_H_
@@ -19,151 +19,229 @@
 #endif
 
 /* ProtocolIE-SingleContainer */
-typedef RICaction_ToBeSetup_ItemIEs_t	 ProtocolIE_SingleContainer_229P0_t;
-typedef RICaction_Admitted_ItemIEs_t	 ProtocolIE_SingleContainer_229P1_t;
-typedef RICaction_NotAdmitted_ItemIEs_t	 ProtocolIE_SingleContainer_229P2_t;
-typedef E2connectionUpdate_ItemIEs_t	 ProtocolIE_SingleContainer_229P3_t;
-typedef E2connectionUpdateRemove_ItemIEs_t	 ProtocolIE_SingleContainer_229P4_t;
-typedef E2connectionSetupFailed_ItemIEs_t	 ProtocolIE_SingleContainer_229P5_t;
-typedef E2nodeComponentConfigUpdate_ItemIEs_t	 ProtocolIE_SingleContainer_229P6_t;
-typedef E2nodeComponentConfigUpdateAck_ItemIEs_t	 ProtocolIE_SingleContainer_229P7_t;
-typedef RANfunction_ItemIEs_t	 ProtocolIE_SingleContainer_229P8_t;
-typedef RANfunctionID_ItemIEs_t	 ProtocolIE_SingleContainer_229P9_t;
-typedef RANfunctionIDcause_ItemIEs_t	 ProtocolIE_SingleContainer_229P10_t;
+typedef RICaction_ToBeSetup_ItemIEs_t	 ProtocolIE_SingleContainer_1920P0_t;
+typedef RICaction_Admitted_ItemIEs_t	 ProtocolIE_SingleContainer_1920P1_t;
+typedef RICaction_NotAdmitted_ItemIEs_t	 ProtocolIE_SingleContainer_1920P2_t;
+typedef RICsubscription_withCause_ItemIEs_t	 ProtocolIE_SingleContainer_1920P3_t;
+typedef E2connectionUpdate_ItemIEs_t	 ProtocolIE_SingleContainer_1920P4_t;
+typedef E2connectionUpdateRemove_ItemIEs_t	 ProtocolIE_SingleContainer_1920P5_t;
+typedef E2connectionSetupFailed_ItemIEs_t	 ProtocolIE_SingleContainer_1920P6_t;
+typedef E2nodeComponentConfigAddition_ItemIEs_t	 ProtocolIE_SingleContainer_1920P7_t;
+typedef E2nodeComponentConfigUpdate_ItemIEs_t	 ProtocolIE_SingleContainer_1920P8_t;
+typedef E2nodeComponentConfigRemoval_ItemIEs_t	 ProtocolIE_SingleContainer_1920P9_t;
+typedef E2nodeTNLassociationRemoval_ItemIEs_t	 ProtocolIE_SingleContainer_1920P10_t;
+typedef E2nodeComponentConfigAdditionAck_ItemIEs_t	 ProtocolIE_SingleContainer_1920P11_t;
+typedef E2nodeComponentConfigUpdateAck_ItemIEs_t	 ProtocolIE_SingleContainer_1920P12_t;
+typedef E2nodeComponentConfigRemovalAck_ItemIEs_t	 ProtocolIE_SingleContainer_1920P13_t;
+typedef RANfunction_ItemIEs_t	 ProtocolIE_SingleContainer_1920P14_t;
+typedef RANfunctionID_ItemIEs_t	 ProtocolIE_SingleContainer_1920P15_t;
+typedef RANfunctionIDcause_ItemIEs_t	 ProtocolIE_SingleContainer_1920P16_t;
 
 /* Implementation */
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_229P0;
-asn_struct_free_f ProtocolIE_SingleContainer_229P0_free;
-asn_struct_print_f ProtocolIE_SingleContainer_229P0_print;
-asn_constr_check_f ProtocolIE_SingleContainer_229P0_constraint;
-ber_type_decoder_f ProtocolIE_SingleContainer_229P0_decode_ber;
-der_type_encoder_f ProtocolIE_SingleContainer_229P0_encode_der;
-xer_type_decoder_f ProtocolIE_SingleContainer_229P0_decode_xer;
-xer_type_encoder_f ProtocolIE_SingleContainer_229P0_encode_xer;
-per_type_decoder_f ProtocolIE_SingleContainer_229P0_decode_uper;
-per_type_encoder_f ProtocolIE_SingleContainer_229P0_encode_uper;
-per_type_decoder_f ProtocolIE_SingleContainer_229P0_decode_aper;
-per_type_encoder_f ProtocolIE_SingleContainer_229P0_encode_aper;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_229P1;
-asn_struct_free_f ProtocolIE_SingleContainer_229P1_free;
-asn_struct_print_f ProtocolIE_SingleContainer_229P1_print;
-asn_constr_check_f ProtocolIE_SingleContainer_229P1_constraint;
-ber_type_decoder_f ProtocolIE_SingleContainer_229P1_decode_ber;
-der_type_encoder_f ProtocolIE_SingleContainer_229P1_encode_der;
-xer_type_decoder_f ProtocolIE_SingleContainer_229P1_decode_xer;
-xer_type_encoder_f ProtocolIE_SingleContainer_229P1_encode_xer;
-per_type_decoder_f ProtocolIE_SingleContainer_229P1_decode_uper;
-per_type_encoder_f ProtocolIE_SingleContainer_229P1_encode_uper;
-per_type_decoder_f ProtocolIE_SingleContainer_229P1_decode_aper;
-per_type_encoder_f ProtocolIE_SingleContainer_229P1_encode_aper;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_229P2;
-asn_struct_free_f ProtocolIE_SingleContainer_229P2_free;
-asn_struct_print_f ProtocolIE_SingleContainer_229P2_print;
-asn_constr_check_f ProtocolIE_SingleContainer_229P2_constraint;
-ber_type_decoder_f ProtocolIE_SingleContainer_229P2_decode_ber;
-der_type_encoder_f ProtocolIE_SingleContainer_229P2_encode_der;
-xer_type_decoder_f ProtocolIE_SingleContainer_229P2_decode_xer;
-xer_type_encoder_f ProtocolIE_SingleContainer_229P2_encode_xer;
-per_type_decoder_f ProtocolIE_SingleContainer_229P2_decode_uper;
-per_type_encoder_f ProtocolIE_SingleContainer_229P2_encode_uper;
-per_type_decoder_f ProtocolIE_SingleContainer_229P2_decode_aper;
-per_type_encoder_f ProtocolIE_SingleContainer_229P2_encode_aper;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_229P3;
-asn_struct_free_f ProtocolIE_SingleContainer_229P3_free;
-asn_struct_print_f ProtocolIE_SingleContainer_229P3_print;
-asn_constr_check_f ProtocolIE_SingleContainer_229P3_constraint;
-ber_type_decoder_f ProtocolIE_SingleContainer_229P3_decode_ber;
-der_type_encoder_f ProtocolIE_SingleContainer_229P3_encode_der;
-xer_type_decoder_f ProtocolIE_SingleContainer_229P3_decode_xer;
-xer_type_encoder_f ProtocolIE_SingleContainer_229P3_encode_xer;
-per_type_decoder_f ProtocolIE_SingleContainer_229P3_decode_uper;
-per_type_encoder_f ProtocolIE_SingleContainer_229P3_encode_uper;
-per_type_decoder_f ProtocolIE_SingleContainer_229P3_decode_aper;
-per_type_encoder_f ProtocolIE_SingleContainer_229P3_encode_aper;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_229P4;
-asn_struct_free_f ProtocolIE_SingleContainer_229P4_free;
-asn_struct_print_f ProtocolIE_SingleContainer_229P4_print;
-asn_constr_check_f ProtocolIE_SingleContainer_229P4_constraint;
-ber_type_decoder_f ProtocolIE_SingleContainer_229P4_decode_ber;
-der_type_encoder_f ProtocolIE_SingleContainer_229P4_encode_der;
-xer_type_decoder_f ProtocolIE_SingleContainer_229P4_decode_xer;
-xer_type_encoder_f ProtocolIE_SingleContainer_229P4_encode_xer;
-per_type_decoder_f ProtocolIE_SingleContainer_229P4_decode_uper;
-per_type_encoder_f ProtocolIE_SingleContainer_229P4_encode_uper;
-per_type_decoder_f ProtocolIE_SingleContainer_229P4_decode_aper;
-per_type_encoder_f ProtocolIE_SingleContainer_229P4_encode_aper;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_229P5;
-asn_struct_free_f ProtocolIE_SingleContainer_229P5_free;
-asn_struct_print_f ProtocolIE_SingleContainer_229P5_print;
-asn_constr_check_f ProtocolIE_SingleContainer_229P5_constraint;
-ber_type_decoder_f ProtocolIE_SingleContainer_229P5_decode_ber;
-der_type_encoder_f ProtocolIE_SingleContainer_229P5_encode_der;
-xer_type_decoder_f ProtocolIE_SingleContainer_229P5_decode_xer;
-xer_type_encoder_f ProtocolIE_SingleContainer_229P5_encode_xer;
-per_type_decoder_f ProtocolIE_SingleContainer_229P5_decode_uper;
-per_type_encoder_f ProtocolIE_SingleContainer_229P5_encode_uper;
-per_type_decoder_f ProtocolIE_SingleContainer_229P5_decode_aper;
-per_type_encoder_f ProtocolIE_SingleContainer_229P5_encode_aper;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_229P6;
-asn_struct_free_f ProtocolIE_SingleContainer_229P6_free;
-asn_struct_print_f ProtocolIE_SingleContainer_229P6_print;
-asn_constr_check_f ProtocolIE_SingleContainer_229P6_constraint;
-ber_type_decoder_f ProtocolIE_SingleContainer_229P6_decode_ber;
-der_type_encoder_f ProtocolIE_SingleContainer_229P6_encode_der;
-xer_type_decoder_f ProtocolIE_SingleContainer_229P6_decode_xer;
-xer_type_encoder_f ProtocolIE_SingleContainer_229P6_encode_xer;
-per_type_decoder_f ProtocolIE_SingleContainer_229P6_decode_uper;
-per_type_encoder_f ProtocolIE_SingleContainer_229P6_encode_uper;
-per_type_decoder_f ProtocolIE_SingleContainer_229P6_decode_aper;
-per_type_encoder_f ProtocolIE_SingleContainer_229P6_encode_aper;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_229P7;
-asn_struct_free_f ProtocolIE_SingleContainer_229P7_free;
-asn_struct_print_f ProtocolIE_SingleContainer_229P7_print;
-asn_constr_check_f ProtocolIE_SingleContainer_229P7_constraint;
-ber_type_decoder_f ProtocolIE_SingleContainer_229P7_decode_ber;
-der_type_encoder_f ProtocolIE_SingleContainer_229P7_encode_der;
-xer_type_decoder_f ProtocolIE_SingleContainer_229P7_decode_xer;
-xer_type_encoder_f ProtocolIE_SingleContainer_229P7_encode_xer;
-per_type_decoder_f ProtocolIE_SingleContainer_229P7_decode_uper;
-per_type_encoder_f ProtocolIE_SingleContainer_229P7_encode_uper;
-per_type_decoder_f ProtocolIE_SingleContainer_229P7_decode_aper;
-per_type_encoder_f ProtocolIE_SingleContainer_229P7_encode_aper;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_229P8;
-asn_struct_free_f ProtocolIE_SingleContainer_229P8_free;
-asn_struct_print_f ProtocolIE_SingleContainer_229P8_print;
-asn_constr_check_f ProtocolIE_SingleContainer_229P8_constraint;
-ber_type_decoder_f ProtocolIE_SingleContainer_229P8_decode_ber;
-der_type_encoder_f ProtocolIE_SingleContainer_229P8_encode_der;
-xer_type_decoder_f ProtocolIE_SingleContainer_229P8_decode_xer;
-xer_type_encoder_f ProtocolIE_SingleContainer_229P8_encode_xer;
-per_type_decoder_f ProtocolIE_SingleContainer_229P8_decode_uper;
-per_type_encoder_f ProtocolIE_SingleContainer_229P8_encode_uper;
-per_type_decoder_f ProtocolIE_SingleContainer_229P8_decode_aper;
-per_type_encoder_f ProtocolIE_SingleContainer_229P8_encode_aper;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_229P9;
-asn_struct_free_f ProtocolIE_SingleContainer_229P9_free;
-asn_struct_print_f ProtocolIE_SingleContainer_229P9_print;
-asn_constr_check_f ProtocolIE_SingleContainer_229P9_constraint;
-ber_type_decoder_f ProtocolIE_SingleContainer_229P9_decode_ber;
-der_type_encoder_f ProtocolIE_SingleContainer_229P9_encode_der;
-xer_type_decoder_f ProtocolIE_SingleContainer_229P9_decode_xer;
-xer_type_encoder_f ProtocolIE_SingleContainer_229P9_encode_xer;
-per_type_decoder_f ProtocolIE_SingleContainer_229P9_decode_uper;
-per_type_encoder_f ProtocolIE_SingleContainer_229P9_encode_uper;
-per_type_decoder_f ProtocolIE_SingleContainer_229P9_decode_aper;
-per_type_encoder_f ProtocolIE_SingleContainer_229P9_encode_aper;
-extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_229P10;
-asn_struct_free_f ProtocolIE_SingleContainer_229P10_free;
-asn_struct_print_f ProtocolIE_SingleContainer_229P10_print;
-asn_constr_check_f ProtocolIE_SingleContainer_229P10_constraint;
-ber_type_decoder_f ProtocolIE_SingleContainer_229P10_decode_ber;
-der_type_encoder_f ProtocolIE_SingleContainer_229P10_encode_der;
-xer_type_decoder_f ProtocolIE_SingleContainer_229P10_decode_xer;
-xer_type_encoder_f ProtocolIE_SingleContainer_229P10_encode_xer;
-per_type_decoder_f ProtocolIE_SingleContainer_229P10_decode_uper;
-per_type_encoder_f ProtocolIE_SingleContainer_229P10_encode_uper;
-per_type_decoder_f ProtocolIE_SingleContainer_229P10_decode_aper;
-per_type_encoder_f ProtocolIE_SingleContainer_229P10_encode_aper;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P0;
+asn_struct_free_f ProtocolIE_SingleContainer_1920P0_free;
+asn_struct_print_f ProtocolIE_SingleContainer_1920P0_print;
+asn_constr_check_f ProtocolIE_SingleContainer_1920P0_constraint;
+ber_type_decoder_f ProtocolIE_SingleContainer_1920P0_decode_ber;
+der_type_encoder_f ProtocolIE_SingleContainer_1920P0_encode_der;
+xer_type_decoder_f ProtocolIE_SingleContainer_1920P0_decode_xer;
+xer_type_encoder_f ProtocolIE_SingleContainer_1920P0_encode_xer;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P0_decode_uper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P0_encode_uper;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P0_decode_aper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P0_encode_aper;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P1;
+asn_struct_free_f ProtocolIE_SingleContainer_1920P1_free;
+asn_struct_print_f ProtocolIE_SingleContainer_1920P1_print;
+asn_constr_check_f ProtocolIE_SingleContainer_1920P1_constraint;
+ber_type_decoder_f ProtocolIE_SingleContainer_1920P1_decode_ber;
+der_type_encoder_f ProtocolIE_SingleContainer_1920P1_encode_der;
+xer_type_decoder_f ProtocolIE_SingleContainer_1920P1_decode_xer;
+xer_type_encoder_f ProtocolIE_SingleContainer_1920P1_encode_xer;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P1_decode_uper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P1_encode_uper;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P1_decode_aper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P1_encode_aper;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P2;
+asn_struct_free_f ProtocolIE_SingleContainer_1920P2_free;
+asn_struct_print_f ProtocolIE_SingleContainer_1920P2_print;
+asn_constr_check_f ProtocolIE_SingleContainer_1920P2_constraint;
+ber_type_decoder_f ProtocolIE_SingleContainer_1920P2_decode_ber;
+der_type_encoder_f ProtocolIE_SingleContainer_1920P2_encode_der;
+xer_type_decoder_f ProtocolIE_SingleContainer_1920P2_decode_xer;
+xer_type_encoder_f ProtocolIE_SingleContainer_1920P2_encode_xer;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P2_decode_uper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P2_encode_uper;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P2_decode_aper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P2_encode_aper;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P3;
+asn_struct_free_f ProtocolIE_SingleContainer_1920P3_free;
+asn_struct_print_f ProtocolIE_SingleContainer_1920P3_print;
+asn_constr_check_f ProtocolIE_SingleContainer_1920P3_constraint;
+ber_type_decoder_f ProtocolIE_SingleContainer_1920P3_decode_ber;
+der_type_encoder_f ProtocolIE_SingleContainer_1920P3_encode_der;
+xer_type_decoder_f ProtocolIE_SingleContainer_1920P3_decode_xer;
+xer_type_encoder_f ProtocolIE_SingleContainer_1920P3_encode_xer;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P3_decode_uper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P3_encode_uper;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P3_decode_aper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P3_encode_aper;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P4;
+asn_struct_free_f ProtocolIE_SingleContainer_1920P4_free;
+asn_struct_print_f ProtocolIE_SingleContainer_1920P4_print;
+asn_constr_check_f ProtocolIE_SingleContainer_1920P4_constraint;
+ber_type_decoder_f ProtocolIE_SingleContainer_1920P4_decode_ber;
+der_type_encoder_f ProtocolIE_SingleContainer_1920P4_encode_der;
+xer_type_decoder_f ProtocolIE_SingleContainer_1920P4_decode_xer;
+xer_type_encoder_f ProtocolIE_SingleContainer_1920P4_encode_xer;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P4_decode_uper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P4_encode_uper;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P4_decode_aper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P4_encode_aper;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P5;
+asn_struct_free_f ProtocolIE_SingleContainer_1920P5_free;
+asn_struct_print_f ProtocolIE_SingleContainer_1920P5_print;
+asn_constr_check_f ProtocolIE_SingleContainer_1920P5_constraint;
+ber_type_decoder_f ProtocolIE_SingleContainer_1920P5_decode_ber;
+der_type_encoder_f ProtocolIE_SingleContainer_1920P5_encode_der;
+xer_type_decoder_f ProtocolIE_SingleContainer_1920P5_decode_xer;
+xer_type_encoder_f ProtocolIE_SingleContainer_1920P5_encode_xer;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P5_decode_uper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P5_encode_uper;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P5_decode_aper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P5_encode_aper;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P6;
+asn_struct_free_f ProtocolIE_SingleContainer_1920P6_free;
+asn_struct_print_f ProtocolIE_SingleContainer_1920P6_print;
+asn_constr_check_f ProtocolIE_SingleContainer_1920P6_constraint;
+ber_type_decoder_f ProtocolIE_SingleContainer_1920P6_decode_ber;
+der_type_encoder_f ProtocolIE_SingleContainer_1920P6_encode_der;
+xer_type_decoder_f ProtocolIE_SingleContainer_1920P6_decode_xer;
+xer_type_encoder_f ProtocolIE_SingleContainer_1920P6_encode_xer;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P6_decode_uper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P6_encode_uper;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P6_decode_aper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P6_encode_aper;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P7;
+asn_struct_free_f ProtocolIE_SingleContainer_1920P7_free;
+asn_struct_print_f ProtocolIE_SingleContainer_1920P7_print;
+asn_constr_check_f ProtocolIE_SingleContainer_1920P7_constraint;
+ber_type_decoder_f ProtocolIE_SingleContainer_1920P7_decode_ber;
+der_type_encoder_f ProtocolIE_SingleContainer_1920P7_encode_der;
+xer_type_decoder_f ProtocolIE_SingleContainer_1920P7_decode_xer;
+xer_type_encoder_f ProtocolIE_SingleContainer_1920P7_encode_xer;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P7_decode_uper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P7_encode_uper;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P7_decode_aper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P7_encode_aper;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P8;
+asn_struct_free_f ProtocolIE_SingleContainer_1920P8_free;
+asn_struct_print_f ProtocolIE_SingleContainer_1920P8_print;
+asn_constr_check_f ProtocolIE_SingleContainer_1920P8_constraint;
+ber_type_decoder_f ProtocolIE_SingleContainer_1920P8_decode_ber;
+der_type_encoder_f ProtocolIE_SingleContainer_1920P8_encode_der;
+xer_type_decoder_f ProtocolIE_SingleContainer_1920P8_decode_xer;
+xer_type_encoder_f ProtocolIE_SingleContainer_1920P8_encode_xer;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P8_decode_uper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P8_encode_uper;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P8_decode_aper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P8_encode_aper;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P9;
+asn_struct_free_f ProtocolIE_SingleContainer_1920P9_free;
+asn_struct_print_f ProtocolIE_SingleContainer_1920P9_print;
+asn_constr_check_f ProtocolIE_SingleContainer_1920P9_constraint;
+ber_type_decoder_f ProtocolIE_SingleContainer_1920P9_decode_ber;
+der_type_encoder_f ProtocolIE_SingleContainer_1920P9_encode_der;
+xer_type_decoder_f ProtocolIE_SingleContainer_1920P9_decode_xer;
+xer_type_encoder_f ProtocolIE_SingleContainer_1920P9_encode_xer;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P9_decode_uper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P9_encode_uper;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P9_decode_aper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P9_encode_aper;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P10;
+asn_struct_free_f ProtocolIE_SingleContainer_1920P10_free;
+asn_struct_print_f ProtocolIE_SingleContainer_1920P10_print;
+asn_constr_check_f ProtocolIE_SingleContainer_1920P10_constraint;
+ber_type_decoder_f ProtocolIE_SingleContainer_1920P10_decode_ber;
+der_type_encoder_f ProtocolIE_SingleContainer_1920P10_encode_der;
+xer_type_decoder_f ProtocolIE_SingleContainer_1920P10_decode_xer;
+xer_type_encoder_f ProtocolIE_SingleContainer_1920P10_encode_xer;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P10_decode_uper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P10_encode_uper;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P10_decode_aper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P10_encode_aper;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P11;
+asn_struct_free_f ProtocolIE_SingleContainer_1920P11_free;
+asn_struct_print_f ProtocolIE_SingleContainer_1920P11_print;
+asn_constr_check_f ProtocolIE_SingleContainer_1920P11_constraint;
+ber_type_decoder_f ProtocolIE_SingleContainer_1920P11_decode_ber;
+der_type_encoder_f ProtocolIE_SingleContainer_1920P11_encode_der;
+xer_type_decoder_f ProtocolIE_SingleContainer_1920P11_decode_xer;
+xer_type_encoder_f ProtocolIE_SingleContainer_1920P11_encode_xer;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P11_decode_uper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P11_encode_uper;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P11_decode_aper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P11_encode_aper;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P12;
+asn_struct_free_f ProtocolIE_SingleContainer_1920P12_free;
+asn_struct_print_f ProtocolIE_SingleContainer_1920P12_print;
+asn_constr_check_f ProtocolIE_SingleContainer_1920P12_constraint;
+ber_type_decoder_f ProtocolIE_SingleContainer_1920P12_decode_ber;
+der_type_encoder_f ProtocolIE_SingleContainer_1920P12_encode_der;
+xer_type_decoder_f ProtocolIE_SingleContainer_1920P12_decode_xer;
+xer_type_encoder_f ProtocolIE_SingleContainer_1920P12_encode_xer;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P12_decode_uper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P12_encode_uper;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P12_decode_aper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P12_encode_aper;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P13;
+asn_struct_free_f ProtocolIE_SingleContainer_1920P13_free;
+asn_struct_print_f ProtocolIE_SingleContainer_1920P13_print;
+asn_constr_check_f ProtocolIE_SingleContainer_1920P13_constraint;
+ber_type_decoder_f ProtocolIE_SingleContainer_1920P13_decode_ber;
+der_type_encoder_f ProtocolIE_SingleContainer_1920P13_encode_der;
+xer_type_decoder_f ProtocolIE_SingleContainer_1920P13_decode_xer;
+xer_type_encoder_f ProtocolIE_SingleContainer_1920P13_encode_xer;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P13_decode_uper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P13_encode_uper;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P13_decode_aper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P13_encode_aper;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P14;
+asn_struct_free_f ProtocolIE_SingleContainer_1920P14_free;
+asn_struct_print_f ProtocolIE_SingleContainer_1920P14_print;
+asn_constr_check_f ProtocolIE_SingleContainer_1920P14_constraint;
+ber_type_decoder_f ProtocolIE_SingleContainer_1920P14_decode_ber;
+der_type_encoder_f ProtocolIE_SingleContainer_1920P14_encode_der;
+xer_type_decoder_f ProtocolIE_SingleContainer_1920P14_decode_xer;
+xer_type_encoder_f ProtocolIE_SingleContainer_1920P14_encode_xer;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P14_decode_uper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P14_encode_uper;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P14_decode_aper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P14_encode_aper;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P15;
+asn_struct_free_f ProtocolIE_SingleContainer_1920P15_free;
+asn_struct_print_f ProtocolIE_SingleContainer_1920P15_print;
+asn_constr_check_f ProtocolIE_SingleContainer_1920P15_constraint;
+ber_type_decoder_f ProtocolIE_SingleContainer_1920P15_decode_ber;
+der_type_encoder_f ProtocolIE_SingleContainer_1920P15_encode_der;
+xer_type_decoder_f ProtocolIE_SingleContainer_1920P15_decode_xer;
+xer_type_encoder_f ProtocolIE_SingleContainer_1920P15_encode_xer;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P15_decode_uper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P15_encode_uper;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P15_decode_aper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P15_encode_aper;
+extern asn_TYPE_descriptor_t asn_DEF_ProtocolIE_SingleContainer_1920P16;
+asn_struct_free_f ProtocolIE_SingleContainer_1920P16_free;
+asn_struct_print_f ProtocolIE_SingleContainer_1920P16_print;
+asn_constr_check_f ProtocolIE_SingleContainer_1920P16_constraint;
+ber_type_decoder_f ProtocolIE_SingleContainer_1920P16_decode_ber;
+der_type_encoder_f ProtocolIE_SingleContainer_1920P16_encode_der;
+xer_type_decoder_f ProtocolIE_SingleContainer_1920P16_decode_xer;
+xer_type_encoder_f ProtocolIE_SingleContainer_1920P16_encode_xer;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P16_decode_uper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P16_encode_uper;
+per_type_decoder_f ProtocolIE_SingleContainer_1920P16_decode_aper;
+per_type_encoder_f ProtocolIE_SingleContainer_1920P16_encode_aper;
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/RANfunction-Item.c b/e2sim/src/ASN1c/RANfunction-Item.c
index dbc136b..9b52991 100644
--- a/e2sim/src/ASN1c/RANfunction-Item.c
+++ b/e2sim/src/ASN1c/RANfunction-Item.c
@@ -1,13 +1,13 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RANfunction-Item.h"
 
-asn_TYPE_member_t asn_MBR_RANfunction_Item_1[] = {
+static asn_TYPE_member_t asn_MBR_RANfunction_Item_1[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RANfunction_Item, ranFunctionID),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
@@ -35,7 +35,7 @@
 		0, 0, /* No default value */
 		"ranFunctionRevision"
 		},
-	{ ATF_POINTER, 1, offsetof(struct RANfunction_Item, ranFunctionOID),
+	{ ATF_NOFLAGS, 0, offsetof(struct RANfunction_Item, ranFunctionOID),
 		(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
 		-1,	/* IMPLICIT tag at current level */
 		&asn_DEF_RANfunctionOID,
@@ -45,7 +45,6 @@
 		"ranFunctionOID"
 		},
 };
-static const int asn_MAP_RANfunction_Item_oms_1[] = { 3 };
 static const ber_tlv_tag_t asn_DEF_RANfunction_Item_tags_1[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
@@ -55,14 +54,13 @@
     { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ranFunctionRevision */
     { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* ranFunctionOID */
 };
-asn_SEQUENCE_specifics_t asn_SPC_RANfunction_Item_specs_1 = {
+static asn_SEQUENCE_specifics_t asn_SPC_RANfunction_Item_specs_1 = {
 	sizeof(struct RANfunction_Item),
 	offsetof(struct RANfunction_Item, _asn_ctx),
 	asn_MAP_RANfunction_Item_tag2el_1,
 	4,	/* Count of tags in the map */
-	asn_MAP_RANfunction_Item_oms_1,	/* Optional members */
-	0, 1,	/* Root/Additions */
-	3,	/* First extension addition */
+	0, 0, 0,	/* Optional elements (not needed) */
+	4,	/* First extension addition */
 };
 asn_TYPE_descriptor_t asn_DEF_RANfunction_Item = {
 	"RANfunction-Item",
diff --git a/e2sim/src/ASN1c/RANfunction-Item.h b/e2sim/src/ASN1c/RANfunction-Item.h
index 82e0f45..172e34f 100644
--- a/e2sim/src/ASN1c/RANfunction-Item.h
+++ b/e2sim/src/ASN1c/RANfunction-Item.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RANfunction_Item_H_
@@ -27,11 +27,11 @@
 	RANfunctionID_t	 ranFunctionID;
 	RANfunctionDefinition_t	 ranFunctionDefinition;
 	RANfunctionRevision_t	 ranFunctionRevision;
+	RANfunctionOID_t	 ranFunctionOID;
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
 	 */
-	RANfunctionOID_t	*ranFunctionOID;	/* OPTIONAL */
 	
 	/* Context for parsing across buffer boundaries */
 	asn_struct_ctx_t _asn_ctx;
@@ -39,8 +39,6 @@
 
 /* Implementation */
 extern asn_TYPE_descriptor_t asn_DEF_RANfunction_Item;
-extern asn_SEQUENCE_specifics_t asn_SPC_RANfunction_Item_specs_1;
-extern asn_TYPE_member_t asn_MBR_RANfunction_Item_1[4];
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/RANfunctionDefinition.c b/e2sim/src/ASN1c/RANfunctionDefinition.c
index 542b359..0243686 100644
--- a/e2sim/src/ASN1c/RANfunctionDefinition.c
+++ b/e2sim/src/ASN1c/RANfunctionDefinition.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RANfunctionDefinition.h"
diff --git a/e2sim/src/ASN1c/RANfunctionDefinition.h b/e2sim/src/ASN1c/RANfunctionDefinition.h
index 28b23cd..c10ca55 100644
--- a/e2sim/src/ASN1c/RANfunctionDefinition.h
+++ b/e2sim/src/ASN1c/RANfunctionDefinition.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RANfunctionDefinition_H_
diff --git a/e2sim/src/ASN1c/RANfunctionID-Item.c b/e2sim/src/ASN1c/RANfunctionID-Item.c
index adcb862..9b88717 100644
--- a/e2sim/src/ASN1c/RANfunctionID-Item.c
+++ b/e2sim/src/ASN1c/RANfunctionID-Item.c
@@ -1,13 +1,13 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RANfunctionID-Item.h"
 
-asn_TYPE_member_t asn_MBR_RANfunctionID_Item_1[] = {
+static asn_TYPE_member_t asn_MBR_RANfunctionID_Item_1[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RANfunctionID_Item, ranFunctionID),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
@@ -34,7 +34,7 @@
     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranFunctionID */
     { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ranFunctionRevision */
 };
-asn_SEQUENCE_specifics_t asn_SPC_RANfunctionID_Item_specs_1 = {
+static asn_SEQUENCE_specifics_t asn_SPC_RANfunctionID_Item_specs_1 = {
 	sizeof(struct RANfunctionID_Item),
 	offsetof(struct RANfunctionID_Item, _asn_ctx),
 	asn_MAP_RANfunctionID_Item_tag2el_1,
diff --git a/e2sim/src/ASN1c/RANfunctionID-Item.h b/e2sim/src/ASN1c/RANfunctionID-Item.h
index 47782f0..e73fc37 100644
--- a/e2sim/src/ASN1c/RANfunctionID-Item.h
+++ b/e2sim/src/ASN1c/RANfunctionID-Item.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RANfunctionID_Item_H_
@@ -35,8 +35,6 @@
 
 /* Implementation */
 extern asn_TYPE_descriptor_t asn_DEF_RANfunctionID_Item;
-extern asn_SEQUENCE_specifics_t asn_SPC_RANfunctionID_Item_specs_1;
-extern asn_TYPE_member_t asn_MBR_RANfunctionID_Item_1[2];
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/RANfunctionID.c b/e2sim/src/ASN1c/RANfunctionID.c
index f778b48..21e1cb9 100644
--- a/e2sim/src/ASN1c/RANfunctionID.c
+++ b/e2sim/src/ASN1c/RANfunctionID.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RANfunctionID.h"
diff --git a/e2sim/src/ASN1c/RANfunctionID.h b/e2sim/src/ASN1c/RANfunctionID.h
index 26676a5..840a432 100644
--- a/e2sim/src/ASN1c/RANfunctionID.h
+++ b/e2sim/src/ASN1c/RANfunctionID.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RANfunctionID_H_
diff --git a/e2sim/src/ASN1c/RANfunctionIDcause-Item.c b/e2sim/src/ASN1c/RANfunctionIDcause-Item.c
index 0b40b89..c35e8b6 100644
--- a/e2sim/src/ASN1c/RANfunctionIDcause-Item.c
+++ b/e2sim/src/ASN1c/RANfunctionIDcause-Item.c
@@ -1,13 +1,13 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RANfunctionIDcause-Item.h"
 
-asn_TYPE_member_t asn_MBR_RANfunctionIDcause_Item_1[] = {
+static asn_TYPE_member_t asn_MBR_RANfunctionIDcause_Item_1[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RANfunctionIDcause_Item, ranFunctionID),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
@@ -34,7 +34,7 @@
     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ranFunctionID */
     { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* cause */
 };
-asn_SEQUENCE_specifics_t asn_SPC_RANfunctionIDcause_Item_specs_1 = {
+static asn_SEQUENCE_specifics_t asn_SPC_RANfunctionIDcause_Item_specs_1 = {
 	sizeof(struct RANfunctionIDcause_Item),
 	offsetof(struct RANfunctionIDcause_Item, _asn_ctx),
 	asn_MAP_RANfunctionIDcause_Item_tag2el_1,
diff --git a/e2sim/src/ASN1c/RANfunctionIDcause-Item.h b/e2sim/src/ASN1c/RANfunctionIDcause-Item.h
index d83f497..e1a6da2 100644
--- a/e2sim/src/ASN1c/RANfunctionIDcause-Item.h
+++ b/e2sim/src/ASN1c/RANfunctionIDcause-Item.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RANfunctionIDcause_Item_H_
@@ -35,8 +35,6 @@
 
 /* Implementation */
 extern asn_TYPE_descriptor_t asn_DEF_RANfunctionIDcause_Item;
-extern asn_SEQUENCE_specifics_t asn_SPC_RANfunctionIDcause_Item_specs_1;
-extern asn_TYPE_member_t asn_MBR_RANfunctionIDcause_Item_1[2];
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/RANfunctionOID.c b/e2sim/src/ASN1c/RANfunctionOID.c
index aa775f8..160e518 100644
--- a/e2sim/src/ASN1c/RANfunctionOID.c
+++ b/e2sim/src/ASN1c/RANfunctionOID.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RANfunctionOID.h"
diff --git a/e2sim/src/ASN1c/RANfunctionOID.h b/e2sim/src/ASN1c/RANfunctionOID.h
index b7defa5..ccf407e 100644
--- a/e2sim/src/ASN1c/RANfunctionOID.h
+++ b/e2sim/src/ASN1c/RANfunctionOID.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RANfunctionOID_H_
diff --git a/e2sim/src/ASN1c/RANfunctionRevision.c b/e2sim/src/ASN1c/RANfunctionRevision.c
index f9398aa..c10b205 100644
--- a/e2sim/src/ASN1c/RANfunctionRevision.c
+++ b/e2sim/src/ASN1c/RANfunctionRevision.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RANfunctionRevision.h"
diff --git a/e2sim/src/ASN1c/RANfunctionRevision.h b/e2sim/src/ASN1c/RANfunctionRevision.h
index 99953bf..bfc2129 100644
--- a/e2sim/src/ASN1c/RANfunctionRevision.h
+++ b/e2sim/src/ASN1c/RANfunctionRevision.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RANfunctionRevision_H_
diff --git a/e2sim/src/ASN1c/RANfunctions-List.c b/e2sim/src/ASN1c/RANfunctions-List.c
index f3b5419..4c0806b 100644
--- a/e2sim/src/ASN1c/RANfunctions-List.c
+++ b/e2sim/src/ASN1c/RANfunctions-List.c
@@ -1,23 +1,23 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RANfunctions-List.h"
 
 #include "ProtocolIE-SingleContainer.h"
-asn_per_constraints_t asn_PER_type_RANfunctions_List_constr_1 CC_NOTUSED = {
+static asn_per_constraints_t asn_PER_type_RANfunctions_List_constr_1 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
-	{ APC_CONSTRAINED,	 9,  9,  0,  256 }	/* (SIZE(0..256)) */,
+	{ APC_CONSTRAINED,	 8,  8,  1,  256 }	/* (SIZE(1..256)) */,
 	0, 0	/* No PER value map */
 };
-asn_TYPE_member_t asn_MBR_RANfunctions_List_1[] = {
+static asn_TYPE_member_t asn_MBR_RANfunctions_List_1[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
-		&asn_DEF_ProtocolIE_SingleContainer_229P8,
+		&asn_DEF_ProtocolIE_SingleContainer_1920P14,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
@@ -27,7 +27,7 @@
 static const ber_tlv_tag_t asn_DEF_RANfunctions_List_tags_1[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_RANfunctions_List_specs_1 = {
+static asn_SET_OF_specifics_t asn_SPC_RANfunctions_List_specs_1 = {
 	sizeof(struct RANfunctions_List),
 	offsetof(struct RANfunctions_List, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
diff --git a/e2sim/src/ASN1c/RANfunctions-List.h b/e2sim/src/ASN1c/RANfunctions-List.h
index 0a8b12d..d517ed5 100644
--- a/e2sim/src/ASN1c/RANfunctions-List.h
+++ b/e2sim/src/ASN1c/RANfunctions-List.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RANfunctions_List_H_
@@ -32,9 +32,6 @@
 
 /* Implementation */
 extern asn_TYPE_descriptor_t asn_DEF_RANfunctions_List;
-extern asn_SET_OF_specifics_t asn_SPC_RANfunctions_List_specs_1;
-extern asn_TYPE_member_t asn_MBR_RANfunctions_List_1[1];
-extern asn_per_constraints_t asn_PER_type_RANfunctions_List_constr_1;
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/RANfunctionsID-List.c b/e2sim/src/ASN1c/RANfunctionsID-List.c
index 204c8af..4e10ee4 100644
--- a/e2sim/src/ASN1c/RANfunctionsID-List.c
+++ b/e2sim/src/ASN1c/RANfunctionsID-List.c
@@ -1,23 +1,23 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RANfunctionsID-List.h"
 
 #include "ProtocolIE-SingleContainer.h"
-asn_per_constraints_t asn_PER_type_RANfunctionsID_List_constr_1 CC_NOTUSED = {
+static asn_per_constraints_t asn_PER_type_RANfunctionsID_List_constr_1 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
-	{ APC_CONSTRAINED,	 9,  9,  0,  256 }	/* (SIZE(0..256)) */,
+	{ APC_CONSTRAINED,	 8,  8,  1,  256 }	/* (SIZE(1..256)) */,
 	0, 0	/* No PER value map */
 };
-asn_TYPE_member_t asn_MBR_RANfunctionsID_List_1[] = {
+static asn_TYPE_member_t asn_MBR_RANfunctionsID_List_1[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
-		&asn_DEF_ProtocolIE_SingleContainer_229P9,
+		&asn_DEF_ProtocolIE_SingleContainer_1920P15,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
@@ -27,7 +27,7 @@
 static const ber_tlv_tag_t asn_DEF_RANfunctionsID_List_tags_1[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_RANfunctionsID_List_specs_1 = {
+static asn_SET_OF_specifics_t asn_SPC_RANfunctionsID_List_specs_1 = {
 	sizeof(struct RANfunctionsID_List),
 	offsetof(struct RANfunctionsID_List, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
diff --git a/e2sim/src/ASN1c/RANfunctionsID-List.h b/e2sim/src/ASN1c/RANfunctionsID-List.h
index eaba417..a4b9ed3 100644
--- a/e2sim/src/ASN1c/RANfunctionsID-List.h
+++ b/e2sim/src/ASN1c/RANfunctionsID-List.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RANfunctionsID_List_H_
@@ -32,9 +32,6 @@
 
 /* Implementation */
 extern asn_TYPE_descriptor_t asn_DEF_RANfunctionsID_List;
-extern asn_SET_OF_specifics_t asn_SPC_RANfunctionsID_List_specs_1;
-extern asn_TYPE_member_t asn_MBR_RANfunctionsID_List_1[1];
-extern asn_per_constraints_t asn_PER_type_RANfunctionsID_List_constr_1;
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/RANfunctionsIDcause-List.c b/e2sim/src/ASN1c/RANfunctionsIDcause-List.c
index 02c12f5..4a19b69 100644
--- a/e2sim/src/ASN1c/RANfunctionsIDcause-List.c
+++ b/e2sim/src/ASN1c/RANfunctionsIDcause-List.c
@@ -1,23 +1,23 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RANfunctionsIDcause-List.h"
 
 #include "ProtocolIE-SingleContainer.h"
-asn_per_constraints_t asn_PER_type_RANfunctionsIDcause_List_constr_1 CC_NOTUSED = {
+static asn_per_constraints_t asn_PER_type_RANfunctionsIDcause_List_constr_1 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
-	{ APC_CONSTRAINED,	 9,  9,  0,  256 }	/* (SIZE(0..256)) */,
+	{ APC_CONSTRAINED,	 8,  8,  1,  256 }	/* (SIZE(1..256)) */,
 	0, 0	/* No PER value map */
 };
-asn_TYPE_member_t asn_MBR_RANfunctionsIDcause_List_1[] = {
+static asn_TYPE_member_t asn_MBR_RANfunctionsIDcause_List_1[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
-		&asn_DEF_ProtocolIE_SingleContainer_229P10,
+		&asn_DEF_ProtocolIE_SingleContainer_1920P16,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
@@ -27,7 +27,7 @@
 static const ber_tlv_tag_t asn_DEF_RANfunctionsIDcause_List_tags_1[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_RANfunctionsIDcause_List_specs_1 = {
+static asn_SET_OF_specifics_t asn_SPC_RANfunctionsIDcause_List_specs_1 = {
 	sizeof(struct RANfunctionsIDcause_List),
 	offsetof(struct RANfunctionsIDcause_List, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
diff --git a/e2sim/src/ASN1c/RANfunctionsIDcause-List.h b/e2sim/src/ASN1c/RANfunctionsIDcause-List.h
index 144b852..c960ffb 100644
--- a/e2sim/src/ASN1c/RANfunctionsIDcause-List.h
+++ b/e2sim/src/ASN1c/RANfunctionsIDcause-List.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RANfunctionsIDcause_List_H_
@@ -32,9 +32,6 @@
 
 /* Implementation */
 extern asn_TYPE_descriptor_t asn_DEF_RANfunctionsIDcause_List;
-extern asn_SET_OF_specifics_t asn_SPC_RANfunctionsIDcause_List_specs_1;
-extern asn_TYPE_member_t asn_MBR_RANfunctionsIDcause_List_1[1];
-extern asn_per_constraints_t asn_PER_type_RANfunctionsIDcause_List_constr_1;
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/RICaction-Admitted-Item.c b/e2sim/src/ASN1c/RICaction-Admitted-Item.c
index 5264f97..dbedb03 100644
--- a/e2sim/src/ASN1c/RICaction-Admitted-Item.c
+++ b/e2sim/src/ASN1c/RICaction-Admitted-Item.c
@@ -1,13 +1,13 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICaction-Admitted-Item.h"
 
-asn_TYPE_member_t asn_MBR_RICaction_Admitted_Item_1[] = {
+static asn_TYPE_member_t asn_MBR_RICaction_Admitted_Item_1[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICaction_Admitted_Item, ricActionID),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
@@ -24,7 +24,7 @@
 static const asn_TYPE_tag2member_t asn_MAP_RICaction_Admitted_Item_tag2el_1[] = {
     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ricActionID */
 };
-asn_SEQUENCE_specifics_t asn_SPC_RICaction_Admitted_Item_specs_1 = {
+static asn_SEQUENCE_specifics_t asn_SPC_RICaction_Admitted_Item_specs_1 = {
 	sizeof(struct RICaction_Admitted_Item),
 	offsetof(struct RICaction_Admitted_Item, _asn_ctx),
 	asn_MAP_RICaction_Admitted_Item_tag2el_1,
diff --git a/e2sim/src/ASN1c/RICaction-Admitted-Item.h b/e2sim/src/ASN1c/RICaction-Admitted-Item.h
index 763fb6b..c2d204c 100644
--- a/e2sim/src/ASN1c/RICaction-Admitted-Item.h
+++ b/e2sim/src/ASN1c/RICaction-Admitted-Item.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICaction_Admitted_Item_H_
@@ -33,8 +33,6 @@
 
 /* Implementation */
 extern asn_TYPE_descriptor_t asn_DEF_RICaction_Admitted_Item;
-extern asn_SEQUENCE_specifics_t asn_SPC_RICaction_Admitted_Item_specs_1;
-extern asn_TYPE_member_t asn_MBR_RICaction_Admitted_Item_1[1];
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/RICaction-Admitted-List.c b/e2sim/src/ASN1c/RICaction-Admitted-List.c
index c0ac7aa..de86657 100644
--- a/e2sim/src/ASN1c/RICaction-Admitted-List.c
+++ b/e2sim/src/ASN1c/RICaction-Admitted-List.c
@@ -1,23 +1,23 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICaction-Admitted-List.h"
 
 #include "ProtocolIE-SingleContainer.h"
-asn_per_constraints_t asn_PER_type_RICaction_Admitted_List_constr_1 CC_NOTUSED = {
+static asn_per_constraints_t asn_PER_type_RICaction_Admitted_List_constr_1 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 4,  4,  1,  16 }	/* (SIZE(1..16)) */,
 	0, 0	/* No PER value map */
 };
-asn_TYPE_member_t asn_MBR_RICaction_Admitted_List_1[] = {
+static asn_TYPE_member_t asn_MBR_RICaction_Admitted_List_1[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
-		&asn_DEF_ProtocolIE_SingleContainer_229P1,
+		&asn_DEF_ProtocolIE_SingleContainer_1920P1,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
@@ -27,7 +27,7 @@
 static const ber_tlv_tag_t asn_DEF_RICaction_Admitted_List_tags_1[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_RICaction_Admitted_List_specs_1 = {
+static asn_SET_OF_specifics_t asn_SPC_RICaction_Admitted_List_specs_1 = {
 	sizeof(struct RICaction_Admitted_List),
 	offsetof(struct RICaction_Admitted_List, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
diff --git a/e2sim/src/ASN1c/RICaction-Admitted-List.h b/e2sim/src/ASN1c/RICaction-Admitted-List.h
index 1b04907..a497f03 100644
--- a/e2sim/src/ASN1c/RICaction-Admitted-List.h
+++ b/e2sim/src/ASN1c/RICaction-Admitted-List.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICaction_Admitted_List_H_
@@ -32,9 +32,6 @@
 
 /* Implementation */
 extern asn_TYPE_descriptor_t asn_DEF_RICaction_Admitted_List;
-extern asn_SET_OF_specifics_t asn_SPC_RICaction_Admitted_List_specs_1;
-extern asn_TYPE_member_t asn_MBR_RICaction_Admitted_List_1[1];
-extern asn_per_constraints_t asn_PER_type_RICaction_Admitted_List_constr_1;
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/RICaction-NotAdmitted-Item.c b/e2sim/src/ASN1c/RICaction-NotAdmitted-Item.c
index fdc9a5a..d015993 100644
--- a/e2sim/src/ASN1c/RICaction-NotAdmitted-Item.c
+++ b/e2sim/src/ASN1c/RICaction-NotAdmitted-Item.c
@@ -1,13 +1,13 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICaction-NotAdmitted-Item.h"
 
-asn_TYPE_member_t asn_MBR_RICaction_NotAdmitted_Item_1[] = {
+static asn_TYPE_member_t asn_MBR_RICaction_NotAdmitted_Item_1[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICaction_NotAdmitted_Item, ricActionID),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
@@ -34,7 +34,7 @@
     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ricActionID */
     { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* cause */
 };
-asn_SEQUENCE_specifics_t asn_SPC_RICaction_NotAdmitted_Item_specs_1 = {
+static asn_SEQUENCE_specifics_t asn_SPC_RICaction_NotAdmitted_Item_specs_1 = {
 	sizeof(struct RICaction_NotAdmitted_Item),
 	offsetof(struct RICaction_NotAdmitted_Item, _asn_ctx),
 	asn_MAP_RICaction_NotAdmitted_Item_tag2el_1,
diff --git a/e2sim/src/ASN1c/RICaction-NotAdmitted-Item.h b/e2sim/src/ASN1c/RICaction-NotAdmitted-Item.h
index 36072ef..57dcd06 100644
--- a/e2sim/src/ASN1c/RICaction-NotAdmitted-Item.h
+++ b/e2sim/src/ASN1c/RICaction-NotAdmitted-Item.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICaction_NotAdmitted_Item_H_
@@ -35,8 +35,6 @@
 
 /* Implementation */
 extern asn_TYPE_descriptor_t asn_DEF_RICaction_NotAdmitted_Item;
-extern asn_SEQUENCE_specifics_t asn_SPC_RICaction_NotAdmitted_Item_specs_1;
-extern asn_TYPE_member_t asn_MBR_RICaction_NotAdmitted_Item_1[2];
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/RICaction-NotAdmitted-List.c b/e2sim/src/ASN1c/RICaction-NotAdmitted-List.c
index b5681f3..c2a44b2 100644
--- a/e2sim/src/ASN1c/RICaction-NotAdmitted-List.c
+++ b/e2sim/src/ASN1c/RICaction-NotAdmitted-List.c
@@ -1,23 +1,23 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICaction-NotAdmitted-List.h"
 
 #include "ProtocolIE-SingleContainer.h"
-asn_per_constraints_t asn_PER_type_RICaction_NotAdmitted_List_constr_1 CC_NOTUSED = {
+static asn_per_constraints_t asn_PER_type_RICaction_NotAdmitted_List_constr_1 CC_NOTUSED = {
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	{ APC_CONSTRAINED,	 5,  5,  0,  16 }	/* (SIZE(0..16)) */,
 	0, 0	/* No PER value map */
 };
-asn_TYPE_member_t asn_MBR_RICaction_NotAdmitted_List_1[] = {
+static asn_TYPE_member_t asn_MBR_RICaction_NotAdmitted_List_1[] = {
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
-		&asn_DEF_ProtocolIE_SingleContainer_229P2,
+		&asn_DEF_ProtocolIE_SingleContainer_1920P2,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
@@ -27,7 +27,7 @@
 static const ber_tlv_tag_t asn_DEF_RICaction_NotAdmitted_List_tags_1[] = {
 	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
 };
-asn_SET_OF_specifics_t asn_SPC_RICaction_NotAdmitted_List_specs_1 = {
+static asn_SET_OF_specifics_t asn_SPC_RICaction_NotAdmitted_List_specs_1 = {
 	sizeof(struct RICaction_NotAdmitted_List),
 	offsetof(struct RICaction_NotAdmitted_List, _asn_ctx),
 	0,	/* XER encoding is XMLDelimitedItemList */
diff --git a/e2sim/src/ASN1c/RICaction-NotAdmitted-List.h b/e2sim/src/ASN1c/RICaction-NotAdmitted-List.h
index 02f6465..3510867 100644
--- a/e2sim/src/ASN1c/RICaction-NotAdmitted-List.h
+++ b/e2sim/src/ASN1c/RICaction-NotAdmitted-List.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICaction_NotAdmitted_List_H_
@@ -32,9 +32,6 @@
 
 /* Implementation */
 extern asn_TYPE_descriptor_t asn_DEF_RICaction_NotAdmitted_List;
-extern asn_SET_OF_specifics_t asn_SPC_RICaction_NotAdmitted_List_specs_1;
-extern asn_TYPE_member_t asn_MBR_RICaction_NotAdmitted_List_1[1];
-extern asn_per_constraints_t asn_PER_type_RICaction_NotAdmitted_List_constr_1;
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/RICaction-ToBeSetup-Item.c b/e2sim/src/ASN1c/RICaction-ToBeSetup-Item.c
index 42ef838..2ac74a8 100644
--- a/e2sim/src/ASN1c/RICaction-ToBeSetup-Item.c
+++ b/e2sim/src/ASN1c/RICaction-ToBeSetup-Item.c
@@ -1,14 +1,14 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICaction-ToBeSetup-Item.h"
 
 #include "RICsubsequentAction.h"
-asn_TYPE_member_t asn_MBR_RICaction_ToBeSetup_Item_1[] = {
+static asn_TYPE_member_t asn_MBR_RICaction_ToBeSetup_Item_1[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICaction_ToBeSetup_Item, ricActionID),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
@@ -56,7 +56,7 @@
     { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ricActionDefinition */
     { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* ricSubsequentAction */
 };
-asn_SEQUENCE_specifics_t asn_SPC_RICaction_ToBeSetup_Item_specs_1 = {
+static asn_SEQUENCE_specifics_t asn_SPC_RICaction_ToBeSetup_Item_specs_1 = {
 	sizeof(struct RICaction_ToBeSetup_Item),
 	offsetof(struct RICaction_ToBeSetup_Item, _asn_ctx),
 	asn_MAP_RICaction_ToBeSetup_Item_tag2el_1,
diff --git a/e2sim/src/ASN1c/RICaction-ToBeSetup-Item.h b/e2sim/src/ASN1c/RICaction-ToBeSetup-Item.h
index 1598de9..3ae5ed4 100644
--- a/e2sim/src/ASN1c/RICaction-ToBeSetup-Item.h
+++ b/e2sim/src/ASN1c/RICaction-ToBeSetup-Item.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICaction_ToBeSetup_Item_H_
@@ -41,8 +41,6 @@
 
 /* Implementation */
 extern asn_TYPE_descriptor_t asn_DEF_RICaction_ToBeSetup_Item;
-extern asn_SEQUENCE_specifics_t asn_SPC_RICaction_ToBeSetup_Item_specs_1;
-extern asn_TYPE_member_t asn_MBR_RICaction_ToBeSetup_Item_1[4];
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/RICactionDefinition.c b/e2sim/src/ASN1c/RICactionDefinition.c
index 6a7729e..008ef4c 100644
--- a/e2sim/src/ASN1c/RICactionDefinition.c
+++ b/e2sim/src/ASN1c/RICactionDefinition.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICactionDefinition.h"
diff --git a/e2sim/src/ASN1c/RICactionDefinition.h b/e2sim/src/ASN1c/RICactionDefinition.h
index 5a1b3a8..091bb27 100644
--- a/e2sim/src/ASN1c/RICactionDefinition.h
+++ b/e2sim/src/ASN1c/RICactionDefinition.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICactionDefinition_H_
diff --git a/e2sim/src/ASN1c/RICactionID.c b/e2sim/src/ASN1c/RICactionID.c
index 7deb2d9..fcf3b01 100644
--- a/e2sim/src/ASN1c/RICactionID.c
+++ b/e2sim/src/ASN1c/RICactionID.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICactionID.h"
diff --git a/e2sim/src/ASN1c/RICactionID.h b/e2sim/src/ASN1c/RICactionID.h
index 7818a7c..9c74319 100644
--- a/e2sim/src/ASN1c/RICactionID.h
+++ b/e2sim/src/ASN1c/RICactionID.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICactionID_H_
diff --git a/e2sim/src/ASN1c/RICactionType.c b/e2sim/src/ASN1c/RICactionType.c
index 9c6814c..9ce9bd3 100644
--- a/e2sim/src/ASN1c/RICactionType.c
+++ b/e2sim/src/ASN1c/RICactionType.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICactionType.h"
diff --git a/e2sim/src/ASN1c/RICactionType.h b/e2sim/src/ASN1c/RICactionType.h
index 08ad89d..10d4694 100644
--- a/e2sim/src/ASN1c/RICactionType.h
+++ b/e2sim/src/ASN1c/RICactionType.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICactionType_H_
diff --git a/e2sim/src/ASN1c/RICactions-ToBeSetup-List.c b/e2sim/src/ASN1c/RICactions-ToBeSetup-List.c
index 00474c7..d79b763 100644
--- a/e2sim/src/ASN1c/RICactions-ToBeSetup-List.c
+++ b/e2sim/src/ASN1c/RICactions-ToBeSetup-List.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICactions-ToBeSetup-List.h"
@@ -17,7 +17,7 @@
 	{ ATF_POINTER, 0, 0,
 		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
 		0,
-		&asn_DEF_ProtocolIE_SingleContainer_229P0,
+		&asn_DEF_ProtocolIE_SingleContainer_1920P0,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
diff --git a/e2sim/src/ASN1c/RICactions-ToBeSetup-List.h b/e2sim/src/ASN1c/RICactions-ToBeSetup-List.h
index 391cc17..031e11f 100644
--- a/e2sim/src/ASN1c/RICactions-ToBeSetup-List.h
+++ b/e2sim/src/ASN1c/RICactions-ToBeSetup-List.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICactions_ToBeSetup_List_H_
diff --git a/e2sim/src/ASN1c/RICcallProcessID.c b/e2sim/src/ASN1c/RICcallProcessID.c
index 847d8e5..9d655c5 100644
--- a/e2sim/src/ASN1c/RICcallProcessID.c
+++ b/e2sim/src/ASN1c/RICcallProcessID.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICcallProcessID.h"
diff --git a/e2sim/src/ASN1c/RICcallProcessID.h b/e2sim/src/ASN1c/RICcallProcessID.h
index b3bbfc8..e50ac0e 100644
--- a/e2sim/src/ASN1c/RICcallProcessID.h
+++ b/e2sim/src/ASN1c/RICcallProcessID.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICcallProcessID_H_
diff --git a/e2sim/src/ASN1c/RICcontrolAckRequest.c b/e2sim/src/ASN1c/RICcontrolAckRequest.c
index d7f1237..702c61c 100644
--- a/e2sim/src/ASN1c/RICcontrolAckRequest.c
+++ b/e2sim/src/ASN1c/RICcontrolAckRequest.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICcontrolAckRequest.h"
@@ -11,28 +11,26 @@
  * This type is implemented using NativeEnumerated,
  * so here we adjust the DEF accordingly.
  */
-asn_per_constraints_t asn_PER_type_RICcontrolAckRequest_constr_1 CC_NOTUSED = {
-	{ APC_CONSTRAINED | APC_EXTENSIBLE,  2,  2,  0,  2 }	/* (0..2,...) */,
+static asn_per_constraints_t asn_PER_type_RICcontrolAckRequest_constr_1 CC_NOTUSED = {
+	{ APC_CONSTRAINED | APC_EXTENSIBLE,  1,  1,  0,  1 }	/* (0..1,...) */,
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	0, 0	/* No PER value map */
 };
 static const asn_INTEGER_enum_map_t asn_MAP_RICcontrolAckRequest_value2enum_1[] = {
 	{ 0,	5,	"noAck" },
-	{ 1,	3,	"ack" },
-	{ 2,	4,	"nAck" }
+	{ 1,	3,	"ack" }
 	/* This list is extensible */
 };
 static const unsigned int asn_MAP_RICcontrolAckRequest_enum2value_1[] = {
 	1,	/* ack(1) */
-	2,	/* nAck(2) */
 	0	/* noAck(0) */
 	/* This list is extensible */
 };
-const asn_INTEGER_specifics_t asn_SPC_RICcontrolAckRequest_specs_1 = {
+static const asn_INTEGER_specifics_t asn_SPC_RICcontrolAckRequest_specs_1 = {
 	asn_MAP_RICcontrolAckRequest_value2enum_1,	/* "tag" => N; sorted by tag */
 	asn_MAP_RICcontrolAckRequest_enum2value_1,	/* N => "tag"; sorted by N */
-	3,	/* Number of elements in the maps */
-	4,	/* Extensions before this member */
+	2,	/* Number of elements in the maps */
+	3,	/* Extensions before this member */
 	1,	/* Strict enumeration */
 	0,	/* Native long size */
 	0
diff --git a/e2sim/src/ASN1c/RICcontrolAckRequest.h b/e2sim/src/ASN1c/RICcontrolAckRequest.h
index 4f96f83..f416db3 100644
--- a/e2sim/src/ASN1c/RICcontrolAckRequest.h
+++ b/e2sim/src/ASN1c/RICcontrolAckRequest.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICcontrolAckRequest_H_
@@ -21,8 +21,7 @@
 /* Dependencies */
 typedef enum RICcontrolAckRequest {
 	RICcontrolAckRequest_noAck	= 0,
-	RICcontrolAckRequest_ack	= 1,
-	RICcontrolAckRequest_nAck	= 2
+	RICcontrolAckRequest_ack	= 1
 	/*
 	 * Enumeration is extensible
 	 */
@@ -32,9 +31,7 @@
 typedef long	 RICcontrolAckRequest_t;
 
 /* Implementation */
-extern asn_per_constraints_t asn_PER_type_RICcontrolAckRequest_constr_1;
 extern asn_TYPE_descriptor_t asn_DEF_RICcontrolAckRequest;
-extern const asn_INTEGER_specifics_t asn_SPC_RICcontrolAckRequest_specs_1;
 asn_struct_free_f RICcontrolAckRequest_free;
 asn_struct_print_f RICcontrolAckRequest_print;
 asn_constr_check_f RICcontrolAckRequest_constraint;
diff --git a/e2sim/src/ASN1c/RICcontrolAcknowledge.c b/e2sim/src/ASN1c/RICcontrolAcknowledge.c
index 1d0f224..ef7e25f 100644
--- a/e2sim/src/ASN1c/RICcontrolAcknowledge.c
+++ b/e2sim/src/ASN1c/RICcontrolAcknowledge.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICcontrolAcknowledge.h"
@@ -11,7 +11,7 @@
 	{ ATF_NOFLAGS, 0, offsetof(struct RICcontrolAcknowledge, protocolIEs),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_ProtocolIE_Container_226P8,
+		&asn_DEF_ProtocolIE_Container_1917P9,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
diff --git a/e2sim/src/ASN1c/RICcontrolAcknowledge.h b/e2sim/src/ASN1c/RICcontrolAcknowledge.h
index 6f61ded..6cb8034 100644
--- a/e2sim/src/ASN1c/RICcontrolAcknowledge.h
+++ b/e2sim/src/ASN1c/RICcontrolAcknowledge.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICcontrolAcknowledge_H_
@@ -21,7 +21,7 @@
 
 /* RICcontrolAcknowledge */
 typedef struct RICcontrolAcknowledge {
-	ProtocolIE_Container_226P8_t	 protocolIEs;
+	ProtocolIE_Container_1917P9_t	 protocolIEs;
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
diff --git a/e2sim/src/ASN1c/RICcontrolFailure.c b/e2sim/src/ASN1c/RICcontrolFailure.c
index a3b6d13..48b48f7 100644
--- a/e2sim/src/ASN1c/RICcontrolFailure.c
+++ b/e2sim/src/ASN1c/RICcontrolFailure.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICcontrolFailure.h"
@@ -11,7 +11,7 @@
 	{ ATF_NOFLAGS, 0, offsetof(struct RICcontrolFailure, protocolIEs),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_ProtocolIE_Container_226P9,
+		&asn_DEF_ProtocolIE_Container_1917P10,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
diff --git a/e2sim/src/ASN1c/RICcontrolFailure.h b/e2sim/src/ASN1c/RICcontrolFailure.h
index bb2ef49..6302148 100644
--- a/e2sim/src/ASN1c/RICcontrolFailure.h
+++ b/e2sim/src/ASN1c/RICcontrolFailure.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICcontrolFailure_H_
@@ -21,7 +21,7 @@
 
 /* RICcontrolFailure */
 typedef struct RICcontrolFailure {
-	ProtocolIE_Container_226P9_t	 protocolIEs;
+	ProtocolIE_Container_1917P10_t	 protocolIEs;
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
diff --git a/e2sim/src/ASN1c/RICcontrolHeader.c b/e2sim/src/ASN1c/RICcontrolHeader.c
index 7ddbac1..68acc95 100644
--- a/e2sim/src/ASN1c/RICcontrolHeader.c
+++ b/e2sim/src/ASN1c/RICcontrolHeader.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICcontrolHeader.h"
diff --git a/e2sim/src/ASN1c/RICcontrolHeader.h b/e2sim/src/ASN1c/RICcontrolHeader.h
index 6ecea7a..a9f1f25 100644
--- a/e2sim/src/ASN1c/RICcontrolHeader.h
+++ b/e2sim/src/ASN1c/RICcontrolHeader.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICcontrolHeader_H_
diff --git a/e2sim/src/ASN1c/RICcontrolMessage.c b/e2sim/src/ASN1c/RICcontrolMessage.c
index 56b2322..05a8a81 100644
--- a/e2sim/src/ASN1c/RICcontrolMessage.c
+++ b/e2sim/src/ASN1c/RICcontrolMessage.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICcontrolMessage.h"
diff --git a/e2sim/src/ASN1c/RICcontrolMessage.h b/e2sim/src/ASN1c/RICcontrolMessage.h
index b5afb39..9190f91 100644
--- a/e2sim/src/ASN1c/RICcontrolMessage.h
+++ b/e2sim/src/ASN1c/RICcontrolMessage.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICcontrolMessage_H_
diff --git a/e2sim/src/ASN1c/RICcontrolOutcome.c b/e2sim/src/ASN1c/RICcontrolOutcome.c
index e584d19..54f9a8f 100644
--- a/e2sim/src/ASN1c/RICcontrolOutcome.c
+++ b/e2sim/src/ASN1c/RICcontrolOutcome.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICcontrolOutcome.h"
diff --git a/e2sim/src/ASN1c/RICcontrolOutcome.h b/e2sim/src/ASN1c/RICcontrolOutcome.h
index 725ceb5..acd1916 100644
--- a/e2sim/src/ASN1c/RICcontrolOutcome.h
+++ b/e2sim/src/ASN1c/RICcontrolOutcome.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICcontrolOutcome_H_
diff --git a/e2sim/src/ASN1c/RICcontrolRequest.c b/e2sim/src/ASN1c/RICcontrolRequest.c
index 7398fc5..f75b29c 100644
--- a/e2sim/src/ASN1c/RICcontrolRequest.c
+++ b/e2sim/src/ASN1c/RICcontrolRequest.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICcontrolRequest.h"
@@ -11,7 +11,7 @@
 	{ ATF_NOFLAGS, 0, offsetof(struct RICcontrolRequest, protocolIEs),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_ProtocolIE_Container_226P7,
+		&asn_DEF_ProtocolIE_Container_1917P8,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
diff --git a/e2sim/src/ASN1c/RICcontrolRequest.h b/e2sim/src/ASN1c/RICcontrolRequest.h
index 40daf83..5596246 100644
--- a/e2sim/src/ASN1c/RICcontrolRequest.h
+++ b/e2sim/src/ASN1c/RICcontrolRequest.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICcontrolRequest_H_
@@ -21,7 +21,7 @@
 
 /* RICcontrolRequest */
 typedef struct RICcontrolRequest {
-	ProtocolIE_Container_226P7_t	 protocolIEs;
+	ProtocolIE_Container_1917P8_t	 protocolIEs;
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
diff --git a/e2sim/src/ASN1c/RICcontrolStatus.c b/e2sim/src/ASN1c/RICcontrolStatus.c
deleted file mode 100644
index 1c6c454..0000000
--- a/e2sim/src/ASN1c/RICcontrolStatus.c
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
- * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
- */
-
-#include "RICcontrolStatus.h"
-
-/*
- * This type is implemented using NativeEnumerated,
- * so here we adjust the DEF accordingly.
- */
-asn_per_constraints_t asn_PER_type_RICcontrolStatus_constr_1 CC_NOTUSED = {
-	{ APC_CONSTRAINED | APC_EXTENSIBLE,  2,  2,  0,  2 }	/* (0..2,...) */,
-	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
-	0, 0	/* No PER value map */
-};
-static const asn_INTEGER_enum_map_t asn_MAP_RICcontrolStatus_value2enum_1[] = {
-	{ 0,	7,	"success" },
-	{ 1,	8,	"rejected" },
-	{ 2,	6,	"failed" }
-	/* This list is extensible */
-};
-static const unsigned int asn_MAP_RICcontrolStatus_enum2value_1[] = {
-	2,	/* failed(2) */
-	1,	/* rejected(1) */
-	0	/* success(0) */
-	/* This list is extensible */
-};
-const asn_INTEGER_specifics_t asn_SPC_RICcontrolStatus_specs_1 = {
-	asn_MAP_RICcontrolStatus_value2enum_1,	/* "tag" => N; sorted by tag */
-	asn_MAP_RICcontrolStatus_enum2value_1,	/* N => "tag"; sorted by N */
-	3,	/* Number of elements in the maps */
-	4,	/* Extensions before this member */
-	1,	/* Strict enumeration */
-	0,	/* Native long size */
-	0
-};
-static const ber_tlv_tag_t asn_DEF_RICcontrolStatus_tags_1[] = {
-	(ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
-};
-asn_TYPE_descriptor_t asn_DEF_RICcontrolStatus = {
-	"RICcontrolStatus",
-	"RICcontrolStatus",
-	&asn_OP_NativeEnumerated,
-	asn_DEF_RICcontrolStatus_tags_1,
-	sizeof(asn_DEF_RICcontrolStatus_tags_1)
-		/sizeof(asn_DEF_RICcontrolStatus_tags_1[0]), /* 1 */
-	asn_DEF_RICcontrolStatus_tags_1,	/* Same as above */
-	sizeof(asn_DEF_RICcontrolStatus_tags_1)
-		/sizeof(asn_DEF_RICcontrolStatus_tags_1[0]), /* 1 */
-	{ 0, &asn_PER_type_RICcontrolStatus_constr_1, NativeEnumerated_constraint },
-	0, 0,	/* Defined elsewhere */
-	&asn_SPC_RICcontrolStatus_specs_1	/* Additional specs */
-};
-
diff --git a/e2sim/src/ASN1c/RICcontrolStatus.h b/e2sim/src/ASN1c/RICcontrolStatus.h
deleted file mode 100644
index de6496f..0000000
--- a/e2sim/src/ASN1c/RICcontrolStatus.h
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
- * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
- * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
- */
-
-#ifndef	_RICcontrolStatus_H_
-#define	_RICcontrolStatus_H_
-
-
-#include "asn_application.h"
-
-/* Including external dependencies */
-#include "NativeEnumerated.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* Dependencies */
-typedef enum RICcontrolStatus {
-	RICcontrolStatus_success	= 0,
-	RICcontrolStatus_rejected	= 1,
-	RICcontrolStatus_failed	= 2
-	/*
-	 * Enumeration is extensible
-	 */
-} e_RICcontrolStatus;
-
-/* RICcontrolStatus */
-typedef long	 RICcontrolStatus_t;
-
-/* Implementation */
-extern asn_per_constraints_t asn_PER_type_RICcontrolStatus_constr_1;
-extern asn_TYPE_descriptor_t asn_DEF_RICcontrolStatus;
-extern const asn_INTEGER_specifics_t asn_SPC_RICcontrolStatus_specs_1;
-asn_struct_free_f RICcontrolStatus_free;
-asn_struct_print_f RICcontrolStatus_print;
-asn_constr_check_f RICcontrolStatus_constraint;
-ber_type_decoder_f RICcontrolStatus_decode_ber;
-der_type_encoder_f RICcontrolStatus_encode_der;
-xer_type_decoder_f RICcontrolStatus_decode_xer;
-xer_type_encoder_f RICcontrolStatus_encode_xer;
-per_type_decoder_f RICcontrolStatus_decode_uper;
-per_type_encoder_f RICcontrolStatus_encode_uper;
-per_type_decoder_f RICcontrolStatus_decode_aper;
-per_type_encoder_f RICcontrolStatus_encode_aper;
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif	/* _RICcontrolStatus_H_ */
-#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/RICeventTriggerDefinition.c b/e2sim/src/ASN1c/RICeventTriggerDefinition.c
index a0762b3..610cd92 100644
--- a/e2sim/src/ASN1c/RICeventTriggerDefinition.c
+++ b/e2sim/src/ASN1c/RICeventTriggerDefinition.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICeventTriggerDefinition.h"
diff --git a/e2sim/src/ASN1c/RICeventTriggerDefinition.h b/e2sim/src/ASN1c/RICeventTriggerDefinition.h
index c4b75d6..542a307 100644
--- a/e2sim/src/ASN1c/RICeventTriggerDefinition.h
+++ b/e2sim/src/ASN1c/RICeventTriggerDefinition.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICeventTriggerDefinition_H_
diff --git a/e2sim/src/ASN1c/RICindication.c b/e2sim/src/ASN1c/RICindication.c
index 734903e..214a690 100644
--- a/e2sim/src/ASN1c/RICindication.c
+++ b/e2sim/src/ASN1c/RICindication.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICindication.h"
@@ -11,7 +11,7 @@
 	{ ATF_NOFLAGS, 0, offsetof(struct RICindication, protocolIEs),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_ProtocolIE_Container_226P6,
+		&asn_DEF_ProtocolIE_Container_1917P7,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
diff --git a/e2sim/src/ASN1c/RICindication.h b/e2sim/src/ASN1c/RICindication.h
index 3d089a2..68799c3 100644
--- a/e2sim/src/ASN1c/RICindication.h
+++ b/e2sim/src/ASN1c/RICindication.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICindication_H_
@@ -21,7 +21,7 @@
 
 /* RICindication */
 typedef struct RICindication {
-	ProtocolIE_Container_226P6_t	 protocolIEs;
+	ProtocolIE_Container_1917P7_t	 protocolIEs;
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
diff --git a/e2sim/src/ASN1c/RICindicationHeader.c b/e2sim/src/ASN1c/RICindicationHeader.c
index eab1fb5..294772a 100644
--- a/e2sim/src/ASN1c/RICindicationHeader.c
+++ b/e2sim/src/ASN1c/RICindicationHeader.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICindicationHeader.h"
diff --git a/e2sim/src/ASN1c/RICindicationHeader.h b/e2sim/src/ASN1c/RICindicationHeader.h
index 2526404..f7f85e6 100644
--- a/e2sim/src/ASN1c/RICindicationHeader.h
+++ b/e2sim/src/ASN1c/RICindicationHeader.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICindicationHeader_H_
diff --git a/e2sim/src/ASN1c/RICindicationMessage.c b/e2sim/src/ASN1c/RICindicationMessage.c
index 471e2ca..70cc01e 100644
--- a/e2sim/src/ASN1c/RICindicationMessage.c
+++ b/e2sim/src/ASN1c/RICindicationMessage.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICindicationMessage.h"
diff --git a/e2sim/src/ASN1c/RICindicationMessage.h b/e2sim/src/ASN1c/RICindicationMessage.h
index 487a23d..dd77c49 100644
--- a/e2sim/src/ASN1c/RICindicationMessage.h
+++ b/e2sim/src/ASN1c/RICindicationMessage.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICindicationMessage_H_
diff --git a/e2sim/src/ASN1c/RICindicationSN.c b/e2sim/src/ASN1c/RICindicationSN.c
index 06e9405..cf59f76 100644
--- a/e2sim/src/ASN1c/RICindicationSN.c
+++ b/e2sim/src/ASN1c/RICindicationSN.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICindicationSN.h"
@@ -36,7 +36,7 @@
  * This type is implemented using NativeInteger,
  * so here we adjust the DEF accordingly.
  */
-asn_per_constraints_t asn_PER_type_RICindicationSN_constr_1 CC_NOTUSED = {
+static asn_per_constraints_t asn_PER_type_RICindicationSN_constr_1 CC_NOTUSED = {
 	{ APC_CONSTRAINED,	 16,  16,  0,  65535 }	/* (0..65535) */,
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	0, 0	/* No PER value map */
diff --git a/e2sim/src/ASN1c/RICindicationSN.h b/e2sim/src/ASN1c/RICindicationSN.h
index c13fff6..9765c1c 100644
--- a/e2sim/src/ASN1c/RICindicationSN.h
+++ b/e2sim/src/ASN1c/RICindicationSN.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICindicationSN_H_
@@ -22,7 +22,6 @@
 typedef long	 RICindicationSN_t;
 
 /* Implementation */
-extern asn_per_constraints_t asn_PER_type_RICindicationSN_constr_1;
 extern asn_TYPE_descriptor_t asn_DEF_RICindicationSN;
 asn_struct_free_f RICindicationSN_free;
 asn_struct_print_f RICindicationSN_print;
diff --git a/e2sim/src/ASN1c/RICindicationType.c b/e2sim/src/ASN1c/RICindicationType.c
index b68a6ba..cb424f6 100644
--- a/e2sim/src/ASN1c/RICindicationType.c
+++ b/e2sim/src/ASN1c/RICindicationType.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICindicationType.h"
@@ -11,7 +11,7 @@
  * This type is implemented using NativeEnumerated,
  * so here we adjust the DEF accordingly.
  */
-asn_per_constraints_t asn_PER_type_RICindicationType_constr_1 CC_NOTUSED = {
+static asn_per_constraints_t asn_PER_type_RICindicationType_constr_1 CC_NOTUSED = {
 	{ APC_CONSTRAINED | APC_EXTENSIBLE,  1,  1,  0,  1 }	/* (0..1,...) */,
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	0, 0	/* No PER value map */
@@ -26,7 +26,7 @@
 	0	/* report(0) */
 	/* This list is extensible */
 };
-const asn_INTEGER_specifics_t asn_SPC_RICindicationType_specs_1 = {
+static const asn_INTEGER_specifics_t asn_SPC_RICindicationType_specs_1 = {
 	asn_MAP_RICindicationType_value2enum_1,	/* "tag" => N; sorted by tag */
 	asn_MAP_RICindicationType_enum2value_1,	/* N => "tag"; sorted by N */
 	2,	/* Number of elements in the maps */
diff --git a/e2sim/src/ASN1c/RICindicationType.h b/e2sim/src/ASN1c/RICindicationType.h
index 76e08e9..911f405 100644
--- a/e2sim/src/ASN1c/RICindicationType.h
+++ b/e2sim/src/ASN1c/RICindicationType.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICindicationType_H_
@@ -31,9 +31,7 @@
 typedef long	 RICindicationType_t;
 
 /* Implementation */
-extern asn_per_constraints_t asn_PER_type_RICindicationType_constr_1;
 extern asn_TYPE_descriptor_t asn_DEF_RICindicationType;
-extern const asn_INTEGER_specifics_t asn_SPC_RICindicationType_specs_1;
 asn_struct_free_f RICindicationType_free;
 asn_struct_print_f RICindicationType_print;
 asn_constr_check_f RICindicationType_constraint;
diff --git a/e2sim/src/ASN1c/RICrequestID.c b/e2sim/src/ASN1c/RICrequestID.c
index 701a7cb..ec4178d 100644
--- a/e2sim/src/ASN1c/RICrequestID.c
+++ b/e2sim/src/ASN1c/RICrequestID.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICrequestID.h"
diff --git a/e2sim/src/ASN1c/RICrequestID.h b/e2sim/src/ASN1c/RICrequestID.h
index f832678..57032d7 100644
--- a/e2sim/src/ASN1c/RICrequestID.h
+++ b/e2sim/src/ASN1c/RICrequestID.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICrequestID_H_
diff --git a/e2sim/src/ASN1c/RICserviceQuery.c b/e2sim/src/ASN1c/RICserviceQuery.c
index 9dce754..3d5e6c4 100644
--- a/e2sim/src/ASN1c/RICserviceQuery.c
+++ b/e2sim/src/ASN1c/RICserviceQuery.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICserviceQuery.h"
@@ -11,7 +11,7 @@
 	{ ATF_NOFLAGS, 0, offsetof(struct RICserviceQuery, protocolIEs),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_ProtocolIE_Container_226P25,
+		&asn_DEF_ProtocolIE_Container_1917P26,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
diff --git a/e2sim/src/ASN1c/RICserviceQuery.h b/e2sim/src/ASN1c/RICserviceQuery.h
index 3b215de..3ccba64 100644
--- a/e2sim/src/ASN1c/RICserviceQuery.h
+++ b/e2sim/src/ASN1c/RICserviceQuery.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICserviceQuery_H_
@@ -21,7 +21,7 @@
 
 /* RICserviceQuery */
 typedef struct RICserviceQuery {
-	ProtocolIE_Container_226P25_t	 protocolIEs;
+	ProtocolIE_Container_1917P26_t	 protocolIEs;
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
diff --git a/e2sim/src/ASN1c/RICserviceUpdate.c b/e2sim/src/ASN1c/RICserviceUpdate.c
index 73206ce..e3e58cb 100644
--- a/e2sim/src/ASN1c/RICserviceUpdate.c
+++ b/e2sim/src/ASN1c/RICserviceUpdate.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICserviceUpdate.h"
@@ -11,7 +11,7 @@
 	{ ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdate, protocolIEs),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_ProtocolIE_Container_226P22,
+		&asn_DEF_ProtocolIE_Container_1917P23,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
diff --git a/e2sim/src/ASN1c/RICserviceUpdate.h b/e2sim/src/ASN1c/RICserviceUpdate.h
index 1155249..685230b 100644
--- a/e2sim/src/ASN1c/RICserviceUpdate.h
+++ b/e2sim/src/ASN1c/RICserviceUpdate.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICserviceUpdate_H_
@@ -21,7 +21,7 @@
 
 /* RICserviceUpdate */
 typedef struct RICserviceUpdate {
-	ProtocolIE_Container_226P22_t	 protocolIEs;
+	ProtocolIE_Container_1917P23_t	 protocolIEs;
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
diff --git a/e2sim/src/ASN1c/RICserviceUpdateAcknowledge.c b/e2sim/src/ASN1c/RICserviceUpdateAcknowledge.c
index 700c355..7f72da6 100644
--- a/e2sim/src/ASN1c/RICserviceUpdateAcknowledge.c
+++ b/e2sim/src/ASN1c/RICserviceUpdateAcknowledge.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICserviceUpdateAcknowledge.h"
@@ -11,7 +11,7 @@
 	{ ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdateAcknowledge, protocolIEs),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_ProtocolIE_Container_226P23,
+		&asn_DEF_ProtocolIE_Container_1917P24,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
diff --git a/e2sim/src/ASN1c/RICserviceUpdateAcknowledge.h b/e2sim/src/ASN1c/RICserviceUpdateAcknowledge.h
index cb8afea..1403549 100644
--- a/e2sim/src/ASN1c/RICserviceUpdateAcknowledge.h
+++ b/e2sim/src/ASN1c/RICserviceUpdateAcknowledge.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICserviceUpdateAcknowledge_H_
@@ -21,7 +21,7 @@
 
 /* RICserviceUpdateAcknowledge */
 typedef struct RICserviceUpdateAcknowledge {
-	ProtocolIE_Container_226P23_t	 protocolIEs;
+	ProtocolIE_Container_1917P24_t	 protocolIEs;
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
diff --git a/e2sim/src/ASN1c/RICserviceUpdateFailure.c b/e2sim/src/ASN1c/RICserviceUpdateFailure.c
index 72ddf04..109fa30 100644
--- a/e2sim/src/ASN1c/RICserviceUpdateFailure.c
+++ b/e2sim/src/ASN1c/RICserviceUpdateFailure.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICserviceUpdateFailure.h"
@@ -11,7 +11,7 @@
 	{ ATF_NOFLAGS, 0, offsetof(struct RICserviceUpdateFailure, protocolIEs),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_ProtocolIE_Container_226P24,
+		&asn_DEF_ProtocolIE_Container_1917P25,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
diff --git a/e2sim/src/ASN1c/RICserviceUpdateFailure.h b/e2sim/src/ASN1c/RICserviceUpdateFailure.h
index 3993372..457e91b 100644
--- a/e2sim/src/ASN1c/RICserviceUpdateFailure.h
+++ b/e2sim/src/ASN1c/RICserviceUpdateFailure.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICserviceUpdateFailure_H_
@@ -21,7 +21,7 @@
 
 /* RICserviceUpdateFailure */
 typedef struct RICserviceUpdateFailure {
-	ProtocolIE_Container_226P24_t	 protocolIEs;
+	ProtocolIE_Container_1917P25_t	 protocolIEs;
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
diff --git a/e2sim/src/ASN1c/RICsubscription-List-withCause.c b/e2sim/src/ASN1c/RICsubscription-List-withCause.c
new file mode 100644
index 0000000..b811b88
--- /dev/null
+++ b/e2sim/src/ASN1c/RICsubscription-List-withCause.c
@@ -0,0 +1,50 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-PDU-Contents"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#include "RICsubscription-List-withCause.h"
+
+#include "ProtocolIE-SingleContainer.h"
+static asn_per_constraints_t asn_PER_type_RICsubscription_List_withCause_constr_1 CC_NOTUSED = {
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	{ APC_CONSTRAINED,	 32, -1,  1,  4294967295 }	/* (SIZE(1..4294967295)) */,
+	0, 0	/* No PER value map */
+};
+static asn_TYPE_member_t asn_MBR_RICsubscription_List_withCause_1[] = {
+	{ ATF_POINTER, 0, 0,
+		(ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
+		0,
+		&asn_DEF_ProtocolIE_SingleContainer_1920P3,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		""
+		},
+};
+static const ber_tlv_tag_t asn_DEF_RICsubscription_List_withCause_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static asn_SET_OF_specifics_t asn_SPC_RICsubscription_List_withCause_specs_1 = {
+	sizeof(struct RICsubscription_List_withCause),
+	offsetof(struct RICsubscription_List_withCause, _asn_ctx),
+	0,	/* XER encoding is XMLDelimitedItemList */
+};
+asn_TYPE_descriptor_t asn_DEF_RICsubscription_List_withCause = {
+	"RICsubscription-List-withCause",
+	"RICsubscription-List-withCause",
+	&asn_OP_SEQUENCE_OF,
+	asn_DEF_RICsubscription_List_withCause_tags_1,
+	sizeof(asn_DEF_RICsubscription_List_withCause_tags_1)
+		/sizeof(asn_DEF_RICsubscription_List_withCause_tags_1[0]), /* 1 */
+	asn_DEF_RICsubscription_List_withCause_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RICsubscription_List_withCause_tags_1)
+		/sizeof(asn_DEF_RICsubscription_List_withCause_tags_1[0]), /* 1 */
+	{ 0, &asn_PER_type_RICsubscription_List_withCause_constr_1, SEQUENCE_OF_constraint },
+	asn_MBR_RICsubscription_List_withCause_1,
+	1,	/* Single element */
+	&asn_SPC_RICsubscription_List_withCause_specs_1	/* Additional specs */
+};
+
diff --git a/e2sim/src/ASN1c/RICsubscription-List-withCause.h b/e2sim/src/ASN1c/RICsubscription-List-withCause.h
new file mode 100644
index 0000000..a5a49fe
--- /dev/null
+++ b/e2sim/src/ASN1c/RICsubscription-List-withCause.h
@@ -0,0 +1,41 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-PDU-Contents"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#ifndef	_RICsubscription_List_withCause_H_
+#define	_RICsubscription_List_withCause_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "asn_SEQUENCE_OF.h"
+#include "constr_SEQUENCE_OF.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* Forward declarations */
+struct ProtocolIE_SingleContainer;
+
+/* RICsubscription-List-withCause */
+typedef struct RICsubscription_List_withCause {
+	A_SEQUENCE_OF(struct ProtocolIE_SingleContainer) list;
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RICsubscription_List_withCause_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RICsubscription_List_withCause;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RICsubscription_List_withCause_H_ */
+#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/RICsubscription-withCause-Item.c b/e2sim/src/ASN1c/RICsubscription-withCause-Item.c
new file mode 100644
index 0000000..70ad981
--- /dev/null
+++ b/e2sim/src/ASN1c/RICsubscription-withCause-Item.c
@@ -0,0 +1,70 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-PDU-Contents"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#include "RICsubscription-withCause-Item.h"
+
+static asn_TYPE_member_t asn_MBR_RICsubscription_withCause_Item_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscription_withCause_Item, ricRequestID),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RICrequestID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"ricRequestID"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscription_withCause_Item, ranFunctionID),
+		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_RANfunctionID,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"ranFunctionID"
+		},
+	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscription_withCause_Item, cause),
+		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
+		+1,	/* EXPLICIT tag at current level */
+		&asn_DEF_Cause,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"cause"
+		},
+};
+static const ber_tlv_tag_t asn_DEF_RICsubscription_withCause_Item_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RICsubscription_withCause_Item_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ricRequestID */
+    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ranFunctionID */
+    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* cause */
+};
+static asn_SEQUENCE_specifics_t asn_SPC_RICsubscription_withCause_Item_specs_1 = {
+	sizeof(struct RICsubscription_withCause_Item),
+	offsetof(struct RICsubscription_withCause_Item, _asn_ctx),
+	asn_MAP_RICsubscription_withCause_Item_tag2el_1,
+	3,	/* Count of tags in the map */
+	0, 0, 0,	/* Optional elements (not needed) */
+	3,	/* First extension addition */
+};
+asn_TYPE_descriptor_t asn_DEF_RICsubscription_withCause_Item = {
+	"RICsubscription-withCause-Item",
+	"RICsubscription-withCause-Item",
+	&asn_OP_SEQUENCE,
+	asn_DEF_RICsubscription_withCause_Item_tags_1,
+	sizeof(asn_DEF_RICsubscription_withCause_Item_tags_1)
+		/sizeof(asn_DEF_RICsubscription_withCause_Item_tags_1[0]), /* 1 */
+	asn_DEF_RICsubscription_withCause_Item_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RICsubscription_withCause_Item_tags_1)
+		/sizeof(asn_DEF_RICsubscription_withCause_Item_tags_1[0]), /* 1 */
+	{ 0, 0, SEQUENCE_constraint },
+	asn_MBR_RICsubscription_withCause_Item_1,
+	3,	/* Elements count */
+	&asn_SPC_RICsubscription_withCause_Item_specs_1	/* Additional specs */
+};
+
diff --git a/e2sim/src/ASN1c/RICsubscription-withCause-Item.h b/e2sim/src/ASN1c/RICsubscription-withCause-Item.h
new file mode 100644
index 0000000..dd07834
--- /dev/null
+++ b/e2sim/src/ASN1c/RICsubscription-withCause-Item.h
@@ -0,0 +1,46 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-PDU-Contents"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#ifndef	_RICsubscription_withCause_Item_H_
+#define	_RICsubscription_withCause_Item_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "RICrequestID.h"
+#include "RANfunctionID.h"
+#include "Cause.h"
+#include "constr_SEQUENCE.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RICsubscription-withCause-Item */
+typedef struct RICsubscription_withCause_Item {
+	RICrequestID_t	 ricRequestID;
+	RANfunctionID_t	 ranFunctionID;
+	Cause_t	 cause;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RICsubscription_withCause_Item_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RICsubscription_withCause_Item;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RICsubscription_withCause_Item_H_ */
+#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/RICsubscriptionDeleteFailure.c b/e2sim/src/ASN1c/RICsubscriptionDeleteFailure.c
index 17144b1..2c5d10a 100644
--- a/e2sim/src/ASN1c/RICsubscriptionDeleteFailure.c
+++ b/e2sim/src/ASN1c/RICsubscriptionDeleteFailure.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICsubscriptionDeleteFailure.h"
@@ -11,7 +11,7 @@
 	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteFailure, protocolIEs),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_ProtocolIE_Container_226P5,
+		&asn_DEF_ProtocolIE_Container_1917P5,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
diff --git a/e2sim/src/ASN1c/RICsubscriptionDeleteFailure.h b/e2sim/src/ASN1c/RICsubscriptionDeleteFailure.h
index c449ec2..ad346e9 100644
--- a/e2sim/src/ASN1c/RICsubscriptionDeleteFailure.h
+++ b/e2sim/src/ASN1c/RICsubscriptionDeleteFailure.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICsubscriptionDeleteFailure_H_
@@ -21,7 +21,7 @@
 
 /* RICsubscriptionDeleteFailure */
 typedef struct RICsubscriptionDeleteFailure {
-	ProtocolIE_Container_226P5_t	 protocolIEs;
+	ProtocolIE_Container_1917P5_t	 protocolIEs;
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
diff --git a/e2sim/src/ASN1c/RICsubscriptionDeleteRequest.c b/e2sim/src/ASN1c/RICsubscriptionDeleteRequest.c
index acf561a..1197a03 100644
--- a/e2sim/src/ASN1c/RICsubscriptionDeleteRequest.c
+++ b/e2sim/src/ASN1c/RICsubscriptionDeleteRequest.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICsubscriptionDeleteRequest.h"
@@ -11,7 +11,7 @@
 	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteRequest, protocolIEs),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_ProtocolIE_Container_226P3,
+		&asn_DEF_ProtocolIE_Container_1917P3,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
diff --git a/e2sim/src/ASN1c/RICsubscriptionDeleteRequest.h b/e2sim/src/ASN1c/RICsubscriptionDeleteRequest.h
index 1d86168..ca20aa0 100644
--- a/e2sim/src/ASN1c/RICsubscriptionDeleteRequest.h
+++ b/e2sim/src/ASN1c/RICsubscriptionDeleteRequest.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICsubscriptionDeleteRequest_H_
@@ -21,7 +21,7 @@
 
 /* RICsubscriptionDeleteRequest */
 typedef struct RICsubscriptionDeleteRequest {
-	ProtocolIE_Container_226P3_t	 protocolIEs;
+	ProtocolIE_Container_1917P3_t	 protocolIEs;
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
diff --git a/e2sim/src/ASN1c/RICsubscriptionDeleteRequired.c b/e2sim/src/ASN1c/RICsubscriptionDeleteRequired.c
new file mode 100644
index 0000000..0ff50e2
--- /dev/null
+++ b/e2sim/src/ASN1c/RICsubscriptionDeleteRequired.c
@@ -0,0 +1,50 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-PDU-Contents"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#include "RICsubscriptionDeleteRequired.h"
+
+asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteRequired_1[] = {
+	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteRequired, protocolIEs),
+		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+		-1,	/* IMPLICIT tag at current level */
+		&asn_DEF_ProtocolIE_Container_1917P6,
+		0,
+		{ 0, 0, 0 },
+		0, 0, /* No default value */
+		"protocolIEs"
+		},
+};
+static const ber_tlv_tag_t asn_DEF_RICsubscriptionDeleteRequired_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t asn_MAP_RICsubscriptionDeleteRequired_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* protocolIEs */
+};
+asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteRequired_specs_1 = {
+	sizeof(struct RICsubscriptionDeleteRequired),
+	offsetof(struct RICsubscriptionDeleteRequired, _asn_ctx),
+	asn_MAP_RICsubscriptionDeleteRequired_tag2el_1,
+	1,	/* Count of tags in the map */
+	0, 0, 0,	/* Optional elements (not needed) */
+	1,	/* First extension addition */
+};
+asn_TYPE_descriptor_t asn_DEF_RICsubscriptionDeleteRequired = {
+	"RICsubscriptionDeleteRequired",
+	"RICsubscriptionDeleteRequired",
+	&asn_OP_SEQUENCE,
+	asn_DEF_RICsubscriptionDeleteRequired_tags_1,
+	sizeof(asn_DEF_RICsubscriptionDeleteRequired_tags_1)
+		/sizeof(asn_DEF_RICsubscriptionDeleteRequired_tags_1[0]), /* 1 */
+	asn_DEF_RICsubscriptionDeleteRequired_tags_1,	/* Same as above */
+	sizeof(asn_DEF_RICsubscriptionDeleteRequired_tags_1)
+		/sizeof(asn_DEF_RICsubscriptionDeleteRequired_tags_1[0]), /* 1 */
+	{ 0, 0, SEQUENCE_constraint },
+	asn_MBR_RICsubscriptionDeleteRequired_1,
+	1,	/* Elements count */
+	&asn_SPC_RICsubscriptionDeleteRequired_specs_1	/* Additional specs */
+};
+
diff --git a/e2sim/src/ASN1c/RICsubscriptionDeleteRequired.h b/e2sim/src/ASN1c/RICsubscriptionDeleteRequired.h
new file mode 100644
index 0000000..9c2acac
--- /dev/null
+++ b/e2sim/src/ASN1c/RICsubscriptionDeleteRequired.h
@@ -0,0 +1,44 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-PDU-Contents"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#ifndef	_RICsubscriptionDeleteRequired_H_
+#define	_RICsubscriptionDeleteRequired_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "ProtocolIE-Container.h"
+#include "constr_SEQUENCE.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* RICsubscriptionDeleteRequired */
+typedef struct RICsubscriptionDeleteRequired {
+	ProtocolIE_Container_1917P6_t	 protocolIEs;
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} RICsubscriptionDeleteRequired_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_RICsubscriptionDeleteRequired;
+extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDeleteRequired_specs_1;
+extern asn_TYPE_member_t asn_MBR_RICsubscriptionDeleteRequired_1[1];
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _RICsubscriptionDeleteRequired_H_ */
+#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/RICsubscriptionDeleteResponse.c b/e2sim/src/ASN1c/RICsubscriptionDeleteResponse.c
index a8268de..52810b9 100644
--- a/e2sim/src/ASN1c/RICsubscriptionDeleteResponse.c
+++ b/e2sim/src/ASN1c/RICsubscriptionDeleteResponse.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICsubscriptionDeleteResponse.h"
@@ -11,7 +11,7 @@
 	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDeleteResponse, protocolIEs),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_ProtocolIE_Container_226P4,
+		&asn_DEF_ProtocolIE_Container_1917P4,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
diff --git a/e2sim/src/ASN1c/RICsubscriptionDeleteResponse.h b/e2sim/src/ASN1c/RICsubscriptionDeleteResponse.h
index 5f54a1c..912c37e 100644
--- a/e2sim/src/ASN1c/RICsubscriptionDeleteResponse.h
+++ b/e2sim/src/ASN1c/RICsubscriptionDeleteResponse.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICsubscriptionDeleteResponse_H_
@@ -21,7 +21,7 @@
 
 /* RICsubscriptionDeleteResponse */
 typedef struct RICsubscriptionDeleteResponse {
-	ProtocolIE_Container_226P4_t	 protocolIEs;
+	ProtocolIE_Container_1917P4_t	 protocolIEs;
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
diff --git a/e2sim/src/ASN1c/RICsubscriptionDetails.c b/e2sim/src/ASN1c/RICsubscriptionDetails.c
index 07a6871..9b2f4c9 100644
--- a/e2sim/src/ASN1c/RICsubscriptionDetails.c
+++ b/e2sim/src/ASN1c/RICsubscriptionDetails.c
@@ -1,13 +1,13 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICsubscriptionDetails.h"
 
-asn_TYPE_member_t asn_MBR_RICsubscriptionDetails_1[] = {
+static asn_TYPE_member_t asn_MBR_RICsubscriptionDetails_1[] = {
 	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionDetails, ricEventTriggerDefinition),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
@@ -34,7 +34,7 @@
     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ricEventTriggerDefinition */
     { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* ricAction-ToBeSetup-List */
 };
-asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDetails_specs_1 = {
+static asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDetails_specs_1 = {
 	sizeof(struct RICsubscriptionDetails),
 	offsetof(struct RICsubscriptionDetails, _asn_ctx),
 	asn_MAP_RICsubscriptionDetails_tag2el_1,
diff --git a/e2sim/src/ASN1c/RICsubscriptionDetails.h b/e2sim/src/ASN1c/RICsubscriptionDetails.h
index 2ec7ae2..d1aad64 100644
--- a/e2sim/src/ASN1c/RICsubscriptionDetails.h
+++ b/e2sim/src/ASN1c/RICsubscriptionDetails.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICsubscriptionDetails_H_
@@ -35,8 +35,6 @@
 
 /* Implementation */
 extern asn_TYPE_descriptor_t asn_DEF_RICsubscriptionDetails;
-extern asn_SEQUENCE_specifics_t asn_SPC_RICsubscriptionDetails_specs_1;
-extern asn_TYPE_member_t asn_MBR_RICsubscriptionDetails_1[2];
 
 #ifdef __cplusplus
 }
diff --git a/e2sim/src/ASN1c/RICsubscriptionFailure.c b/e2sim/src/ASN1c/RICsubscriptionFailure.c
index b95025e..29069a3 100644
--- a/e2sim/src/ASN1c/RICsubscriptionFailure.c
+++ b/e2sim/src/ASN1c/RICsubscriptionFailure.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICsubscriptionFailure.h"
@@ -11,7 +11,7 @@
 	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionFailure, protocolIEs),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_ProtocolIE_Container_226P2,
+		&asn_DEF_ProtocolIE_Container_1917P2,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
diff --git a/e2sim/src/ASN1c/RICsubscriptionFailure.h b/e2sim/src/ASN1c/RICsubscriptionFailure.h
index 7910f1c..4a7e356 100644
--- a/e2sim/src/ASN1c/RICsubscriptionFailure.h
+++ b/e2sim/src/ASN1c/RICsubscriptionFailure.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICsubscriptionFailure_H_
@@ -21,7 +21,7 @@
 
 /* RICsubscriptionFailure */
 typedef struct RICsubscriptionFailure {
-	ProtocolIE_Container_226P2_t	 protocolIEs;
+	ProtocolIE_Container_1917P2_t	 protocolIEs;
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
diff --git a/e2sim/src/ASN1c/RICsubscriptionRequest.c b/e2sim/src/ASN1c/RICsubscriptionRequest.c
index ef86fa8..dc71412 100644
--- a/e2sim/src/ASN1c/RICsubscriptionRequest.c
+++ b/e2sim/src/ASN1c/RICsubscriptionRequest.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICsubscriptionRequest.h"
@@ -11,7 +11,7 @@
 	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionRequest, protocolIEs),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_ProtocolIE_Container_226P0,
+		&asn_DEF_ProtocolIE_Container_1917P0,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
diff --git a/e2sim/src/ASN1c/RICsubscriptionRequest.h b/e2sim/src/ASN1c/RICsubscriptionRequest.h
index 76429ea..8cded13 100644
--- a/e2sim/src/ASN1c/RICsubscriptionRequest.h
+++ b/e2sim/src/ASN1c/RICsubscriptionRequest.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICsubscriptionRequest_H_
@@ -21,7 +21,7 @@
 
 /* RICsubscriptionRequest */
 typedef struct RICsubscriptionRequest {
-	ProtocolIE_Container_226P0_t	 protocolIEs;
+	ProtocolIE_Container_1917P0_t	 protocolIEs;
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
diff --git a/e2sim/src/ASN1c/RICsubscriptionResponse.c b/e2sim/src/ASN1c/RICsubscriptionResponse.c
index 28c0861..6274c4e 100644
--- a/e2sim/src/ASN1c/RICsubscriptionResponse.c
+++ b/e2sim/src/ASN1c/RICsubscriptionResponse.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICsubscriptionResponse.h"
@@ -11,7 +11,7 @@
 	{ ATF_NOFLAGS, 0, offsetof(struct RICsubscriptionResponse, protocolIEs),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_ProtocolIE_Container_226P1,
+		&asn_DEF_ProtocolIE_Container_1917P1,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
diff --git a/e2sim/src/ASN1c/RICsubscriptionResponse.h b/e2sim/src/ASN1c/RICsubscriptionResponse.h
index 5dd7865..ad549bc 100644
--- a/e2sim/src/ASN1c/RICsubscriptionResponse.h
+++ b/e2sim/src/ASN1c/RICsubscriptionResponse.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICsubscriptionResponse_H_
@@ -21,7 +21,7 @@
 
 /* RICsubscriptionResponse */
 typedef struct RICsubscriptionResponse {
-	ProtocolIE_Container_226P1_t	 protocolIEs;
+	ProtocolIE_Container_1917P1_t	 protocolIEs;
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
diff --git a/e2sim/src/ASN1c/RICsubsequentAction.c b/e2sim/src/ASN1c/RICsubsequentAction.c
index 5a63307..bd5abb8 100644
--- a/e2sim/src/ASN1c/RICsubsequentAction.c
+++ b/e2sim/src/ASN1c/RICsubsequentAction.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICsubsequentAction.h"
diff --git a/e2sim/src/ASN1c/RICsubsequentAction.h b/e2sim/src/ASN1c/RICsubsequentAction.h
index 9806500..250a32f 100644
--- a/e2sim/src/ASN1c/RICsubsequentAction.h
+++ b/e2sim/src/ASN1c/RICsubsequentAction.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICsubsequentAction_H_
diff --git a/e2sim/src/ASN1c/RICsubsequentActionType.c b/e2sim/src/ASN1c/RICsubsequentActionType.c
index b460c42..c9842af 100644
--- a/e2sim/src/ASN1c/RICsubsequentActionType.c
+++ b/e2sim/src/ASN1c/RICsubsequentActionType.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICsubsequentActionType.h"
diff --git a/e2sim/src/ASN1c/RICsubsequentActionType.h b/e2sim/src/ASN1c/RICsubsequentActionType.h
index dae379e..52adf9d 100644
--- a/e2sim/src/ASN1c/RICsubsequentActionType.h
+++ b/e2sim/src/ASN1c/RICsubsequentActionType.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICsubsequentActionType_H_
diff --git a/e2sim/src/ASN1c/RICtimeToWait.c b/e2sim/src/ASN1c/RICtimeToWait.c
index 91edeb9..265d710 100644
--- a/e2sim/src/ASN1c/RICtimeToWait.c
+++ b/e2sim/src/ASN1c/RICtimeToWait.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "RICtimeToWait.h"
@@ -12,57 +12,55 @@
  * so here we adjust the DEF accordingly.
  */
 asn_per_constraints_t asn_PER_type_RICtimeToWait_constr_1 CC_NOTUSED = {
-	{ APC_CONSTRAINED | APC_EXTENSIBLE,  5,  5,  0,  17 }	/* (0..17,...) */,
+	{ APC_CONSTRAINED | APC_EXTENSIBLE,  5,  5,  0,  16 }	/* (0..16,...) */,
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	0, 0	/* No PER value map */
 };
 static const asn_INTEGER_enum_map_t asn_MAP_RICtimeToWait_value2enum_1[] = {
-	{ 0,	4,	"zero" },
-	{ 1,	4,	"w1ms" },
-	{ 2,	4,	"w2ms" },
-	{ 3,	4,	"w5ms" },
-	{ 4,	5,	"w10ms" },
-	{ 5,	5,	"w20ms" },
-	{ 6,	5,	"w30ms" },
-	{ 7,	5,	"w40ms" },
-	{ 8,	5,	"w50ms" },
-	{ 9,	6,	"w100ms" },
-	{ 10,	6,	"w200ms" },
-	{ 11,	6,	"w500ms" },
-	{ 12,	3,	"w1s" },
-	{ 13,	3,	"w2s" },
-	{ 14,	3,	"w5s" },
-	{ 15,	4,	"w10s" },
-	{ 16,	4,	"w20s" },
-	{ 17,	4,	"w60s" }
+	{ 0,	4,	"w1ms" },
+	{ 1,	4,	"w2ms" },
+	{ 2,	4,	"w5ms" },
+	{ 3,	5,	"w10ms" },
+	{ 4,	5,	"w20ms" },
+	{ 5,	5,	"w30ms" },
+	{ 6,	5,	"w40ms" },
+	{ 7,	5,	"w50ms" },
+	{ 8,	6,	"w100ms" },
+	{ 9,	6,	"w200ms" },
+	{ 10,	6,	"w500ms" },
+	{ 11,	3,	"w1s" },
+	{ 12,	3,	"w2s" },
+	{ 13,	3,	"w5s" },
+	{ 14,	4,	"w10s" },
+	{ 15,	4,	"w20s" },
+	{ 16,	4,	"w60s" }
 	/* This list is extensible */
 };
 static const unsigned int asn_MAP_RICtimeToWait_enum2value_1[] = {
-	9,	/* w100ms(9) */
-	4,	/* w10ms(4) */
-	15,	/* w10s(15) */
-	1,	/* w1ms(1) */
-	12,	/* w1s(12) */
-	10,	/* w200ms(10) */
-	5,	/* w20ms(5) */
-	16,	/* w20s(16) */
-	2,	/* w2ms(2) */
-	13,	/* w2s(13) */
-	6,	/* w30ms(6) */
-	7,	/* w40ms(7) */
-	11,	/* w500ms(11) */
-	8,	/* w50ms(8) */
-	3,	/* w5ms(3) */
-	14,	/* w5s(14) */
-	17,	/* w60s(17) */
-	0	/* zero(0) */
+	8,	/* w100ms(8) */
+	3,	/* w10ms(3) */
+	14,	/* w10s(14) */
+	0,	/* w1ms(0) */
+	11,	/* w1s(11) */
+	9,	/* w200ms(9) */
+	4,	/* w20ms(4) */
+	15,	/* w20s(15) */
+	1,	/* w2ms(1) */
+	12,	/* w2s(12) */
+	5,	/* w30ms(5) */
+	6,	/* w40ms(6) */
+	10,	/* w500ms(10) */
+	7,	/* w50ms(7) */
+	2,	/* w5ms(2) */
+	13,	/* w5s(13) */
+	16	/* w60s(16) */
 	/* This list is extensible */
 };
 const asn_INTEGER_specifics_t asn_SPC_RICtimeToWait_specs_1 = {
 	asn_MAP_RICtimeToWait_value2enum_1,	/* "tag" => N; sorted by tag */
 	asn_MAP_RICtimeToWait_enum2value_1,	/* N => "tag"; sorted by N */
-	18,	/* Number of elements in the maps */
-	19,	/* Extensions before this member */
+	17,	/* Number of elements in the maps */
+	18,	/* Extensions before this member */
 	1,	/* Strict enumeration */
 	0,	/* Native long size */
 	0
diff --git a/e2sim/src/ASN1c/RICtimeToWait.h b/e2sim/src/ASN1c/RICtimeToWait.h
index 5b1bc8f..12bf29f 100644
--- a/e2sim/src/ASN1c/RICtimeToWait.h
+++ b/e2sim/src/ASN1c/RICtimeToWait.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_RICtimeToWait_H_
@@ -20,24 +20,23 @@
 
 /* Dependencies */
 typedef enum RICtimeToWait {
-	RICtimeToWait_zero	= 0,
-	RICtimeToWait_w1ms	= 1,
-	RICtimeToWait_w2ms	= 2,
-	RICtimeToWait_w5ms	= 3,
-	RICtimeToWait_w10ms	= 4,
-	RICtimeToWait_w20ms	= 5,
-	RICtimeToWait_w30ms	= 6,
-	RICtimeToWait_w40ms	= 7,
-	RICtimeToWait_w50ms	= 8,
-	RICtimeToWait_w100ms	= 9,
-	RICtimeToWait_w200ms	= 10,
-	RICtimeToWait_w500ms	= 11,
-	RICtimeToWait_w1s	= 12,
-	RICtimeToWait_w2s	= 13,
-	RICtimeToWait_w5s	= 14,
-	RICtimeToWait_w10s	= 15,
-	RICtimeToWait_w20s	= 16,
-	RICtimeToWait_w60s	= 17
+	RICtimeToWait_w1ms	= 0,
+	RICtimeToWait_w2ms	= 1,
+	RICtimeToWait_w5ms	= 2,
+	RICtimeToWait_w10ms	= 3,
+	RICtimeToWait_w20ms	= 4,
+	RICtimeToWait_w30ms	= 5,
+	RICtimeToWait_w40ms	= 6,
+	RICtimeToWait_w50ms	= 7,
+	RICtimeToWait_w100ms	= 8,
+	RICtimeToWait_w200ms	= 9,
+	RICtimeToWait_w500ms	= 10,
+	RICtimeToWait_w1s	= 11,
+	RICtimeToWait_w2s	= 12,
+	RICtimeToWait_w5s	= 13,
+	RICtimeToWait_w10s	= 14,
+	RICtimeToWait_w20s	= 15,
+	RICtimeToWait_w60s	= 16
 	/*
 	 * Enumeration is extensible
 	 */
diff --git a/e2sim/src/ASN1c/ResetRequest.c b/e2sim/src/ASN1c/ResetRequest.c
index b4ab9eb..78e7d4c 100644
--- a/e2sim/src/ASN1c/ResetRequest.c
+++ b/e2sim/src/ASN1c/ResetRequest.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "ResetRequest.h"
@@ -11,7 +11,7 @@
 	{ ATF_NOFLAGS, 0, offsetof(struct ResetRequest, protocolIEs),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_ProtocolIE_Container_226P20,
+		&asn_DEF_ProtocolIE_Container_1917P21,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
diff --git a/e2sim/src/ASN1c/ResetRequest.h b/e2sim/src/ASN1c/ResetRequest.h
index 8cfbabd..a9a145e 100644
--- a/e2sim/src/ASN1c/ResetRequest.h
+++ b/e2sim/src/ASN1c/ResetRequest.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_ResetRequest_H_
@@ -21,7 +21,7 @@
 
 /* ResetRequest */
 typedef struct ResetRequest {
-	ProtocolIE_Container_226P20_t	 protocolIEs;
+	ProtocolIE_Container_1917P21_t	 protocolIEs;
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
diff --git a/e2sim/src/ASN1c/ResetResponse.c b/e2sim/src/ASN1c/ResetResponse.c
index d483846..898bc27 100644
--- a/e2sim/src/ASN1c/ResetResponse.c
+++ b/e2sim/src/ASN1c/ResetResponse.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "ResetResponse.h"
@@ -11,7 +11,7 @@
 	{ ATF_NOFLAGS, 0, offsetof(struct ResetResponse, protocolIEs),
 		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
 		-1,	/* IMPLICIT tag at current level */
-		&asn_DEF_ProtocolIE_Container_226P21,
+		&asn_DEF_ProtocolIE_Container_1917P22,
 		0,
 		{ 0, 0, 0 },
 		0, 0, /* No default value */
diff --git a/e2sim/src/ASN1c/ResetResponse.h b/e2sim/src/ASN1c/ResetResponse.h
index 15f6fb3..10a78cb 100644
--- a/e2sim/src/ASN1c/ResetResponse.h
+++ b/e2sim/src/ASN1c/ResetResponse.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Contents"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_ResetResponse_H_
@@ -21,7 +21,7 @@
 
 /* ResetResponse */
 typedef struct ResetResponse {
-	ProtocolIE_Container_226P21_t	 protocolIEs;
+	ProtocolIE_Container_1917P22_t	 protocolIEs;
 	/*
 	 * This type is extensible,
 	 * possible extensions are below.
diff --git a/e2sim/src/ASN1c/SuccessfulOutcome.c b/e2sim/src/ASN1c/SuccessfulOutcome.c
index fe59400..f9001b5 100644
--- a/e2sim/src/ASN1c/SuccessfulOutcome.c
+++ b/e2sim/src/ASN1c/SuccessfulOutcome.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Descriptions"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "SuccessfulOutcome.h"
@@ -29,6 +29,8 @@
 static const long asn_VAL_10_ignore = 1;
 static const long asn_VAL_11_id_ErrorIndication = 2;
 static const long asn_VAL_11_ignore = 1;
+static const long asn_VAL_12_id_RICsubscriptionDeleteRequired = 12;
+static const long asn_VAL_12_ignore = 1;
 static const asn_ioc_cell_t asn_IOS_E2AP_ELEMENTARY_PROCEDURES_1_rows[] = {
 	{ "&InitiatingMessage", aioc__type, &asn_DEF_RICsubscriptionRequest },
 	{ "&SuccessfulOutcome", aioc__type, &asn_DEF_RICsubscriptionResponse },
@@ -84,10 +86,15 @@
 	{ "&SuccessfulOutcome",  },
 	{ "&UnsuccessfulOutcome",  },
 	{ "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_11_id_ErrorIndication },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_11_ignore }
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_11_ignore },
+	{ "&InitiatingMessage", aioc__type, &asn_DEF_RICsubscriptionDeleteRequired },
+	{ "&SuccessfulOutcome",  },
+	{ "&UnsuccessfulOutcome",  },
+	{ "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_12_id_RICsubscriptionDeleteRequired },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_12_ignore }
 };
 static const asn_ioc_set_t asn_IOS_E2AP_ELEMENTARY_PROCEDURES_1[] = {
-	{ 11, 5, asn_IOS_E2AP_ELEMENTARY_PROCEDURES_1_rows }
+	{ 12, 5, asn_IOS_E2AP_ELEMENTARY_PROCEDURES_1_rows }
 };
 static int
 memb_procedureCode_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
diff --git a/e2sim/src/ASN1c/SuccessfulOutcome.h b/e2sim/src/ASN1c/SuccessfulOutcome.h
index fd1f423..972e53a 100644
--- a/e2sim/src/ASN1c/SuccessfulOutcome.h
+++ b/e2sim/src/ASN1c/SuccessfulOutcome.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Descriptions"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_SuccessfulOutcome_H_
@@ -42,6 +42,7 @@
 #include "RICindication.h"
 #include "RICserviceQuery.h"
 #include "ErrorIndication.h"
+#include "RICsubscriptionDeleteRequired.h"
 #include "OPEN_TYPE.h"
 #include "constr_CHOICE.h"
 #include "constr_SEQUENCE.h"
diff --git a/e2sim/src/ASN1c/TNLinformation.c b/e2sim/src/ASN1c/TNLinformation.c
index 799c22c..bead0bd 100644
--- a/e2sim/src/ASN1c/TNLinformation.c
+++ b/e2sim/src/ASN1c/TNLinformation.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "TNLinformation.h"
diff --git a/e2sim/src/ASN1c/TNLinformation.h b/e2sim/src/ASN1c/TNLinformation.h
index eccde1b..492177b 100644
--- a/e2sim/src/ASN1c/TNLinformation.h
+++ b/e2sim/src/ASN1c/TNLinformation.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_TNLinformation_H_
diff --git a/e2sim/src/ASN1c/TNLusage.c b/e2sim/src/ASN1c/TNLusage.c
index 94fbd4c..005ec78 100644
--- a/e2sim/src/ASN1c/TNLusage.c
+++ b/e2sim/src/ASN1c/TNLusage.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "TNLusage.h"
diff --git a/e2sim/src/ASN1c/TNLusage.h b/e2sim/src/ASN1c/TNLusage.h
index 63abe96..a0b9aeb 100644
--- a/e2sim/src/ASN1c/TNLusage.h
+++ b/e2sim/src/ASN1c/TNLusage.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_TNLusage_H_
diff --git a/e2sim/src/ASN1c/TimeToWait.c b/e2sim/src/ASN1c/TimeToWait.c
index fcddc44..21e2e2c 100644
--- a/e2sim/src/ASN1c/TimeToWait.c
+++ b/e2sim/src/ASN1c/TimeToWait.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "TimeToWait.h"
@@ -11,7 +11,7 @@
  * This type is implemented using NativeEnumerated,
  * so here we adjust the DEF accordingly.
  */
-asn_per_constraints_t asn_PER_type_TimeToWait_constr_1 CC_NOTUSED = {
+static asn_per_constraints_t asn_PER_type_TimeToWait_constr_1 CC_NOTUSED = {
 	{ APC_CONSTRAINED | APC_EXTENSIBLE,  3,  3,  0,  5 }	/* (0..5,...) */,
 	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
 	0, 0	/* No PER value map */
@@ -34,7 +34,7 @@
 	5	/* v60s(5) */
 	/* This list is extensible */
 };
-const asn_INTEGER_specifics_t asn_SPC_TimeToWait_specs_1 = {
+static const asn_INTEGER_specifics_t asn_SPC_TimeToWait_specs_1 = {
 	asn_MAP_TimeToWait_value2enum_1,	/* "tag" => N; sorted by tag */
 	asn_MAP_TimeToWait_enum2value_1,	/* N => "tag"; sorted by N */
 	6,	/* Number of elements in the maps */
diff --git a/e2sim/src/ASN1c/TimeToWait.h b/e2sim/src/ASN1c/TimeToWait.h
index bc8a935..9cc05a3 100644
--- a/e2sim/src/ASN1c/TimeToWait.h
+++ b/e2sim/src/ASN1c/TimeToWait.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_TimeToWait_H_
@@ -35,9 +35,7 @@
 typedef long	 TimeToWait_t;
 
 /* Implementation */
-extern asn_per_constraints_t asn_PER_type_TimeToWait_constr_1;
 extern asn_TYPE_descriptor_t asn_DEF_TimeToWait;
-extern const asn_INTEGER_specifics_t asn_SPC_TimeToWait_specs_1;
 asn_struct_free_f TimeToWait_free;
 asn_struct_print_f TimeToWait_print;
 asn_constr_check_f TimeToWait_constraint;
diff --git a/e2sim/src/ASN1c/TransactionID.c b/e2sim/src/ASN1c/TransactionID.c
new file mode 100644
index 0000000..3cb38cd
--- /dev/null
+++ b/e2sim/src/ASN1c/TransactionID.c
@@ -0,0 +1,61 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#include "TransactionID.h"
+
+int
+TransactionID_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
+			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
+	long value;
+	
+	if(!sptr) {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: value not given (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+	
+	value = *(const long *)sptr;
+	
+	if((value >= 0 && value <= 255)) {
+		/* Constraint check succeeded */
+		return 0;
+	} else {
+		ASN__CTFAIL(app_key, td, sptr,
+			"%s: constraint failed (%s:%d)",
+			td->name, __FILE__, __LINE__);
+		return -1;
+	}
+}
+
+/*
+ * This type is implemented using NativeInteger,
+ * so here we adjust the DEF accordingly.
+ */
+static asn_per_constraints_t asn_PER_type_TransactionID_constr_1 CC_NOTUSED = {
+	{ APC_CONSTRAINED | APC_EXTENSIBLE,  8,  8,  0,  255 }	/* (0..255,...) */,
+	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
+	0, 0	/* No PER value map */
+};
+static const ber_tlv_tag_t asn_DEF_TransactionID_tags_1[] = {
+	(ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
+};
+asn_TYPE_descriptor_t asn_DEF_TransactionID = {
+	"TransactionID",
+	"TransactionID",
+	&asn_OP_NativeInteger,
+	asn_DEF_TransactionID_tags_1,
+	sizeof(asn_DEF_TransactionID_tags_1)
+		/sizeof(asn_DEF_TransactionID_tags_1[0]), /* 1 */
+	asn_DEF_TransactionID_tags_1,	/* Same as above */
+	sizeof(asn_DEF_TransactionID_tags_1)
+		/sizeof(asn_DEF_TransactionID_tags_1[0]), /* 1 */
+	{ 0, &asn_PER_type_TransactionID_constr_1, TransactionID_constraint },
+	0, 0,	/* No members */
+	0	/* No specifics */
+};
+
diff --git a/e2sim/src/ASN1c/TransactionID.h b/e2sim/src/ASN1c/TransactionID.h
new file mode 100644
index 0000000..92dbf69
--- /dev/null
+++ b/e2sim/src/ASN1c/TransactionID.h
@@ -0,0 +1,43 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "E2AP-IEs"
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
+ */
+
+#ifndef	_TransactionID_H_
+#define	_TransactionID_H_
+
+
+#include "asn_application.h"
+
+/* Including external dependencies */
+#include "NativeInteger.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* TransactionID */
+typedef long	 TransactionID_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_TransactionID;
+asn_struct_free_f TransactionID_free;
+asn_struct_print_f TransactionID_print;
+asn_constr_check_f TransactionID_constraint;
+ber_type_decoder_f TransactionID_decode_ber;
+der_type_encoder_f TransactionID_encode_der;
+xer_type_decoder_f TransactionID_decode_xer;
+xer_type_encoder_f TransactionID_encode_xer;
+per_type_decoder_f TransactionID_decode_uper;
+per_type_encoder_f TransactionID_encode_uper;
+per_type_decoder_f TransactionID_decode_aper;
+per_type_encoder_f TransactionID_encode_aper;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _TransactionID_H_ */
+#include "asn_internal.h"
diff --git a/e2sim/src/ASN1c/TriggeringMessage.c b/e2sim/src/ASN1c/TriggeringMessage.c
index 3f44842..7eb8ba2 100644
--- a/e2sim/src/ASN1c/TriggeringMessage.c
+++ b/e2sim/src/ASN1c/TriggeringMessage.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-CommonDataTypes"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "TriggeringMessage.h"
diff --git a/e2sim/src/ASN1c/TriggeringMessage.h b/e2sim/src/ASN1c/TriggeringMessage.h
index f92107f..3a7beee 100644
--- a/e2sim/src/ASN1c/TriggeringMessage.h
+++ b/e2sim/src/ASN1c/TriggeringMessage.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-CommonDataTypes"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_TriggeringMessage_H_
diff --git a/e2sim/src/ASN1c/TypeOfError.c b/e2sim/src/ASN1c/TypeOfError.c
index 35cab04..a97e64c 100644
--- a/e2sim/src/ASN1c/TypeOfError.c
+++ b/e2sim/src/ASN1c/TypeOfError.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "TypeOfError.h"
diff --git a/e2sim/src/ASN1c/TypeOfError.h b/e2sim/src/ASN1c/TypeOfError.h
index 4481028..1c5f44f 100644
--- a/e2sim/src/ASN1c/TypeOfError.h
+++ b/e2sim/src/ASN1c/TypeOfError.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-IEs"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_TypeOfError_H_
diff --git a/e2sim/src/ASN1c/UnsuccessfulOutcome.c b/e2sim/src/ASN1c/UnsuccessfulOutcome.c
index bf5905c..f7d0b2e 100644
--- a/e2sim/src/ASN1c/UnsuccessfulOutcome.c
+++ b/e2sim/src/ASN1c/UnsuccessfulOutcome.c
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Descriptions"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #include "UnsuccessfulOutcome.h"
@@ -29,6 +29,8 @@
 static const long asn_VAL_10_ignore = 1;
 static const long asn_VAL_11_id_ErrorIndication = 2;
 static const long asn_VAL_11_ignore = 1;
+static const long asn_VAL_12_id_RICsubscriptionDeleteRequired = 12;
+static const long asn_VAL_12_ignore = 1;
 static const asn_ioc_cell_t asn_IOS_E2AP_ELEMENTARY_PROCEDURES_1_rows[] = {
 	{ "&InitiatingMessage", aioc__type, &asn_DEF_RICsubscriptionRequest },
 	{ "&SuccessfulOutcome", aioc__type, &asn_DEF_RICsubscriptionResponse },
@@ -84,10 +86,15 @@
 	{ "&SuccessfulOutcome",  },
 	{ "&UnsuccessfulOutcome",  },
 	{ "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_11_id_ErrorIndication },
-	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_11_ignore }
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_11_ignore },
+	{ "&InitiatingMessage", aioc__type, &asn_DEF_RICsubscriptionDeleteRequired },
+	{ "&SuccessfulOutcome",  },
+	{ "&UnsuccessfulOutcome",  },
+	{ "&procedureCode", aioc__value, &asn_DEF_ProcedureCode, &asn_VAL_12_id_RICsubscriptionDeleteRequired },
+	{ "&criticality", aioc__value, &asn_DEF_Criticality, &asn_VAL_12_ignore }
 };
 static const asn_ioc_set_t asn_IOS_E2AP_ELEMENTARY_PROCEDURES_1[] = {
-	{ 11, 5, asn_IOS_E2AP_ELEMENTARY_PROCEDURES_1_rows }
+	{ 12, 5, asn_IOS_E2AP_ELEMENTARY_PROCEDURES_1_rows }
 };
 static int
 memb_procedureCode_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
diff --git a/e2sim/src/ASN1c/UnsuccessfulOutcome.h b/e2sim/src/ASN1c/UnsuccessfulOutcome.h
index 2a37e89..3ad8cf6 100644
--- a/e2sim/src/ASN1c/UnsuccessfulOutcome.h
+++ b/e2sim/src/ASN1c/UnsuccessfulOutcome.h
@@ -1,8 +1,8 @@
 /*
  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
  * From ASN.1 module "E2AP-PDU-Descriptions"
- * 	found in "e2ap-v01.01.00.asn"
- * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
+ * 	found in "e2ap-v2.asn"
+ * 	`asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-example -no-gen-OER`
  */
 
 #ifndef	_UnsuccessfulOutcome_H_
@@ -42,6 +42,7 @@
 #include "RICindication.h"
 #include "RICserviceQuery.h"
 #include "ErrorIndication.h"
+#include "RICsubscriptionDeleteRequired.h"
 #include "OPEN_TYPE.h"
 #include "constr_CHOICE.h"
 #include "constr_SEQUENCE.h"
diff --git a/e2sim/src/ASN1c/asn_constant.h b/e2sim/src/ASN1c/asn_constant.h
index 308038d..b850c56 100644
--- a/e2sim/src/ASN1c/asn_constant.h
+++ b/e2sim/src/ASN1c/asn_constant.h
@@ -15,6 +15,7 @@
 #define maxofRANfunctionID (256)
 #define maxofRICactionID (16)
 #define maxofTNLA (32)
+#define maxofRICrequestID (4294967295)
 
 
 #ifdef __cplusplus
diff --git a/e2sim/src/ASN1c/constr_CHOICE_oer.c b/e2sim/src/ASN1c/constr_CHOICE_oer.c
deleted file mode 100644
index a4c591c..0000000
--- a/e2sim/src/ASN1c/constr_CHOICE_oer.c
+++ /dev/null
@@ -1,380 +0,0 @@
-/*
- * Copyright (c) 2017 Lev Walkin <vlm@lionet.info>.
- * All rights reserved.
- * Redistribution and modifications are permitted subject to BSD license.
- */
-#ifndef ASN_DISABLE_OER_SUPPORT
-
-#include <asn_internal.h>
-#include <constr_CHOICE.h>
-#include <errno.h>
-
-/*
- * Return a standardized complex structure.
- */
-#undef  RETURN
-#define RETURN(_code)                    \
-    do {                                 \
-        asn_dec_rval_t rval;             \
-        rval.code = _code;               \
-        rval.consumed = consumed_myself; \
-        return rval;                     \
-    } while(0)
-
-#undef  ADVANCE
-#define ADVANCE(num_bytes)               \
-    do {                                 \
-        size_t num = num_bytes;          \
-        ptr = ((const char *)ptr) + num; \
-        size -= num;                     \
-        consumed_myself += num;          \
-    } while(0)
-
-/*
- * Switch to the next phase of parsing.
- */
-#undef  NEXT_PHASE
-#define NEXT_PHASE(ctx) \
-    do {                \
-        ctx->phase++;   \
-        ctx->step = 0;  \
-    } while(0)
-#undef  SET_PHASE
-#define SET_PHASE(ctx, value) \
-    do {                      \
-        ctx->phase = value;   \
-        ctx->step = 0;        \
-    } while(0)
-
-/*
- * Tags are canonically sorted in the tag to member table.
- */
-static int
-_search4tag(const void *ap, const void *bp) {
-    const asn_TYPE_tag2member_t *a = (const asn_TYPE_tag2member_t *)ap;
-    const asn_TYPE_tag2member_t *b = (const asn_TYPE_tag2member_t *)bp;
-
-    int a_class = BER_TAG_CLASS(a->el_tag);
-    int b_class = BER_TAG_CLASS(b->el_tag);
-
-    if(a_class == b_class) {
-        ber_tlv_tag_t a_value = BER_TAG_VALUE(a->el_tag);
-        ber_tlv_tag_t b_value = BER_TAG_VALUE(b->el_tag);
-
-        if(a_value == b_value)
-            return 0;
-        else if(a_value < b_value)
-            return -1;
-        else
-            return 1;
-    } else if(a_class < b_class) {
-        return -1;
-    } else {
-        return 1;
-    }
-}
-
-/*
- * X.696 (08/2015) #8.7 Encoding of tags
- */
-static ssize_t
-oer_fetch_tag(const void *ptr, size_t size, ber_tlv_tag_t *tag_r) {
-    ber_tlv_tag_t val;
-    ber_tlv_tag_t tclass;
-    size_t skipped;
-
-    if(size == 0)
-        return 0;
-
-    val = *(const uint8_t *)ptr;
-    tclass = (val >> 6);
-    if((val & 0x3F) != 0x3F) {
-        /* #8.7.1 */
-        *tag_r = ((val & 0x3F) << 2) | tclass;
-        return 1;
-    }
-
-    /*
-     * Each octet contains 7 bits of useful information.
-     * The MSB is 0 if it is the last octet of the tag.
-     */
-    for(val = 0, ptr = ((const char *)ptr) + 1, skipped = 2; skipped <= size;
-        ptr = ((const char *)ptr) + 1, skipped++) {
-        unsigned int oct = *(const uint8_t *)ptr;
-        if(oct & 0x80) {
-            val = (val << 7) | (oct & 0x7F);
-            /*
-             * Make sure there are at least 9 bits spare
-             * at the MS side of a value.
-             */
-            if(val >> ((8 * sizeof(val)) - 9)) {
-                /*
-                 * We would not be able to accomodate
-                 * any more tag bits.
-                 */
-                return -1;
-            }
-        } else {
-            val = (val << 7) | oct;
-            *tag_r = (val << 2) | tclass;
-            return skipped;
-        }
-    }
-
-    return 0; /* Want more */
-}
-
-asn_dec_rval_t
-CHOICE_decode_oer(const asn_codec_ctx_t *opt_codec_ctx,
-                  const asn_TYPE_descriptor_t *td,
-                  const asn_oer_constraints_t *constraints, void **struct_ptr,
-                  const void *ptr, size_t size) {
-    /*
-     * Bring closer parts of structure description.
-     */
-    const asn_CHOICE_specifics_t *specs =
-        (const asn_CHOICE_specifics_t *)td->specifics;
-    asn_TYPE_member_t *elements = td->elements;
-
-    /*
-     * Parts of the structure being constructed.
-     */
-    void *st = *struct_ptr; /* Target structure. */
-    asn_struct_ctx_t *ctx;  /* Decoder context */
-
-    ssize_t consumed_myself = 0; /* Consumed bytes from ptr */
-
-    (void)constraints;
-
-    ASN_DEBUG("Decoding %s as CHOICE", td->name);
-
-    /*
-     * Create the target structure if it is not present already.
-     */
-    if(st == 0) {
-        st = *struct_ptr = CALLOC(1, specs->struct_size);
-        if(st == 0) {
-            RETURN(RC_FAIL);
-        }
-    }
-
-    /*
-     * Restore parsing context.
-     */
-    ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset);
-    switch(ctx->phase) {
-    case 0: {
-        /*
-         * Discover the tag.
-         */
-        ber_tlv_tag_t tlv_tag; /* T from TLV */
-        ssize_t tag_len;       /* Length of TLV's T */
-
-        tag_len = oer_fetch_tag(ptr, size, &tlv_tag);
-        switch(tag_len) {
-        case 0:
-            ASN__DECODE_STARVED;
-        case -1:
-            ASN__DECODE_FAILED;
-        }
-
-        do {
-            const asn_TYPE_tag2member_t *t2m;
-            asn_TYPE_tag2member_t key = {0, 0, 0, 0};
-            key.el_tag = tlv_tag;
-
-            t2m = (const asn_TYPE_tag2member_t *)bsearch(
-                &key, specs->tag2el, specs->tag2el_count,
-                sizeof(specs->tag2el[0]), _search4tag);
-            if(t2m) {
-                /*
-                 * Found the element corresponding to the tag.
-                 */
-                NEXT_PHASE(ctx);
-                ctx->step = t2m->el_no;
-                break;
-            } else if(specs->ext_start == -1) {
-                ASN_DEBUG(
-                    "Unexpected tag %s "
-                    "in non-extensible CHOICE %s",
-                    ber_tlv_tag_string(tlv_tag), td->name);
-                RETURN(RC_FAIL);
-            } else {
-                /* Skip open type extension */
-                ASN_DEBUG(
-                    "Not implemented skipping open type extension for tag %s",
-                    ber_tlv_tag_string(tlv_tag));
-                RETURN(RC_FAIL);
-            }
-        } while(0);
-
-
-        ADVANCE(tag_len);
-    }
-        /* Fall through */
-    case 1: {
-        asn_TYPE_member_t *elm = &elements[ctx->step]; /* CHOICE's element */
-        void *memb_ptr;         /* Pointer to the member */
-        void **memb_ptr2;       /* Pointer to that pointer */
-        asn_dec_rval_t rval = {0,0};
-
-        /*
-         * Compute the position of the member inside a structure,
-         * and also a type of containment (it may be contained
-         * as pointer or using inline inclusion).
-         */
-        if(elm->flags & ATF_POINTER) {
-            /* Member is a pointer to another structure */
-            memb_ptr2 = (void **)((char *)st + elm->memb_offset);
-        } else {
-            /*
-             * A pointer to a pointer
-             * holding the start of the structure
-             */
-            memb_ptr = (char *)st + elm->memb_offset;
-            memb_ptr2 = &memb_ptr;
-        }
-
-        /* Set presence to be able to free it properly at any time */
-        (void)CHOICE_variant_set_presence(td, st, ctx->step + 1);
-
-        if(specs->ext_start >= 0 && specs->ext_start <= ctx->step) {
-            ssize_t got =
-                oer_open_type_get(opt_codec_ctx, elm->type,
-                                  elm->encoding_constraints.oer_constraints,
-                                  memb_ptr2, ptr, size);
-            if(got < 0) ASN__DECODE_FAILED;
-            if(got == 0) ASN__DECODE_STARVED;
-            rval.code = RC_OK;
-            rval.consumed = got;
-        } else {
-            rval = elm->type->op->oer_decoder(
-                opt_codec_ctx, elm->type,
-                elm->encoding_constraints.oer_constraints, memb_ptr2, ptr,
-                size);
-        }
-        rval.consumed += consumed_myself;
-        switch(rval.code) {
-        case RC_OK:
-            NEXT_PHASE(ctx);
-        case RC_WMORE:
-            break;
-        case RC_FAIL:
-            SET_PHASE(ctx, 3);  /* => 3 */
-        }
-        return rval;
-    }
-    case 2:
-        /* Already decoded everything */
-        RETURN(RC_OK);
-    case 3:
-        /* Failed to decode, after all */
-        RETURN(RC_FAIL);
-    }
-
-    RETURN(RC_FAIL);
-}
-
-/*
- * X.696 (08/2015) #8.7 Encoding of tags
- */
-static ssize_t
-oer_put_tag(ber_tlv_tag_t tag, asn_app_consume_bytes_f *cb, void *app_key) {
-    uint8_t tclass = BER_TAG_CLASS(tag);
-    ber_tlv_tag_t tval = BER_TAG_VALUE(tag);
-
-    if(tval < 0x3F) {
-        uint8_t b = (uint8_t)((tclass << 6) | tval);
-        if(cb(&b, 1, app_key) < 0) {
-            return -1;
-        }
-        return 1;
-    } else {
-        uint8_t buf[1 + 2 * sizeof(tval)];
-        uint8_t *b = &buf[sizeof(buf)-1]; /* Last addressable */
-        size_t encoded;
-        for(; ; tval >>= 7) {
-            if(tval >> 7) {
-                *b-- = 0x80 | (tval & 0x7f);
-            } else {
-                *b-- = tval & 0x7f;
-                break;
-            }
-        }
-        *b = (uint8_t)((tclass << 6) | 0x3F);
-        encoded = sizeof(buf) - (b - buf);
-        if(cb(b, encoded, app_key) < 0) {
-            return -1;
-        }
-        return encoded;
-    }
-
-}
-
-/*
- * Encode as Canonical OER.
- */
-asn_enc_rval_t
-CHOICE_encode_oer(const asn_TYPE_descriptor_t *td,
-                  const asn_oer_constraints_t *constraints, const void *sptr,
-                  asn_app_consume_bytes_f *cb, void *app_key) {
-    const asn_CHOICE_specifics_t *specs =
-        (const asn_CHOICE_specifics_t *)td->specifics;
-    asn_TYPE_member_t *elm; /* CHOICE element */
-    unsigned present;
-    const void *memb_ptr;
-    ber_tlv_tag_t tag;
-    ssize_t tag_len;
-    asn_enc_rval_t er = {0, 0, 0};
-
-    (void)constraints;
-
-    if(!sptr) ASN__ENCODE_FAILED;
-
-    ASN_DEBUG("OER %s encoding as CHOICE", td->name);
-
-    present = CHOICE_variant_get_presence(td, sptr);
-    if(present == 0 || present > td->elements_count) {
-        ASN_DEBUG("CHOICE %s member is not selected", td->name);
-        ASN__ENCODE_FAILED;
-    }
-
-    elm = &td->elements[present-1];
-    if(elm->flags & ATF_POINTER) {
-        memb_ptr =
-            *(const void *const *)((const char *)sptr + elm->memb_offset);
-        if(memb_ptr == 0) {
-            /* Mandatory element absent */
-            ASN__ENCODE_FAILED;
-        }
-    } else {
-        memb_ptr = (const void *)((const char *)sptr + elm->memb_offset);
-    }
-
-    tag = asn_TYPE_outmost_tag(elm->type, memb_ptr, elm->tag_mode, elm->tag);
-    if(tag == 0) {
-        ASN__ENCODE_FAILED;
-    }
-
-    tag_len = oer_put_tag(tag, cb, app_key);
-    if(tag_len < 0) {
-        ASN__ENCODE_FAILED;
-    }
-
-    if(specs->ext_start >= 0 && (unsigned)specs->ext_start <= (present-1)) {
-        ssize_t encoded = oer_open_type_put(elm->type,
-                               elm->encoding_constraints.oer_constraints,
-                               memb_ptr, cb, app_key);
-        if(encoded < 0) ASN__ENCODE_FAILED;
-        er.encoded = tag_len + encoded;
-    } else {
-        er = elm->type->op->oer_encoder(
-            elm->type, elm->encoding_constraints.oer_constraints, memb_ptr, cb,
-            app_key);
-        if(er.encoded >= 0) er.encoded += tag_len;
-    }
-
-    return er;
-}
-
-#endif  /* ASN_DISABLE_OER_SUPPORT */
diff --git a/e2sim/src/ASN1c/constr_SEQUENCE_oer.c b/e2sim/src/ASN1c/constr_SEQUENCE_oer.c
deleted file mode 100644
index ecb589c..0000000
--- a/e2sim/src/ASN1c/constr_SEQUENCE_oer.c
+++ /dev/null
@@ -1,561 +0,0 @@
-/*
- * Copyright (c) 2017 Lev Walkin <vlm@lionet.info>.
- * All rights reserved.
- * Redistribution and modifications are permitted subject to BSD license.
- */
-#ifndef ASN_DISABLE_OER_SUPPORT
-
-#include <asn_internal.h>
-#include <constr_SEQUENCE.h>
-#include <OPEN_TYPE.h>
-#include <errno.h>
-
-/*
- * This macro "eats" the part of the buffer which is definitely "consumed",
- * i.e. was correctly converted into local representation or rightfully skipped.
- */
-#undef  ADVANCE
-#define ADVANCE(num_bytes)                   \
-    do {                                     \
-        size_t num = num_bytes;              \
-        ptr = ((const char *)ptr) + num;     \
-        size -= num;                         \
-        consumed_myself += num;              \
-    } while(0)
-
-/*
- * Switch to the next phase of parsing.
- */
-#undef  NEXT_PHASE
-#undef PHASE_OUT
-#define NEXT_PHASE(ctx) \
-    do {                \
-        ctx->phase++;   \
-        ctx->step = 0;  \
-    } while(0)
-
-/*
- * Check whether we are inside the extensions group.
- */
-#define IN_EXTENSION_GROUP(specs, memb_idx) \
-    ((specs)->first_extension >= 0          \
-     && (unsigned)(specs)->first_extension <= (memb_idx))
-
-#define IN_ROOT_GROUP_PRED(edx)                            \
-    edx < (specs->first_extension < 0 ? td->elements_count \
-                                      : (size_t)specs->first_extension)
-
-#define FOR_IN_ROOT_GROUP(edx) for(edx = 0; IN_ROOT_GROUP_PRED(edx); edx++)
-
-/*
- * Return a standardized complex structure.
- */
-#undef  RETURN
-#define RETURN(_code)   do {                    \
-                rval.code = _code;              \
-                rval.consumed = consumed_myself;\
-                return rval;                    \
-        } while(0)
-
-/*
- * Return pointer to a member.
- */
-static void **
-element_ptrptr(void *struct_ptr, asn_TYPE_member_t *elm, void **tmp_save_ptr) {
-    if(elm->flags & ATF_POINTER) {
-        /* Member is a pointer to another structure */
-        return (void **)((char *)struct_ptr + elm->memb_offset);
-    } else {
-        assert(tmp_save_ptr);
-        *tmp_save_ptr = (void *)((char *)struct_ptr + elm->memb_offset);
-        return tmp_save_ptr;
-    }
-}
-
-static const void *
-element_ptr(const void *struct_ptr, const asn_TYPE_member_t *elm) {
-    if(elm->flags & ATF_POINTER) {
-        /* Member is a pointer to another structure */
-        return *(const void *const *)((const char *)struct_ptr
-                                      + elm->memb_offset);
-    } else {
-        return (const void *)((const char *)struct_ptr + elm->memb_offset);
-    }
-}
-
-asn_dec_rval_t
-SEQUENCE_decode_oer(const asn_codec_ctx_t *opt_codec_ctx,
-                    const asn_TYPE_descriptor_t *td,
-                    const asn_oer_constraints_t *constraints, void **struct_ptr,
-                    const void *ptr, size_t size) {
-    const asn_SEQUENCE_specifics_t *specs =
-        (const asn_SEQUENCE_specifics_t *)td->specifics;
-    asn_dec_rval_t rval = {RC_OK, 0};
-    void *st = *struct_ptr; /* Target structure */
-    asn_struct_ctx_t *ctx; /* Decoder context */
-    size_t consumed_myself = 0; /* Consumed bytes from ptr. */
-
-    (void)constraints;
-
-    if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx))
-        ASN__DECODE_FAILED;
-
-    /*
-     * Create the target structure if it is not present already.
-     */
-    if(st == 0) {
-        st = *struct_ptr = CALLOC(1, specs->struct_size);
-        if(st == 0) {
-            RETURN(RC_FAIL);
-        }
-    }
-
-    /*
-     * Restore parsing context.
-     */
-    ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset);
-
-    /*
-     * Start to parse where left previously.
-     */
-    switch(ctx->phase) {
-    case 0: {
-        /*
-         * Fetch preamble.
-         */
-        asn_bit_data_t *preamble;
-        int has_extensions_bit = (specs->first_extension >= 0);
-        size_t preamble_bits = (has_extensions_bit + specs->roms_count);
-        size_t preamble_bytes = ((7 + preamble_bits) >> 3);
-
-        ASN_DEBUG("OER SEQUENCE %s Decoding PHASE 0", td->name);
-
-        ASN_DEBUG(
-            "Expecting preamble bits %" ASN_PRI_SIZE " for %s (including %d extension bits)",
-            preamble_bits, td->name, has_extensions_bit);
-
-        if(preamble_bytes > size) {
-            ASN__DECODE_STARVED;
-        }
-
-        preamble = asn_bit_data_new_contiguous(ptr, preamble_bits);
-        if(!preamble) {
-            RETURN(RC_FAIL);
-        }
-        preamble->nboff = has_extensions_bit;
-        ctx->ptr = preamble;
-        ADVANCE(preamble_bytes);
-    }
-        NEXT_PHASE(ctx);
-        /* FALL THROUGH */
-    case 1: {
-        /* Decode components of the extension root */
-        asn_bit_data_t *preamble = ctx->ptr;
-        size_t edx;
-
-        ASN_DEBUG("OER SEQUENCE %s Decoding PHASE 1 (Root)", td->name);
-
-        assert(preamble);
-
-        for(edx = (ctx->step >> 1); IN_ROOT_GROUP_PRED(edx);
-            edx++, ctx->step = (ctx->step & ~1) + 2) {
-            asn_TYPE_member_t *elm = &td->elements[edx];
-
-            ASN_DEBUG("Decoding %s->%s", td->name, elm->name);
-
-            assert(!IN_EXTENSION_GROUP(specs, edx));
-
-            if(ctx->step & 1) {
-                goto microphase2_decode_continues;
-            }
-
-
-            if(elm->optional) {
-                int32_t present = asn_get_few_bits(preamble, 1);
-                if(present < 0) {
-                    ASN_DEBUG("Presence map ended prematurely: %d", present);
-                    RETURN(RC_FAIL);
-                } else if(present == 0) {
-                    if(elm->default_value_set) {
-                        /* Fill-in DEFAULT */
-                        void *tmp;
-                        if(elm->default_value_set(
-                               element_ptrptr(st, elm, &tmp))) {
-                            RETURN(RC_FAIL);
-                        }
-                    }
-                    /* The member is not present. */
-                    continue;
-                }
-                /* Present OPTIONAL or DEFAULT component. */
-            }
-
-            /*
-             * MICROPHASE 2: Invoke the member-specific decoder.
-             */
-            ctx->step |= 1; /* Confirm entering next microphase */
-        microphase2_decode_continues:
-            if(elm->flags & ATF_OPEN_TYPE) {
-                rval = OPEN_TYPE_oer_get(opt_codec_ctx, td, st, elm, ptr, size);
-            } else {
-                void *save_memb_ptr; /* Temporary reference. */
-                void **memb_ptr2;  /* Pointer to a pointer to a memmber */
-
-                memb_ptr2 = element_ptrptr(st, elm, &save_memb_ptr);
-
-                rval = elm->type->op->oer_decoder(
-                    opt_codec_ctx, elm->type,
-                    elm->encoding_constraints.oer_constraints, memb_ptr2, ptr,
-                    size);
-            }
-            switch(rval.code) {
-            case RC_OK:
-                ADVANCE(rval.consumed);
-                break;
-            case RC_WMORE:
-                ASN_DEBUG("More bytes needed at element %s \"%s\"", td->name,
-                          elm->name);
-                ADVANCE(rval.consumed);
-                RETURN(RC_WMORE);
-            case RC_FAIL:
-                ASN_DEBUG("Decoding failed at element %s \"%s\"", td->name,
-                          elm->name);
-                RETURN(RC_FAIL);
-            }
-        } /* for(all root members) */
-
-    }
-        NEXT_PHASE(ctx);
-        /* FALL THROUGH */
-    case 2:
-        assert(ctx->ptr);
-        {
-        /* Cleanup preamble. */
-        asn_bit_data_t *preamble = ctx->ptr;
-        asn_bit_data_t *extadds;
-        int has_extensions_bit = (specs->first_extension >= 0);
-        int extensions_present =
-            has_extensions_bit
-            && (preamble->buffer == NULL
-                || (((const uint8_t *)preamble->buffer)[0] & 0x80));
-        uint8_t unused_bits;
-        size_t len = 0;
-        ssize_t len_len;
-
-        ASN_DEBUG("OER SEQUENCE %s Decoding PHASE 2", td->name);
-
-        preamble->buffer = 0; /* Will do extensions_present==1 next time. */
-
-        if(!extensions_present) {
-            ctx->phase = 10;
-            RETURN(RC_OK);
-        }
-
-        /*
-         * X.696 (08/2015) #16.1 (c), #16.4
-         * Read in the extension addition presence bitmap.
-         */
-
-        len_len = oer_fetch_length(ptr, size, &len);
-        if(len_len > 0) {
-            ADVANCE(len_len);
-        } else if(len_len < 0) {
-            RETURN(RC_FAIL);
-        } else {
-            RETURN(RC_WMORE);
-        }
-
-        if(len == 0) {
-            /* 16.4.1-2 */
-            RETURN(RC_FAIL);
-        } else if(len > size) {
-            RETURN(RC_WMORE);
-        }
-
-        /* Account for unused bits */
-        unused_bits = 0x7 & *(const uint8_t *)ptr;
-        ADVANCE(1);
-        len--;
-        if(unused_bits && len == 0) {
-            RETURN(RC_FAIL);
-        }
-
-        /* Get the extensions map */
-        extadds = asn_bit_data_new_contiguous(ptr, len * 8 - unused_bits);
-        if(!extadds) {
-            RETURN(RC_FAIL);
-        }
-        FREEMEM(preamble);
-        ctx->ptr = extadds;
-        ADVANCE(len);
-    }
-        NEXT_PHASE(ctx);
-        ctx->step =
-            (specs->first_extension < 0 ? td->elements_count
-                                        : (size_t)specs->first_extension);
-        /* Fall through */
-    case 3:
-        ASN_DEBUG("OER SEQUENCE %s Decoding PHASE 3 (Extensions)", td->name);
-        for(; ctx->step < (signed)td->elements_count; ctx->step++) {
-            asn_bit_data_t *extadds = ctx->ptr;
-            size_t edx = ctx->step;
-            asn_TYPE_member_t *elm = &td->elements[edx];
-            void *tmp_memb_ptr;
-            void **memb_ptr2 = element_ptrptr(st, elm, &tmp_memb_ptr);
-
-            switch(asn_get_few_bits(extadds, 1)) {
-            case -1:
-                /*
-                 * Not every one of our extensions is known to the remote side.
-                 * Continue filling in their defaults though.
-                 */
-                /* Fall through */
-            case 0:
-                /* Fill-in DEFAULT */
-                if(elm->default_value_set
-                   && elm->default_value_set(memb_ptr2)) {
-                    RETURN(RC_FAIL);
-                }
-                continue;
-            case 1: {
-                /* Read OER open type */
-                ssize_t ot_size =
-                    oer_open_type_get(opt_codec_ctx, elm->type,
-                                      elm->encoding_constraints.oer_constraints,
-                                      memb_ptr2, ptr, size);
-                assert(ot_size <= (ssize_t)size);
-                if(ot_size > 0) {
-                    ADVANCE(ot_size);
-                } else if(ot_size < 0) {
-                    RETURN(RC_FAIL);
-                } else {
-                    /* Roll back open type parsing */
-                    asn_get_undo(extadds, 1);
-                    RETURN(RC_WMORE);
-                }
-                break;
-            }
-            default:
-                RETURN(RC_FAIL);
-            }
-        }
-
-        NEXT_PHASE(ctx);
-        /* Fall through */
-    case 4:
-        ASN_DEBUG("OER SEQUENCE %s Decoding PHASE 4", td->name);
-        /* Read in the rest of Open Types while ignoring them */
-        for(;;) {
-            asn_bit_data_t *extadds = ctx->ptr;
-            switch(asn_get_few_bits(extadds, 1)) {
-            case 0:
-                continue;
-            case 1: {
-                ssize_t skipped = oer_open_type_skip(ptr, size);
-                if(skipped > 0) {
-                    ADVANCE(skipped);
-                } else if(skipped < 0) {
-                    RETURN(RC_FAIL);
-                } else {
-                    asn_get_undo(extadds, 1);
-                    RETURN(RC_WMORE);
-                }
-                continue;
-            }
-            case -1:
-                /* No more Open Type encoded components */
-                break;
-            default:
-                RETURN(RC_FAIL);
-            }
-            break;
-        }
-    }
-
-    RETURN(RC_OK);
-}
-
-/*
- * Encode as Canonical OER.
- */
-asn_enc_rval_t
-SEQUENCE_encode_oer(const asn_TYPE_descriptor_t *td,
-                    const asn_oer_constraints_t *constraints, const void *sptr,
-                    asn_app_consume_bytes_f *cb, void *app_key) {
-    const asn_SEQUENCE_specifics_t *specs = (const asn_SEQUENCE_specifics_t *)td->specifics;
-    size_t computed_size = 0;
-    int has_extensions_bit = (specs->first_extension >= 0);
-    size_t preamble_bits = (has_extensions_bit + specs->roms_count);
-    uint32_t has_extensions = 0;
-    size_t edx;
-    int ret;
-
-    (void)constraints;
-
-    if(preamble_bits) {
-        asn_bit_outp_t preamble;
-
-        memset(&preamble, 0, sizeof(preamble));
-        preamble.output = cb;
-        preamble.op_key = app_key;
-
-        if(has_extensions_bit) {
-            for(edx = specs->first_extension; edx < td->elements_count; edx++) {
-                asn_TYPE_member_t *elm = &td->elements[edx];
-                const void *memb_ptr = element_ptr(sptr, elm);
-                if(memb_ptr) {
-                    if(elm->default_value_cmp
-                       && elm->default_value_cmp(memb_ptr) == 0) {
-                        /* Do not encode default values in extensions */
-                    } else {
-                        has_extensions = 1;
-                        break;
-                    }
-                }
-            }
-            ret = asn_put_few_bits(&preamble, has_extensions, 1);
-            assert(ret == 0);
-            if(ret < 0) {
-                ASN__ENCODE_FAILED;
-            }
-        }
-
-        /*
-         * Encode optional components bitmap.
-         */
-        if(specs->roms_count) {
-            FOR_IN_ROOT_GROUP(edx) {
-                asn_TYPE_member_t *elm = &td->elements[edx];
-
-                if(IN_EXTENSION_GROUP(specs, edx)) break;
-
-                if(elm->optional) {
-                    const void *memb_ptr = element_ptr(sptr, elm);
-                    uint32_t has_component = memb_ptr != NULL;
-                    if(has_component && elm->default_value_cmp
-                       && elm->default_value_cmp(memb_ptr) == 0) {
-                        has_component = 0;
-                    }
-                    ret = asn_put_few_bits(&preamble, has_component, 1);
-                    if(ret < 0) {
-                        ASN__ENCODE_FAILED;
-                    }
-                }
-            }
-        }
-
-        asn_put_aligned_flush(&preamble);
-        computed_size += preamble.flushed_bytes;
-    }   /* if(preamble_bits) */
-
-    /*
-     * Put root components and extensions root.
-     */
-    for(edx = 0; edx < td->elements_count; edx++) {
-        asn_TYPE_member_t *elm = &td->elements[edx];
-        asn_enc_rval_t er = {0,0,0};
-        const void *memb_ptr;
-
-        if(IN_EXTENSION_GROUP(specs, edx)) break;
-
-        memb_ptr = element_ptr(sptr, elm);
-        if(memb_ptr) {
-            if(elm->default_value_cmp
-               && elm->default_value_cmp(memb_ptr) == 0) {
-                /* Skip default values in encoding */
-                continue;
-            }
-        } else {
-            if(elm->optional) continue;
-            /* Mandatory element is missing */
-            ASN__ENCODE_FAILED;
-        }
-        if(!elm->type->op->oer_encoder) {
-            ASN_DEBUG("OER encoder is not defined for type %s", elm->type->name);
-            ASN__ENCODE_FAILED;
-        }
-        er = elm->type->op->oer_encoder(
-            elm->type, elm->encoding_constraints.oer_constraints, memb_ptr, cb,
-            app_key);
-        if(er.encoded == -1) {
-            ASN_DEBUG("... while encoding %s member \"%s\"\n", td->name,
-                      elm->name);
-            return er;
-        }
-        computed_size += er.encoded;
-    }
-
-    /*
-     * Before encode extensions, encode extensions additions presense bitmap
-     # X.696 (08/2015) #16.4.
-     */
-    if(has_extensions) {
-        asn_bit_outp_t extadds;
-
-        /* Special case allowing us to use exactly one byte for #8.6 */
-        size_t aoms_length_bits = specs->aoms_count;
-        size_t aoms_length_bytes = (7 + aoms_length_bits) >> 3;
-        uint8_t unused_bits = 0x07 & (8 - (aoms_length_bits & 0x07));
-
-        assert(1 + aoms_length_bytes <= 127);
-
-        memset(&extadds, 0, sizeof(extadds));
-        extadds.output = cb;
-        extadds.op_key = app_key;
-
-        /* #8.6 length determinant */
-        ret = asn_put_few_bits(&extadds, (1 + aoms_length_bytes), 8);
-        if(ret < 0) ASN__ENCODE_FAILED;
-
-        /* Number of unused bytes, #16.4.2 */
-        ret = asn_put_few_bits(&extadds, unused_bits, 8);
-        if(ret < 0) ASN__ENCODE_FAILED;
-
-        /* Encode presence bitmap #16.4.3 */
-        for(edx = specs->first_extension; edx < td->elements_count; edx++) {
-            asn_TYPE_member_t *elm = &td->elements[edx];
-            const void *memb_ptr = element_ptr(sptr, elm);
-            if(memb_ptr && elm->default_value_cmp
-               && elm->default_value_cmp(memb_ptr) == 0) {
-                memb_ptr = 0;   /* Do not encode default value. */
-            }
-            ret |= asn_put_few_bits(&extadds, memb_ptr ? 1 : 0, 1);
-        }
-        if(ret < 0) ASN__ENCODE_FAILED;
-
-        asn_put_aligned_flush(&extadds);
-        computed_size += extadds.flushed_bytes;
-
-        /* Now, encode extensions */
-        for(edx = specs->first_extension; edx < td->elements_count; edx++) {
-            asn_TYPE_member_t *elm = &td->elements[edx];
-            const void *memb_ptr = element_ptr(sptr, elm);
-
-            if(memb_ptr) {
-                if(elm->default_value_cmp
-                   && elm->default_value_cmp(memb_ptr) == 0) {
-                    /* Do not encode default value. */
-                } else {
-                    ssize_t wrote = oer_open_type_put(
-                        elm->type, elm->encoding_constraints.oer_constraints,
-                        memb_ptr, cb, app_key);
-                    if(wrote == -1) {
-                        ASN__ENCODE_FAILED;
-                    }
-                    computed_size += wrote;
-                }
-            } else if(!elm->optional) {
-                ASN__ENCODE_FAILED;
-            }
-        }
-    }   /* if(has_extensions) */
-
-
-    {
-        asn_enc_rval_t er = {0, 0, 0};
-        er.encoded = computed_size;
-        ASN__ENCODED_OK(er);
-    }
-}
-
-#endif  /* ASN_DISABLE_OER_SUPPORT */
diff --git a/e2sim/src/ASN1c/constr_SET_OF_oer.c b/e2sim/src/ASN1c/constr_SET_OF_oer.c
deleted file mode 100644
index 5200518..0000000
--- a/e2sim/src/ASN1c/constr_SET_OF_oer.c
+++ /dev/null
@@ -1,285 +0,0 @@
-/*
- * Copyright (c) 2017 Lev Walkin <vlm@lionet.info>.
- * All rights reserved.
- * Redistribution and modifications are permitted subject to BSD license.
- */
-#ifndef ASN_DISABLE_OER_SUPPORT
-
-#include <asn_internal.h>
-#include <constr_SET_OF.h>
-#include <asn_SET_OF.h>
-#include <errno.h>
-
-/*
- * This macro "eats" the part of the buffer which is definitely "consumed",
- * i.e. was correctly converted into local representation or rightfully skipped.
- */
-#undef  ADVANCE
-#define ADVANCE(num_bytes)                   \
-    do {                                     \
-        size_t num = num_bytes;              \
-        ptr = ((const char *)ptr) + num;     \
-        size -= num;                         \
-        consumed_myself += num;              \
-    } while(0)
-
-/*
- * Switch to the next phase of parsing.
- */
-#undef  NEXT_PHASE
-#define NEXT_PHASE(ctx) \
-    do {                \
-        ctx->phase++;   \
-        ctx->step = 0;  \
-    } while(0)
-#undef  SET_PHASE
-#define SET_PHASE(ctx, value) \
-    do {                      \
-        ctx->phase = value;   \
-        ctx->step = 0;        \
-    } while(0)
-
-/*
- * Return a standardized complex structure.
- */
-#undef  RETURN
-#define RETURN(_code)                    \
-    do {                                 \
-        asn_dec_rval_t rval;             \
-        rval.code = _code;               \
-        rval.consumed = consumed_myself; \
-        return rval;                     \
-    } while(0)
-
-/*
- * The SEQUENCE OF and SET OF values utilize a "quantity field".
- * It is is a pointless combination of #8.6 (length determinant, capable
- * of encoding tiny and huge numbers in the shortest possible number of octets)
- * and the variable sized integer. What could have been encoded by #8.6 alone
- * is required to be encoded by #8.6 followed by that number of unsigned octets.
- * This doesn't make too much sense. It seems that the original version of OER
- * standard have been using the unconstrained unsigned integer as a quantity
- * field, and this legacy have gone through ISO/ITU-T standardization process.
- */
-static ssize_t
-oer_fetch_quantity(const void *ptr, size_t size, size_t *qty_r) {
-    const uint8_t *b;
-    const uint8_t *bend;
-    size_t len = 0;
-    size_t qty;
-
-    ssize_t len_len = oer_fetch_length(ptr, size, &len);
-    if(len_len <= 0) {
-        *qty_r = 0;
-        return len_len;
-    }
-
-    if((len_len + len) > size) {
-        *qty_r = 0;
-        return 0;
-    }
-
-    b = (const uint8_t *)ptr + len_len;
-    bend = b + len;
-
-    /* Skip the leading 0-bytes */
-    for(; b < bend && *b == 0; b++) {
-    }
-
-    if((bend - b) > (ssize_t)sizeof(size_t)) {
-        /* Length is not representable by the native size_t type */
-        *qty_r = 0;
-        return -1;
-    }
-
-    for(qty = 0; b < bend; b++) {
-        qty = (qty << 8) + *b;
-    }
-
-    if(qty > RSIZE_MAX) { /* A bit of C11 validation */
-        *qty_r = 0;
-        return -1;
-    }
-
-    *qty_r = qty;
-    assert((size_t)len_len + len == (size_t)(bend - (const uint8_t *)ptr));
-    return len_len + len;
-}
-
-asn_dec_rval_t
-SET_OF_decode_oer(const asn_codec_ctx_t *opt_codec_ctx,
-                  const asn_TYPE_descriptor_t *td,
-                  const asn_oer_constraints_t *constraints, void **struct_ptr,
-                  const void *ptr, size_t size) {
-    const asn_SET_OF_specifics_t *specs = (const asn_SET_OF_specifics_t *)td->specifics;
-    asn_dec_rval_t rval = {RC_OK, 0};
-    void *st = *struct_ptr; /* Target structure */
-    asn_struct_ctx_t *ctx; /* Decoder context */
-    size_t consumed_myself = 0; /* Consumed bytes from ptr. */
-
-    (void)constraints;
-
-    if(ASN__STACK_OVERFLOW_CHECK(opt_codec_ctx))
-        ASN__DECODE_FAILED;
-
-    /*
-     * Create the target structure if it is not present already.
-     */
-    if(st == 0) {
-        st = *struct_ptr = CALLOC(1, specs->struct_size);
-        if(st == 0) {
-            RETURN(RC_FAIL);
-        }
-    }
-
-    /*
-     * Restore parsing context.
-     */
-    ctx = (asn_struct_ctx_t *)((char *)st + specs->ctx_offset);
-
-    /*
-     * Start to parse where left previously.
-     */
-    switch(ctx->phase) {
-    case 0: {
-        /*
-         * Fetch number of elements to decode.
-         */
-        size_t length = 0;
-        size_t len_size = oer_fetch_quantity(ptr, size, &length);
-        switch(len_size) {
-        case 0:
-            RETURN(RC_WMORE);
-        case -1:
-            RETURN(RC_FAIL);
-        default:
-            ADVANCE(len_size);
-            ctx->left = length;
-        }
-    }
-        NEXT_PHASE(ctx);
-        /* FALL THROUGH */
-    case 1: {
-        /* Decode components of the extension root */
-        asn_TYPE_member_t *elm = td->elements;
-        asn_anonymous_set_ *list = _A_SET_FROM_VOID(st);
-        const void *base_ptr = ptr;
-        ber_tlv_len_t base_ctx_left = ctx->left;
-
-        assert(td->elements_count == 1);
-
-        ASN_DEBUG("OER SET OF %s Decoding PHASE 1", td->name);
-
-        for(; ctx->left > 0; ctx->left--) {
-            asn_dec_rval_t rv = elm->type->op->oer_decoder(
-                opt_codec_ctx, elm->type,
-                elm->encoding_constraints.oer_constraints, &ctx->ptr, ptr,
-                size);
-            ADVANCE(rv.consumed);
-            switch(rv.code) {
-            case RC_OK:
-                if(ASN_SET_ADD(list, ctx->ptr) != 0) {
-                    RETURN(RC_FAIL);
-                } else {
-                    ctx->ptr = 0;
-                    /*
-                     * This check is to avoid compression bomb with
-                     * specs like SEQUENCE/SET OF NULL which don't
-                     * consume data at all.
-                     */
-                    if(rv.consumed == 0 && base_ptr == ptr
-                       && (base_ctx_left - ctx->left) > 200) {
-                        ASN__DECODE_FAILED;
-                    }
-                    break;
-                }
-            case RC_WMORE:
-                RETURN(RC_WMORE);
-            case RC_FAIL:
-                ASN_STRUCT_FREE(*elm->type, ctx->ptr);
-                ctx->ptr = 0;
-                SET_PHASE(ctx, 3);
-                RETURN(RC_FAIL);
-            }
-        }
-        /* Decoded decently. */
-        NEXT_PHASE(ctx);
-    }
-        /* Fall through */
-    case 2:
-        /* Ignore fully decoded */
-        assert(ctx->left == 0);
-        RETURN(RC_OK);
-    case 3:
-        /* Failed to decode. */
-        RETURN(RC_FAIL);
-    }
-
-    return rval;
-}
-
-static ssize_t
-oer_put_quantity(size_t qty, asn_app_consume_bytes_f *cb, void *app_key) {
-    uint8_t buf[1 + sizeof(size_t)];
-    uint8_t *b = &buf[sizeof(size_t)]; /* Last addressable */
-    size_t encoded;
-
-    do {
-        *b-- = qty;
-        qty >>= 8;
-    } while(qty);
-
-    *b = sizeof(buf) - (b-buf) - 1;
-    encoded = sizeof(buf) - (b-buf);
-    if(cb(b, encoded, app_key) < 0)
-        return -1;
-    return encoded;
-}
-
-/*
- * Encode as Canonical OER.
- */
-asn_enc_rval_t
-SET_OF_encode_oer(const asn_TYPE_descriptor_t *td,
-                  const asn_oer_constraints_t *constraints, const void *sptr,
-                  asn_app_consume_bytes_f *cb, void *app_key) {
-    const asn_TYPE_member_t *elm;
-    const asn_anonymous_set_ *list;
-    size_t computed_size = 0;
-    ssize_t qty_len;
-    int n;
-
-    (void)constraints;
-
-    if(!sptr) ASN__ENCODE_FAILED;
-
-    elm = td->elements;
-    list = _A_CSET_FROM_VOID(sptr);
-
-    qty_len = oer_put_quantity(list->count, cb, app_key);
-    if(qty_len < 0) {
-        ASN__ENCODE_FAILED;
-    }
-    computed_size += qty_len;
-
-    for(n = 0; n < list->count; n++) {
-        void *memb_ptr = list->array[n];
-        asn_enc_rval_t er = {0,0,0};
-        er = elm->type->op->oer_encoder(
-            elm->type, elm->encoding_constraints.oer_constraints, memb_ptr, cb,
-            app_key);
-        if(er.encoded < 0) {
-            return er;
-        } else {
-            computed_size += er.encoded;
-        }
-    }
-
-    {
-        asn_enc_rval_t erval = {0,0,0};
-        erval.encoded = computed_size;
-        ASN__ENCODED_OK(erval);
-    }
-}
-
-#endif  /* ASN_DISABLE_OER_SUPPORT */
diff --git a/e2sim/src/ASN1c/converter-example.mk b/e2sim/src/ASN1c/converter-example.mk
deleted file mode 100644
index ef02a5b..0000000
--- a/e2sim/src/ASN1c/converter-example.mk
+++ /dev/null
@@ -1,33 +0,0 @@
-include ./Makefile.am.libasncodec
-
-LIBS += -lm
-CFLAGS += $(ASN_MODULE_CFLAGS) -DASN_PDU_COLLECTION -I.
-ASN_LIBRARY ?= libasncodec.a
-ASN_PROGRAM ?= converter-example
-ASN_PROGRAM_SRCS ?= \
-	./converter-example.c\
-	./pdu_collection.c
-
-all: $(ASN_PROGRAM)
-
-$(ASN_PROGRAM): $(ASN_LIBRARY) $(ASN_PROGRAM_SRCS:.c=.o)
-	$(CC) $(CFLAGS) $(CPPFLAGS) -o $(ASN_PROGRAM) $(ASN_PROGRAM_SRCS:.c=.o) $(LDFLAGS) $(ASN_LIBRARY) $(LIBS)
-
-$(ASN_LIBRARY): $(ASN_MODULE_SRCS:.c=.o)
-	$(AR) rcs $@ $(ASN_MODULE_SRCS:.c=.o)
-
-.SUFFIXES:
-.SUFFIXES: .c .o
-
-.c.o:
-	$(CC) $(CFLAGS) -o $@ -c $<
-
-clean:
-	rm -f $(ASN_PROGRAM) $(ASN_LIBRARY)
-	rm -f $(ASN_MODULE_SRCS:.c=.o) $(ASN_PROGRAM_SRCS:.c=.o)
-
-regen: regenerate-from-asn1-source
-
-regenerate-from-asn1-source:
-	asn1c -fcompound-names -fincludes-quoted -fno-include-deps -findirect-choice -gen-PER -D . /root/e2ap-v01.00.00.asn
-
diff --git a/e2sim/src/ASN1c/oer_decoder.c b/e2sim/src/ASN1c/oer_decoder.c
deleted file mode 100644
index 0701738..0000000
--- a/e2sim/src/ASN1c/oer_decoder.c
+++ /dev/null
@@ -1,152 +0,0 @@
-/*
- * Copyright (c) 2017 Lev Walkin <vlm@lionet.info>. All rights reserved.
- * Redistribution and modifications are permitted subject to BSD license.
- */
-#include <asn_internal.h>
-#include <asn_codecs_prim.h>
-
-/*
- * The OER decoder of any type.
- */
-asn_dec_rval_t
-oer_decode(const asn_codec_ctx_t *opt_codec_ctx,
-           const asn_TYPE_descriptor_t *type_descriptor, void **struct_ptr,
-           const void *ptr, size_t size) {
-    asn_codec_ctx_t s_codec_ctx;
-
-	/*
-	 * Stack checker requires that the codec context
-	 * must be allocated on the stack.
-	 */
-	if(opt_codec_ctx) {
-		if(opt_codec_ctx->max_stack_size) {
-			s_codec_ctx = *opt_codec_ctx;
-			opt_codec_ctx = &s_codec_ctx;
-		}
-	} else {
-		/* If context is not given, be security-conscious anyway */
-		memset(&s_codec_ctx, 0, sizeof(s_codec_ctx));
-		s_codec_ctx.max_stack_size = ASN__DEFAULT_STACK_MAX;
-		opt_codec_ctx = &s_codec_ctx;
-	}
-
-	/*
-	 * Invoke type-specific decoder.
-	 */
-	return type_descriptor->op->oer_decoder(opt_codec_ctx, type_descriptor, 0,
-		struct_ptr,	/* Pointer to the destination structure */
-		ptr, size	/* Buffer and its size */
-		);
-}
-
-/*
- * Open Type is encoded as a length (#8.6) followed by that number of bytes.
- * Since we're just skipping, reading the length would be enough.
- */
-ssize_t
-oer_open_type_skip(const void *bufptr, size_t size) {
-    size_t len = 0;
-    return oer_fetch_length(bufptr, size, &len);
-}
-
-/*
- * Read the Open Type (X.696 (08/2015), #30).
- * RETURN VALUES:
- *       0:     More data expected than bufptr contains.
- *      -1:     Fatal error deciphering length.
- *      >0:     Number of bytes used from bufptr.
- */
-ssize_t
-oer_open_type_get(const asn_codec_ctx_t *opt_codec_ctx,
-                  const struct asn_TYPE_descriptor_s *td,
-                  const asn_oer_constraints_t *constraints, void **struct_ptr,
-                  const void *bufptr, size_t size) {
-    asn_dec_rval_t dr;
-    size_t container_len = 0;
-    ssize_t len_len;
-    enum asn_struct_free_method dispose_method =
-        (*struct_ptr) ? ASFM_FREE_UNDERLYING_AND_RESET : ASFM_FREE_EVERYTHING;
-
-    /* Get the size of a length determinant */
-    len_len = oer_fetch_length(bufptr, size, &container_len);
-    if(len_len <= 0) {
-        return len_len; /* Error or more data expected */
-    }
-
-    /*
-     * len_len can't be bigger than size, but size without len_len
-     * should be bigger or equal to container length
-     */
-    if(size - len_len < container_len) {
-        /* More data is expected */
-        return 0;
-    }
-
-    dr = td->op->oer_decoder(opt_codec_ctx, td, constraints, struct_ptr,
-                         (const uint8_t *)bufptr + len_len, container_len);
-    if(dr.code == RC_OK) {
-        return len_len + container_len;
-    } else {
-        /* Even if RC_WMORE, we can't get more data into a closed container. */
-        td->op->free_struct(td, *struct_ptr, dispose_method);
-        *struct_ptr = NULL;
-        return -1;
-    }
-}
-
-
-asn_dec_rval_t
-oer_decode_primitive(const asn_codec_ctx_t *opt_codec_ctx,
-                     const asn_TYPE_descriptor_t *td,
-                     const asn_oer_constraints_t *constraints, void **sptr,
-                     const void *ptr, size_t size) {
-    ASN__PRIMITIVE_TYPE_t *st = (ASN__PRIMITIVE_TYPE_t *)*sptr;
-    asn_dec_rval_t rval = {RC_OK, 0};
-    size_t expected_length = 0;
-    ssize_t len_len;
-
-    (void)td;
-    (void)opt_codec_ctx;
-    (void)constraints;
-
-    if(!st) {
-        st = (ASN__PRIMITIVE_TYPE_t *)(*sptr = CALLOC(
-                                           1, sizeof(ASN__PRIMITIVE_TYPE_t)));
-        if(!st) ASN__DECODE_FAILED;
-    }
-
-
-    /*
-     * X.696 (08/2015) #27.2
-     * Encode length determinant as _number of octets_, but only
-     * if upper bound is not equal to lower bound.
-     */
-    len_len = oer_fetch_length(ptr, size, &expected_length);
-    if(len_len > 0) {
-        rval.consumed = len_len;
-        ptr = (const char *)ptr + len_len;
-        size -= len_len;
-    } else if(len_len == 0) {
-        ASN__DECODE_STARVED;
-    } else if(len_len < 0) {
-        ASN__DECODE_FAILED;
-    }
-
-    if(size < expected_length) {
-        ASN__DECODE_STARVED;
-    } else {
-        uint8_t *buf = MALLOC(expected_length + 1);
-        if(buf == NULL) {
-            ASN__DECODE_FAILED;
-        } else {
-            memcpy(buf, ptr, expected_length);
-            buf[expected_length] = '\0';
-        }
-        FREEMEM(st->buf);
-        st->buf = buf;
-        st->size = expected_length;
-
-        rval.consumed += expected_length;
-        return rval;
-    }
-}
diff --git a/e2sim/src/ASN1c/oer_decoder.h b/e2sim/src/ASN1c/oer_decoder.h
deleted file mode 100644
index 40992e9..0000000
--- a/e2sim/src/ASN1c/oer_decoder.h
+++ /dev/null
@@ -1,72 +0,0 @@
-/*
- * Copyright (c) 2017 Lev Walkin <vlm@lionet.info>. All rights reserved.
- * Redistribution and modifications are permitted subject to BSD license.
- */
-#ifndef	OER_DECODER_H
-#define	OER_DECODER_H
-
-#include <asn_application.h>
-#include <oer_support.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-struct asn_TYPE_descriptor_s;	/* Forward declaration */
-struct asn_codec_ctx_s;		/* Forward declaration */
-
-/*
- * The Octet Encoding Rules (OER, X.696 08/2015) decoder for any given type.
- * This function may be invoked directly by the application.
- * Parses CANONICAL-OER and BASIC-OER.
- */
-asn_dec_rval_t oer_decode(const struct asn_codec_ctx_s *opt_codec_ctx,
-	const struct asn_TYPE_descriptor_s *type_descriptor,
-	void **struct_ptr,	/* Pointer to a target structure's pointer */
-	const void *buffer,	/* Data to be decoded */
-	size_t size		/* Size of that buffer */
-	);
-
-/*
- * Type of generic function which decodes the byte stream into the structure.
- */
-typedef asn_dec_rval_t(oer_type_decoder_f)(
-    const struct asn_codec_ctx_s *opt_codec_ctx,
-    const struct asn_TYPE_descriptor_s *type_descriptor,
-    const asn_oer_constraints_t *constraints,
-    void **struct_ptr,
-    const void *buf_ptr,
-    size_t size);
-
-/*
- * Swallow the Open Type (X.696 (08/2015), #30) into /dev/null.
- * RETURN VALUES:
- *      -1:     Fatal error deciphering length.
- *       0:     More data expected than bufptr contains.
- *      >0:     Number of bytes used from bufptr.
- */
-ssize_t oer_open_type_skip(const void *bufptr, size_t size);
-
-/*
- * Read the Open Type (X.696 (08/2015), #30).
- * RETURN VALUES:
- *       0:     More data expected than bufptr contains.
- *      -1:     Fatal error deciphering length.
- *      >0:     Number of bytes used from bufptr.
- */
-ssize_t oer_open_type_get(const asn_codec_ctx_t *opt_codec_ctx,
-                          const struct asn_TYPE_descriptor_s *td,
-                          const asn_oer_constraints_t *constraints,
-                          void **struct_ptr, const void *bufptr, size_t size);
-
-/*
- * Length-prefixed buffer decoding for primitive types.
- */
-oer_type_decoder_f oer_decode_primitive;
-
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif	/* OER_DECODER_H */
diff --git a/e2sim/src/ASN1c/oer_encoder.c b/e2sim/src/ASN1c/oer_encoder.c
deleted file mode 100644
index a284cc2..0000000
--- a/e2sim/src/ASN1c/oer_encoder.c
+++ /dev/null
@@ -1,141 +0,0 @@
-/*
- * Copyright (c) 2017 Lev Walkin <vlm@lionet.info>. All rights reserved.
- * Redistribution and modifications are permitted subject to BSD license.
- */
-#include <asn_internal.h>
-#include <asn_codecs_prim.h>
-
-/*
- * The OER encoder of any type.
- */
-asn_enc_rval_t
-oer_encode(const asn_TYPE_descriptor_t *type_descriptor, const void *struct_ptr,
-           asn_app_consume_bytes_f *consume_bytes, void *app_key) {
-    ASN_DEBUG("OER encoder invoked for %s", type_descriptor->name);
-
-    /*
-     * Invoke type-specific encoder.
-     */
-    return type_descriptor->op->oer_encoder(
-        type_descriptor, 0,
-        struct_ptr, /* Pointer to the destination structure */
-        consume_bytes, app_key);
-}
-
-/*
- * Argument type and callback necessary for oer_encode_to_buffer().
- */
-typedef struct enc_to_buf_arg {
-        void *buffer;
-        size_t left;
-} enc_to_buf_arg;
-static int
-encode_to_buffer_cb(const void *buffer, size_t size, void *key) {
-    enc_to_buf_arg *arg = (enc_to_buf_arg *)key;
-
-    if(arg->left < size) return -1; /* Data exceeds the available buffer size */
-
-    memcpy(arg->buffer, buffer, size);
-    arg->buffer = ((char *)arg->buffer) + size;
-    arg->left -= size;
-
-    return 0;
-}
-
-/*
- * A variant of the oer_encode() which encodes the data into the provided buffer
- */
-asn_enc_rval_t
-oer_encode_to_buffer(const asn_TYPE_descriptor_t *type_descriptor,
-                     const asn_oer_constraints_t *constraints,
-                     const void *struct_ptr, /* Structure to be encoded */
-                     void *buffer,           /* Pre-allocated buffer */
-                     size_t buffer_size      /* Initial buffer size (maximum) */
-) {
-    enc_to_buf_arg arg;
-    asn_enc_rval_t ec;
-
-    arg.buffer = buffer;
-    arg.left = buffer_size;
-
-    if(type_descriptor->op->oer_encoder == NULL) {
-        ec.encoded = -1;
-        ec.failed_type = type_descriptor;
-        ec.structure_ptr = struct_ptr;
-        ASN_DEBUG("OER encoder is not defined for %s",
-                type_descriptor->name);
-    } else {
-        ec = type_descriptor->op->oer_encoder(
-            type_descriptor, constraints,
-            struct_ptr, /* Pointer to the destination structure */
-            encode_to_buffer_cb, &arg);
-        if(ec.encoded != -1) {
-            assert(ec.encoded == (ssize_t)(buffer_size - arg.left));
-            /* Return the encoded contents size */
-        }
-    }
-    return ec;
-}
-
-asn_enc_rval_t
-oer_encode_primitive(const asn_TYPE_descriptor_t *td,
-                     const asn_oer_constraints_t *constraints, const void *sptr,
-                     asn_app_consume_bytes_f *cb, void *app_key) {
-    const ASN__PRIMITIVE_TYPE_t *st = (const ASN__PRIMITIVE_TYPE_t *)sptr;
-    asn_enc_rval_t er = {0, 0, 0};
-    ssize_t ret;
-
-    (void)constraints;
-
-    if(!st) ASN__ENCODE_FAILED;
-
-    ASN_DEBUG("Encoding %s (%" ASN_PRI_SIZE " bytes)", td ? td->name : "", st->size);
-
-    /*
-     * X.696 (08/2015) #27.2
-     */
-    ret = oer_serialize_length(st->size, cb, app_key);
-    if(ret < 0) {
-        ASN__ENCODE_FAILED;
-    }
-    er.encoded += ret;
-
-    er.encoded += st->size;
-    if(cb(st->buf, st->size, app_key) < 0) {
-        ASN__ENCODE_FAILED;
-    } else {
-        ASN__ENCODED_OK(er);
-    }
-}
-
-static int
-oer__count_bytes(const void *buffer, size_t size, void *bytes_ptr) {
-    size_t *bytes = bytes_ptr;
-    (void)buffer;
-    *bytes += size;
-    return 0;
-}
-
-ssize_t
-oer_open_type_put(const asn_TYPE_descriptor_t *td,
-                  const asn_oer_constraints_t *constraints, const void *sptr,
-                  asn_app_consume_bytes_f *cb, void *app_key) {
-    size_t serialized_byte_count = 0;
-    asn_enc_rval_t er = {0,0,0};
-    ssize_t len_len;
-
-    er = td->op->oer_encoder(td, constraints, sptr, oer__count_bytes,
-                             &serialized_byte_count);
-    if(er.encoded < 0) return -1;
-    assert(serialized_byte_count == (size_t)er.encoded);
-
-    len_len = oer_serialize_length(serialized_byte_count, cb, app_key);
-    if(len_len == -1) return -1;
-
-    er = td->op->oer_encoder(td, constraints, sptr, cb, app_key);
-    if(er.encoded < 0) return -1;
-    assert(serialized_byte_count == (size_t)er.encoded);
-
-    return len_len + er.encoded;
-}
-
diff --git a/e2sim/src/ASN1c/oer_encoder.h b/e2sim/src/ASN1c/oer_encoder.h
deleted file mode 100644
index 6a7b681..0000000
--- a/e2sim/src/ASN1c/oer_encoder.h
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * Copyright (c) 2017 Lev Walkin <vlm@lionet.info>. All rights reserved.
- * Redistribution and modifications are permitted subject to BSD license.
- */
-#ifndef	OER_ENCODER_H
-#define	OER_ENCODER_H
-
-#include <asn_application.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-struct asn_TYPE_descriptor_s;	/* Forward declaration */
-
-/*
- * The Octet Encoding Rules (OER, X.696 08/2015) encoder for any type.
- * This function may be invoked directly by the application.
- * Produces CANONICAL-OER output compatible with CANONICAL-OER
- * and BASIC-OER decoders.
- */
-asn_enc_rval_t oer_encode(const struct asn_TYPE_descriptor_s *type_descriptor,
-                          const void *struct_ptr, /* Structure to be encoded */
-                          asn_app_consume_bytes_f *consume_bytes_cb,
-                          void *app_key /* Arbitrary callback argument */
-);
-
-/* A variant of oer_encode() which encodes data into the pre-allocated buffer */
-asn_enc_rval_t oer_encode_to_buffer(
-    const struct asn_TYPE_descriptor_s *type_descriptor,
-    const asn_oer_constraints_t *constraints,
-    const void *struct_ptr, /* Structure to be encoded */
-    void *buffer,           /* Pre-allocated buffer */
-    size_t buffer_size      /* Initial buffer size (maximum) */
-);
-
-/*
- * Type of the generic OER encoder.
- */
-typedef asn_enc_rval_t(oer_type_encoder_f)(
-    const struct asn_TYPE_descriptor_s *type_descriptor,
-    const asn_oer_constraints_t *constraints,
-    const void *struct_ptr,                    /* Structure to be encoded */
-    asn_app_consume_bytes_f *consume_bytes_cb, /* Callback */
-    void *app_key                              /* Arbitrary callback argument */
-);
-
-/*
- * Write out the Open Type (X.696 (08/2015), #30).
- * RETURN VALUES:
- *  -1: Fatal error encoding the type.
- *  >0: Number of bytes serialized.
- */
-ssize_t oer_open_type_put(const struct asn_TYPE_descriptor_s *td,
-                          const asn_oer_constraints_t *constraints,
-                          const void *struct_ptr,
-                          asn_app_consume_bytes_f *consume_bytes_cb,
-                          void *app_key);
-
-
-/*
- * Length-prefixed buffer encoding for primitive types.
- */
-oer_type_encoder_f oer_encode_primitive;
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif	/* OER_ENCODER_H */
diff --git a/e2sim/src/ASN1c/oer_support.c b/e2sim/src/ASN1c/oer_support.c
deleted file mode 100644
index b15a3bc..0000000
--- a/e2sim/src/ASN1c/oer_support.c
+++ /dev/null
@@ -1,122 +0,0 @@
-/*
- * Copyright (c) 2017 Lev Walkin <vlm@lionet.info>.
- * All rights reserved.
- * Redistribution and modifications are permitted subject to BSD license.
- */
-#include <asn_system.h>
-#include <asn_internal.h>
-
-#include <oer_support.h>
-
-/*
- * Fetch the length determinant (X.696 08/2015, #8.6) into *len_r.
- * RETURN VALUES:
- *       0:     More data expected than bufptr contains.
- *      -1:     Fatal error deciphering length.
- *      >0:     Number of bytes used from bufptr.
- */
-ssize_t
-oer_fetch_length(const void *bufptr, size_t size, size_t *len_r) {
-    uint8_t first_byte;
-    size_t len_len;    /* Length of the length determinant */
-    const uint8_t *b;
-    const uint8_t *bend;
-    size_t len;
-
-    if(size == 0) {
-        *len_r = 0;
-        return 0;
-    }
-
-    first_byte = *(const uint8_t *)bufptr;
-    if((first_byte & 0x80) == 0) {   /* Short form */
-        *len_r = first_byte; /* 0..127 */
-        return 1;
-    }
-
-    len_len = (first_byte & 0x7f);
-    if((1 + len_len) > size) {
-        *len_r = 0;
-        return 0;
-    }
-
-    b = (const uint8_t *)bufptr + 1;
-    bend = b + len_len;
-
-    for(; b < bend && *b == 0; b++) {
-        /* Skip the leading 0-bytes */
-    }
-
-    if((bend - b) > (ssize_t)sizeof(size_t)) {
-        /* Length is not representable by the native size_t type */
-        *len_r = 0;
-        return -1;
-    }
-
-    for(len = 0; b < bend; b++) {
-        len = (len << 8) + *b;
-    }
-
-    if(len > RSIZE_MAX) { /* A bit of C11 validation */
-        *len_r = 0;
-        return -1;
-    }
-
-    *len_r = len;
-    assert(len_len + 1 == (size_t)(bend - (const uint8_t *)bufptr));
-    return len_len + 1;
-}
-
-
-/*
- * Serialize OER length. Returns the number of bytes serialized
- * or -1 if a given callback returned with negative result.
- */
-ssize_t
-oer_serialize_length(size_t length, asn_app_consume_bytes_f *cb,
-                     void *app_key) {
-    uint8_t scratch[1 + sizeof(length)];
-    uint8_t *sp = scratch;
-    int littleEndian = 1;   /* Run-time detection */
-    const uint8_t *pstart;
-    const uint8_t *pend;
-    const uint8_t *p;
-    int add;
-
-    if(length <= 127) {
-        uint8_t b = length;
-        if(cb(&b, 1, app_key) < 0) {
-            return -1;
-        }
-        return 1;
-    }
-
-    if(*(char *)&littleEndian) {
-        pstart = (const uint8_t *)&length + sizeof(length) - 1;
-        pend = (const uint8_t *)&length;
-        add = -1;
-    } else {
-        pstart = (const uint8_t *)&length;
-        pend = pstart + sizeof(length);
-        add = 1;
-    }
-
-    for(p = pstart; p != pend; p += add) {
-        /* Skip leading zeros. */
-        if(*p) break;
-    }
-
-    for(sp = scratch + 1; ; p += add) {
-        *sp++ = *p;
-        if(p == pend) break;
-    }
-    assert((sp - scratch) - 1 <= 0x7f);
-    scratch[0] = 0x80 + ((sp - scratch) - 1);
-
-    if(cb(scratch, sp - scratch, app_key) < 0) {
-        return -1;
-    }
-
-    return sp - scratch;
-}
-
diff --git a/e2sim/src/ASN1c/oer_support.h b/e2sim/src/ASN1c/oer_support.h
deleted file mode 100644
index dbc9b5f..0000000
--- a/e2sim/src/ASN1c/oer_support.h
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * Copyright (c) 2017 Lev Walkin <vlm@lionet.info>. All rights reserved.
- * Redistribution and modifications are permitted subject to BSD license.
- */
-#ifndef	OER_SUPPORT_H
-#define	OER_SUPPORT_H
-
-#include <asn_system.h>		/* Platform-specific types */
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/*
- * Pre-computed OER constraints.
- */
-typedef struct asn_oer_constraint_number_s {
-    unsigned width;    /* ±8,4,2,1 fixed bytes */
-    unsigned positive; /* 1 for unsigned number, 0 for signed */
-} asn_oer_constraint_number_t;
-typedef struct asn_oer_constraints_s {
-    asn_oer_constraint_number_t value;
-    ssize_t size;    /* -1 (no constraint) or >= 0 */
-} asn_oer_constraints_t;
-
-
-/*
- * Fetch the length determinant (X.696 (08/2015), #8.6) into *len_r.
- * RETURN VALUES:
- *       0:     More data expected than bufptr contains.
- *      -1:     Fatal error deciphering length.
- *      >0:     Number of bytes used from bufptr.
- */
-ssize_t oer_fetch_length(const void *bufptr, size_t size, size_t *len_r);
-
-/*
- * Serialize OER length. Returns the number of bytes serialized
- * or -1 if a given callback returned with negative result.
- */
-ssize_t oer_serialize_length(size_t length, asn_app_consume_bytes_f *cb, void *app_key);
-
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif	/* OER_SUPPORT_H */
diff --git a/e2sim/src/ASN1c/pdu_collection.c b/e2sim/src/ASN1c/pdu_collection.c
deleted file mode 100644
index ea8309c..0000000
--- a/e2sim/src/ASN1c/pdu_collection.c
+++ /dev/null
@@ -1,15 +0,0 @@
-/*
- * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
- */
-
-struct asn_TYPE_descriptor_s;	/* Forward declaration */
-
-extern struct asn_TYPE_descriptor_s asn_DEF_E2AP_PDU;
-
-
-struct asn_TYPE_descriptor_s *asn_pdu_collection[] = {
-	/* From module E2AP-PDU-Descriptions in /root/e2ap-v01.00.00.asn */
-	&asn_DEF_E2AP_PDU,	
-	0
-};
-
diff --git a/e2sim/src/base/e2sim.cpp b/e2sim/src/base/e2sim.cpp
index 5591e2a..a0dc723 100755
--- a/e2sim/src/base/e2sim.cpp
+++ b/e2sim/src/base/e2sim.cpp
@@ -160,8 +160,8 @@
   }
     
   printf("about to call setup request encode\n");
-  
-  generate_e2apv1_setup_request_parameterized(pdu_setup, all_funcs);
+  encoding::generate_e2apv2_config_update(pdu_setup);
+  // generate_e2apv1_setup_request_parameterized(pdu_setup, all_funcs);
 
   printf("After generating e2setup req\n");
 
diff --git a/e2sim/src/encoding/encode_e2apv1.cpp b/e2sim/src/encoding/encode_e2apv1.cpp
index 6171371..47da01a 100755
--- a/e2sim/src/encoding/encode_e2apv1.cpp
+++ b/e2sim/src/encoding/encode_e2apv1.cpp
@@ -53,6 +53,7 @@
 #include "RICsubsequentActionType.h"
 #include "RICsubsequentAction.h"  
 #include "RICtimeToWait.h"
+#include "E2nodeComponentInterfaceNG.h"
 // #include "E2nodeComponentGNB-CU-UP-ID.h"
 // #include "E2nodeComponentID.h"
 // #include "E2nodeComponentConfigUpdate.h"
@@ -210,6 +211,15 @@
   if(globale2nodeid) free(globale2nodeid);
 
 
+  printf("seting up the tx id");
+  auto *e2txid = (E2setupRequestIEs_t *)calloc(1, sizeof(E2setupRequestIEs_t));
+  e2txid->id = ProtocolIE_ID_id_TransactionID;
+  e2txid-> criticality = 0;
+  e2txid->value.present = E2setupRequestIEs__value_PR_TransactionID;
+  e2txid->value.choice.TransactionID = 1;
+
+  printf("seting done the tx id");
+
   auto *ranFlistIEs = (E2setupRequestIEs_t *)calloc(1, sizeof(E2setupRequestIEs_t));
   ASN_STRUCT_RESET(asn_DEF_E2setupRequestIEs, ranFlistIEs);
   ranFlistIEs->criticality = 0;
@@ -229,7 +239,7 @@
     itemIes->criticality = Criticality_reject;
     itemIes->value.present = RANfunction_ItemIEs__value_PR_RANfunction_Item;
     itemIes->value.choice.RANfunction_Item.ranFunctionID = nextRanFuncId;
-    itemIes->value.choice.RANfunction_Item.ranFunctionOID = nextRanFunc.ranFunctionOId;
+    itemIes->value.choice.RANfunction_Item.ranFunctionOID = RANfunctionOID_t(*(nextRanFunc.ranFunctionOId));
     int ranFuncLength = strlen((char*)nextRanFuncDesc);
 
     itemIes->value.choice.RANfunction_Item.ranFunctionDefinition = *nextRanFuncDesc;
@@ -238,6 +248,48 @@
     ASN_SEQUENCE_ADD(&ranFlistIEs->value.choice.RANfunctions_List.list, itemIes);
 
   }
+
+auto *e2configIE = (E2setupRequestIEs_t *)calloc(1, sizeof(E2setupRequestIEs_t));
+e2configIE->id = ProtocolIE_ID_id_E2nodeComponentConfigAddition;
+e2configIE->criticality = Criticality_reject;
+e2configIE->value.present = E2setupRequestIEs__value_PR_E2nodeComponentConfigAddition_List;
+
+
+auto *e2configAdditionItem = (E2nodeComponentConfigAddition_ItemIEs_t *)calloc(1, sizeof(E2nodeComponentConfigAddition_ItemIEs_t));
+e2configAdditionItem->id = ProtocolIE_ID_id_E2nodeComponentConfigAddition_Item;
+e2configAdditionItem->criticality = Criticality_reject;
+e2configAdditionItem->value.present = E2nodeComponentConfigAddition_ItemIEs__value_PR_E2nodeComponentConfigAddition_Item;
+
+e2configAdditionItem->value.choice.E2nodeComponentConfigAddition_Item.e2nodeComponentInterfaceType = E2nodeComponentInterfaceType_ng;
+e2configAdditionItem->value.choice.E2nodeComponentConfigAddition_Item.e2nodeComponentID.present = E2nodeComponentID_PR_e2nodeComponentInterfaceTypeNG;
+
+// E2nodeComponentInterfaceNG_t intfNG;
+auto *intfNG = (E2nodeComponentInterfaceNG_t *) calloc(1, sizeof(E2nodeComponentInterfaceNG_t));
+  
+OCTET_STRING_t nginterf;
+nginterf.buf = (uint8_t*)calloc(1,8);
+memcpy(nginterf.buf, (uint8_t *)"nginterf", 8);
+
+nginterf.size = 8;
+intfNG->amf_name = (AMFName_t)(nginterf);
+
+e2configAdditionItem->value.choice.E2nodeComponentConfigAddition_Item.e2nodeComponentID.choice.e2nodeComponentInterfaceTypeNG = intfNG;
+
+OCTET_STRING_t reqPart;
+reqPart.buf = (uint8_t*)calloc(1,7);
+memcpy(reqPart.buf, (uint8_t *)"reqpart", 7);
+reqPart.size = 7;
+
+e2configAdditionItem->value.choice.E2nodeComponentConfigAddition_Item.e2nodeComponentConfiguration.e2nodeComponentRequestPart = reqPart;
+
+OCTET_STRING_t resPart;
+resPart.buf = (uint8_t*)calloc(1,7);
+memcpy(resPart.buf, (uint8_t *)"respart", 7);
+resPart.size = 7;
+e2configAdditionItem->value.choice.E2nodeComponentConfigAddition_Item.e2nodeComponentConfiguration.e2nodeComponentResponsePart = resPart;
+
+
+ASN_SEQUENCE_ADD(&e2configIE->value.choice.RANfunctions_List.list, e2configAdditionItem);
 /*
     auto *e2nodeconfigupdatelistIEs = (E2setupRequestIEs_t *)calloc(1, sizeof(E2setupRequestIEs_t));
   ASN_STRUCT_RESET(asn_DEF_E2setupRequestIEs, e2nodeconfigupdatelistIEs);
@@ -300,9 +352,10 @@
   ASN_SEQUENCE_ADD(&e2nodeconfigupdatelistIEs->value.choice.E2nodeComponentConfigUpdate_List.list, configupdateitemIes);
 */
   E2setupRequest_t *e2setupreq = (E2setupRequest_t*)calloc(1, sizeof(E2setupRequest_t));
+  ASN_SEQUENCE_ADD(&e2setupreq->protocolIEs.list, e2txid);
   ASN_SEQUENCE_ADD(&e2setupreq->protocolIEs.list, e2setuprid);
   ASN_SEQUENCE_ADD(&e2setupreq->protocolIEs.list, ranFlistIEs);
-  //ASN_SEQUENCE_ADD(&e2setupreq->protocolIEs.list, e2nodeconfigupdatelistIEs);
+  ASN_SEQUENCE_ADD(&e2setupreq->protocolIEs.list, e2configIE);
 
 
   InitiatingMessage__value_PR pres4;
@@ -324,7 +377,63 @@
 
 }
 
+void encoding::generate_e2apv2_config_update(E2AP_PDU_t *e2ap_pdu){
+ 
+  
 
+/// config update id for addtion list  
+auto *e2configIE = (E2nodeConfigurationUpdate_IEs_t *)calloc(1, sizeof(E2nodeConfigurationUpdate_IEs_t));
+e2configIE->id = ProtocolIE_ID_id_E2nodeComponentConfigAddition;
+e2configIE->criticality = Criticality_reject;
+e2configIE->value.present = E2nodeConfigurationUpdate_IEs__value_PR_E2nodeComponentConfigAddition_List;
+
+
+auto *e2configAdditionItem = (E2nodeComponentConfigAddition_ItemIEs_t *)calloc(1, sizeof(E2nodeComponentConfigAddition_ItemIEs_t));
+e2configAdditionItem->id = ProtocolIE_ID_id_E2nodeComponentConfigAddition_Item;
+e2configAdditionItem->criticality = Criticality_reject;
+e2configAdditionItem->value.present = E2nodeComponentConfigAddition_ItemIEs__value_PR_E2nodeComponentConfigAddition_Item;
+
+e2configAdditionItem->value.choice.E2nodeComponentConfigAddition_Item.e2nodeComponentInterfaceType = E2nodeComponentInterfaceType_ng;
+e2configAdditionItem->value.choice.E2nodeComponentConfigAddition_Item.e2nodeComponentID.present = E2nodeComponentID_PR_e2nodeComponentInterfaceTypeNG;
+
+auto *intfNG = (E2nodeComponentInterfaceNG_t *) calloc(1, sizeof(E2nodeComponentInterfaceNG_t));
+  
+OCTET_STRING_t nginterf;
+nginterf.buf = (uint8_t*)calloc(1,8);
+memcpy(nginterf.buf, (uint8_t *)"nginterf", 8);
+
+nginterf.size = 8;
+intfNG->amf_name = (AMFName_t)(nginterf);
+
+e2configAdditionItem->value.choice.E2nodeComponentConfigAddition_Item.e2nodeComponentID.choice.e2nodeComponentInterfaceTypeNG = intfNG;
+
+OCTET_STRING_t reqPart;
+reqPart.buf = (uint8_t*)calloc(1,7);
+memcpy(reqPart.buf, (uint8_t *)"reqpart", 7);
+reqPart.size = 7;
+
+e2configAdditionItem->value.choice.E2nodeComponentConfigAddition_Item.e2nodeComponentConfiguration.e2nodeComponentRequestPart = reqPart;
+
+OCTET_STRING_t resPart;
+resPart.buf = (uint8_t*)calloc(1,7);
+memcpy(resPart.buf, (uint8_t *)"respart", 7);
+resPart.size = 7;
+e2configAdditionItem->value.choice.E2nodeComponentConfigAddition_Item.e2nodeComponentConfiguration.e2nodeComponentResponsePart = resPart;
+
+
+
+
+
+ASN_SEQUENCE_ADD(&e2configIE->value.choice.E2nodeComponentConfigAddition_List, e2configAdditionItem);
+
+  InitiatingMessage *inititingMsg = (InitiatingMessage *) calloc(1, sizeof(InitiatingMessage));
+  inititingMsg->procedureCode = InitiatingMessage__value_PR_E2nodeConfigurationUpdate;
+  inititingMsg->criticality = Criticality_reject;
+  inititingMsg->value.present = InitiatingMessage__value_PR_E2nodeConfigurationUpdate;
+  ASN_SEQUENCE_ADD(&inititingMsg->value.choice.E2nodeConfigurationUpdate.protocolIEs.list, e2configIE);
+  e2ap_pdu->present = E2AP_PDU_PR_initiatingMessage;
+  e2ap_pdu->choice.initiatingMessage = inititingMsg;
+}
 
 void encoding::generate_e2apv1_setup_response(E2AP_PDU_t *e2ap_pdu) {
 
diff --git a/e2sim/src/encoding/encode_e2apv1.hpp b/e2sim/src/encoding/encode_e2apv1.hpp
index 233bb69..3ad36a0 100644
--- a/e2sim/src/encoding/encode_e2apv1.hpp
+++ b/e2sim/src/encoding/encode_e2apv1.hpp
@@ -57,6 +57,8 @@
   void generate_e2apv1_indication_request_parameterized(E2AP_PDU *e2ap_pdu, long requestorId, long instanceId, long ranFunctionId, long actionId, long seqNum, uint8_t *ind_header_buf, int header_length, uint8_t *ind_message_buf, int message_length);
   
   void generate_e2apv1_service_update(E2AP_PDU_t *e2ap_pdu, std::vector<ran_func_info> all_funcs);
+
+  void generate_e2apv2_config_update(E2AP_PDU_t *e2ap_edu);
 }
 
 #endif