add ffasn1c generated code for HNBAP, RANAP and RUA
diff --git a/asn1/rua/ffasn1c/out.c b/asn1/rua/ffasn1c/out.c
new file mode 100644
index 0000000..34c6e0b
--- /dev/null
+++ b/asn1/rua/ffasn1c/out.c
@@ -0,0 +1,2044 @@
+/* Automatically generated file - do not edit */
+
+#include "asn1defs.h"
+#include "out.h"
+
+const ASN1CType asn1_type_Criticality[] = {
+  (ASN1_CTYPE_ENUMERATED << ASN1_CTYPE_SHIFT) | 0x4000000 | 0xa,
+  3,
+  (intptr_t)"reject",
+  (intptr_t)"ignore",
+  (intptr_t)"notify",
+  (intptr_t)"Criticality",
+};
+
+const ASN1CType asn1_type_Presence[] = {
+  (ASN1_CTYPE_ENUMERATED << ASN1_CTYPE_SHIFT) | 0x4000000 | 0xa,
+  3,
+  (intptr_t)"optional",
+  (intptr_t)"conditional",
+  (intptr_t)"mandatory",
+  (intptr_t)"Presence",
+};
+
+const ASN1CType asn1_type_ProcedureCode[] = {
+  (ASN1_CTYPE_INTEGER << ASN1_CTYPE_SHIFT) | 0x5800000 | 0x2,
+  0x0,
+  0xff,
+  (intptr_t)"ProcedureCode",
+};
+
+static const ASN1CType asn1_type__local_0[] = {
+  (ASN1_CTYPE_INTEGER << ASN1_CTYPE_SHIFT) | 0x1800000 | 0x100000,
+  0x0,
+  0xffff,
+};
+
+static const ASN1CType asn1_type__local_1[] = {
+  (ASN1_CTYPE_OBJECT_IDENTIFIER << ASN1_CTYPE_SHIFT) | 0x0 | 0x100001,
+};
+
+const ASN1CType asn1_type_PrivateIE_ID[] = {
+  (ASN1_CTYPE_CHOICE << ASN1_CTYPE_SHIFT) | 0x4000000 | 0x0,
+  2,
+  sizeof(PrivateIE_ID),
+  offsetof(PrivateIE_ID, choice),
+  offsetof(PrivateIE_ID, u),
+  (intptr_t)asn1_type__local_0,
+  (intptr_t)"local",
+  (intptr_t)asn1_type__local_1,
+  (intptr_t)"global",
+  (intptr_t)"PrivateIE-ID",
+};
+
+const ASN1CType asn1_type_ProtocolIE_ID[] = {
+  (ASN1_CTYPE_INTEGER << ASN1_CTYPE_SHIFT) | 0x5800000 | 0x2,
+  0x0,
+  0xffff,
+  (intptr_t)"ProtocolIE-ID",
+};
+
+const ASN1CType asn1_type_TriggeringMessage[] = {
+  (ASN1_CTYPE_ENUMERATED << ASN1_CTYPE_SHIFT) | 0x4000000 | 0x100001,
+  3,
+  (intptr_t)"initiating-message",
+  (intptr_t)"successful-outcome",
+  (intptr_t)"unsuccessful-outcome",
+  (intptr_t)"TriggeringMessage",
+};
+
+const ASN1CType asn1_type_RUA_PRIVATE_IES[] = {
+  (ASN1_CTYPE_OBJECT_CLASS << ASN1_CTYPE_SHIFT) | 0x4000000 | 0x0,
+  4,
+
+  0x1,
+  (intptr_t)asn1_type_PrivateIE_ID,
+  0,
+  (intptr_t)"&id",
+
+  0x1,
+  (intptr_t)asn1_type_Criticality,
+  0,
+  (intptr_t)"&criticality",
+
+  0x0,
+  0,
+  0,
+  (intptr_t)"&Value",
+
+  0x1,
+  (intptr_t)asn1_type_Presence,
+  0,
+  (intptr_t)"&presence",
+  (intptr_t)"RUA-PRIVATE-IES",
+};
+
+const ASN1CType asn1_type_RUA_PROTOCOL_IES[] = {
+  (ASN1_CTYPE_OBJECT_CLASS << ASN1_CTYPE_SHIFT) | 0x4000000 | 0x0,
+  4,
+
+  0x1,
+  (intptr_t)asn1_type_ProtocolIE_ID,
+  0,
+  (intptr_t)"&id",
+
+  0x1,
+  (intptr_t)asn1_type_Criticality,
+  0,
+  (intptr_t)"&criticality",
+
+  0x0,
+  0,
+  0,
+  (intptr_t)"&Value",
+
+  0x1,
+  (intptr_t)asn1_type_Presence,
+  0,
+  (intptr_t)"&presence",
+  (intptr_t)"RUA-PROTOCOL-IES",
+};
+
+const ASN1CType asn1_type_RUA_PROTOCOL_EXTENSION[] = {
+  (ASN1_CTYPE_OBJECT_CLASS << ASN1_CTYPE_SHIFT) | 0x4000000 | 0x0,
+  4,
+
+  0x1,
+  (intptr_t)asn1_type_ProtocolIE_ID,
+  0,
+  (intptr_t)"&id",
+
+  0x1,
+  (intptr_t)asn1_type_Criticality,
+  0,
+  (intptr_t)"&criticality",
+
+  0x0,
+  0,
+  0,
+  (intptr_t)"&Extension",
+
+  0x1,
+  (intptr_t)asn1_type_Presence,
+  0,
+  (intptr_t)"&presence",
+  (intptr_t)"RUA-PROTOCOL-EXTENSION",
+};
+
+const ASN1CType asn1_type_ProtocolIE_Container_1[] = {
+  (ASN1_CTYPE_SEQUENCE_OF << ASN1_CTYPE_SHIFT) | 0x1800000 | 0x100000,
+  0x0,
+  0xffff,
+  sizeof(ProtocolIE_Field_1),
+  (intptr_t)asn1_type_ProtocolIE_Field_1,
+  0,
+};
+
+const ASN1CType asn1_type_ProtocolIE_Container_2[] = {
+  (ASN1_CTYPE_SEQUENCE_OF << ASN1_CTYPE_SHIFT) | 0x1800000 | 0x100000,
+  0x0,
+  0xffff,
+  sizeof(ProtocolIE_Field_2),
+  (intptr_t)asn1_type_ProtocolIE_Field_2,
+  0,
+};
+
+const ASN1CType asn1_type_ProtocolIE_Container_3[] = {
+  (ASN1_CTYPE_SEQUENCE_OF << ASN1_CTYPE_SHIFT) | 0x1800000 | 0x100000,
+  0x0,
+  0xffff,
+  sizeof(ProtocolIE_Field_3),
+  (intptr_t)asn1_type_ProtocolIE_Field_3,
+  0,
+};
+
+const ASN1CType asn1_type_ProtocolIE_Container_4[] = {
+  (ASN1_CTYPE_SEQUENCE_OF << ASN1_CTYPE_SHIFT) | 0x1800000 | 0x100000,
+  0x0,
+  0xffff,
+  sizeof(ProtocolIE_Field_4),
+  (intptr_t)asn1_type_ProtocolIE_Field_4,
+  0,
+};
+
+const ASN1CType asn1_type_ProtocolIE_Container_5[] = {
+  (ASN1_CTYPE_SEQUENCE_OF << ASN1_CTYPE_SHIFT) | 0x1800000 | 0x100000,
+  0x0,
+  0xffff,
+  sizeof(ProtocolIE_Field_5),
+  (intptr_t)asn1_type_ProtocolIE_Field_5,
+  0,
+};
+
+static const ASN1CType asn1_type__local_2[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100000,
+  (intptr_t)asn1_type_ProtocolIE_ID,
+};
+
+static const ASN1CType asn1_type__local_3[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100001,
+  (intptr_t)asn1_type_Criticality,
+};
+
+static const ProtocolIE_ID asn1_value__local_7 = 7;
+
+static const Criticality asn1_value__local_8 = 0;
+
+static const Presence asn1_value__local_9 = 2;
+
+static const ProtocolIE_ID asn1_value__local_10 = 3;
+
+static const Criticality asn1_value__local_11 = 0;
+
+static const Presence asn1_value__local_12 = 2;
+
+static const ProtocolIE_ID asn1_value__local_13 = 5;
+
+static const Criticality asn1_value__local_14 = 1;
+
+static const Presence asn1_value__local_15 = 0;
+
+static const ProtocolIE_ID asn1_value__local_16 = 6;
+
+static const Criticality asn1_value__local_17 = 0;
+
+static const Presence asn1_value__local_18 = 2;
+
+static const ProtocolIE_ID asn1_value__local_19 = 4;
+
+static const Criticality asn1_value__local_20 = 0;
+
+static const Presence asn1_value__local_21 = 2;
+
+static const RUA_PROTOCOL_IES asn1_value__local_6[] = {
+{
+  (intptr_t)&asn1_value__local_7,
+  (intptr_t)&asn1_value__local_8,
+  (intptr_t)asn1_type_CN_DomainIndicator,
+  (intptr_t)&asn1_value__local_9,
+},
+{
+  (intptr_t)&asn1_value__local_10,
+  (intptr_t)&asn1_value__local_11,
+  (intptr_t)asn1_type_Context_ID,
+  (intptr_t)&asn1_value__local_12,
+},
+{
+  (intptr_t)&asn1_value__local_13,
+  (intptr_t)&asn1_value__local_14,
+  (intptr_t)asn1_type_IntraDomainNasNodeSelector,
+  (intptr_t)&asn1_value__local_15,
+},
+{
+  (intptr_t)&asn1_value__local_16,
+  (intptr_t)&asn1_value__local_17,
+  (intptr_t)asn1_type_Establishment_Cause,
+  (intptr_t)&asn1_value__local_18,
+},
+{
+  (intptr_t)&asn1_value__local_19,
+  (intptr_t)&asn1_value__local_20,
+  (intptr_t)asn1_type_RANAP_Message,
+  (intptr_t)&asn1_value__local_21,
+},
+};
+
+static const ASN1CType asn1_constraint__local_5[] = {
+  ASN1_CCONSTRAINT_TABLE,
+  (intptr_t)asn1_type_RUA_PROTOCOL_IES,
+  2,
+  (intptr_t)asn1_value__local_6,
+  5,
+  1,
+  0,
+  0x80000000,
+  0,
+};
+
+static const ASN1CType asn1_type__local_4[] = {
+  (ASN1_CTYPE_ANY << ASN1_CTYPE_SHIFT) | 0x200000 | 0x100002,
+  (intptr_t)asn1_constraint__local_5,
+};
+
+const ASN1CType asn1_type_ProtocolIE_Field_1[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x0 | 0x10,
+  3,
+  sizeof(ProtocolIE_Field_1),
+
+  offsetof(ProtocolIE_Field_1, id) | 0x0,
+  (intptr_t)asn1_type__local_2,
+  0,
+  (intptr_t)"id",
+
+  offsetof(ProtocolIE_Field_1, criticality) | 0x0,
+  (intptr_t)asn1_type__local_3,
+  0,
+  (intptr_t)"criticality",
+
+  offsetof(ProtocolIE_Field_1, value) | 0x0,
+  (intptr_t)asn1_type__local_4,
+  0,
+  (intptr_t)"value",
+
+};
+
+static const ASN1CType asn1_type__local_22[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100000,
+  (intptr_t)asn1_type_ProtocolIE_ID,
+};
+
+static const ASN1CType asn1_type__local_23[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100001,
+  (intptr_t)asn1_type_Criticality,
+};
+
+static const ProtocolIE_ID asn1_value__local_27 = 7;
+
+static const Criticality asn1_value__local_28 = 0;
+
+static const Presence asn1_value__local_29 = 2;
+
+static const ProtocolIE_ID asn1_value__local_30 = 3;
+
+static const Criticality asn1_value__local_31 = 0;
+
+static const Presence asn1_value__local_32 = 2;
+
+static const ProtocolIE_ID asn1_value__local_33 = 4;
+
+static const Criticality asn1_value__local_34 = 0;
+
+static const Presence asn1_value__local_35 = 2;
+
+static const RUA_PROTOCOL_IES asn1_value__local_26[] = {
+{
+  (intptr_t)&asn1_value__local_27,
+  (intptr_t)&asn1_value__local_28,
+  (intptr_t)asn1_type_CN_DomainIndicator,
+  (intptr_t)&asn1_value__local_29,
+},
+{
+  (intptr_t)&asn1_value__local_30,
+  (intptr_t)&asn1_value__local_31,
+  (intptr_t)asn1_type_Context_ID,
+  (intptr_t)&asn1_value__local_32,
+},
+{
+  (intptr_t)&asn1_value__local_33,
+  (intptr_t)&asn1_value__local_34,
+  (intptr_t)asn1_type_RANAP_Message,
+  (intptr_t)&asn1_value__local_35,
+},
+};
+
+static const ASN1CType asn1_constraint__local_25[] = {
+  ASN1_CCONSTRAINT_TABLE,
+  (intptr_t)asn1_type_RUA_PROTOCOL_IES,
+  2,
+  (intptr_t)asn1_value__local_26,
+  3,
+  1,
+  0,
+  0x80000000,
+  0,
+};
+
+static const ASN1CType asn1_type__local_24[] = {
+  (ASN1_CTYPE_ANY << ASN1_CTYPE_SHIFT) | 0x200000 | 0x100002,
+  (intptr_t)asn1_constraint__local_25,
+};
+
+const ASN1CType asn1_type_ProtocolIE_Field_2[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x0 | 0x10,
+  3,
+  sizeof(ProtocolIE_Field_2),
+
+  offsetof(ProtocolIE_Field_2, id) | 0x0,
+  (intptr_t)asn1_type__local_22,
+  0,
+  (intptr_t)"id",
+
+  offsetof(ProtocolIE_Field_2, criticality) | 0x0,
+  (intptr_t)asn1_type__local_23,
+  0,
+  (intptr_t)"criticality",
+
+  offsetof(ProtocolIE_Field_2, value) | 0x0,
+  (intptr_t)asn1_type__local_24,
+  0,
+  (intptr_t)"value",
+
+};
+
+static const ASN1CType asn1_type__local_36[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100000,
+  (intptr_t)asn1_type_ProtocolIE_ID,
+};
+
+static const ASN1CType asn1_type__local_37[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100001,
+  (intptr_t)asn1_type_Criticality,
+};
+
+static const ProtocolIE_ID asn1_value__local_41 = 7;
+
+static const Criticality asn1_value__local_42 = 0;
+
+static const Presence asn1_value__local_43 = 2;
+
+static const ProtocolIE_ID asn1_value__local_44 = 3;
+
+static const Criticality asn1_value__local_45 = 0;
+
+static const Presence asn1_value__local_46 = 2;
+
+static const ProtocolIE_ID asn1_value__local_47 = 1;
+
+static const Criticality asn1_value__local_48 = 0;
+
+static const Presence asn1_value__local_49 = 2;
+
+static const ProtocolIE_ID asn1_value__local_50 = 4;
+
+static const Criticality asn1_value__local_51 = 0;
+
+static const Presence asn1_value__local_52 = 1;
+
+static const RUA_PROTOCOL_IES asn1_value__local_40[] = {
+{
+  (intptr_t)&asn1_value__local_41,
+  (intptr_t)&asn1_value__local_42,
+  (intptr_t)asn1_type_CN_DomainIndicator,
+  (intptr_t)&asn1_value__local_43,
+},
+{
+  (intptr_t)&asn1_value__local_44,
+  (intptr_t)&asn1_value__local_45,
+  (intptr_t)asn1_type_Context_ID,
+  (intptr_t)&asn1_value__local_46,
+},
+{
+  (intptr_t)&asn1_value__local_47,
+  (intptr_t)&asn1_value__local_48,
+  (intptr_t)asn1_type_Cause,
+  (intptr_t)&asn1_value__local_49,
+},
+{
+  (intptr_t)&asn1_value__local_50,
+  (intptr_t)&asn1_value__local_51,
+  (intptr_t)asn1_type_RANAP_Message,
+  (intptr_t)&asn1_value__local_52,
+},
+};
+
+static const ASN1CType asn1_constraint__local_39[] = {
+  ASN1_CCONSTRAINT_TABLE,
+  (intptr_t)asn1_type_RUA_PROTOCOL_IES,
+  2,
+  (intptr_t)asn1_value__local_40,
+  4,
+  1,
+  0,
+  0x80000000,
+  0,
+};
+
+static const ASN1CType asn1_type__local_38[] = {
+  (ASN1_CTYPE_ANY << ASN1_CTYPE_SHIFT) | 0x200000 | 0x100002,
+  (intptr_t)asn1_constraint__local_39,
+};
+
+const ASN1CType asn1_type_ProtocolIE_Field_3[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x0 | 0x10,
+  3,
+  sizeof(ProtocolIE_Field_3),
+
+  offsetof(ProtocolIE_Field_3, id) | 0x0,
+  (intptr_t)asn1_type__local_36,
+  0,
+  (intptr_t)"id",
+
+  offsetof(ProtocolIE_Field_3, criticality) | 0x0,
+  (intptr_t)asn1_type__local_37,
+  0,
+  (intptr_t)"criticality",
+
+  offsetof(ProtocolIE_Field_3, value) | 0x0,
+  (intptr_t)asn1_type__local_38,
+  0,
+  (intptr_t)"value",
+
+};
+
+static const ASN1CType asn1_type__local_53[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100000,
+  (intptr_t)asn1_type_ProtocolIE_ID,
+};
+
+static const ASN1CType asn1_type__local_54[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100001,
+  (intptr_t)asn1_type_Criticality,
+};
+
+static const ProtocolIE_ID asn1_value__local_58 = 4;
+
+static const Criticality asn1_value__local_59 = 0;
+
+static const Presence asn1_value__local_60 = 2;
+
+static const RUA_PROTOCOL_IES asn1_value__local_57[] = {
+{
+  (intptr_t)&asn1_value__local_58,
+  (intptr_t)&asn1_value__local_59,
+  (intptr_t)asn1_type_RANAP_Message,
+  (intptr_t)&asn1_value__local_60,
+},
+};
+
+static const ASN1CType asn1_constraint__local_56[] = {
+  ASN1_CCONSTRAINT_TABLE,
+  (intptr_t)asn1_type_RUA_PROTOCOL_IES,
+  2,
+  (intptr_t)asn1_value__local_57,
+  1,
+  1,
+  0,
+  0x80000000,
+  0,
+};
+
+static const ASN1CType asn1_type__local_55[] = {
+  (ASN1_CTYPE_ANY << ASN1_CTYPE_SHIFT) | 0x200000 | 0x100002,
+  (intptr_t)asn1_constraint__local_56,
+};
+
+const ASN1CType asn1_type_ProtocolIE_Field_4[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x0 | 0x10,
+  3,
+  sizeof(ProtocolIE_Field_4),
+
+  offsetof(ProtocolIE_Field_4, id) | 0x0,
+  (intptr_t)asn1_type__local_53,
+  0,
+  (intptr_t)"id",
+
+  offsetof(ProtocolIE_Field_4, criticality) | 0x0,
+  (intptr_t)asn1_type__local_54,
+  0,
+  (intptr_t)"criticality",
+
+  offsetof(ProtocolIE_Field_4, value) | 0x0,
+  (intptr_t)asn1_type__local_55,
+  0,
+  (intptr_t)"value",
+
+};
+
+static const ASN1CType asn1_type__local_61[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100000,
+  (intptr_t)asn1_type_ProtocolIE_ID,
+};
+
+static const ASN1CType asn1_type__local_62[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100001,
+  (intptr_t)asn1_type_Criticality,
+};
+
+static const ProtocolIE_ID asn1_value__local_66 = 1;
+
+static const Criticality asn1_value__local_67 = 1;
+
+static const Presence asn1_value__local_68 = 2;
+
+static const ProtocolIE_ID asn1_value__local_69 = 2;
+
+static const Criticality asn1_value__local_70 = 1;
+
+static const Presence asn1_value__local_71 = 0;
+
+static const RUA_PROTOCOL_IES asn1_value__local_65[] = {
+{
+  (intptr_t)&asn1_value__local_66,
+  (intptr_t)&asn1_value__local_67,
+  (intptr_t)asn1_type_Cause,
+  (intptr_t)&asn1_value__local_68,
+},
+{
+  (intptr_t)&asn1_value__local_69,
+  (intptr_t)&asn1_value__local_70,
+  (intptr_t)asn1_type_CriticalityDiagnostics,
+  (intptr_t)&asn1_value__local_71,
+},
+};
+
+static const ASN1CType asn1_constraint__local_64[] = {
+  ASN1_CCONSTRAINT_TABLE,
+  (intptr_t)asn1_type_RUA_PROTOCOL_IES,
+  2,
+  (intptr_t)asn1_value__local_65,
+  2,
+  1,
+  0,
+  0x80000000,
+  0,
+};
+
+static const ASN1CType asn1_type__local_63[] = {
+  (ASN1_CTYPE_ANY << ASN1_CTYPE_SHIFT) | 0x200000 | 0x100002,
+  (intptr_t)asn1_constraint__local_64,
+};
+
+const ASN1CType asn1_type_ProtocolIE_Field_5[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x0 | 0x10,
+  3,
+  sizeof(ProtocolIE_Field_5),
+
+  offsetof(ProtocolIE_Field_5, id) | 0x0,
+  (intptr_t)asn1_type__local_61,
+  0,
+  (intptr_t)"id",
+
+  offsetof(ProtocolIE_Field_5, criticality) | 0x0,
+  (intptr_t)asn1_type__local_62,
+  0,
+  (intptr_t)"criticality",
+
+  offsetof(ProtocolIE_Field_5, value) | 0x0,
+  (intptr_t)asn1_type__local_63,
+  0,
+  (intptr_t)"value",
+
+};
+
+const ASN1CType asn1_type_ProtocolExtensionContainer_1[] = {
+  (ASN1_CTYPE_SEQUENCE_OF << ASN1_CTYPE_SHIFT) | 0x1800000 | 0x100004,
+  0x1,
+  0xffff,
+  sizeof(ProtocolExtensionField_1),
+  (intptr_t)asn1_type_ProtocolExtensionField_1,
+  0,
+};
+
+const ASN1CType asn1_type_ProtocolExtensionContainer_2[] = {
+  (ASN1_CTYPE_SEQUENCE_OF << ASN1_CTYPE_SHIFT) | 0x1800000 | 0x100003,
+  0x1,
+  0xffff,
+  sizeof(ProtocolExtensionField_2),
+  (intptr_t)asn1_type_ProtocolExtensionField_2,
+  0,
+};
+
+const ASN1CType asn1_type_ProtocolExtensionContainer_3[] = {
+  (ASN1_CTYPE_SEQUENCE_OF << ASN1_CTYPE_SHIFT) | 0x1800000 | 0x100001,
+  0x1,
+  0xffff,
+  sizeof(ProtocolExtensionField_3),
+  (intptr_t)asn1_type_ProtocolExtensionField_3,
+  0,
+};
+
+const ASN1CType asn1_type_ProtocolExtensionContainer_4[] = {
+  (ASN1_CTYPE_SEQUENCE_OF << ASN1_CTYPE_SHIFT) | 0x1800000 | 0x100001,
+  0x1,
+  0xffff,
+  sizeof(ProtocolExtensionField_4),
+  (intptr_t)asn1_type_ProtocolExtensionField_4,
+  0,
+};
+
+const ASN1CType asn1_type_ProtocolExtensionContainer_5[] = {
+  (ASN1_CTYPE_SEQUENCE_OF << ASN1_CTYPE_SHIFT) | 0x1800000 | 0x100001,
+  0x1,
+  0xffff,
+  sizeof(ProtocolExtensionField_5),
+  (intptr_t)asn1_type_ProtocolExtensionField_5,
+  0,
+};
+
+const ASN1CType asn1_type_ProtocolExtensionContainer_6[] = {
+  (ASN1_CTYPE_SEQUENCE_OF << ASN1_CTYPE_SHIFT) | 0x1800000 | 0x100001,
+  0x1,
+  0xffff,
+  sizeof(ProtocolExtensionField_6),
+  (intptr_t)asn1_type_ProtocolExtensionField_6,
+  0,
+};
+
+const ASN1CType asn1_type_ProtocolExtensionContainer_7[] = {
+  (ASN1_CTYPE_SEQUENCE_OF << ASN1_CTYPE_SHIFT) | 0x1800000 | 0x100001,
+  0x1,
+  0xffff,
+  sizeof(ProtocolExtensionField_7),
+  (intptr_t)asn1_type_ProtocolExtensionField_7,
+  0,
+};
+
+static const ASN1CType asn1_type__local_72[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100000,
+  (intptr_t)asn1_type_ProtocolIE_ID,
+};
+
+static const ASN1CType asn1_type__local_73[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100001,
+  (intptr_t)asn1_type_Criticality,
+};
+
+static const ASN1CType asn1_constraint__local_75[] = {
+  ASN1_CCONSTRAINT_TABLE,
+  (intptr_t)asn1_type_RUA_PROTOCOL_EXTENSION,
+  2,
+  0,
+  0,
+  1,
+  0,
+  0x80000000,
+  0,
+};
+
+static const ASN1CType asn1_type__local_74[] = {
+  (ASN1_CTYPE_ANY << ASN1_CTYPE_SHIFT) | 0x200000 | 0x100002,
+  (intptr_t)asn1_constraint__local_75,
+};
+
+const ASN1CType asn1_type_ProtocolExtensionField_1[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x0 | 0x10,
+  3,
+  sizeof(ProtocolExtensionField_1),
+
+  offsetof(ProtocolExtensionField_1, id) | 0x0,
+  (intptr_t)asn1_type__local_72,
+  0,
+  (intptr_t)"id",
+
+  offsetof(ProtocolExtensionField_1, criticality) | 0x0,
+  (intptr_t)asn1_type__local_73,
+  0,
+  (intptr_t)"criticality",
+
+  offsetof(ProtocolExtensionField_1, extensionValue) | 0x0,
+  (intptr_t)asn1_type__local_74,
+  0,
+  (intptr_t)"extensionValue",
+
+};
+
+static const ASN1CType asn1_type__local_77[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100000,
+  (intptr_t)asn1_type_ProtocolIE_ID,
+};
+
+static const ASN1CType asn1_type__local_78[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100001,
+  (intptr_t)asn1_type_Criticality,
+};
+
+static const ASN1CType asn1_constraint__local_80[] = {
+  ASN1_CCONSTRAINT_TABLE,
+  (intptr_t)asn1_type_RUA_PROTOCOL_EXTENSION,
+  2,
+  0,
+  0,
+  1,
+  0,
+  0x80000000,
+  0,
+};
+
+static const ASN1CType asn1_type__local_79[] = {
+  (ASN1_CTYPE_ANY << ASN1_CTYPE_SHIFT) | 0x200000 | 0x100002,
+  (intptr_t)asn1_constraint__local_80,
+};
+
+const ASN1CType asn1_type_ProtocolExtensionField_2[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x0 | 0x10,
+  3,
+  sizeof(ProtocolExtensionField_2),
+
+  offsetof(ProtocolExtensionField_2, id) | 0x0,
+  (intptr_t)asn1_type__local_77,
+  0,
+  (intptr_t)"id",
+
+  offsetof(ProtocolExtensionField_2, criticality) | 0x0,
+  (intptr_t)asn1_type__local_78,
+  0,
+  (intptr_t)"criticality",
+
+  offsetof(ProtocolExtensionField_2, extensionValue) | 0x0,
+  (intptr_t)asn1_type__local_79,
+  0,
+  (intptr_t)"extensionValue",
+
+};
+
+static const ASN1CType asn1_type__local_82[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100000,
+  (intptr_t)asn1_type_ProtocolIE_ID,
+};
+
+static const ASN1CType asn1_type__local_83[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100001,
+  (intptr_t)asn1_type_Criticality,
+};
+
+static const ProtocolIE_ID asn1_value__local_87 = 9;
+
+static const Criticality asn1_value__local_88 = 1;
+
+static const Presence asn1_value__local_89 = 0;
+
+static const RUA_PROTOCOL_EXTENSION asn1_value__local_86[] = {
+{
+  (intptr_t)&asn1_value__local_87,
+  (intptr_t)&asn1_value__local_88,
+  (intptr_t)asn1_type_CSGMembershipStatus,
+  (intptr_t)&asn1_value__local_89,
+},
+};
+
+static const ASN1CType asn1_constraint__local_85[] = {
+  ASN1_CCONSTRAINT_TABLE,
+  (intptr_t)asn1_type_RUA_PROTOCOL_EXTENSION,
+  2,
+  (intptr_t)asn1_value__local_86,
+  1,
+  1,
+  0,
+  0x80000000,
+  0,
+};
+
+static const ASN1CType asn1_type__local_84[] = {
+  (ASN1_CTYPE_ANY << ASN1_CTYPE_SHIFT) | 0x200000 | 0x100002,
+  (intptr_t)asn1_constraint__local_85,
+};
+
+const ASN1CType asn1_type_ProtocolExtensionField_3[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x0 | 0x10,
+  3,
+  sizeof(ProtocolExtensionField_3),
+
+  offsetof(ProtocolExtensionField_3, id) | 0x0,
+  (intptr_t)asn1_type__local_82,
+  0,
+  (intptr_t)"id",
+
+  offsetof(ProtocolExtensionField_3, criticality) | 0x0,
+  (intptr_t)asn1_type__local_83,
+  0,
+  (intptr_t)"criticality",
+
+  offsetof(ProtocolExtensionField_3, extensionValue) | 0x0,
+  (intptr_t)asn1_type__local_84,
+  0,
+  (intptr_t)"extensionValue",
+
+};
+
+static const ASN1CType asn1_type__local_90[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100000,
+  (intptr_t)asn1_type_ProtocolIE_ID,
+};
+
+static const ASN1CType asn1_type__local_91[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100001,
+  (intptr_t)asn1_type_Criticality,
+};
+
+static const ASN1CType asn1_constraint__local_93[] = {
+  ASN1_CCONSTRAINT_TABLE,
+  (intptr_t)asn1_type_RUA_PROTOCOL_EXTENSION,
+  2,
+  0,
+  0,
+  1,
+  0,
+  0x80000000,
+  0,
+};
+
+static const ASN1CType asn1_type__local_92[] = {
+  (ASN1_CTYPE_ANY << ASN1_CTYPE_SHIFT) | 0x200000 | 0x100002,
+  (intptr_t)asn1_constraint__local_93,
+};
+
+const ASN1CType asn1_type_ProtocolExtensionField_4[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x0 | 0x10,
+  3,
+  sizeof(ProtocolExtensionField_4),
+
+  offsetof(ProtocolExtensionField_4, id) | 0x0,
+  (intptr_t)asn1_type__local_90,
+  0,
+  (intptr_t)"id",
+
+  offsetof(ProtocolExtensionField_4, criticality) | 0x0,
+  (intptr_t)asn1_type__local_91,
+  0,
+  (intptr_t)"criticality",
+
+  offsetof(ProtocolExtensionField_4, extensionValue) | 0x0,
+  (intptr_t)asn1_type__local_92,
+  0,
+  (intptr_t)"extensionValue",
+
+};
+
+static const ASN1CType asn1_type__local_95[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100000,
+  (intptr_t)asn1_type_ProtocolIE_ID,
+};
+
+static const ASN1CType asn1_type__local_96[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100001,
+  (intptr_t)asn1_type_Criticality,
+};
+
+static const ASN1CType asn1_constraint__local_98[] = {
+  ASN1_CCONSTRAINT_TABLE,
+  (intptr_t)asn1_type_RUA_PROTOCOL_EXTENSION,
+  2,
+  0,
+  0,
+  1,
+  0,
+  0x80000000,
+  0,
+};
+
+static const ASN1CType asn1_type__local_97[] = {
+  (ASN1_CTYPE_ANY << ASN1_CTYPE_SHIFT) | 0x200000 | 0x100002,
+  (intptr_t)asn1_constraint__local_98,
+};
+
+const ASN1CType asn1_type_ProtocolExtensionField_5[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x0 | 0x10,
+  3,
+  sizeof(ProtocolExtensionField_5),
+
+  offsetof(ProtocolExtensionField_5, id) | 0x0,
+  (intptr_t)asn1_type__local_95,
+  0,
+  (intptr_t)"id",
+
+  offsetof(ProtocolExtensionField_5, criticality) | 0x0,
+  (intptr_t)asn1_type__local_96,
+  0,
+  (intptr_t)"criticality",
+
+  offsetof(ProtocolExtensionField_5, extensionValue) | 0x0,
+  (intptr_t)asn1_type__local_97,
+  0,
+  (intptr_t)"extensionValue",
+
+};
+
+static const ASN1CType asn1_type__local_100[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100000,
+  (intptr_t)asn1_type_ProtocolIE_ID,
+};
+
+static const ASN1CType asn1_type__local_101[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100001,
+  (intptr_t)asn1_type_Criticality,
+};
+
+static const ASN1CType asn1_constraint__local_103[] = {
+  ASN1_CCONSTRAINT_TABLE,
+  (intptr_t)asn1_type_RUA_PROTOCOL_EXTENSION,
+  2,
+  0,
+  0,
+  1,
+  0,
+  0x80000000,
+  0,
+};
+
+static const ASN1CType asn1_type__local_102[] = {
+  (ASN1_CTYPE_ANY << ASN1_CTYPE_SHIFT) | 0x200000 | 0x100002,
+  (intptr_t)asn1_constraint__local_103,
+};
+
+const ASN1CType asn1_type_ProtocolExtensionField_6[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x0 | 0x10,
+  3,
+  sizeof(ProtocolExtensionField_6),
+
+  offsetof(ProtocolExtensionField_6, id) | 0x0,
+  (intptr_t)asn1_type__local_100,
+  0,
+  (intptr_t)"id",
+
+  offsetof(ProtocolExtensionField_6, criticality) | 0x0,
+  (intptr_t)asn1_type__local_101,
+  0,
+  (intptr_t)"criticality",
+
+  offsetof(ProtocolExtensionField_6, extensionValue) | 0x0,
+  (intptr_t)asn1_type__local_102,
+  0,
+  (intptr_t)"extensionValue",
+
+};
+
+static const ASN1CType asn1_type__local_105[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100000,
+  (intptr_t)asn1_type_ProtocolIE_ID,
+};
+
+static const ASN1CType asn1_type__local_106[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100001,
+  (intptr_t)asn1_type_Criticality,
+};
+
+static const ASN1CType asn1_constraint__local_108[] = {
+  ASN1_CCONSTRAINT_TABLE,
+  (intptr_t)asn1_type_RUA_PROTOCOL_EXTENSION,
+  2,
+  0,
+  0,
+  1,
+  0,
+  0x80000000,
+  0,
+};
+
+static const ASN1CType asn1_type__local_107[] = {
+  (ASN1_CTYPE_ANY << ASN1_CTYPE_SHIFT) | 0x200000 | 0x100002,
+  (intptr_t)asn1_constraint__local_108,
+};
+
+const ASN1CType asn1_type_ProtocolExtensionField_7[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x0 | 0x10,
+  3,
+  sizeof(ProtocolExtensionField_7),
+
+  offsetof(ProtocolExtensionField_7, id) | 0x0,
+  (intptr_t)asn1_type__local_105,
+  0,
+  (intptr_t)"id",
+
+  offsetof(ProtocolExtensionField_7, criticality) | 0x0,
+  (intptr_t)asn1_type__local_106,
+  0,
+  (intptr_t)"criticality",
+
+  offsetof(ProtocolExtensionField_7, extensionValue) | 0x0,
+  (intptr_t)asn1_type__local_107,
+  0,
+  (intptr_t)"extensionValue",
+
+};
+
+const ASN1CType asn1_type_PrivateIE_Container_1[] = {
+  (ASN1_CTYPE_SEQUENCE_OF << ASN1_CTYPE_SHIFT) | 0x1800000 | 0x100000,
+  0x1,
+  0xffff,
+  sizeof(PrivateIE_Field_1),
+  (intptr_t)asn1_type_PrivateIE_Field_1,
+  0,
+};
+
+static const ASN1CType asn1_type__local_110[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x2000000 | 0x100000,
+  (intptr_t)asn1_type_PrivateIE_ID,
+};
+
+static const ASN1CType asn1_type__local_111[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100001,
+  (intptr_t)asn1_type_Criticality,
+};
+
+static const ASN1CType asn1_constraint__local_113[] = {
+  ASN1_CCONSTRAINT_TABLE,
+  (intptr_t)asn1_type_RUA_PRIVATE_IES,
+  2,
+  0,
+  0,
+  1,
+  0,
+  0x80000000,
+  0,
+};
+
+static const ASN1CType asn1_type__local_112[] = {
+  (ASN1_CTYPE_ANY << ASN1_CTYPE_SHIFT) | 0x200000 | 0x100002,
+  (intptr_t)asn1_constraint__local_113,
+};
+
+const ASN1CType asn1_type_PrivateIE_Field_1[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x0 | 0x10,
+  3,
+  sizeof(PrivateIE_Field_1),
+
+  offsetof(PrivateIE_Field_1, id) | 0x0,
+  (intptr_t)asn1_type__local_110,
+  0,
+  (intptr_t)"id",
+
+  offsetof(PrivateIE_Field_1, criticality) | 0x0,
+  (intptr_t)asn1_type__local_111,
+  0,
+  (intptr_t)"criticality",
+
+  offsetof(PrivateIE_Field_1, value) | 0x0,
+  (intptr_t)asn1_type__local_112,
+  0,
+  (intptr_t)"value",
+
+};
+
+const ASN1CType asn1_type_CN_DomainIndicator[] = {
+  (ASN1_CTYPE_ENUMERATED << ASN1_CTYPE_SHIFT) | 0x4000000 | 0xa,
+  2,
+  (intptr_t)"cs-domain",
+  (intptr_t)"ps-domain",
+  (intptr_t)"CN-DomainIndicator",
+};
+
+const ASN1CType asn1_type_CSGMembershipStatus[] = {
+  (ASN1_CTYPE_ENUMERATED << ASN1_CTYPE_SHIFT) | 0x6000000 | 0xa,
+  2,
+  0,
+  (intptr_t)"member",
+  (intptr_t)"non-member",
+  (intptr_t)"CSGMembershipStatus",
+};
+
+const ASN1CType asn1_type_Establishment_Cause[] = {
+  (ASN1_CTYPE_ENUMERATED << ASN1_CTYPE_SHIFT) | 0x6000000 | 0xa,
+  2,
+  0,
+  (intptr_t)"emergency-call",
+  (intptr_t)"normal-call",
+  (intptr_t)"Establishment-Cause",
+};
+
+const ASN1CType asn1_type_Context_ID[] = {
+  (ASN1_CTYPE_BIT_STRING << ASN1_CTYPE_SHIFT) | 0x5800000 | 0x3,
+  0x18,
+  0x18,
+  (intptr_t)"Context-ID",
+};
+
+const ASN1CType asn1_type_IntraDomainNasNodeSelector[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x4000000 | 0x10,
+  1,
+  sizeof(IntraDomainNasNodeSelector),
+
+  offsetof(IntraDomainNasNodeSelector, version) | 0x0,
+  (intptr_t)asn1_type_IntraDomainNasNodeSelector_4,
+  0,
+  (intptr_t)"version",
+
+  (intptr_t)"IntraDomainNasNodeSelector",
+};
+
+const ASN1CType asn1_type_IntraDomainNasNodeSelector_1[] = {
+  (ASN1_CTYPE_CHOICE << ASN1_CTYPE_SHIFT) | 0x0 | 0x100000,
+  2,
+  sizeof(IntraDomainNasNodeSelector_1),
+  offsetof(IntraDomainNasNodeSelector_1, choice),
+  offsetof(IntraDomainNasNodeSelector_1, u),
+  (intptr_t)asn1_type_Gsm_map_IDNNS,
+  (intptr_t)"gsm-Map-IDNNS",
+  (intptr_t)asn1_type_Ansi_41_IDNNS,
+  (intptr_t)"ansi-41-IDNNS",
+};
+
+const ASN1CType asn1_type_IntraDomainNasNodeSelector_2[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x0 | 0x100000,
+  1,
+  sizeof(IntraDomainNasNodeSelector_2),
+
+  offsetof(IntraDomainNasNodeSelector_2, cn_Type) | 0x0,
+  (intptr_t)asn1_type_IntraDomainNasNodeSelector_1,
+  0,
+  (intptr_t)"cn-Type",
+
+};
+
+static const ASN1CType asn1_type__local_115[] = {
+  (ASN1_CTYPE_BIT_STRING << ASN1_CTYPE_SHIFT) | 0x1800000 | 0x100000,
+  0xf,
+  0xf,
+};
+
+const ASN1CType asn1_type_IntraDomainNasNodeSelector_3[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x0 | 0x100001,
+  1,
+  sizeof(IntraDomainNasNodeSelector_3),
+
+  offsetof(IntraDomainNasNodeSelector_3, futurecoding) | 0x0,
+  (intptr_t)asn1_type__local_115,
+  0,
+  (intptr_t)"futurecoding",
+
+};
+
+const ASN1CType asn1_type_IntraDomainNasNodeSelector_4[] = {
+  (ASN1_CTYPE_CHOICE << ASN1_CTYPE_SHIFT) | 0x0 | 0x100000,
+  2,
+  sizeof(IntraDomainNasNodeSelector_4),
+  offsetof(IntraDomainNasNodeSelector_4, choice),
+  offsetof(IntraDomainNasNodeSelector_4, u),
+  (intptr_t)asn1_type_IntraDomainNasNodeSelector_2,
+  (intptr_t)"release99",
+  (intptr_t)asn1_type_IntraDomainNasNodeSelector_3,
+  (intptr_t)"later",
+};
+
+static const ASN1CType asn1_type__local_116[] = {
+  (ASN1_CTYPE_BOOLEAN << ASN1_CTYPE_SHIFT) | 0x0 | 0x100001,
+};
+
+const ASN1CType asn1_type_Gsm_map_IDNNS[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x4000000 | 0x100000,
+  2,
+  sizeof(Gsm_map_IDNNS),
+
+  offsetof(Gsm_map_IDNNS, routingbasis) | 0x0,
+  (intptr_t)asn1_type_Gsm_map_IDNNS_9,
+  0,
+  (intptr_t)"routingbasis",
+
+  offsetof(Gsm_map_IDNNS, dummy) | 0x0,
+  (intptr_t)asn1_type__local_116,
+  0,
+  (intptr_t)"dummy",
+
+  (intptr_t)"Gsm-map-IDNNS",
+};
+
+const ASN1CType asn1_type_Gsm_map_IDNNS_1[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x0 | 0x100000,
+  1,
+  sizeof(Gsm_map_IDNNS_1),
+
+  offsetof(Gsm_map_IDNNS_1, routingparameter) | 0x0,
+  (intptr_t)asn1_type_RoutingParameter,
+  0,
+  (intptr_t)"routingparameter",
+
+};
+
+const ASN1CType asn1_type_Gsm_map_IDNNS_2[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x0 | 0x100001,
+  1,
+  sizeof(Gsm_map_IDNNS_2),
+
+  offsetof(Gsm_map_IDNNS_2, routingparameter) | 0x0,
+  (intptr_t)asn1_type_RoutingParameter,
+  0,
+  (intptr_t)"routingparameter",
+
+};
+
+const ASN1CType asn1_type_Gsm_map_IDNNS_3[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x0 | 0x100002,
+  1,
+  sizeof(Gsm_map_IDNNS_3),
+
+  offsetof(Gsm_map_IDNNS_3, routingparameter) | 0x0,
+  (intptr_t)asn1_type_RoutingParameter,
+  0,
+  (intptr_t)"routingparameter",
+
+};
+
+const ASN1CType asn1_type_Gsm_map_IDNNS_4[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x0 | 0x100003,
+  1,
+  sizeof(Gsm_map_IDNNS_4),
+
+  offsetof(Gsm_map_IDNNS_4, routingparameter) | 0x0,
+  (intptr_t)asn1_type_RoutingParameter,
+  0,
+  (intptr_t)"routingparameter",
+
+};
+
+const ASN1CType asn1_type_Gsm_map_IDNNS_5[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x0 | 0x100004,
+  1,
+  sizeof(Gsm_map_IDNNS_5),
+
+  offsetof(Gsm_map_IDNNS_5, routingparameter) | 0x0,
+  (intptr_t)asn1_type_RoutingParameter,
+  0,
+  (intptr_t)"routingparameter",
+
+};
+
+const ASN1CType asn1_type_Gsm_map_IDNNS_6[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x0 | 0x100005,
+  1,
+  sizeof(Gsm_map_IDNNS_6),
+
+  offsetof(Gsm_map_IDNNS_6, routingparameter) | 0x0,
+  (intptr_t)asn1_type_RoutingParameter,
+  0,
+  (intptr_t)"routingparameter",
+
+};
+
+const ASN1CType asn1_type_Gsm_map_IDNNS_7[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x0 | 0x100006,
+  1,
+  sizeof(Gsm_map_IDNNS_7),
+
+  offsetof(Gsm_map_IDNNS_7, routingparameter) | 0x0,
+  (intptr_t)asn1_type_RoutingParameter,
+  0,
+  (intptr_t)"routingparameter",
+
+};
+
+const ASN1CType asn1_type_Gsm_map_IDNNS_8[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x0 | 0x100007,
+  1,
+  sizeof(Gsm_map_IDNNS_8),
+
+  offsetof(Gsm_map_IDNNS_8, routingparameter) | 0x0,
+  (intptr_t)asn1_type_RoutingParameter,
+  0,
+  (intptr_t)"routingparameter",
+
+};
+
+const ASN1CType asn1_type_Gsm_map_IDNNS_9[] = {
+  (ASN1_CTYPE_CHOICE << ASN1_CTYPE_SHIFT) | 0x0 | 0x100000,
+  8,
+  sizeof(Gsm_map_IDNNS_9),
+  offsetof(Gsm_map_IDNNS_9, choice),
+  offsetof(Gsm_map_IDNNS_9, u),
+  (intptr_t)asn1_type_Gsm_map_IDNNS_1,
+  (intptr_t)"localPTMSI",
+  (intptr_t)asn1_type_Gsm_map_IDNNS_2,
+  (intptr_t)"tMSIofsamePLMN",
+  (intptr_t)asn1_type_Gsm_map_IDNNS_3,
+  (intptr_t)"tMSIofdifferentPLMN",
+  (intptr_t)asn1_type_Gsm_map_IDNNS_4,
+  (intptr_t)"iMSIresponsetopaging",
+  (intptr_t)asn1_type_Gsm_map_IDNNS_5,
+  (intptr_t)"iMSIcauseUEinitiatedEvent",
+  (intptr_t)asn1_type_Gsm_map_IDNNS_6,
+  (intptr_t)"iMEI",
+  (intptr_t)asn1_type_Gsm_map_IDNNS_7,
+  (intptr_t)"spare2",
+  (intptr_t)asn1_type_Gsm_map_IDNNS_8,
+  (intptr_t)"spare1",
+};
+
+const ASN1CType asn1_type_Ansi_41_IDNNS[] = {
+  (ASN1_CTYPE_BIT_STRING << ASN1_CTYPE_SHIFT) | 0x5800000 | 0x100001,
+  0xe,
+  0xe,
+  (intptr_t)"Ansi-41-IDNNS",
+};
+
+const ASN1CType asn1_type_RANAP_Message[] = {
+  (ASN1_CTYPE_OCTET_STRING << ASN1_CTYPE_SHIFT) | 0x5000000 | 0x4,
+  0x0,
+  (intptr_t)"RANAP-Message",
+};
+
+const ASN1CType asn1_type_RoutingParameter[] = {
+  (ASN1_CTYPE_BIT_STRING << ASN1_CTYPE_SHIFT) | 0x5800000 | 0x100000,
+  0xa,
+  0xa,
+  (intptr_t)"RoutingParameter",
+};
+
+const ASN1CType asn1_type_Cause[] = {
+  (ASN1_CTYPE_CHOICE << ASN1_CTYPE_SHIFT) | 0x6000000 | 0x0,
+  4,
+  0,
+  sizeof(Cause),
+  offsetof(Cause, choice),
+  offsetof(Cause, u),
+  (intptr_t)asn1_type_CauseRadioNetwork,
+  (intptr_t)"radioNetwork",
+  (intptr_t)asn1_type_CauseTransport,
+  (intptr_t)"transport",
+  (intptr_t)asn1_type_CauseProtocol,
+  (intptr_t)"protocol",
+  (intptr_t)asn1_type_CauseMisc,
+  (intptr_t)"misc",
+  (intptr_t)"Cause",
+};
+
+const ASN1CType asn1_type_CauseRadioNetwork[] = {
+  (ASN1_CTYPE_ENUMERATED << ASN1_CTYPE_SHIFT) | 0x6000000 | 0x100000,
+  4,
+  0,
+  (intptr_t)"normal",
+  (intptr_t)"connect-failed",
+  (intptr_t)"network-release",
+  (intptr_t)"unspecified",
+  (intptr_t)"CauseRadioNetwork",
+};
+
+const ASN1CType asn1_type_CauseTransport[] = {
+  (ASN1_CTYPE_ENUMERATED << ASN1_CTYPE_SHIFT) | 0x6000000 | 0x100001,
+  2,
+  0,
+  (intptr_t)"transport-resource-unavailable",
+  (intptr_t)"unspecified",
+  (intptr_t)"CauseTransport",
+};
+
+const ASN1CType asn1_type_CauseProtocol[] = {
+  (ASN1_CTYPE_ENUMERATED << ASN1_CTYPE_SHIFT) | 0x6000000 | 0x100002,
+  7,
+  0,
+  (intptr_t)"transfer-syntax-error",
+  (intptr_t)"abstract-syntax-error-reject",
+  (intptr_t)"abstract-syntax-error-ignore-and-notify",
+  (intptr_t)"message-not-compatible-with-receiver-state",
+  (intptr_t)"semantic-error",
+  (intptr_t)"unspecified",
+  (intptr_t)"abstract-syntax-error-falsely-constructed-message",
+  (intptr_t)"CauseProtocol",
+};
+
+const ASN1CType asn1_type_CauseMisc[] = {
+  (ASN1_CTYPE_ENUMERATED << ASN1_CTYPE_SHIFT) | 0x6000000 | 0x100003,
+  4,
+  0,
+  (intptr_t)"processing-overload",
+  (intptr_t)"hardware-failure",
+  (intptr_t)"o-and-m-intervention",
+  (intptr_t)"unspecified",
+  (intptr_t)"CauseMisc",
+};
+
+static const ASN1CType asn1_type__local_117[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100000,
+  (intptr_t)asn1_type_ProcedureCode,
+};
+
+static const ASN1CType asn1_type__local_118[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100002,
+  (intptr_t)asn1_type_Criticality,
+};
+
+const ASN1CType asn1_type_CriticalityDiagnostics[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x6000000 | 0x10,
+  5,
+  sizeof(CriticalityDiagnostics),
+
+  offsetof(CriticalityDiagnostics, procedureCode) | 0x8000000,
+  (intptr_t)asn1_type__local_117,
+  offsetof(CriticalityDiagnostics, procedureCode_option),
+  (intptr_t)"procedureCode",
+
+  offsetof(CriticalityDiagnostics, triggeringMessage) | 0x8000000,
+  (intptr_t)asn1_type_TriggeringMessage,
+  offsetof(CriticalityDiagnostics, triggeringMessage_option),
+  (intptr_t)"triggeringMessage",
+
+  offsetof(CriticalityDiagnostics, procedureCriticality) | 0x8000000,
+  (intptr_t)asn1_type__local_118,
+  offsetof(CriticalityDiagnostics, procedureCriticality_option),
+  (intptr_t)"procedureCriticality",
+
+  offsetof(CriticalityDiagnostics, iEsCriticalityDiagnostics) | 0x8000000,
+  (intptr_t)asn1_type_CriticalityDiagnostics_IE_List,
+  offsetof(CriticalityDiagnostics, iEsCriticalityDiagnostics_option),
+  (intptr_t)"iEsCriticalityDiagnostics",
+
+  offsetof(CriticalityDiagnostics, iE_Extensions) | 0x8000000,
+  (intptr_t)asn1_type_ProtocolExtensionContainer_1,
+  offsetof(CriticalityDiagnostics, iE_Extensions_option),
+  (intptr_t)"iE-Extensions",
+
+  (intptr_t)"CriticalityDiagnostics",
+};
+
+const ASN1CType asn1_type_CriticalityDiagnostics_IE_List[] = {
+  (ASN1_CTYPE_SEQUENCE_OF << ASN1_CTYPE_SHIFT) | 0x5800000 | 0x100003,
+  0x1,
+  0x100,
+  sizeof(CriticalityDiagnostics_IE_List_1),
+  (intptr_t)asn1_type_CriticalityDiagnostics_IE_List_1,
+  0,
+  (intptr_t)"CriticalityDiagnostics-IE-List",
+};
+
+static const ASN1CType asn1_type__local_119[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100000,
+  (intptr_t)asn1_type_Criticality,
+};
+
+static const ASN1CType asn1_type__local_120[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100001,
+  (intptr_t)asn1_type_ProtocolIE_ID,
+};
+
+const ASN1CType asn1_type_CriticalityDiagnostics_IE_List_1[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x2000000 | 0x10,
+  4,
+  sizeof(CriticalityDiagnostics_IE_List_1),
+
+  offsetof(CriticalityDiagnostics_IE_List_1, iECriticality) | 0x0,
+  (intptr_t)asn1_type__local_119,
+  0,
+  (intptr_t)"iECriticality",
+
+  offsetof(CriticalityDiagnostics_IE_List_1, iE_ID) | 0x0,
+  (intptr_t)asn1_type__local_120,
+  0,
+  (intptr_t)"iE-ID",
+
+  offsetof(CriticalityDiagnostics_IE_List_1, typeOfError) | 0x0,
+  (intptr_t)asn1_type_TypeOfError,
+  0,
+  (intptr_t)"typeOfError",
+
+  offsetof(CriticalityDiagnostics_IE_List_1, iE_Extensions) | 0x8000000,
+  (intptr_t)asn1_type_ProtocolExtensionContainer_2,
+  offsetof(CriticalityDiagnostics_IE_List_1, iE_Extensions_option),
+  (intptr_t)"iE-Extensions",
+
+};
+
+const ASN1CType asn1_type_TypeOfError[] = {
+  (ASN1_CTYPE_ENUMERATED << ASN1_CTYPE_SHIFT) | 0x6000000 | 0x100002,
+  2,
+  0,
+  (intptr_t)"not-understood",
+  (intptr_t)"missing",
+  (intptr_t)"TypeOfError",
+};
+
+const ASN1CType asn1_type_Connect[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x6000000 | 0x10,
+  2,
+  sizeof(Connect),
+
+  offsetof(Connect, protocolIEs) | 0x0,
+  (intptr_t)asn1_type_ProtocolIE_Container_1,
+  0,
+  (intptr_t)"protocolIEs",
+
+  offsetof(Connect, protocolExtensions) | 0x8000000,
+  (intptr_t)asn1_type_ProtocolExtensionContainer_3,
+  offsetof(Connect, protocolExtensions_option),
+  (intptr_t)"protocolExtensions",
+
+  (intptr_t)"Connect",
+};
+
+const ASN1CType asn1_type_DirectTransfer[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x6000000 | 0x10,
+  2,
+  sizeof(DirectTransfer),
+
+  offsetof(DirectTransfer, protocolIEs) | 0x0,
+  (intptr_t)asn1_type_ProtocolIE_Container_2,
+  0,
+  (intptr_t)"protocolIEs",
+
+  offsetof(DirectTransfer, protocolExtensions) | 0x8000000,
+  (intptr_t)asn1_type_ProtocolExtensionContainer_4,
+  offsetof(DirectTransfer, protocolExtensions_option),
+  (intptr_t)"protocolExtensions",
+
+  (intptr_t)"DirectTransfer",
+};
+
+const ASN1CType asn1_type_Disconnect[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x6000000 | 0x10,
+  2,
+  sizeof(Disconnect),
+
+  offsetof(Disconnect, protocolIEs) | 0x0,
+  (intptr_t)asn1_type_ProtocolIE_Container_3,
+  0,
+  (intptr_t)"protocolIEs",
+
+  offsetof(Disconnect, protocolExtensions) | 0x8000000,
+  (intptr_t)asn1_type_ProtocolExtensionContainer_5,
+  offsetof(Disconnect, protocolExtensions_option),
+  (intptr_t)"protocolExtensions",
+
+  (intptr_t)"Disconnect",
+};
+
+const ASN1CType asn1_type_ConnectionlessTransfer[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x6000000 | 0x10,
+  2,
+  sizeof(ConnectionlessTransfer),
+
+  offsetof(ConnectionlessTransfer, protocolIEs) | 0x0,
+  (intptr_t)asn1_type_ProtocolIE_Container_4,
+  0,
+  (intptr_t)"protocolIEs",
+
+  offsetof(ConnectionlessTransfer, protocolExtensions) | 0x8000000,
+  (intptr_t)asn1_type_ProtocolExtensionContainer_6,
+  offsetof(ConnectionlessTransfer, protocolExtensions_option),
+  (intptr_t)"protocolExtensions",
+
+  (intptr_t)"ConnectionlessTransfer",
+};
+
+const ASN1CType asn1_type_ErrorIndication[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x6000000 | 0x10,
+  2,
+  sizeof(ErrorIndication),
+
+  offsetof(ErrorIndication, protocolIEs) | 0x0,
+  (intptr_t)asn1_type_ProtocolIE_Container_5,
+  0,
+  (intptr_t)"protocolIEs",
+
+  offsetof(ErrorIndication, protocolExtensions) | 0x8000000,
+  (intptr_t)asn1_type_ProtocolExtensionContainer_7,
+  offsetof(ErrorIndication, protocolExtensions_option),
+  (intptr_t)"protocolExtensions",
+
+  (intptr_t)"ErrorIndication",
+};
+
+const ASN1CType asn1_type_PrivateMessage[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x6000000 | 0x10,
+  1,
+  sizeof(PrivateMessage),
+
+  offsetof(PrivateMessage, privateIEs) | 0x0,
+  (intptr_t)asn1_type_PrivateIE_Container_1,
+  0,
+  (intptr_t)"privateIEs",
+
+  (intptr_t)"PrivateMessage",
+};
+
+static const Criticality asn1_value__local_121 = 1;
+
+const ASN1CType asn1_type_RUA_ELEMENTARY_PROCEDURE[] = {
+  (ASN1_CTYPE_OBJECT_CLASS << ASN1_CTYPE_SHIFT) | 0x4000000 | 0x0,
+  5,
+
+  0x0,
+  0,
+  0,
+  (intptr_t)"&InitiatingMessage",
+
+  0x8,
+  0,
+  0,
+  (intptr_t)"&SuccessfulOutcome",
+
+  0x8,
+  0,
+  0,
+  (intptr_t)"&UnsuccessfulOutcome",
+
+  0x1,
+  (intptr_t)asn1_type_ProcedureCode,
+  0,
+  (intptr_t)"&procedureCode",
+
+  0x11,
+  (intptr_t)asn1_type_Criticality,
+  (intptr_t)&asn1_value__local_121,
+  (intptr_t)"&criticality",
+  (intptr_t)"RUA-ELEMENTARY-PROCEDURE",
+};
+
+const ASN1CType asn1_type_RUA_PDU[] = {
+  (ASN1_CTYPE_CHOICE << ASN1_CTYPE_SHIFT) | 0x6000000 | 0x0,
+  3,
+  0,
+  sizeof(RUA_PDU),
+  offsetof(RUA_PDU, choice),
+  offsetof(RUA_PDU, u),
+  (intptr_t)asn1_type_InitiatingMessage,
+  (intptr_t)"initiatingMessage",
+  (intptr_t)asn1_type_SuccessfulOutcome,
+  (intptr_t)"successfulOutcome",
+  (intptr_t)asn1_type_UnsuccessfulOutcome,
+  (intptr_t)"unsuccessfulOutcome",
+  (intptr_t)"RUA-PDU",
+};
+
+static const ASN1CType asn1_type__local_122[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100000,
+  (intptr_t)asn1_type_ProcedureCode,
+};
+
+static const ASN1CType asn1_type__local_123[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100001,
+  (intptr_t)asn1_type_Criticality,
+};
+
+static const ProcedureCode asn1_value__local_127 = 1;
+
+static const Criticality asn1_value__local_128 = 1;
+
+static const ProcedureCode asn1_value__local_129 = 2;
+
+static const Criticality asn1_value__local_130 = 1;
+
+static const ProcedureCode asn1_value__local_131 = 3;
+
+static const Criticality asn1_value__local_132 = 1;
+
+static const ProcedureCode asn1_value__local_133 = 4;
+
+static const Criticality asn1_value__local_134 = 1;
+
+static const ProcedureCode asn1_value__local_135 = 5;
+
+static const Criticality asn1_value__local_136 = 1;
+
+static const ProcedureCode asn1_value__local_137 = 6;
+
+static const Criticality asn1_value__local_138 = 1;
+
+static const RUA_ELEMENTARY_PROCEDURE asn1_value__local_126[] = {
+{
+  (intptr_t)asn1_type_Connect,
+  0,
+  0,
+  (intptr_t)&asn1_value__local_127,
+  (intptr_t)&asn1_value__local_128,
+},
+{
+  (intptr_t)asn1_type_DirectTransfer,
+  0,
+  0,
+  (intptr_t)&asn1_value__local_129,
+  (intptr_t)&asn1_value__local_130,
+},
+{
+  (intptr_t)asn1_type_Disconnect,
+  0,
+  0,
+  (intptr_t)&asn1_value__local_131,
+  (intptr_t)&asn1_value__local_132,
+},
+{
+  (intptr_t)asn1_type_ConnectionlessTransfer,
+  0,
+  0,
+  (intptr_t)&asn1_value__local_133,
+  (intptr_t)&asn1_value__local_134,
+},
+{
+  (intptr_t)asn1_type_ErrorIndication,
+  0,
+  0,
+  (intptr_t)&asn1_value__local_135,
+  (intptr_t)&asn1_value__local_136,
+},
+{
+  (intptr_t)asn1_type_PrivateMessage,
+  0,
+  0,
+  (intptr_t)&asn1_value__local_137,
+  (intptr_t)&asn1_value__local_138,
+},
+};
+
+static const ASN1CType asn1_constraint__local_125[] = {
+  ASN1_CCONSTRAINT_TABLE,
+  (intptr_t)asn1_type_RUA_ELEMENTARY_PROCEDURE,
+  0,
+  (intptr_t)asn1_value__local_126,
+  6,
+  1,
+  0,
+  0x80000000,
+  3,
+};
+
+static const ASN1CType asn1_type__local_124[] = {
+  (ASN1_CTYPE_ANY << ASN1_CTYPE_SHIFT) | 0x200000 | 0x100002,
+  (intptr_t)asn1_constraint__local_125,
+};
+
+const ASN1CType asn1_type_InitiatingMessage[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x4000000 | 0x100000,
+  3,
+  sizeof(InitiatingMessage),
+
+  offsetof(InitiatingMessage, procedureCode) | 0x0,
+  (intptr_t)asn1_type__local_122,
+  0,
+  (intptr_t)"procedureCode",
+
+  offsetof(InitiatingMessage, criticality) | 0x0,
+  (intptr_t)asn1_type__local_123,
+  0,
+  (intptr_t)"criticality",
+
+  offsetof(InitiatingMessage, value) | 0x0,
+  (intptr_t)asn1_type__local_124,
+  0,
+  (intptr_t)"value",
+
+  (intptr_t)"InitiatingMessage",
+};
+
+static const ASN1CType asn1_type__local_139[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100000,
+  (intptr_t)asn1_type_ProcedureCode,
+};
+
+static const ASN1CType asn1_type__local_140[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100001,
+  (intptr_t)asn1_type_Criticality,
+};
+
+static const ProcedureCode asn1_value__local_144 = 1;
+
+static const Criticality asn1_value__local_145 = 1;
+
+static const ProcedureCode asn1_value__local_146 = 2;
+
+static const Criticality asn1_value__local_147 = 1;
+
+static const ProcedureCode asn1_value__local_148 = 3;
+
+static const Criticality asn1_value__local_149 = 1;
+
+static const ProcedureCode asn1_value__local_150 = 4;
+
+static const Criticality asn1_value__local_151 = 1;
+
+static const ProcedureCode asn1_value__local_152 = 5;
+
+static const Criticality asn1_value__local_153 = 1;
+
+static const ProcedureCode asn1_value__local_154 = 6;
+
+static const Criticality asn1_value__local_155 = 1;
+
+static const RUA_ELEMENTARY_PROCEDURE asn1_value__local_143[] = {
+{
+  (intptr_t)asn1_type_Connect,
+  0,
+  0,
+  (intptr_t)&asn1_value__local_144,
+  (intptr_t)&asn1_value__local_145,
+},
+{
+  (intptr_t)asn1_type_DirectTransfer,
+  0,
+  0,
+  (intptr_t)&asn1_value__local_146,
+  (intptr_t)&asn1_value__local_147,
+},
+{
+  (intptr_t)asn1_type_Disconnect,
+  0,
+  0,
+  (intptr_t)&asn1_value__local_148,
+  (intptr_t)&asn1_value__local_149,
+},
+{
+  (intptr_t)asn1_type_ConnectionlessTransfer,
+  0,
+  0,
+  (intptr_t)&asn1_value__local_150,
+  (intptr_t)&asn1_value__local_151,
+},
+{
+  (intptr_t)asn1_type_ErrorIndication,
+  0,
+  0,
+  (intptr_t)&asn1_value__local_152,
+  (intptr_t)&asn1_value__local_153,
+},
+{
+  (intptr_t)asn1_type_PrivateMessage,
+  0,
+  0,
+  (intptr_t)&asn1_value__local_154,
+  (intptr_t)&asn1_value__local_155,
+},
+};
+
+static const ASN1CType asn1_constraint__local_142[] = {
+  ASN1_CCONSTRAINT_TABLE,
+  (intptr_t)asn1_type_RUA_ELEMENTARY_PROCEDURE,
+  1,
+  (intptr_t)asn1_value__local_143,
+  6,
+  1,
+  0,
+  0x80000000,
+  3,
+};
+
+static const ASN1CType asn1_type__local_141[] = {
+  (ASN1_CTYPE_ANY << ASN1_CTYPE_SHIFT) | 0x200000 | 0x100002,
+  (intptr_t)asn1_constraint__local_142,
+};
+
+const ASN1CType asn1_type_SuccessfulOutcome[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x4000000 | 0x100001,
+  3,
+  sizeof(SuccessfulOutcome),
+
+  offsetof(SuccessfulOutcome, procedureCode) | 0x0,
+  (intptr_t)asn1_type__local_139,
+  0,
+  (intptr_t)"procedureCode",
+
+  offsetof(SuccessfulOutcome, criticality) | 0x0,
+  (intptr_t)asn1_type__local_140,
+  0,
+  (intptr_t)"criticality",
+
+  offsetof(SuccessfulOutcome, value) | 0x0,
+  (intptr_t)asn1_type__local_141,
+  0,
+  (intptr_t)"value",
+
+  (intptr_t)"SuccessfulOutcome",
+};
+
+static const ASN1CType asn1_type__local_156[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100000,
+  (intptr_t)asn1_type_ProcedureCode,
+};
+
+static const ASN1CType asn1_type__local_157[] = {
+  (ASN1_CTYPE_TAGGED << ASN1_CTYPE_SHIFT) | 0x0 | 0x100001,
+  (intptr_t)asn1_type_Criticality,
+};
+
+static const ProcedureCode asn1_value__local_161 = 1;
+
+static const Criticality asn1_value__local_162 = 1;
+
+static const ProcedureCode asn1_value__local_163 = 2;
+
+static const Criticality asn1_value__local_164 = 1;
+
+static const ProcedureCode asn1_value__local_165 = 3;
+
+static const Criticality asn1_value__local_166 = 1;
+
+static const ProcedureCode asn1_value__local_167 = 4;
+
+static const Criticality asn1_value__local_168 = 1;
+
+static const ProcedureCode asn1_value__local_169 = 5;
+
+static const Criticality asn1_value__local_170 = 1;
+
+static const ProcedureCode asn1_value__local_171 = 6;
+
+static const Criticality asn1_value__local_172 = 1;
+
+static const RUA_ELEMENTARY_PROCEDURE asn1_value__local_160[] = {
+{
+  (intptr_t)asn1_type_Connect,
+  0,
+  0,
+  (intptr_t)&asn1_value__local_161,
+  (intptr_t)&asn1_value__local_162,
+},
+{
+  (intptr_t)asn1_type_DirectTransfer,
+  0,
+  0,
+  (intptr_t)&asn1_value__local_163,
+  (intptr_t)&asn1_value__local_164,
+},
+{
+  (intptr_t)asn1_type_Disconnect,
+  0,
+  0,
+  (intptr_t)&asn1_value__local_165,
+  (intptr_t)&asn1_value__local_166,
+},
+{
+  (intptr_t)asn1_type_ConnectionlessTransfer,
+  0,
+  0,
+  (intptr_t)&asn1_value__local_167,
+  (intptr_t)&asn1_value__local_168,
+},
+{
+  (intptr_t)asn1_type_ErrorIndication,
+  0,
+  0,
+  (intptr_t)&asn1_value__local_169,
+  (intptr_t)&asn1_value__local_170,
+},
+{
+  (intptr_t)asn1_type_PrivateMessage,
+  0,
+  0,
+  (intptr_t)&asn1_value__local_171,
+  (intptr_t)&asn1_value__local_172,
+},
+};
+
+static const ASN1CType asn1_constraint__local_159[] = {
+  ASN1_CCONSTRAINT_TABLE,
+  (intptr_t)asn1_type_RUA_ELEMENTARY_PROCEDURE,
+  2,
+  (intptr_t)asn1_value__local_160,
+  6,
+  1,
+  0,
+  0x80000000,
+  3,
+};
+
+static const ASN1CType asn1_type__local_158[] = {
+  (ASN1_CTYPE_ANY << ASN1_CTYPE_SHIFT) | 0x200000 | 0x100002,
+  (intptr_t)asn1_constraint__local_159,
+};
+
+const ASN1CType asn1_type_UnsuccessfulOutcome[] = {
+  (ASN1_CTYPE_SEQUENCE << ASN1_CTYPE_SHIFT) | 0x4000000 | 0x100002,
+  3,
+  sizeof(UnsuccessfulOutcome),
+
+  offsetof(UnsuccessfulOutcome, procedureCode) | 0x0,
+  (intptr_t)asn1_type__local_156,
+  0,
+  (intptr_t)"procedureCode",
+
+  offsetof(UnsuccessfulOutcome, criticality) | 0x0,
+  (intptr_t)asn1_type__local_157,
+  0,
+  (intptr_t)"criticality",
+
+  offsetof(UnsuccessfulOutcome, value) | 0x0,
+  (intptr_t)asn1_type__local_158,
+  0,
+  (intptr_t)"value",
+
+  (intptr_t)"UnsuccessfulOutcome",
+};
+
diff --git a/asn1/rua/ffasn1c/out.h b/asn1/rua/ffasn1c/out.h
new file mode 100644
index 0000000..7d102f1
--- /dev/null
+++ b/asn1/rua/ffasn1c/out.h
@@ -0,0 +1,683 @@
+/* Automatically generated file - do not edit */
+#ifndef _FFASN1_OUT_H
+#define _FFASN1_OUT_H
+
+#include "asn1defs.h"
+
+#ifdef  __cplusplus
+extern "C" {
+#endif
+
+typedef enum Criticality {
+  Criticality_reject,
+  Criticality_ignore,
+  Criticality_notify,
+} Criticality;
+
+extern const ASN1CType asn1_type_Criticality[];
+
+typedef enum Presence {
+  Presence_optional,
+  Presence_conditional,
+  Presence_mandatory,
+} Presence;
+
+extern const ASN1CType asn1_type_Presence[];
+
+typedef int ProcedureCode;
+
+extern const ASN1CType asn1_type_ProcedureCode[];
+
+typedef enum {
+  PrivateIE_ID_local,
+  PrivateIE_ID_global,
+} PrivateIE_ID_choice;
+
+typedef struct PrivateIE_ID {
+  PrivateIE_ID_choice choice;
+  union {
+    int local;
+    ASN1ObjectIdentifier global;
+  } u;
+} PrivateIE_ID;
+
+extern const ASN1CType asn1_type_PrivateIE_ID[];
+
+typedef int ProtocolIE_ID;
+
+extern const ASN1CType asn1_type_ProtocolIE_ID[];
+
+typedef enum TriggeringMessage {
+  TriggeringMessage_initiating_message,
+  TriggeringMessage_successful_outcome,
+  TriggeringMessage_unsuccessful_outcome,
+} TriggeringMessage;
+
+extern const ASN1CType asn1_type_TriggeringMessage[];
+
+typedef struct RUA_PRIVATE_IES { /* object class definition */
+  ASN1CType id;
+  ASN1CType criticality;
+  ASN1CType Value;
+  ASN1CType presence;
+} RUA_PRIVATE_IES;
+
+
+extern const ASN1CType asn1_type_RUA_PRIVATE_IES[];
+
+typedef struct RUA_PROTOCOL_IES { /* object class definition */
+  ASN1CType id;
+  ASN1CType criticality;
+  ASN1CType Value;
+  ASN1CType presence;
+} RUA_PROTOCOL_IES;
+
+
+extern const ASN1CType asn1_type_RUA_PROTOCOL_IES[];
+
+typedef struct RUA_PROTOCOL_EXTENSION { /* object class definition */
+  ASN1CType id;
+  ASN1CType criticality;
+  ASN1CType Extension;
+  ASN1CType presence;
+} RUA_PROTOCOL_EXTENSION;
+
+
+extern const ASN1CType asn1_type_RUA_PROTOCOL_EXTENSION[];
+
+typedef enum CN_DomainIndicator {
+  CN_DomainIndicator_cs_domain,
+  CN_DomainIndicator_ps_domain,
+} CN_DomainIndicator;
+
+extern const ASN1CType asn1_type_CN_DomainIndicator[];
+
+typedef enum CSGMembershipStatus {
+  CSGMembershipStatus_member,
+  CSGMembershipStatus_non_member,
+} CSGMembershipStatus;
+
+extern const ASN1CType asn1_type_CSGMembershipStatus[];
+
+typedef enum Establishment_Cause {
+  Establishment_Cause_emergency_call,
+  Establishment_Cause_normal_call,
+} Establishment_Cause;
+
+extern const ASN1CType asn1_type_Establishment_Cause[];
+
+typedef ASN1BitString Context_ID;
+
+extern const ASN1CType asn1_type_Context_ID[];
+
+typedef ASN1BitString RoutingParameter;
+
+extern const ASN1CType asn1_type_RoutingParameter[];
+
+typedef struct Gsm_map_IDNNS_1 {
+  RoutingParameter routingparameter;
+} Gsm_map_IDNNS_1;
+
+
+extern const ASN1CType asn1_type_Gsm_map_IDNNS_1[];
+
+typedef struct Gsm_map_IDNNS_2 {
+  RoutingParameter routingparameter;
+} Gsm_map_IDNNS_2;
+
+
+extern const ASN1CType asn1_type_Gsm_map_IDNNS_2[];
+
+typedef struct Gsm_map_IDNNS_3 {
+  RoutingParameter routingparameter;
+} Gsm_map_IDNNS_3;
+
+
+extern const ASN1CType asn1_type_Gsm_map_IDNNS_3[];
+
+typedef struct Gsm_map_IDNNS_4 {
+  RoutingParameter routingparameter;
+} Gsm_map_IDNNS_4;
+
+
+extern const ASN1CType asn1_type_Gsm_map_IDNNS_4[];
+
+typedef struct Gsm_map_IDNNS_5 {
+  RoutingParameter routingparameter;
+} Gsm_map_IDNNS_5;
+
+
+extern const ASN1CType asn1_type_Gsm_map_IDNNS_5[];
+
+typedef struct Gsm_map_IDNNS_6 {
+  RoutingParameter routingparameter;
+} Gsm_map_IDNNS_6;
+
+
+extern const ASN1CType asn1_type_Gsm_map_IDNNS_6[];
+
+typedef struct Gsm_map_IDNNS_7 {
+  RoutingParameter routingparameter;
+} Gsm_map_IDNNS_7;
+
+
+extern const ASN1CType asn1_type_Gsm_map_IDNNS_7[];
+
+typedef struct Gsm_map_IDNNS_8 {
+  RoutingParameter routingparameter;
+} Gsm_map_IDNNS_8;
+
+
+extern const ASN1CType asn1_type_Gsm_map_IDNNS_8[];
+
+typedef enum {
+  Gsm_map_IDNNS_9_localPTMSI,
+  Gsm_map_IDNNS_9_tMSIofsamePLMN,
+  Gsm_map_IDNNS_9_tMSIofdifferentPLMN,
+  Gsm_map_IDNNS_9_iMSIresponsetopaging,
+  Gsm_map_IDNNS_9_iMSIcauseUEinitiatedEvent,
+  Gsm_map_IDNNS_9_iMEI,
+  Gsm_map_IDNNS_9_spare2,
+  Gsm_map_IDNNS_9_spare1,
+} Gsm_map_IDNNS_9_choice;
+
+typedef struct Gsm_map_IDNNS_9 {
+  Gsm_map_IDNNS_9_choice choice;
+  union {
+    Gsm_map_IDNNS_1 localPTMSI;
+    Gsm_map_IDNNS_2 tMSIofsamePLMN;
+    Gsm_map_IDNNS_3 tMSIofdifferentPLMN;
+    Gsm_map_IDNNS_4 iMSIresponsetopaging;
+    Gsm_map_IDNNS_5 iMSIcauseUEinitiatedEvent;
+    Gsm_map_IDNNS_6 iMEI;
+    Gsm_map_IDNNS_7 spare2;
+    Gsm_map_IDNNS_8 spare1;
+  } u;
+} Gsm_map_IDNNS_9;
+
+extern const ASN1CType asn1_type_Gsm_map_IDNNS_9[];
+
+typedef struct Gsm_map_IDNNS {
+  Gsm_map_IDNNS_9 routingbasis;
+  BOOL dummy;
+} Gsm_map_IDNNS;
+
+
+extern const ASN1CType asn1_type_Gsm_map_IDNNS[];
+
+typedef ASN1BitString Ansi_41_IDNNS;
+
+extern const ASN1CType asn1_type_Ansi_41_IDNNS[];
+
+typedef enum {
+  IntraDomainNasNodeSelector_1_gsm_Map_IDNNS,
+  IntraDomainNasNodeSelector_1_ansi_41_IDNNS,
+} IntraDomainNasNodeSelector_1_choice;
+
+typedef struct IntraDomainNasNodeSelector_1 {
+  IntraDomainNasNodeSelector_1_choice choice;
+  union {
+    Gsm_map_IDNNS gsm_Map_IDNNS;
+    Ansi_41_IDNNS ansi_41_IDNNS;
+  } u;
+} IntraDomainNasNodeSelector_1;
+
+extern const ASN1CType asn1_type_IntraDomainNasNodeSelector_1[];
+
+typedef struct IntraDomainNasNodeSelector_2 {
+  IntraDomainNasNodeSelector_1 cn_Type;
+} IntraDomainNasNodeSelector_2;
+
+
+extern const ASN1CType asn1_type_IntraDomainNasNodeSelector_2[];
+
+typedef struct IntraDomainNasNodeSelector_3 {
+  ASN1BitString futurecoding;
+} IntraDomainNasNodeSelector_3;
+
+
+extern const ASN1CType asn1_type_IntraDomainNasNodeSelector_3[];
+
+typedef enum {
+  IntraDomainNasNodeSelector_4_release99,
+  IntraDomainNasNodeSelector_4_later,
+} IntraDomainNasNodeSelector_4_choice;
+
+typedef struct IntraDomainNasNodeSelector_4 {
+  IntraDomainNasNodeSelector_4_choice choice;
+  union {
+    IntraDomainNasNodeSelector_2 release99;
+    IntraDomainNasNodeSelector_3 later;
+  } u;
+} IntraDomainNasNodeSelector_4;
+
+extern const ASN1CType asn1_type_IntraDomainNasNodeSelector_4[];
+
+typedef struct IntraDomainNasNodeSelector {
+  IntraDomainNasNodeSelector_4 version;
+} IntraDomainNasNodeSelector;
+
+
+extern const ASN1CType asn1_type_IntraDomainNasNodeSelector[];
+
+typedef ASN1String RANAP_Message;
+
+extern const ASN1CType asn1_type_RANAP_Message[];
+
+typedef enum CauseRadioNetwork {
+  CauseRadioNetwork_normal,
+  CauseRadioNetwork_connect_failed,
+  CauseRadioNetwork_network_release,
+  CauseRadioNetwork_unspecified,
+} CauseRadioNetwork;
+
+extern const ASN1CType asn1_type_CauseRadioNetwork[];
+
+typedef enum CauseTransport {
+  CauseTransport_transport_resource_unavailable,
+  CauseTransport_unspecified,
+} CauseTransport;
+
+extern const ASN1CType asn1_type_CauseTransport[];
+
+typedef enum CauseProtocol {
+  CauseProtocol_transfer_syntax_error,
+  CauseProtocol_abstract_syntax_error_reject,
+  CauseProtocol_abstract_syntax_error_ignore_and_notify,
+  CauseProtocol_message_not_compatible_with_receiver_state,
+  CauseProtocol_semantic_error,
+  CauseProtocol_unspecified,
+  CauseProtocol_abstract_syntax_error_falsely_constructed_message,
+} CauseProtocol;
+
+extern const ASN1CType asn1_type_CauseProtocol[];
+
+typedef enum CauseMisc {
+  CauseMisc_processing_overload,
+  CauseMisc_hardware_failure,
+  CauseMisc_o_and_m_intervention,
+  CauseMisc_unspecified,
+} CauseMisc;
+
+extern const ASN1CType asn1_type_CauseMisc[];
+
+typedef enum {
+  Cause_radioNetwork,
+  Cause_transport,
+  Cause_protocol,
+  Cause_misc,
+} Cause_choice;
+
+typedef struct Cause {
+  Cause_choice choice;
+  union {
+    CauseRadioNetwork radioNetwork;
+    CauseTransport transport;
+    CauseProtocol protocol;
+    CauseMisc misc;
+  } u;
+} Cause;
+
+extern const ASN1CType asn1_type_Cause[];
+
+typedef enum TypeOfError {
+  TypeOfError_not_understood,
+  TypeOfError_missing,
+} TypeOfError;
+
+extern const ASN1CType asn1_type_TypeOfError[];
+
+typedef struct ProtocolExtensionField_2 {
+  ProtocolIE_ID id;
+  Criticality criticality;
+  ASN1OpenType extensionValue;
+} ProtocolExtensionField_2;
+
+
+extern const ASN1CType asn1_type_ProtocolExtensionField_2[];
+
+typedef struct ProtocolExtensionContainer_2 {
+  ProtocolExtensionField_2 *tab;
+  int count;
+} ProtocolExtensionContainer_2;
+
+extern const ASN1CType asn1_type_ProtocolExtensionContainer_2[];
+
+typedef struct CriticalityDiagnostics_IE_List_1 {
+  Criticality iECriticality;
+  ProtocolIE_ID iE_ID;
+  TypeOfError typeOfError;
+  BOOL iE_Extensions_option;
+  ProtocolExtensionContainer_2 iE_Extensions;
+} CriticalityDiagnostics_IE_List_1;
+
+
+extern const ASN1CType asn1_type_CriticalityDiagnostics_IE_List_1[];
+
+typedef struct CriticalityDiagnostics_IE_List {
+  CriticalityDiagnostics_IE_List_1 *tab;
+  int count;
+} CriticalityDiagnostics_IE_List;
+
+extern const ASN1CType asn1_type_CriticalityDiagnostics_IE_List[];
+
+typedef struct ProtocolExtensionField_1 {
+  ProtocolIE_ID id;
+  Criticality criticality;
+  ASN1OpenType extensionValue;
+} ProtocolExtensionField_1;
+
+
+extern const ASN1CType asn1_type_ProtocolExtensionField_1[];
+
+typedef struct ProtocolExtensionContainer_1 {
+  ProtocolExtensionField_1 *tab;
+  int count;
+} ProtocolExtensionContainer_1;
+
+extern const ASN1CType asn1_type_ProtocolExtensionContainer_1[];
+
+typedef struct CriticalityDiagnostics {
+  BOOL procedureCode_option;
+  ProcedureCode procedureCode;
+  BOOL triggeringMessage_option;
+  TriggeringMessage triggeringMessage;
+  BOOL procedureCriticality_option;
+  Criticality procedureCriticality;
+  BOOL iEsCriticalityDiagnostics_option;
+  CriticalityDiagnostics_IE_List iEsCriticalityDiagnostics;
+  BOOL iE_Extensions_option;
+  ProtocolExtensionContainer_1 iE_Extensions;
+} CriticalityDiagnostics;
+
+
+extern const ASN1CType asn1_type_CriticalityDiagnostics[];
+
+typedef struct ProtocolIE_Field_1 {
+  ProtocolIE_ID id;
+  Criticality criticality;
+  ASN1OpenType value;
+} ProtocolIE_Field_1;
+
+
+extern const ASN1CType asn1_type_ProtocolIE_Field_1[];
+
+typedef struct ProtocolIE_Container_1 {
+  ProtocolIE_Field_1 *tab;
+  int count;
+} ProtocolIE_Container_1;
+
+extern const ASN1CType asn1_type_ProtocolIE_Container_1[];
+
+typedef struct ProtocolExtensionField_3 {
+  ProtocolIE_ID id;
+  Criticality criticality;
+  ASN1OpenType extensionValue;
+} ProtocolExtensionField_3;
+
+
+extern const ASN1CType asn1_type_ProtocolExtensionField_3[];
+
+typedef struct ProtocolExtensionContainer_3 {
+  ProtocolExtensionField_3 *tab;
+  int count;
+} ProtocolExtensionContainer_3;
+
+extern const ASN1CType asn1_type_ProtocolExtensionContainer_3[];
+
+typedef struct Connect {
+  ProtocolIE_Container_1 protocolIEs;
+  BOOL protocolExtensions_option;
+  ProtocolExtensionContainer_3 protocolExtensions;
+} Connect;
+
+
+extern const ASN1CType asn1_type_Connect[];
+
+typedef struct ProtocolIE_Field_2 {
+  ProtocolIE_ID id;
+  Criticality criticality;
+  ASN1OpenType value;
+} ProtocolIE_Field_2;
+
+
+extern const ASN1CType asn1_type_ProtocolIE_Field_2[];
+
+typedef struct ProtocolIE_Container_2 {
+  ProtocolIE_Field_2 *tab;
+  int count;
+} ProtocolIE_Container_2;
+
+extern const ASN1CType asn1_type_ProtocolIE_Container_2[];
+
+typedef struct ProtocolExtensionField_4 {
+  ProtocolIE_ID id;
+  Criticality criticality;
+  ASN1OpenType extensionValue;
+} ProtocolExtensionField_4;
+
+
+extern const ASN1CType asn1_type_ProtocolExtensionField_4[];
+
+typedef struct ProtocolExtensionContainer_4 {
+  ProtocolExtensionField_4 *tab;
+  int count;
+} ProtocolExtensionContainer_4;
+
+extern const ASN1CType asn1_type_ProtocolExtensionContainer_4[];
+
+typedef struct DirectTransfer {
+  ProtocolIE_Container_2 protocolIEs;
+  BOOL protocolExtensions_option;
+  ProtocolExtensionContainer_4 protocolExtensions;
+} DirectTransfer;
+
+
+extern const ASN1CType asn1_type_DirectTransfer[];
+
+typedef struct ProtocolIE_Field_3 {
+  ProtocolIE_ID id;
+  Criticality criticality;
+  ASN1OpenType value;
+} ProtocolIE_Field_3;
+
+
+extern const ASN1CType asn1_type_ProtocolIE_Field_3[];
+
+typedef struct ProtocolIE_Container_3 {
+  ProtocolIE_Field_3 *tab;
+  int count;
+} ProtocolIE_Container_3;
+
+extern const ASN1CType asn1_type_ProtocolIE_Container_3[];
+
+typedef struct ProtocolExtensionField_5 {
+  ProtocolIE_ID id;
+  Criticality criticality;
+  ASN1OpenType extensionValue;
+} ProtocolExtensionField_5;
+
+
+extern const ASN1CType asn1_type_ProtocolExtensionField_5[];
+
+typedef struct ProtocolExtensionContainer_5 {
+  ProtocolExtensionField_5 *tab;
+  int count;
+} ProtocolExtensionContainer_5;
+
+extern const ASN1CType asn1_type_ProtocolExtensionContainer_5[];
+
+typedef struct Disconnect {
+  ProtocolIE_Container_3 protocolIEs;
+  BOOL protocolExtensions_option;
+  ProtocolExtensionContainer_5 protocolExtensions;
+} Disconnect;
+
+
+extern const ASN1CType asn1_type_Disconnect[];
+
+typedef struct ProtocolIE_Field_4 {
+  ProtocolIE_ID id;
+  Criticality criticality;
+  ASN1OpenType value;
+} ProtocolIE_Field_4;
+
+
+extern const ASN1CType asn1_type_ProtocolIE_Field_4[];
+
+typedef struct ProtocolIE_Container_4 {
+  ProtocolIE_Field_4 *tab;
+  int count;
+} ProtocolIE_Container_4;
+
+extern const ASN1CType asn1_type_ProtocolIE_Container_4[];
+
+typedef struct ProtocolExtensionField_6 {
+  ProtocolIE_ID id;
+  Criticality criticality;
+  ASN1OpenType extensionValue;
+} ProtocolExtensionField_6;
+
+
+extern const ASN1CType asn1_type_ProtocolExtensionField_6[];
+
+typedef struct ProtocolExtensionContainer_6 {
+  ProtocolExtensionField_6 *tab;
+  int count;
+} ProtocolExtensionContainer_6;
+
+extern const ASN1CType asn1_type_ProtocolExtensionContainer_6[];
+
+typedef struct ConnectionlessTransfer {
+  ProtocolIE_Container_4 protocolIEs;
+  BOOL protocolExtensions_option;
+  ProtocolExtensionContainer_6 protocolExtensions;
+} ConnectionlessTransfer;
+
+
+extern const ASN1CType asn1_type_ConnectionlessTransfer[];
+
+typedef struct ProtocolIE_Field_5 {
+  ProtocolIE_ID id;
+  Criticality criticality;
+  ASN1OpenType value;
+} ProtocolIE_Field_5;
+
+
+extern const ASN1CType asn1_type_ProtocolIE_Field_5[];
+
+typedef struct ProtocolIE_Container_5 {
+  ProtocolIE_Field_5 *tab;
+  int count;
+} ProtocolIE_Container_5;
+
+extern const ASN1CType asn1_type_ProtocolIE_Container_5[];
+
+typedef struct ProtocolExtensionField_7 {
+  ProtocolIE_ID id;
+  Criticality criticality;
+  ASN1OpenType extensionValue;
+} ProtocolExtensionField_7;
+
+
+extern const ASN1CType asn1_type_ProtocolExtensionField_7[];
+
+typedef struct ProtocolExtensionContainer_7 {
+  ProtocolExtensionField_7 *tab;
+  int count;
+} ProtocolExtensionContainer_7;
+
+extern const ASN1CType asn1_type_ProtocolExtensionContainer_7[];
+
+typedef struct ErrorIndication {
+  ProtocolIE_Container_5 protocolIEs;
+  BOOL protocolExtensions_option;
+  ProtocolExtensionContainer_7 protocolExtensions;
+} ErrorIndication;
+
+
+extern const ASN1CType asn1_type_ErrorIndication[];
+
+typedef struct PrivateIE_Field_1 {
+  PrivateIE_ID id;
+  Criticality criticality;
+  ASN1OpenType value;
+} PrivateIE_Field_1;
+
+
+extern const ASN1CType asn1_type_PrivateIE_Field_1[];
+
+typedef struct PrivateIE_Container_1 {
+  PrivateIE_Field_1 *tab;
+  int count;
+} PrivateIE_Container_1;
+
+extern const ASN1CType asn1_type_PrivateIE_Container_1[];
+
+typedef struct PrivateMessage {
+  PrivateIE_Container_1 privateIEs;
+} PrivateMessage;
+
+
+extern const ASN1CType asn1_type_PrivateMessage[];
+
+typedef struct RUA_ELEMENTARY_PROCEDURE { /* object class definition */
+  ASN1CType InitiatingMessage;
+  ASN1CType SuccessfulOutcome;
+  ASN1CType UnsuccessfulOutcome;
+  ASN1CType procedureCode;
+  ASN1CType criticality;
+} RUA_ELEMENTARY_PROCEDURE;
+
+
+extern const ASN1CType asn1_type_RUA_ELEMENTARY_PROCEDURE[];
+
+typedef struct InitiatingMessage {
+  ProcedureCode procedureCode;
+  Criticality criticality;
+  ASN1OpenType value;
+} InitiatingMessage;
+
+
+extern const ASN1CType asn1_type_InitiatingMessage[];
+
+typedef struct SuccessfulOutcome {
+  ProcedureCode procedureCode;
+  Criticality criticality;
+  ASN1OpenType value;
+} SuccessfulOutcome;
+
+
+extern const ASN1CType asn1_type_SuccessfulOutcome[];
+
+typedef struct UnsuccessfulOutcome {
+  ProcedureCode procedureCode;
+  Criticality criticality;
+  ASN1OpenType value;
+} UnsuccessfulOutcome;
+
+
+extern const ASN1CType asn1_type_UnsuccessfulOutcome[];
+
+typedef enum {
+  RUA_PDU_initiatingMessage,
+  RUA_PDU_successfulOutcome,
+  RUA_PDU_unsuccessfulOutcome,
+} RUA_PDU_choice;
+
+typedef struct RUA_PDU {
+  RUA_PDU_choice choice;
+  union {
+    InitiatingMessage initiatingMessage;
+    SuccessfulOutcome successfulOutcome;
+    UnsuccessfulOutcome unsuccessfulOutcome;
+  } u;
+} RUA_PDU;
+
+extern const ASN1CType asn1_type_RUA_PDU[];
+
+#ifdef  __cplusplus
+}
+#endif
+
+#endif /* _FFASN1_OUT_H */