diff --git a/src/s1ap/asn1c/asnGenFiles/ProcedureCode.h b/src/s1ap/asn1c/asnGenFiles/ProcedureCode.h
new file mode 100644
index 0000000..ef453e0
--- /dev/null
+++ b/src/s1ap/asn1c/asnGenFiles/ProcedureCode.h
@@ -0,0 +1,109 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "S1AP-CommonDataTypes"
+ * 	found in "./asn1c/S1AP-CommonDataTypes.asn"
+ * 	`asn1c -fcompound-names -fno-include-deps -gen-PER -findirect-choice -pdu=S1AP-PDU`
+ */
+
+#ifndef	_ProcedureCode_H_
+#define	_ProcedureCode_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include <NativeInteger.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* ProcedureCode */
+typedef long	 ProcedureCode_t;
+
+/* Implementation */
+extern asn_per_constraints_t asn_PER_type_ProcedureCode_constr_1;
+extern asn_TYPE_descriptor_t asn_DEF_ProcedureCode;
+asn_struct_free_f ProcedureCode_free;
+asn_struct_print_f ProcedureCode_print;
+asn_constr_check_f ProcedureCode_constraint;
+ber_type_decoder_f ProcedureCode_decode_ber;
+der_type_encoder_f ProcedureCode_encode_der;
+xer_type_decoder_f ProcedureCode_decode_xer;
+xer_type_encoder_f ProcedureCode_encode_xer;
+oer_type_decoder_f ProcedureCode_decode_oer;
+oer_type_encoder_f ProcedureCode_encode_oer;
+per_type_decoder_f ProcedureCode_decode_uper;
+per_type_encoder_f ProcedureCode_encode_uper;
+per_type_decoder_f ProcedureCode_decode_aper;
+per_type_encoder_f ProcedureCode_encode_aper;
+#define ProcedureCode_id_HandoverPreparation	((ProcedureCode_t)0)
+#define ProcedureCode_id_HandoverResourceAllocation	((ProcedureCode_t)1)
+#define ProcedureCode_id_HandoverNotification	((ProcedureCode_t)2)
+#define ProcedureCode_id_PathSwitchRequest	((ProcedureCode_t)3)
+#define ProcedureCode_id_HandoverCancel	((ProcedureCode_t)4)
+#define ProcedureCode_id_E_RABSetup	((ProcedureCode_t)5)
+#define ProcedureCode_id_E_RABModify	((ProcedureCode_t)6)
+#define ProcedureCode_id_E_RABRelease	((ProcedureCode_t)7)
+#define ProcedureCode_id_E_RABReleaseIndication	((ProcedureCode_t)8)
+#define ProcedureCode_id_InitialContextSetup	((ProcedureCode_t)9)
+#define ProcedureCode_id_Paging	((ProcedureCode_t)10)
+#define ProcedureCode_id_downlinkNASTransport	((ProcedureCode_t)11)
+#define ProcedureCode_id_initialUEMessage	((ProcedureCode_t)12)
+#define ProcedureCode_id_uplinkNASTransport	((ProcedureCode_t)13)
+#define ProcedureCode_id_Reset	((ProcedureCode_t)14)
+#define ProcedureCode_id_ErrorIndication	((ProcedureCode_t)15)
+#define ProcedureCode_id_NASNonDeliveryIndication	((ProcedureCode_t)16)
+#define ProcedureCode_id_S1Setup	((ProcedureCode_t)17)
+#define ProcedureCode_id_UEContextReleaseRequest	((ProcedureCode_t)18)
+#define ProcedureCode_id_DownlinkS1cdma2000tunnelling	((ProcedureCode_t)19)
+#define ProcedureCode_id_UplinkS1cdma2000tunnelling	((ProcedureCode_t)20)
+#define ProcedureCode_id_UEContextModification	((ProcedureCode_t)21)
+#define ProcedureCode_id_UECapabilityInfoIndication	((ProcedureCode_t)22)
+#define ProcedureCode_id_UEContextRelease	((ProcedureCode_t)23)
+#define ProcedureCode_id_eNBStatusTransfer	((ProcedureCode_t)24)
+#define ProcedureCode_id_MMEStatusTransfer	((ProcedureCode_t)25)
+#define ProcedureCode_id_DeactivateTrace	((ProcedureCode_t)26)
+#define ProcedureCode_id_TraceStart	((ProcedureCode_t)27)
+#define ProcedureCode_id_TraceFailureIndication	((ProcedureCode_t)28)
+#define ProcedureCode_id_ENBConfigurationUpdate	((ProcedureCode_t)29)
+#define ProcedureCode_id_MMEConfigurationUpdate	((ProcedureCode_t)30)
+#define ProcedureCode_id_LocationReportingControl	((ProcedureCode_t)31)
+#define ProcedureCode_id_LocationReportingFailureIndication	((ProcedureCode_t)32)
+#define ProcedureCode_id_LocationReport	((ProcedureCode_t)33)
+#define ProcedureCode_id_OverloadStart	((ProcedureCode_t)34)
+#define ProcedureCode_id_OverloadStop	((ProcedureCode_t)35)
+#define ProcedureCode_id_WriteReplaceWarning	((ProcedureCode_t)36)
+#define ProcedureCode_id_eNBDirectInformationTransfer	((ProcedureCode_t)37)
+#define ProcedureCode_id_MMEDirectInformationTransfer	((ProcedureCode_t)38)
+#define ProcedureCode_id_PrivateMessage	((ProcedureCode_t)39)
+#define ProcedureCode_id_eNBConfigurationTransfer	((ProcedureCode_t)40)
+#define ProcedureCode_id_MMEConfigurationTransfer	((ProcedureCode_t)41)
+#define ProcedureCode_id_CellTrafficTrace	((ProcedureCode_t)42)
+#define ProcedureCode_id_Kill	((ProcedureCode_t)43)
+#define ProcedureCode_id_downlinkUEAssociatedLPPaTransport	((ProcedureCode_t)44)
+#define ProcedureCode_id_uplinkUEAssociatedLPPaTransport	((ProcedureCode_t)45)
+#define ProcedureCode_id_downlinkNonUEAssociatedLPPaTransport	((ProcedureCode_t)46)
+#define ProcedureCode_id_uplinkNonUEAssociatedLPPaTransport	((ProcedureCode_t)47)
+#define ProcedureCode_id_UERadioCapabilityMatch	((ProcedureCode_t)48)
+#define ProcedureCode_id_PWSRestartIndication	((ProcedureCode_t)49)
+#define ProcedureCode_id_E_RABModificationIndication	((ProcedureCode_t)50)
+#define ProcedureCode_id_PWSFailureIndication	((ProcedureCode_t)51)
+#define ProcedureCode_id_RerouteNASRequest	((ProcedureCode_t)52)
+#define ProcedureCode_id_UEContextModificationIndication	((ProcedureCode_t)53)
+#define ProcedureCode_id_ConnectionEstablishmentIndication	((ProcedureCode_t)54)
+#define ProcedureCode_id_UEContextSuspend	((ProcedureCode_t)55)
+#define ProcedureCode_id_UEContextResume	((ProcedureCode_t)56)
+#define ProcedureCode_id_NASDeliveryIndication	((ProcedureCode_t)57)
+#define ProcedureCode_id_RetrieveUEInformation	((ProcedureCode_t)58)
+#define ProcedureCode_id_UEInformationTransfer	((ProcedureCode_t)59)
+#define ProcedureCode_id_eNBCPRelocationIndication	((ProcedureCode_t)60)
+#define ProcedureCode_id_MMECPRelocationIndication	((ProcedureCode_t)61)
+#define ProcedureCode_id_SecondaryRATDataUsageReport	((ProcedureCode_t)62)
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif	/* _ProcedureCode_H_ */
+#include <asn_internal.h>
