diff --git a/src/s1ap/asn1c/asnGenFiles/SecondaryRATDataUsageReportItem.h b/src/s1ap/asn1c/asnGenFiles/SecondaryRATDataUsageReportItem.h
new file mode 100644
index 0000000..2ec4a3a
--- /dev/null
+++ b/src/s1ap/asn1c/asnGenFiles/SecondaryRATDataUsageReportItem.h
@@ -0,0 +1,52 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "S1AP-IEs"
+ * 	found in "./asn1c/S1AP-IEs.asn"
+ * 	`asn1c -fcompound-names -fno-include-deps -gen-PER -findirect-choice -pdu=S1AP-PDU`
+ */
+
+#ifndef	_SecondaryRATDataUsageReportItem_H_
+#define	_SecondaryRATDataUsageReportItem_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "E-RAB-ID.h"
+#include "SecondaryRATType.h"
+#include "E-RABUsageReportList.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* Forward declarations */
+struct ProtocolExtensionContainer;
+
+/* SecondaryRATDataUsageReportItem */
+typedef struct SecondaryRATDataUsageReportItem {
+	E_RAB_ID_t	 e_RAB_ID;
+	SecondaryRATType_t	 secondaryRATType;
+	E_RABUsageReportList_t	 e_RABUsageReportList;
+	struct ProtocolExtensionContainer	*iE_Extensions;	/* OPTIONAL */
+	/*
+	 * This type is extensible,
+	 * possible extensions are below.
+	 */
+	
+	/* Context for parsing across buffer boundaries */
+	asn_struct_ctx_t _asn_ctx;
+} SecondaryRATDataUsageReportItem_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_SecondaryRATDataUsageReportItem;
+extern asn_SEQUENCE_specifics_t asn_SPC_SecondaryRATDataUsageReportItem_specs_1;
+extern asn_TYPE_member_t asn_MBR_SecondaryRATDataUsageReportItem_1[4];
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _SecondaryRATDataUsageReportItem_H_ */
+#include <asn_internal.h>
