X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=asn1c_defs%2FE2N_ProtocolIE-Field.c;fp=asn1c_defs%2FE2N_ProtocolIE-Field.c;h=d448afb9994d0889abd2c97863b0d425282e4ae8;hb=dc68642f5676cdd49f3ef92f983b319e21f16afa;hp=0000000000000000000000000000000000000000;hpb=0054ece5d9d4bcb28ecda2f0f36584f6a64fc869;p=ric-app%2Fadmin.git diff --git a/asn1c_defs/E2N_ProtocolIE-Field.c b/asn1c_defs/E2N_ProtocolIE-Field.c new file mode 100644 index 0000000..d448afb --- /dev/null +++ b/asn1c_defs/E2N_ProtocolIE-Field.c @@ -0,0 +1,5538 @@ +/* + * Generated by asn1c-0.9.29 n1 (http://lionet.info/asn1c) + * From ASN.1 module "X2AP-Containers" + * found in "../../asn_defs/asn1/X2AP-minimized.asn" + * `asn1c -fcompound-names -fno-include-deps -findirect-choice -gen-PER -no-gen-OER` + */ + +#include "E2N_ProtocolIE-Field.h" + +static const long asn_VAL_4_E2N_id_RICaction_ToBeSetup_Item = 60011; +static const long asn_VAL_4_E2N_ignore = 1; +static const long asn_VAL_4_E2N_mandatory = 2; +static const asn_ioc_cell_t asn_IOS_E2N_RICaction_ToBeSetup_ItemIEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_4_E2N_id_RICaction_ToBeSetup_Item }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_4_E2N_ignore }, + { "&Value", aioc__type, &asn_DEF_E2N_RICaction_ToBeSetup_Item }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_4_E2N_mandatory } +}; +static const asn_ioc_set_t asn_IOS_E2N_RICaction_ToBeSetup_ItemIEs_1[] = { + { 1, 4, asn_IOS_E2N_RICaction_ToBeSetup_ItemIEs_1_rows } +}; +static const long asn_VAL_9_E2N_id_RICaction_Admitted_Item = 60013; +static const long asn_VAL_9_E2N_ignore = 1; +static const long asn_VAL_9_E2N_mandatory = 2; +static const asn_ioc_cell_t asn_IOS_E2N_RICaction_Admitted_ItemIEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_9_E2N_id_RICaction_Admitted_Item }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_9_E2N_ignore }, + { "&Value", aioc__type, &asn_DEF_E2N_RICaction_Admitted_Item }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_9_E2N_mandatory } +}; +static const asn_ioc_set_t asn_IOS_E2N_RICaction_Admitted_ItemIEs_1[] = { + { 1, 4, asn_IOS_E2N_RICaction_Admitted_ItemIEs_1_rows } +}; +static const long asn_VAL_10_E2N_id_RICaction_NotAdmitted_Item = 60015; +static const long asn_VAL_10_E2N_ignore = 1; +static const long asn_VAL_10_E2N_mandatory = 2; +static const asn_ioc_cell_t asn_IOS_E2N_RICaction_NotAdmitted_ItemIEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_10_E2N_id_RICaction_NotAdmitted_Item }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_10_E2N_ignore }, + { "&Value", aioc__type, &asn_DEF_E2N_RICaction_NotAdmitted_Item }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_10_E2N_mandatory } +}; +static const asn_ioc_set_t asn_IOS_E2N_RICaction_NotAdmitted_ItemIEs_1[] = { + { 1, 4, asn_IOS_E2N_RICaction_NotAdmitted_ItemIEs_1_rows } +}; +static const long asn_VAL_48_E2N_id_RANfunction_Item = 60001; +static const long asn_VAL_48_E2N_ignore = 1; +static const long asn_VAL_48_E2N_mandatory = 2; +static const asn_ioc_cell_t asn_IOS_E2N_RANfunction_ItemIEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_48_E2N_id_RANfunction_Item }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_48_E2N_ignore }, + { "&Value", aioc__type, &asn_DEF_E2N_RANfunction_Item }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_48_E2N_mandatory } +}; +static const asn_ioc_set_t asn_IOS_E2N_RANfunction_ItemIEs_1[] = { + { 1, 4, asn_IOS_E2N_RANfunction_ItemIEs_1_rows } +}; +static const long asn_VAL_49_E2N_id_RANfunctionID_Item = 60004; +static const long asn_VAL_49_E2N_ignore = 1; +static const long asn_VAL_49_E2N_mandatory = 2; +static const asn_ioc_cell_t asn_IOS_E2N_RANfunctionID_ItemIEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_49_E2N_id_RANfunctionID_Item }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_49_E2N_ignore }, + { "&Value", aioc__type, &asn_DEF_E2N_RANfunctionID_Item }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_49_E2N_mandatory } +}; +static const asn_ioc_set_t asn_IOS_E2N_RANfunctionID_ItemIEs_1[] = { + { 1, 4, asn_IOS_E2N_RANfunctionID_ItemIEs_1_rows } +}; +static const long asn_VAL_52_E2N_id_RANfunctionIEcause_Item = 60005; +static const long asn_VAL_52_E2N_ignore = 1; +static const long asn_VAL_52_E2N_mandatory = 2; +static const asn_ioc_cell_t asn_IOS_E2N_RANfunctionIDcause_ItemIEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_52_E2N_id_RANfunctionIEcause_Item }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_52_E2N_ignore }, + { "&Value", aioc__type, &asn_DEF_E2N_RANfunctionIDcause_Item }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_52_E2N_mandatory } +}; +static const asn_ioc_set_t asn_IOS_E2N_RANfunctionIDcause_ItemIEs_1[] = { + { 1, 4, asn_IOS_E2N_RANfunctionIDcause_ItemIEs_1_rows } +}; +static const long asn_VAL_1_E2N_id_RICrequestID = 60030; +static const long asn_VAL_1_E2N_reject = 0; +static const long asn_VAL_1_E2N_mandatory = 2; +static const long asn_VAL_2_E2N_id_RANfunctionID = 60003; +static const long asn_VAL_2_E2N_reject = 0; +static const long asn_VAL_2_E2N_mandatory = 2; +static const long asn_VAL_3_E2N_id_RICsubscription = 60033; +static const long asn_VAL_3_E2N_reject = 0; +static const long asn_VAL_3_E2N_mandatory = 2; +static const asn_ioc_cell_t asn_IOS_E2N_RICsubscriptionRequest_IEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_1_E2N_id_RICrequestID }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_1_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RICrequestID }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_1_E2N_mandatory }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_2_E2N_id_RANfunctionID }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_2_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RANfunctionID }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_2_E2N_mandatory }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_3_E2N_id_RICsubscription }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_3_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RICsubscription }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_3_E2N_mandatory } +}; +static const asn_ioc_set_t asn_IOS_E2N_RICsubscriptionRequest_IEs_1[] = { + { 3, 4, asn_IOS_E2N_RICsubscriptionRequest_IEs_1_rows } +}; +static const long asn_VAL_5_E2N_id_RICrequestID = 60030; +static const long asn_VAL_5_E2N_reject = 0; +static const long asn_VAL_5_E2N_mandatory = 2; +static const long asn_VAL_6_E2N_id_RANfunctionID = 60003; +static const long asn_VAL_6_E2N_reject = 0; +static const long asn_VAL_6_E2N_mandatory = 2; +static const long asn_VAL_7_E2N_id_RICactions_Admitted = 60012; +static const long asn_VAL_7_E2N_reject = 0; +static const long asn_VAL_7_E2N_mandatory = 2; +static const long asn_VAL_8_E2N_id_RICactions_NotAdmitted = 60014; +static const long asn_VAL_8_E2N_reject = 0; +static const long asn_VAL_8_E2N_optional = 0; +static const asn_ioc_cell_t asn_IOS_E2N_RICsubscriptionResponse_IEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_5_E2N_id_RICrequestID }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_5_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RICrequestID }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_5_E2N_mandatory }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_6_E2N_id_RANfunctionID }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_6_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RANfunctionID }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_6_E2N_mandatory }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_7_E2N_id_RICactions_Admitted }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_7_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RICaction_Admitted_List }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_7_E2N_mandatory }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_8_E2N_id_RICactions_NotAdmitted }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_8_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RICaction_NotAdmitted_List }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_8_E2N_optional } +}; +static const asn_ioc_set_t asn_IOS_E2N_RICsubscriptionResponse_IEs_1[] = { + { 4, 4, asn_IOS_E2N_RICsubscriptionResponse_IEs_1_rows } +}; +static const long asn_VAL_11_E2N_id_RICrequestID = 60030; +static const long asn_VAL_11_E2N_reject = 0; +static const long asn_VAL_11_E2N_mandatory = 2; +static const long asn_VAL_12_E2N_id_RANfunctionID = 60003; +static const long asn_VAL_12_E2N_reject = 0; +static const long asn_VAL_12_E2N_mandatory = 2; +static const long asn_VAL_13_E2N_id_RICactions_NotAdmitted = 60014; +static const long asn_VAL_13_E2N_reject = 0; +static const long asn_VAL_13_E2N_mandatory = 2; +static const long asn_VAL_14_E2N_id_CriticalityDiagnostics = 17; +static const long asn_VAL_14_E2N_ignore = 1; +static const long asn_VAL_14_E2N_optional = 0; +static const asn_ioc_cell_t asn_IOS_E2N_RICsubscriptionFailure_IEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_11_E2N_id_RICrequestID }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_11_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RICrequestID }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_11_E2N_mandatory }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_12_E2N_id_RANfunctionID }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_12_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RANfunctionID }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_12_E2N_mandatory }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_13_E2N_id_RICactions_NotAdmitted }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_13_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RICaction_NotAdmitted_List }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_13_E2N_mandatory }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_14_E2N_id_CriticalityDiagnostics }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_14_E2N_ignore }, + { "&Value", aioc__type, &asn_DEF_E2N_CriticalityDiagnostics }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_14_E2N_optional } +}; +static const asn_ioc_set_t asn_IOS_E2N_RICsubscriptionFailure_IEs_1[] = { + { 4, 4, asn_IOS_E2N_RICsubscriptionFailure_IEs_1_rows } +}; +static const long asn_VAL_15_E2N_id_RICrequestID = 60030; +static const long asn_VAL_15_E2N_reject = 0; +static const long asn_VAL_15_E2N_mandatory = 2; +static const long asn_VAL_16_E2N_id_RANfunctionID = 60003; +static const long asn_VAL_16_E2N_reject = 0; +static const long asn_VAL_16_E2N_mandatory = 2; +static const asn_ioc_cell_t asn_IOS_E2N_RICsubscriptionDeleteRequest_IEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_15_E2N_id_RICrequestID }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_15_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RICrequestID }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_15_E2N_mandatory }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_16_E2N_id_RANfunctionID }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_16_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RANfunctionID }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_16_E2N_mandatory } +}; +static const asn_ioc_set_t asn_IOS_E2N_RICsubscriptionDeleteRequest_IEs_1[] = { + { 2, 4, asn_IOS_E2N_RICsubscriptionDeleteRequest_IEs_1_rows } +}; +static const long asn_VAL_17_E2N_id_RICrequestID = 60030; +static const long asn_VAL_17_E2N_reject = 0; +static const long asn_VAL_17_E2N_mandatory = 2; +static const long asn_VAL_18_E2N_id_RANfunctionID = 60003; +static const long asn_VAL_18_E2N_reject = 0; +static const long asn_VAL_18_E2N_mandatory = 2; +static const asn_ioc_cell_t asn_IOS_E2N_RICsubscriptionDeleteResponse_IEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_17_E2N_id_RICrequestID }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_17_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RICrequestID }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_17_E2N_mandatory }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_18_E2N_id_RANfunctionID }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_18_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RANfunctionID }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_18_E2N_mandatory } +}; +static const asn_ioc_set_t asn_IOS_E2N_RICsubscriptionDeleteResponse_IEs_1[] = { + { 2, 4, asn_IOS_E2N_RICsubscriptionDeleteResponse_IEs_1_rows } +}; +static const long asn_VAL_19_E2N_id_RICrequestID = 60030; +static const long asn_VAL_19_E2N_reject = 0; +static const long asn_VAL_19_E2N_mandatory = 2; +static const long asn_VAL_20_E2N_id_RANfunctionID = 60003; +static const long asn_VAL_20_E2N_reject = 0; +static const long asn_VAL_20_E2N_mandatory = 2; +static const long asn_VAL_21_E2N_id_RICcause = 60020; +static const long asn_VAL_21_E2N_ignore = 1; +static const long asn_VAL_21_E2N_mandatory = 2; +static const long asn_VAL_22_E2N_id_CriticalityDiagnostics = 17; +static const long asn_VAL_22_E2N_ignore = 1; +static const long asn_VAL_22_E2N_optional = 0; +static const asn_ioc_cell_t asn_IOS_E2N_RICsubscriptionDeleteFailure_IEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_19_E2N_id_RICrequestID }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_19_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RICrequestID }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_19_E2N_mandatory }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_20_E2N_id_RANfunctionID }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_20_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RANfunctionID }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_20_E2N_mandatory }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_21_E2N_id_RICcause }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_21_E2N_ignore }, + { "&Value", aioc__type, &asn_DEF_E2N_RICcause }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_21_E2N_mandatory }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_22_E2N_id_CriticalityDiagnostics }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_22_E2N_ignore }, + { "&Value", aioc__type, &asn_DEF_E2N_CriticalityDiagnostics }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_22_E2N_optional } +}; +static const asn_ioc_set_t asn_IOS_E2N_RICsubscriptionDeleteFailure_IEs_1[] = { + { 4, 4, asn_IOS_E2N_RICsubscriptionDeleteFailure_IEs_1_rows } +}; +static const long asn_VAL_23_E2N_id_RICrequestID = 60030; +static const long asn_VAL_23_E2N_reject = 0; +static const long asn_VAL_23_E2N_mandatory = 2; +static const long asn_VAL_24_E2N_id_RANfunctionID = 60003; +static const long asn_VAL_24_E2N_reject = 0; +static const long asn_VAL_24_E2N_mandatory = 2; +static const long asn_VAL_25_E2N_id_RICactionID = 60017; +static const long asn_VAL_25_E2N_reject = 0; +static const long asn_VAL_25_E2N_mandatory = 2; +static const long asn_VAL_26_E2N_id_RICindicationSN = 60028; +static const long asn_VAL_26_E2N_reject = 0; +static const long asn_VAL_26_E2N_mandatory = 2; +static const long asn_VAL_27_E2N_id_RICindicationType = 60029; +static const long asn_VAL_27_E2N_reject = 0; +static const long asn_VAL_27_E2N_mandatory = 2; +static const long asn_VAL_28_E2N_id_RICindicationHeader = 60026; +static const long asn_VAL_28_E2N_reject = 0; +static const long asn_VAL_28_E2N_mandatory = 2; +static const long asn_VAL_29_E2N_id_RICindicationMessage = 60027; +static const long asn_VAL_29_E2N_reject = 0; +static const long asn_VAL_29_E2N_mandatory = 2; +static const long asn_VAL_30_E2N_id_RICcallProcessID = 60019; +static const long asn_VAL_30_E2N_reject = 0; +static const long asn_VAL_30_E2N_optional = 0; +static const asn_ioc_cell_t asn_IOS_E2N_RICindication_IEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_23_E2N_id_RICrequestID }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_23_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RICrequestID }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_23_E2N_mandatory }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_24_E2N_id_RANfunctionID }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_24_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RANfunctionID }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_24_E2N_mandatory }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_25_E2N_id_RICactionID }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_25_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RICactionID }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_25_E2N_mandatory }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_26_E2N_id_RICindicationSN }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_26_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RICindicationSN }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_26_E2N_mandatory }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_27_E2N_id_RICindicationType }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_27_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RICindicationType }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_27_E2N_mandatory }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_28_E2N_id_RICindicationHeader }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_28_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RICindicationHeader }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_28_E2N_mandatory }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_29_E2N_id_RICindicationMessage }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_29_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RICindicationMessage }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_29_E2N_mandatory }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_30_E2N_id_RICcallProcessID }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_30_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RICcallProcessID }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_30_E2N_optional } +}; +static const asn_ioc_set_t asn_IOS_E2N_RICindication_IEs_1[] = { + { 8, 4, asn_IOS_E2N_RICindication_IEs_1_rows } +}; +static const long asn_VAL_31_E2N_id_RICrequestID = 60030; +static const long asn_VAL_31_E2N_reject = 0; +static const long asn_VAL_31_E2N_mandatory = 2; +static const long asn_VAL_32_E2N_id_RANfunctionID = 60003; +static const long asn_VAL_32_E2N_reject = 0; +static const long asn_VAL_32_E2N_mandatory = 2; +static const long asn_VAL_33_E2N_id_RICcallProcessID = 60019; +static const long asn_VAL_33_E2N_reject = 0; +static const long asn_VAL_33_E2N_optional = 0; +static const long asn_VAL_34_E2N_id_RICcontrolHeader = 60022; +static const long asn_VAL_34_E2N_reject = 0; +static const long asn_VAL_34_E2N_mandatory = 2; +static const long asn_VAL_35_E2N_id_RICcontrolMessage = 60023; +static const long asn_VAL_35_E2N_reject = 0; +static const long asn_VAL_35_E2N_mandatory = 2; +static const long asn_VAL_36_E2N_id_RICcontrolAckRequest = 60021; +static const long asn_VAL_36_E2N_reject = 0; +static const long asn_VAL_36_E2N_optional = 0; +static const asn_ioc_cell_t asn_IOS_E2N_RICcontrolRequest_IEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_31_E2N_id_RICrequestID }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_31_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RICrequestID }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_31_E2N_mandatory }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_32_E2N_id_RANfunctionID }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_32_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RANfunctionID }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_32_E2N_mandatory }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_33_E2N_id_RICcallProcessID }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_33_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RICcallProcessID }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_33_E2N_optional }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_34_E2N_id_RICcontrolHeader }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_34_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RICcontrolHeader }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_34_E2N_mandatory }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_35_E2N_id_RICcontrolMessage }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_35_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RICcontrolMessage }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_35_E2N_mandatory }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_36_E2N_id_RICcontrolAckRequest }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_36_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RICcontrolAckRequest }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_36_E2N_optional } +}; +static const asn_ioc_set_t asn_IOS_E2N_RICcontrolRequest_IEs_1[] = { + { 6, 4, asn_IOS_E2N_RICcontrolRequest_IEs_1_rows } +}; +static const long asn_VAL_37_E2N_id_RICrequestID = 60030; +static const long asn_VAL_37_E2N_reject = 0; +static const long asn_VAL_37_E2N_mandatory = 2; +static const long asn_VAL_38_E2N_id_RANfunctionID = 60003; +static const long asn_VAL_38_E2N_reject = 0; +static const long asn_VAL_38_E2N_mandatory = 2; +static const long asn_VAL_39_E2N_id_RICcallProcessID = 60019; +static const long asn_VAL_39_E2N_reject = 0; +static const long asn_VAL_39_E2N_optional = 0; +static const long asn_VAL_40_E2N_id_RICcontrolStatus = 60024; +static const long asn_VAL_40_E2N_reject = 0; +static const long asn_VAL_40_E2N_mandatory = 2; +static const asn_ioc_cell_t asn_IOS_E2N_RICcontrolAcknowledge_IEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_37_E2N_id_RICrequestID }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_37_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RICrequestID }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_37_E2N_mandatory }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_38_E2N_id_RANfunctionID }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_38_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RANfunctionID }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_38_E2N_mandatory }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_39_E2N_id_RICcallProcessID }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_39_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RICcallProcessID }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_39_E2N_optional }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_40_E2N_id_RICcontrolStatus }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_40_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RICcontrolStatus }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_40_E2N_mandatory } +}; +static const asn_ioc_set_t asn_IOS_E2N_RICcontrolAcknowledge_IEs_1[] = { + { 4, 4, asn_IOS_E2N_RICcontrolAcknowledge_IEs_1_rows } +}; +static const long asn_VAL_41_E2N_id_RICrequestID = 60030; +static const long asn_VAL_41_E2N_reject = 0; +static const long asn_VAL_41_E2N_mandatory = 2; +static const long asn_VAL_42_E2N_id_RANfunctionID = 60003; +static const long asn_VAL_42_E2N_reject = 0; +static const long asn_VAL_42_E2N_mandatory = 2; +static const long asn_VAL_43_E2N_id_RICcallProcessID = 60019; +static const long asn_VAL_43_E2N_reject = 0; +static const long asn_VAL_43_E2N_optional = 0; +static const long asn_VAL_44_E2N_id_RICcause = 60020; +static const long asn_VAL_44_E2N_ignore = 1; +static const long asn_VAL_44_E2N_mandatory = 2; +static const asn_ioc_cell_t asn_IOS_E2N_RICcontrolFailure_IEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_41_E2N_id_RICrequestID }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_41_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RICrequestID }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_41_E2N_mandatory }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_42_E2N_id_RANfunctionID }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_42_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RANfunctionID }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_42_E2N_mandatory }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_43_E2N_id_RICcallProcessID }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_43_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RICcallProcessID }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_43_E2N_optional }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_44_E2N_id_RICcause }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_44_E2N_ignore }, + { "&Value", aioc__type, &asn_DEF_E2N_RICcause }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_44_E2N_mandatory } +}; +static const asn_ioc_set_t asn_IOS_E2N_RICcontrolFailure_IEs_1[] = { + { 4, 4, asn_IOS_E2N_RICcontrolFailure_IEs_1_rows } +}; +static const long asn_VAL_45_E2N_id_RANfunctionsAdded = 60007; +static const long asn_VAL_45_E2N_reject = 0; +static const long asn_VAL_45_E2N_optional = 0; +static const long asn_VAL_46_E2N_id_RANfunctionsModified = 60009; +static const long asn_VAL_46_E2N_reject = 0; +static const long asn_VAL_46_E2N_optional = 0; +static const long asn_VAL_47_E2N_id_RANfunctionsDeleted = 60008; +static const long asn_VAL_47_E2N_reject = 0; +static const long asn_VAL_47_E2N_optional = 0; +static const asn_ioc_cell_t asn_IOS_E2N_RICserviceUpdate_IEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_45_E2N_id_RANfunctionsAdded }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_45_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RANfunctions_List }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_45_E2N_optional }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_46_E2N_id_RANfunctionsModified }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_46_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RANfunctions_List }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_46_E2N_optional }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_47_E2N_id_RANfunctionsDeleted }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_47_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RANfunctionsID_List }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_47_E2N_optional } +}; +static const asn_ioc_set_t asn_IOS_E2N_RICserviceUpdate_IEs_1[] = { + { 3, 4, asn_IOS_E2N_RICserviceUpdate_IEs_1_rows } +}; +static const long asn_VAL_50_E2N_id_RANfunctionsAccepted = 60006; +static const long asn_VAL_50_E2N_reject = 0; +static const long asn_VAL_50_E2N_optional = 0; +static const long asn_VAL_51_E2N_id_RANfunctionsRejected = 60010; +static const long asn_VAL_51_E2N_reject = 0; +static const long asn_VAL_51_E2N_optional = 0; +static const asn_ioc_cell_t asn_IOS_E2N_RICserviceUpdateAcknowledge_IEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_50_E2N_id_RANfunctionsAccepted }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_50_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RANfunctionsID_List }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_50_E2N_optional }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_51_E2N_id_RANfunctionsRejected }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_51_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RANfunctionsIDcause_List }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_51_E2N_optional } +}; +static const asn_ioc_set_t asn_IOS_E2N_RICserviceUpdateAcknowledge_IEs_1[] = { + { 2, 4, asn_IOS_E2N_RICserviceUpdateAcknowledge_IEs_1_rows } +}; +static const long asn_VAL_53_E2N_id_RANfunctionsRejected = 60010; +static const long asn_VAL_53_E2N_ignore = 1; +static const long asn_VAL_53_E2N_optional = 0; +static const long asn_VAL_54_E2N_id_TimeToWait = 22; +static const long asn_VAL_54_E2N_ignore = 1; +static const long asn_VAL_54_E2N_optional = 0; +static const long asn_VAL_55_E2N_id_CriticalityDiagnostics = 17; +static const long asn_VAL_55_E2N_ignore = 1; +static const long asn_VAL_55_E2N_optional = 0; +static const asn_ioc_cell_t asn_IOS_E2N_RICserviceUpdateFailure_IEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_53_E2N_id_RANfunctionsRejected }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_53_E2N_ignore }, + { "&Value", aioc__type, &asn_DEF_E2N_RANfunctionsIDcause_List }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_53_E2N_optional }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_54_E2N_id_TimeToWait }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_54_E2N_ignore }, + { "&Value", aioc__type, &asn_DEF_E2N_TimeToWait }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_54_E2N_optional }, + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_55_E2N_id_CriticalityDiagnostics }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_55_E2N_ignore }, + { "&Value", aioc__type, &asn_DEF_E2N_CriticalityDiagnostics }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_55_E2N_optional } +}; +static const asn_ioc_set_t asn_IOS_E2N_RICserviceUpdateFailure_IEs_1[] = { + { 3, 4, asn_IOS_E2N_RICserviceUpdateFailure_IEs_1_rows } +}; +static const long asn_VAL_56_E2N_id_RANfunctionsAccepted = 60006; +static const long asn_VAL_56_E2N_reject = 0; +static const long asn_VAL_56_E2N_optional = 0; +static const asn_ioc_cell_t asn_IOS_E2N_RICserviceQuery_IEs_1_rows[] = { + { "&id", aioc__value, &asn_DEF_E2N_ProtocolIE_ID, &asn_VAL_56_E2N_id_RANfunctionsAccepted }, + { "&criticality", aioc__value, &asn_DEF_E2N_Criticality, &asn_VAL_56_E2N_reject }, + { "&Value", aioc__type, &asn_DEF_E2N_RANfunctionsID_List }, + { "&presence", aioc__value, &asn_DEF_E2N_Presence, &asn_VAL_56_E2N_optional } +}; +static const asn_ioc_set_t asn_IOS_E2N_RICserviceQuery_IEs_1[] = { + { 1, 4, asn_IOS_E2N_RICserviceQuery_IEs_1_rows } +}; +static int +memb_E2N_id_constraint_1(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_RICaction_ToBeSetup_ItemIEs_E2N_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_E2N_RICaction_ToBeSetup_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 E2N_RICaction_ToBeSetup_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]; + 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_E2N_criticality_constraint_1(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_RICaction_ToBeSetup_ItemIEs_E2N_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_E2N_RICaction_ToBeSetup_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 E2N_RICaction_ToBeSetup_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]; + 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_E2N_value_constraint_1(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_E2N_id_constraint_5(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_RICaction_Admitted_ItemIEs_E2N_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_E2N_RICaction_Admitted_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 E2N_RICaction_Admitted_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]; + 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_E2N_criticality_constraint_5(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_RICaction_Admitted_ItemIEs_E2N_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_E2N_RICaction_Admitted_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 E2N_RICaction_Admitted_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]; + 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_E2N_value_constraint_5(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_E2N_id_constraint_9(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_RICaction_NotAdmitted_ItemIEs_E2N_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_E2N_RICaction_NotAdmitted_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 E2N_RICaction_NotAdmitted_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]; + 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_E2N_criticality_constraint_9(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_RICaction_NotAdmitted_ItemIEs_E2N_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_E2N_RICaction_NotAdmitted_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 E2N_RICaction_NotAdmitted_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]; + 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_E2N_value_constraint_9(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_E2N_id_constraint_13(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_RANfunction_ItemIEs_E2N_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_E2N_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 E2N_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]; + 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_E2N_criticality_constraint_13(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_RANfunction_ItemIEs_E2N_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_E2N_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 E2N_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]; + 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_E2N_value_constraint_13(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_E2N_id_constraint_17(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_RANfunctionID_ItemIEs_E2N_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_E2N_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 E2N_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]; + 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_E2N_criticality_constraint_17(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_RANfunctionID_ItemIEs_E2N_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_E2N_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 E2N_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]; + 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_E2N_value_constraint_17(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_E2N_id_constraint_21(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_RANfunctionIDcause_ItemIEs_E2N_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_E2N_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 E2N_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]; + 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_E2N_criticality_constraint_21(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_RANfunctionIDcause_ItemIEs_E2N_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_E2N_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 E2N_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]; + 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_E2N_value_constraint_21(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_E2N_id_constraint_25(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_RICsubscriptionRequest_IEs_E2N_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_E2N_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 E2N_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]; + 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_E2N_criticality_constraint_25(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_RICsubscriptionRequest_IEs_E2N_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_E2N_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 E2N_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]; + 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_E2N_value_constraint_25(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_E2N_id_constraint_29(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_RICsubscriptionResponse_IEs_E2N_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_E2N_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 E2N_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]; + 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_E2N_criticality_constraint_29(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_RICsubscriptionResponse_IEs_E2N_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_E2N_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 E2N_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]; + 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_E2N_value_constraint_29(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_E2N_id_constraint_33(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_RICsubscriptionFailure_IEs_E2N_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_E2N_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 E2N_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]; + 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_E2N_criticality_constraint_33(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_RICsubscriptionFailure_IEs_E2N_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_E2N_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 E2N_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]; + 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_E2N_value_constraint_33(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_E2N_id_constraint_37(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_RICsubscriptionDeleteRequest_IEs_E2N_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_E2N_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 E2N_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]; + 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_E2N_criticality_constraint_37(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_RICsubscriptionDeleteRequest_IEs_E2N_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_E2N_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 E2N_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]; + 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_E2N_value_constraint_37(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_E2N_id_constraint_41(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_RICsubscriptionDeleteResponse_IEs_E2N_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_E2N_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 E2N_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]; + 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_E2N_criticality_constraint_41(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_RICsubscriptionDeleteResponse_IEs_E2N_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_E2N_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 E2N_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]; + 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_E2N_value_constraint_41(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_E2N_id_constraint_45(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_RICsubscriptionDeleteFailure_IEs_E2N_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_E2N_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 E2N_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]; + 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_E2N_criticality_constraint_45(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_RICsubscriptionDeleteFailure_IEs_E2N_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_E2N_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 E2N_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]; + 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_E2N_value_constraint_45(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_E2N_id_constraint_49(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_RICindication_IEs_E2N_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_E2N_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 E2N_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]; + 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_E2N_criticality_constraint_49(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_RICindication_IEs_E2N_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_E2N_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 E2N_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]; + 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_E2N_value_constraint_49(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_E2N_id_constraint_53(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_RICcontrolRequest_IEs_E2N_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_E2N_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 E2N_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]; + 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_E2N_criticality_constraint_53(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_RICcontrolRequest_IEs_E2N_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_E2N_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 E2N_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]; + 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_E2N_value_constraint_53(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_E2N_id_constraint_57(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_RICcontrolAcknowledge_IEs_E2N_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_E2N_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 E2N_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]; + 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_E2N_criticality_constraint_57(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_RICcontrolAcknowledge_IEs_E2N_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_E2N_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 E2N_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]; + 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_E2N_value_constraint_57(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_E2N_id_constraint_61(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_RICcontrolFailure_IEs_E2N_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_E2N_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 E2N_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]; + 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_E2N_criticality_constraint_61(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_RICcontrolFailure_IEs_E2N_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_E2N_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 E2N_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]; + 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_E2N_value_constraint_61(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_E2N_id_constraint_65(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_E2N_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_E2N_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 E2N_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_E2N_criticality_constraint_65(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_E2N_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_E2N_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 E2N_RICserviceUpdate_IEs, id)); + const int indexToPresence[4] = { + E2N_RICserviceUpdate_IEs__value_PR_NOTHING, + E2N_RICserviceUpdate_IEs__value_PR_RANfunctions_List, + E2N_RICserviceUpdate_IEs__value_PR_RANfunctions_List, + E2N_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_E2N_value_constraint_65(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_E2N_id_constraint_69(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_E2N_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_E2N_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 E2N_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_E2N_criticality_constraint_69(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_E2N_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_E2N_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 E2N_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_E2N_value_constraint_69(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_E2N_id_constraint_73(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_E2N_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_E2N_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 E2N_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_E2N_criticality_constraint_73(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_E2N_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_E2N_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 E2N_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_E2N_value_constraint_73(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_E2N_id_constraint_77(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_E2N_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_E2N_RICserviceQuery_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 E2N_RICserviceQuery_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_E2N_criticality_constraint_77(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_RICserviceQuery_IEs_E2N_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_E2N_RICserviceQuery_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 E2N_RICserviceQuery_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_E2N_value_constraint_77(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_per_constraints_t asn_PER_memb_E2N_id_constr_2 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_E2N_criticality_constr_3 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_E2N_value_constr_4 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_E2N_id_constr_6 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_E2N_criticality_constr_7 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_E2N_value_constr_8 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_E2N_id_constr_10 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_E2N_criticality_constr_11 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_E2N_value_constr_12 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_E2N_id_constr_14 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_E2N_criticality_constr_15 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_E2N_value_constr_16 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_E2N_id_constr_18 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_E2N_criticality_constr_19 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_E2N_value_constr_20 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_E2N_id_constr_22 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_E2N_criticality_constr_23 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_E2N_value_constr_24 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_E2N_id_constr_26 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_E2N_criticality_constr_27 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_E2N_value_constr_28 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_E2N_id_constr_30 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_E2N_criticality_constr_31 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_E2N_value_constr_32 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_E2N_id_constr_34 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_E2N_criticality_constr_35 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_E2N_value_constr_36 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_E2N_id_constr_38 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_E2N_criticality_constr_39 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_E2N_value_constr_40 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_E2N_id_constr_42 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_E2N_criticality_constr_43 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_E2N_value_constr_44 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_E2N_id_constr_46 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_E2N_criticality_constr_47 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_E2N_value_constr_48 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_E2N_id_constr_50 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_E2N_criticality_constr_51 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_E2N_value_constr_52 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_E2N_id_constr_54 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_E2N_criticality_constr_55 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_E2N_value_constr_56 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_E2N_id_constr_58 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_E2N_criticality_constr_59 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_E2N_value_constr_60 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_E2N_id_constr_62 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_E2N_criticality_constr_63 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_E2N_value_constr_64 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_E2N_id_constr_66 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_E2N_criticality_constr_67 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_E2N_value_constr_68 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_E2N_id_constr_70 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_E2N_criticality_constr_71 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_E2N_value_constr_72 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_E2N_id_constr_74 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_E2N_criticality_constr_75 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_E2N_value_constr_76 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_E2N_id_constr_78 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_E2N_criticality_constr_79 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_E2N_value_constr_80 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_E2N_value_4[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICaction_ToBeSetup_ItemIEs__value, choice.RICaction_ToBeSetup_Item), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2N_RICaction_ToBeSetup_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICaction-ToBeSetup-Item" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_E2N_value_tag2el_4[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RICaction-ToBeSetup-Item */ +}; +static asn_CHOICE_specifics_t asn_SPC_E2N_value_specs_4 = { + sizeof(struct E2N_RICaction_ToBeSetup_ItemIEs__value), + offsetof(struct E2N_RICaction_ToBeSetup_ItemIEs__value, _asn_ctx), + offsetof(struct E2N_RICaction_ToBeSetup_ItemIEs__value, present), + sizeof(((struct E2N_RICaction_ToBeSetup_ItemIEs__value *)0)->present), + asn_MAP_E2N_value_tag2el_4, + 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_E2N_value_4 = { + "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_E2N_value_4, + 1, /* Elements count */ + &asn_SPC_E2N_value_specs_4 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2N_RICaction_ToBeSetup_ItemIEs_1[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICaction_ToBeSetup_ItemIEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_ProtocolIE_ID, + 0, + { 0, &asn_PER_memb_E2N_id_constr_2, memb_E2N_id_constraint_1 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICaction_ToBeSetup_ItemIEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_Criticality, + select_RICaction_ToBeSetup_ItemIEs_E2N_criticality_type, + { 0, &asn_PER_memb_E2N_criticality_constr_3, memb_E2N_criticality_constraint_1 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2N_RICaction_ToBeSetup_ItemIEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_E2N_value_4, + select_RICaction_ToBeSetup_ItemIEs_E2N_value_type, + { 0, &asn_PER_memb_E2N_value_constr_4, memb_E2N_value_constraint_1 }, + 0, 0, /* No default value */ + "value" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2N_RICaction_ToBeSetup_ItemIEs_tags_1[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2N_RICaction_ToBeSetup_ItemIEs_tag2el_1[] = { + { (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_E2N_RICaction_ToBeSetup_ItemIEs_specs_1 = { + sizeof(struct E2N_RICaction_ToBeSetup_ItemIEs), + offsetof(struct E2N_RICaction_ToBeSetup_ItemIEs, _asn_ctx), + asn_MAP_E2N_RICaction_ToBeSetup_ItemIEs_tag2el_1, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2N_RICaction_ToBeSetup_ItemIEs = { + "RICaction-ToBeSetup-ItemIEs", + "RICaction-ToBeSetup-ItemIEs", + &asn_OP_SEQUENCE, + asn_DEF_E2N_RICaction_ToBeSetup_ItemIEs_tags_1, + sizeof(asn_DEF_E2N_RICaction_ToBeSetup_ItemIEs_tags_1) + /sizeof(asn_DEF_E2N_RICaction_ToBeSetup_ItemIEs_tags_1[0]), /* 1 */ + asn_DEF_E2N_RICaction_ToBeSetup_ItemIEs_tags_1, /* Same as above */ + sizeof(asn_DEF_E2N_RICaction_ToBeSetup_ItemIEs_tags_1) + /sizeof(asn_DEF_E2N_RICaction_ToBeSetup_ItemIEs_tags_1[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2N_RICaction_ToBeSetup_ItemIEs_1, + 3, /* Elements count */ + &asn_SPC_E2N_RICaction_ToBeSetup_ItemIEs_specs_1 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_E2N_value_8[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICaction_Admitted_ItemIEs__value, choice.RICaction_Admitted_Item), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2N_RICaction_Admitted_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICaction-Admitted-Item" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_E2N_value_tag2el_8[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RICaction-Admitted-Item */ +}; +static asn_CHOICE_specifics_t asn_SPC_E2N_value_specs_8 = { + sizeof(struct E2N_RICaction_Admitted_ItemIEs__value), + offsetof(struct E2N_RICaction_Admitted_ItemIEs__value, _asn_ctx), + offsetof(struct E2N_RICaction_Admitted_ItemIEs__value, present), + sizeof(((struct E2N_RICaction_Admitted_ItemIEs__value *)0)->present), + asn_MAP_E2N_value_tag2el_8, + 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_E2N_value_8 = { + "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_E2N_value_8, + 1, /* Elements count */ + &asn_SPC_E2N_value_specs_8 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2N_RICaction_Admitted_ItemIEs_5[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICaction_Admitted_ItemIEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_ProtocolIE_ID, + 0, + { 0, &asn_PER_memb_E2N_id_constr_6, memb_E2N_id_constraint_5 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICaction_Admitted_ItemIEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_Criticality, + select_RICaction_Admitted_ItemIEs_E2N_criticality_type, + { 0, &asn_PER_memb_E2N_criticality_constr_7, memb_E2N_criticality_constraint_5 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2N_RICaction_Admitted_ItemIEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_E2N_value_8, + select_RICaction_Admitted_ItemIEs_E2N_value_type, + { 0, &asn_PER_memb_E2N_value_constr_8, memb_E2N_value_constraint_5 }, + 0, 0, /* No default value */ + "value" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2N_RICaction_Admitted_ItemIEs_tags_5[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2N_RICaction_Admitted_ItemIEs_tag2el_5[] = { + { (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_E2N_RICaction_Admitted_ItemIEs_specs_5 = { + sizeof(struct E2N_RICaction_Admitted_ItemIEs), + offsetof(struct E2N_RICaction_Admitted_ItemIEs, _asn_ctx), + asn_MAP_E2N_RICaction_Admitted_ItemIEs_tag2el_5, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2N_RICaction_Admitted_ItemIEs = { + "RICaction-Admitted-ItemIEs", + "RICaction-Admitted-ItemIEs", + &asn_OP_SEQUENCE, + asn_DEF_E2N_RICaction_Admitted_ItemIEs_tags_5, + sizeof(asn_DEF_E2N_RICaction_Admitted_ItemIEs_tags_5) + /sizeof(asn_DEF_E2N_RICaction_Admitted_ItemIEs_tags_5[0]), /* 1 */ + asn_DEF_E2N_RICaction_Admitted_ItemIEs_tags_5, /* Same as above */ + sizeof(asn_DEF_E2N_RICaction_Admitted_ItemIEs_tags_5) + /sizeof(asn_DEF_E2N_RICaction_Admitted_ItemIEs_tags_5[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2N_RICaction_Admitted_ItemIEs_5, + 3, /* Elements count */ + &asn_SPC_E2N_RICaction_Admitted_ItemIEs_specs_5 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_E2N_value_12[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICaction_NotAdmitted_ItemIEs__value, choice.RICaction_NotAdmitted_Item), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2N_RICaction_NotAdmitted_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICaction-NotAdmitted-Item" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_E2N_value_tag2el_12[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RICaction-NotAdmitted-Item */ +}; +static asn_CHOICE_specifics_t asn_SPC_E2N_value_specs_12 = { + sizeof(struct E2N_RICaction_NotAdmitted_ItemIEs__value), + offsetof(struct E2N_RICaction_NotAdmitted_ItemIEs__value, _asn_ctx), + offsetof(struct E2N_RICaction_NotAdmitted_ItemIEs__value, present), + sizeof(((struct E2N_RICaction_NotAdmitted_ItemIEs__value *)0)->present), + asn_MAP_E2N_value_tag2el_12, + 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_E2N_value_12 = { + "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_E2N_value_12, + 1, /* Elements count */ + &asn_SPC_E2N_value_specs_12 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2N_RICaction_NotAdmitted_ItemIEs_9[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICaction_NotAdmitted_ItemIEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_ProtocolIE_ID, + 0, + { 0, &asn_PER_memb_E2N_id_constr_10, memb_E2N_id_constraint_9 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICaction_NotAdmitted_ItemIEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_Criticality, + select_RICaction_NotAdmitted_ItemIEs_E2N_criticality_type, + { 0, &asn_PER_memb_E2N_criticality_constr_11, memb_E2N_criticality_constraint_9 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2N_RICaction_NotAdmitted_ItemIEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_E2N_value_12, + select_RICaction_NotAdmitted_ItemIEs_E2N_value_type, + { 0, &asn_PER_memb_E2N_value_constr_12, memb_E2N_value_constraint_9 }, + 0, 0, /* No default value */ + "value" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2N_RICaction_NotAdmitted_ItemIEs_tags_9[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2N_RICaction_NotAdmitted_ItemIEs_tag2el_9[] = { + { (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_E2N_RICaction_NotAdmitted_ItemIEs_specs_9 = { + sizeof(struct E2N_RICaction_NotAdmitted_ItemIEs), + offsetof(struct E2N_RICaction_NotAdmitted_ItemIEs, _asn_ctx), + asn_MAP_E2N_RICaction_NotAdmitted_ItemIEs_tag2el_9, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2N_RICaction_NotAdmitted_ItemIEs = { + "RICaction-NotAdmitted-ItemIEs", + "RICaction-NotAdmitted-ItemIEs", + &asn_OP_SEQUENCE, + asn_DEF_E2N_RICaction_NotAdmitted_ItemIEs_tags_9, + sizeof(asn_DEF_E2N_RICaction_NotAdmitted_ItemIEs_tags_9) + /sizeof(asn_DEF_E2N_RICaction_NotAdmitted_ItemIEs_tags_9[0]), /* 1 */ + asn_DEF_E2N_RICaction_NotAdmitted_ItemIEs_tags_9, /* Same as above */ + sizeof(asn_DEF_E2N_RICaction_NotAdmitted_ItemIEs_tags_9) + /sizeof(asn_DEF_E2N_RICaction_NotAdmitted_ItemIEs_tags_9[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2N_RICaction_NotAdmitted_ItemIEs_9, + 3, /* Elements count */ + &asn_SPC_E2N_RICaction_NotAdmitted_ItemIEs_specs_9 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_E2N_value_16[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RANfunction_ItemIEs__value, choice.RANfunction_Item), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2N_RANfunction_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RANfunction-Item" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_E2N_value_tag2el_16[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RANfunction-Item */ +}; +static asn_CHOICE_specifics_t asn_SPC_E2N_value_specs_16 = { + sizeof(struct E2N_RANfunction_ItemIEs__value), + offsetof(struct E2N_RANfunction_ItemIEs__value, _asn_ctx), + offsetof(struct E2N_RANfunction_ItemIEs__value, present), + sizeof(((struct E2N_RANfunction_ItemIEs__value *)0)->present), + asn_MAP_E2N_value_tag2el_16, + 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_E2N_value_16 = { + "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_E2N_value_16, + 1, /* Elements count */ + &asn_SPC_E2N_value_specs_16 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2N_RANfunction_ItemIEs_13[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RANfunction_ItemIEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_ProtocolIE_ID, + 0, + { 0, &asn_PER_memb_E2N_id_constr_14, memb_E2N_id_constraint_13 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RANfunction_ItemIEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_Criticality, + select_RANfunction_ItemIEs_E2N_criticality_type, + { 0, &asn_PER_memb_E2N_criticality_constr_15, memb_E2N_criticality_constraint_13 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2N_RANfunction_ItemIEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_E2N_value_16, + select_RANfunction_ItemIEs_E2N_value_type, + { 0, &asn_PER_memb_E2N_value_constr_16, memb_E2N_value_constraint_13 }, + 0, 0, /* No default value */ + "value" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2N_RANfunction_ItemIEs_tags_13[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2N_RANfunction_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_E2N_RANfunction_ItemIEs_specs_13 = { + sizeof(struct E2N_RANfunction_ItemIEs), + offsetof(struct E2N_RANfunction_ItemIEs, _asn_ctx), + asn_MAP_E2N_RANfunction_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_E2N_RANfunction_ItemIEs = { + "RANfunction-ItemIEs", + "RANfunction-ItemIEs", + &asn_OP_SEQUENCE, + asn_DEF_E2N_RANfunction_ItemIEs_tags_13, + sizeof(asn_DEF_E2N_RANfunction_ItemIEs_tags_13) + /sizeof(asn_DEF_E2N_RANfunction_ItemIEs_tags_13[0]), /* 1 */ + asn_DEF_E2N_RANfunction_ItemIEs_tags_13, /* Same as above */ + sizeof(asn_DEF_E2N_RANfunction_ItemIEs_tags_13) + /sizeof(asn_DEF_E2N_RANfunction_ItemIEs_tags_13[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2N_RANfunction_ItemIEs_13, + 3, /* Elements count */ + &asn_SPC_E2N_RANfunction_ItemIEs_specs_13 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_E2N_value_20[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RANfunctionID_ItemIEs__value, choice.RANfunctionID_Item), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2N_RANfunctionID_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RANfunctionID-Item" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_E2N_value_tag2el_20[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RANfunctionID-Item */ +}; +static asn_CHOICE_specifics_t asn_SPC_E2N_value_specs_20 = { + sizeof(struct E2N_RANfunctionID_ItemIEs__value), + offsetof(struct E2N_RANfunctionID_ItemIEs__value, _asn_ctx), + offsetof(struct E2N_RANfunctionID_ItemIEs__value, present), + sizeof(((struct E2N_RANfunctionID_ItemIEs__value *)0)->present), + asn_MAP_E2N_value_tag2el_20, + 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_E2N_value_20 = { + "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_E2N_value_20, + 1, /* Elements count */ + &asn_SPC_E2N_value_specs_20 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2N_RANfunctionID_ItemIEs_17[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RANfunctionID_ItemIEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_ProtocolIE_ID, + 0, + { 0, &asn_PER_memb_E2N_id_constr_18, memb_E2N_id_constraint_17 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RANfunctionID_ItemIEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_Criticality, + select_RANfunctionID_ItemIEs_E2N_criticality_type, + { 0, &asn_PER_memb_E2N_criticality_constr_19, memb_E2N_criticality_constraint_17 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2N_RANfunctionID_ItemIEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_E2N_value_20, + select_RANfunctionID_ItemIEs_E2N_value_type, + { 0, &asn_PER_memb_E2N_value_constr_20, memb_E2N_value_constraint_17 }, + 0, 0, /* No default value */ + "value" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2N_RANfunctionID_ItemIEs_tags_17[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2N_RANfunctionID_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_E2N_RANfunctionID_ItemIEs_specs_17 = { + sizeof(struct E2N_RANfunctionID_ItemIEs), + offsetof(struct E2N_RANfunctionID_ItemIEs, _asn_ctx), + asn_MAP_E2N_RANfunctionID_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_E2N_RANfunctionID_ItemIEs = { + "RANfunctionID-ItemIEs", + "RANfunctionID-ItemIEs", + &asn_OP_SEQUENCE, + asn_DEF_E2N_RANfunctionID_ItemIEs_tags_17, + sizeof(asn_DEF_E2N_RANfunctionID_ItemIEs_tags_17) + /sizeof(asn_DEF_E2N_RANfunctionID_ItemIEs_tags_17[0]), /* 1 */ + asn_DEF_E2N_RANfunctionID_ItemIEs_tags_17, /* Same as above */ + sizeof(asn_DEF_E2N_RANfunctionID_ItemIEs_tags_17) + /sizeof(asn_DEF_E2N_RANfunctionID_ItemIEs_tags_17[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2N_RANfunctionID_ItemIEs_17, + 3, /* Elements count */ + &asn_SPC_E2N_RANfunctionID_ItemIEs_specs_17 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_E2N_value_24[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RANfunctionIDcause_ItemIEs__value, choice.RANfunctionIDcause_Item), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2N_RANfunctionIDcause_Item, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RANfunctionIDcause-Item" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_E2N_value_tag2el_24[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RANfunctionIDcause-Item */ +}; +static asn_CHOICE_specifics_t asn_SPC_E2N_value_specs_24 = { + sizeof(struct E2N_RANfunctionIDcause_ItemIEs__value), + offsetof(struct E2N_RANfunctionIDcause_ItemIEs__value, _asn_ctx), + offsetof(struct E2N_RANfunctionIDcause_ItemIEs__value, present), + sizeof(((struct E2N_RANfunctionIDcause_ItemIEs__value *)0)->present), + asn_MAP_E2N_value_tag2el_24, + 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_E2N_value_24 = { + "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_E2N_value_24, + 1, /* Elements count */ + &asn_SPC_E2N_value_specs_24 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2N_RANfunctionIDcause_ItemIEs_21[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RANfunctionIDcause_ItemIEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_ProtocolIE_ID, + 0, + { 0, &asn_PER_memb_E2N_id_constr_22, memb_E2N_id_constraint_21 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RANfunctionIDcause_ItemIEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_Criticality, + select_RANfunctionIDcause_ItemIEs_E2N_criticality_type, + { 0, &asn_PER_memb_E2N_criticality_constr_23, memb_E2N_criticality_constraint_21 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2N_RANfunctionIDcause_ItemIEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_E2N_value_24, + select_RANfunctionIDcause_ItemIEs_E2N_value_type, + { 0, &asn_PER_memb_E2N_value_constr_24, memb_E2N_value_constraint_21 }, + 0, 0, /* No default value */ + "value" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2N_RANfunctionIDcause_ItemIEs_tags_21[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2N_RANfunctionIDcause_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_E2N_RANfunctionIDcause_ItemIEs_specs_21 = { + sizeof(struct E2N_RANfunctionIDcause_ItemIEs), + offsetof(struct E2N_RANfunctionIDcause_ItemIEs, _asn_ctx), + asn_MAP_E2N_RANfunctionIDcause_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_E2N_RANfunctionIDcause_ItemIEs = { + "RANfunctionIDcause-ItemIEs", + "RANfunctionIDcause-ItemIEs", + &asn_OP_SEQUENCE, + asn_DEF_E2N_RANfunctionIDcause_ItemIEs_tags_21, + sizeof(asn_DEF_E2N_RANfunctionIDcause_ItemIEs_tags_21) + /sizeof(asn_DEF_E2N_RANfunctionIDcause_ItemIEs_tags_21[0]), /* 1 */ + asn_DEF_E2N_RANfunctionIDcause_ItemIEs_tags_21, /* Same as above */ + sizeof(asn_DEF_E2N_RANfunctionIDcause_ItemIEs_tags_21) + /sizeof(asn_DEF_E2N_RANfunctionIDcause_ItemIEs_tags_21[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2N_RANfunctionIDcause_ItemIEs_21, + 3, /* Elements count */ + &asn_SPC_E2N_RANfunctionIDcause_ItemIEs_specs_21 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_E2N_value_28[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionRequest_IEs__value, choice.RICrequestID), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2N_RICrequestID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICrequestID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionRequest_IEs__value, choice.RANfunctionID), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_E2N_RANfunctionID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RANfunctionID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionRequest_IEs__value, choice.RICsubscription), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2N_RICsubscription, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICsubscription" + }, +}; +static const unsigned asn_MAP_E2N_value_to_canonical_28[] = { 1, 0, 2 }; +static const unsigned asn_MAP_E2N_value_from_canonical_28[] = { 1, 0, 2 }; +static const asn_TYPE_tag2member_t asn_MAP_E2N_value_tag2el_28[] = { + { (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 } /* RICsubscription */ +}; +static asn_CHOICE_specifics_t asn_SPC_E2N_value_specs_28 = { + sizeof(struct E2N_RICsubscriptionRequest_IEs__value), + offsetof(struct E2N_RICsubscriptionRequest_IEs__value, _asn_ctx), + offsetof(struct E2N_RICsubscriptionRequest_IEs__value, present), + sizeof(((struct E2N_RICsubscriptionRequest_IEs__value *)0)->present), + asn_MAP_E2N_value_tag2el_28, + 3, /* Count of tags in the map */ + asn_MAP_E2N_value_to_canonical_28, + asn_MAP_E2N_value_from_canonical_28, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_E2N_value_28 = { + "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_E2N_value_28, + 3, /* Elements count */ + &asn_SPC_E2N_value_specs_28 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2N_RICsubscriptionRequest_IEs_25[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionRequest_IEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_ProtocolIE_ID, + 0, + { 0, &asn_PER_memb_E2N_id_constr_26, memb_E2N_id_constraint_25 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionRequest_IEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_Criticality, + select_RICsubscriptionRequest_IEs_E2N_criticality_type, + { 0, &asn_PER_memb_E2N_criticality_constr_27, memb_E2N_criticality_constraint_25 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionRequest_IEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_E2N_value_28, + select_RICsubscriptionRequest_IEs_E2N_value_type, + { 0, &asn_PER_memb_E2N_value_constr_28, memb_E2N_value_constraint_25 }, + 0, 0, /* No default value */ + "value" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2N_RICsubscriptionRequest_IEs_tags_25[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2N_RICsubscriptionRequest_IEs_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_E2N_RICsubscriptionRequest_IEs_specs_25 = { + sizeof(struct E2N_RICsubscriptionRequest_IEs), + offsetof(struct E2N_RICsubscriptionRequest_IEs, _asn_ctx), + asn_MAP_E2N_RICsubscriptionRequest_IEs_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_E2N_RICsubscriptionRequest_IEs = { + "RICsubscriptionRequest-IEs", + "RICsubscriptionRequest-IEs", + &asn_OP_SEQUENCE, + asn_DEF_E2N_RICsubscriptionRequest_IEs_tags_25, + sizeof(asn_DEF_E2N_RICsubscriptionRequest_IEs_tags_25) + /sizeof(asn_DEF_E2N_RICsubscriptionRequest_IEs_tags_25[0]), /* 1 */ + asn_DEF_E2N_RICsubscriptionRequest_IEs_tags_25, /* Same as above */ + sizeof(asn_DEF_E2N_RICsubscriptionRequest_IEs_tags_25) + /sizeof(asn_DEF_E2N_RICsubscriptionRequest_IEs_tags_25[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2N_RICsubscriptionRequest_IEs_25, + 3, /* Elements count */ + &asn_SPC_E2N_RICsubscriptionRequest_IEs_specs_25 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_E2N_value_32[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionResponse_IEs__value, choice.RICrequestID), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2N_RICrequestID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICrequestID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionResponse_IEs__value, choice.RANfunctionID), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_E2N_RANfunctionID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RANfunctionID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionResponse_IEs__value, choice.RICaction_Admitted_List), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2N_RICaction_Admitted_List, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICaction-Admitted-List" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionResponse_IEs__value, choice.RICaction_NotAdmitted_List), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2N_RICaction_NotAdmitted_List, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICaction-NotAdmitted-List" + }, +}; +static const unsigned asn_MAP_E2N_value_to_canonical_32[] = { 1, 0, 2, 3 }; +static const unsigned asn_MAP_E2N_value_from_canonical_32[] = { 1, 0, 2, 3 }; +static const asn_TYPE_tag2member_t asn_MAP_E2N_value_tag2el_32[] = { + { (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_E2N_value_specs_32 = { + sizeof(struct E2N_RICsubscriptionResponse_IEs__value), + offsetof(struct E2N_RICsubscriptionResponse_IEs__value, _asn_ctx), + offsetof(struct E2N_RICsubscriptionResponse_IEs__value, present), + sizeof(((struct E2N_RICsubscriptionResponse_IEs__value *)0)->present), + asn_MAP_E2N_value_tag2el_32, + 4, /* Count of tags in the map */ + asn_MAP_E2N_value_to_canonical_32, + asn_MAP_E2N_value_from_canonical_32, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_E2N_value_32 = { + "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_E2N_value_32, + 4, /* Elements count */ + &asn_SPC_E2N_value_specs_32 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2N_RICsubscriptionResponse_IEs_29[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionResponse_IEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_ProtocolIE_ID, + 0, + { 0, &asn_PER_memb_E2N_id_constr_30, memb_E2N_id_constraint_29 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionResponse_IEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_Criticality, + select_RICsubscriptionResponse_IEs_E2N_criticality_type, + { 0, &asn_PER_memb_E2N_criticality_constr_31, memb_E2N_criticality_constraint_29 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionResponse_IEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_E2N_value_32, + select_RICsubscriptionResponse_IEs_E2N_value_type, + { 0, &asn_PER_memb_E2N_value_constr_32, memb_E2N_value_constraint_29 }, + 0, 0, /* No default value */ + "value" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2N_RICsubscriptionResponse_IEs_tags_29[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2N_RICsubscriptionResponse_IEs_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_E2N_RICsubscriptionResponse_IEs_specs_29 = { + sizeof(struct E2N_RICsubscriptionResponse_IEs), + offsetof(struct E2N_RICsubscriptionResponse_IEs, _asn_ctx), + asn_MAP_E2N_RICsubscriptionResponse_IEs_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_E2N_RICsubscriptionResponse_IEs = { + "RICsubscriptionResponse-IEs", + "RICsubscriptionResponse-IEs", + &asn_OP_SEQUENCE, + asn_DEF_E2N_RICsubscriptionResponse_IEs_tags_29, + sizeof(asn_DEF_E2N_RICsubscriptionResponse_IEs_tags_29) + /sizeof(asn_DEF_E2N_RICsubscriptionResponse_IEs_tags_29[0]), /* 1 */ + asn_DEF_E2N_RICsubscriptionResponse_IEs_tags_29, /* Same as above */ + sizeof(asn_DEF_E2N_RICsubscriptionResponse_IEs_tags_29) + /sizeof(asn_DEF_E2N_RICsubscriptionResponse_IEs_tags_29[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2N_RICsubscriptionResponse_IEs_29, + 3, /* Elements count */ + &asn_SPC_E2N_RICsubscriptionResponse_IEs_specs_29 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_E2N_value_36[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionFailure_IEs__value, choice.RICrequestID), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2N_RICrequestID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICrequestID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionFailure_IEs__value, choice.RANfunctionID), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_E2N_RANfunctionID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RANfunctionID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionFailure_IEs__value, choice.RICaction_NotAdmitted_List), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2N_RICaction_NotAdmitted_List, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICaction-NotAdmitted-List" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionFailure_IEs__value, choice.CriticalityDiagnostics), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2N_CriticalityDiagnostics, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "CriticalityDiagnostics" + }, +}; +static const unsigned asn_MAP_E2N_value_to_canonical_36[] = { 1, 0, 2, 3 }; +static const unsigned asn_MAP_E2N_value_from_canonical_36[] = { 1, 0, 2, 3 }; +static const asn_TYPE_tag2member_t asn_MAP_E2N_value_tag2el_36[] = { + { (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 */ +}; +static asn_CHOICE_specifics_t asn_SPC_E2N_value_specs_36 = { + sizeof(struct E2N_RICsubscriptionFailure_IEs__value), + offsetof(struct E2N_RICsubscriptionFailure_IEs__value, _asn_ctx), + offsetof(struct E2N_RICsubscriptionFailure_IEs__value, present), + sizeof(((struct E2N_RICsubscriptionFailure_IEs__value *)0)->present), + asn_MAP_E2N_value_tag2el_36, + 4, /* Count of tags in the map */ + asn_MAP_E2N_value_to_canonical_36, + asn_MAP_E2N_value_from_canonical_36, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_E2N_value_36 = { + "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_E2N_value_36, + 4, /* Elements count */ + &asn_SPC_E2N_value_specs_36 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2N_RICsubscriptionFailure_IEs_33[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionFailure_IEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_ProtocolIE_ID, + 0, + { 0, &asn_PER_memb_E2N_id_constr_34, memb_E2N_id_constraint_33 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionFailure_IEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_Criticality, + select_RICsubscriptionFailure_IEs_E2N_criticality_type, + { 0, &asn_PER_memb_E2N_criticality_constr_35, memb_E2N_criticality_constraint_33 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionFailure_IEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_E2N_value_36, + select_RICsubscriptionFailure_IEs_E2N_value_type, + { 0, &asn_PER_memb_E2N_value_constr_36, memb_E2N_value_constraint_33 }, + 0, 0, /* No default value */ + "value" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2N_RICsubscriptionFailure_IEs_tags_33[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2N_RICsubscriptionFailure_IEs_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_E2N_RICsubscriptionFailure_IEs_specs_33 = { + sizeof(struct E2N_RICsubscriptionFailure_IEs), + offsetof(struct E2N_RICsubscriptionFailure_IEs, _asn_ctx), + asn_MAP_E2N_RICsubscriptionFailure_IEs_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_E2N_RICsubscriptionFailure_IEs = { + "RICsubscriptionFailure-IEs", + "RICsubscriptionFailure-IEs", + &asn_OP_SEQUENCE, + asn_DEF_E2N_RICsubscriptionFailure_IEs_tags_33, + sizeof(asn_DEF_E2N_RICsubscriptionFailure_IEs_tags_33) + /sizeof(asn_DEF_E2N_RICsubscriptionFailure_IEs_tags_33[0]), /* 1 */ + asn_DEF_E2N_RICsubscriptionFailure_IEs_tags_33, /* Same as above */ + sizeof(asn_DEF_E2N_RICsubscriptionFailure_IEs_tags_33) + /sizeof(asn_DEF_E2N_RICsubscriptionFailure_IEs_tags_33[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2N_RICsubscriptionFailure_IEs_33, + 3, /* Elements count */ + &asn_SPC_E2N_RICsubscriptionFailure_IEs_specs_33 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_E2N_value_40[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionDeleteRequest_IEs__value, choice.RICrequestID), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2N_RICrequestID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICrequestID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionDeleteRequest_IEs__value, choice.RANfunctionID), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_E2N_RANfunctionID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RANfunctionID" + }, +}; +static const unsigned asn_MAP_E2N_value_to_canonical_40[] = { 1, 0 }; +static const unsigned asn_MAP_E2N_value_from_canonical_40[] = { 1, 0 }; +static const asn_TYPE_tag2member_t asn_MAP_E2N_value_tag2el_40[] = { + { (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_E2N_value_specs_40 = { + sizeof(struct E2N_RICsubscriptionDeleteRequest_IEs__value), + offsetof(struct E2N_RICsubscriptionDeleteRequest_IEs__value, _asn_ctx), + offsetof(struct E2N_RICsubscriptionDeleteRequest_IEs__value, present), + sizeof(((struct E2N_RICsubscriptionDeleteRequest_IEs__value *)0)->present), + asn_MAP_E2N_value_tag2el_40, + 2, /* Count of tags in the map */ + asn_MAP_E2N_value_to_canonical_40, + asn_MAP_E2N_value_from_canonical_40, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_E2N_value_40 = { + "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_E2N_value_40, + 2, /* Elements count */ + &asn_SPC_E2N_value_specs_40 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2N_RICsubscriptionDeleteRequest_IEs_37[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionDeleteRequest_IEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_ProtocolIE_ID, + 0, + { 0, &asn_PER_memb_E2N_id_constr_38, memb_E2N_id_constraint_37 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionDeleteRequest_IEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_Criticality, + select_RICsubscriptionDeleteRequest_IEs_E2N_criticality_type, + { 0, &asn_PER_memb_E2N_criticality_constr_39, memb_E2N_criticality_constraint_37 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionDeleteRequest_IEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_E2N_value_40, + select_RICsubscriptionDeleteRequest_IEs_E2N_value_type, + { 0, &asn_PER_memb_E2N_value_constr_40, memb_E2N_value_constraint_37 }, + 0, 0, /* No default value */ + "value" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2N_RICsubscriptionDeleteRequest_IEs_tags_37[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2N_RICsubscriptionDeleteRequest_IEs_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_E2N_RICsubscriptionDeleteRequest_IEs_specs_37 = { + sizeof(struct E2N_RICsubscriptionDeleteRequest_IEs), + offsetof(struct E2N_RICsubscriptionDeleteRequest_IEs, _asn_ctx), + asn_MAP_E2N_RICsubscriptionDeleteRequest_IEs_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_E2N_RICsubscriptionDeleteRequest_IEs = { + "RICsubscriptionDeleteRequest-IEs", + "RICsubscriptionDeleteRequest-IEs", + &asn_OP_SEQUENCE, + asn_DEF_E2N_RICsubscriptionDeleteRequest_IEs_tags_37, + sizeof(asn_DEF_E2N_RICsubscriptionDeleteRequest_IEs_tags_37) + /sizeof(asn_DEF_E2N_RICsubscriptionDeleteRequest_IEs_tags_37[0]), /* 1 */ + asn_DEF_E2N_RICsubscriptionDeleteRequest_IEs_tags_37, /* Same as above */ + sizeof(asn_DEF_E2N_RICsubscriptionDeleteRequest_IEs_tags_37) + /sizeof(asn_DEF_E2N_RICsubscriptionDeleteRequest_IEs_tags_37[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2N_RICsubscriptionDeleteRequest_IEs_37, + 3, /* Elements count */ + &asn_SPC_E2N_RICsubscriptionDeleteRequest_IEs_specs_37 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_E2N_value_44[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionDeleteResponse_IEs__value, choice.RICrequestID), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2N_RICrequestID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICrequestID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionDeleteResponse_IEs__value, choice.RANfunctionID), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_E2N_RANfunctionID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RANfunctionID" + }, +}; +static const unsigned asn_MAP_E2N_value_to_canonical_44[] = { 1, 0 }; +static const unsigned asn_MAP_E2N_value_from_canonical_44[] = { 1, 0 }; +static const asn_TYPE_tag2member_t asn_MAP_E2N_value_tag2el_44[] = { + { (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_E2N_value_specs_44 = { + sizeof(struct E2N_RICsubscriptionDeleteResponse_IEs__value), + offsetof(struct E2N_RICsubscriptionDeleteResponse_IEs__value, _asn_ctx), + offsetof(struct E2N_RICsubscriptionDeleteResponse_IEs__value, present), + sizeof(((struct E2N_RICsubscriptionDeleteResponse_IEs__value *)0)->present), + asn_MAP_E2N_value_tag2el_44, + 2, /* Count of tags in the map */ + asn_MAP_E2N_value_to_canonical_44, + asn_MAP_E2N_value_from_canonical_44, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_E2N_value_44 = { + "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_E2N_value_44, + 2, /* Elements count */ + &asn_SPC_E2N_value_specs_44 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2N_RICsubscriptionDeleteResponse_IEs_41[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionDeleteResponse_IEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_ProtocolIE_ID, + 0, + { 0, &asn_PER_memb_E2N_id_constr_42, memb_E2N_id_constraint_41 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionDeleteResponse_IEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_Criticality, + select_RICsubscriptionDeleteResponse_IEs_E2N_criticality_type, + { 0, &asn_PER_memb_E2N_criticality_constr_43, memb_E2N_criticality_constraint_41 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionDeleteResponse_IEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_E2N_value_44, + select_RICsubscriptionDeleteResponse_IEs_E2N_value_type, + { 0, &asn_PER_memb_E2N_value_constr_44, memb_E2N_value_constraint_41 }, + 0, 0, /* No default value */ + "value" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2N_RICsubscriptionDeleteResponse_IEs_tags_41[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2N_RICsubscriptionDeleteResponse_IEs_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_E2N_RICsubscriptionDeleteResponse_IEs_specs_41 = { + sizeof(struct E2N_RICsubscriptionDeleteResponse_IEs), + offsetof(struct E2N_RICsubscriptionDeleteResponse_IEs, _asn_ctx), + asn_MAP_E2N_RICsubscriptionDeleteResponse_IEs_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_E2N_RICsubscriptionDeleteResponse_IEs = { + "RICsubscriptionDeleteResponse-IEs", + "RICsubscriptionDeleteResponse-IEs", + &asn_OP_SEQUENCE, + asn_DEF_E2N_RICsubscriptionDeleteResponse_IEs_tags_41, + sizeof(asn_DEF_E2N_RICsubscriptionDeleteResponse_IEs_tags_41) + /sizeof(asn_DEF_E2N_RICsubscriptionDeleteResponse_IEs_tags_41[0]), /* 1 */ + asn_DEF_E2N_RICsubscriptionDeleteResponse_IEs_tags_41, /* Same as above */ + sizeof(asn_DEF_E2N_RICsubscriptionDeleteResponse_IEs_tags_41) + /sizeof(asn_DEF_E2N_RICsubscriptionDeleteResponse_IEs_tags_41[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2N_RICsubscriptionDeleteResponse_IEs_41, + 3, /* Elements count */ + &asn_SPC_E2N_RICsubscriptionDeleteResponse_IEs_specs_41 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_E2N_value_48[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionDeleteFailure_IEs__value, choice.RICrequestID), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2N_RICrequestID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICrequestID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionDeleteFailure_IEs__value, choice.RANfunctionID), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_E2N_RANfunctionID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RANfunctionID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionDeleteFailure_IEs__value, choice.RICcause), + -1 /* Ambiguous tag (CHOICE?) */, + 0, + &asn_DEF_E2N_RICcause, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICcause" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionDeleteFailure_IEs__value, choice.CriticalityDiagnostics), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2N_CriticalityDiagnostics, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "CriticalityDiagnostics" + }, +}; +static const unsigned asn_MAP_E2N_value_to_canonical_48[] = { 1, 0, 3, 2 }; +static const unsigned asn_MAP_E2N_value_from_canonical_48[] = { 1, 0, 3, 2 }; +static const asn_TYPE_tag2member_t asn_MAP_E2N_value_tag2el_48[] = { + { (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 }, /* radioNetwork */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 2, 0, 0 }, /* transport */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* protocol */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 2, 0, 0 }, /* misc */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 2, 0, 0 } /* ric */ +}; +static asn_CHOICE_specifics_t asn_SPC_E2N_value_specs_48 = { + sizeof(struct E2N_RICsubscriptionDeleteFailure_IEs__value), + offsetof(struct E2N_RICsubscriptionDeleteFailure_IEs__value, _asn_ctx), + offsetof(struct E2N_RICsubscriptionDeleteFailure_IEs__value, present), + sizeof(((struct E2N_RICsubscriptionDeleteFailure_IEs__value *)0)->present), + asn_MAP_E2N_value_tag2el_48, + 8, /* Count of tags in the map */ + asn_MAP_E2N_value_to_canonical_48, + asn_MAP_E2N_value_from_canonical_48, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_E2N_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_E2N_value_48, + 4, /* Elements count */ + &asn_SPC_E2N_value_specs_48 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2N_RICsubscriptionDeleteFailure_IEs_45[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionDeleteFailure_IEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_ProtocolIE_ID, + 0, + { 0, &asn_PER_memb_E2N_id_constr_46, memb_E2N_id_constraint_45 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionDeleteFailure_IEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_Criticality, + select_RICsubscriptionDeleteFailure_IEs_E2N_criticality_type, + { 0, &asn_PER_memb_E2N_criticality_constr_47, memb_E2N_criticality_constraint_45 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2N_RICsubscriptionDeleteFailure_IEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_E2N_value_48, + select_RICsubscriptionDeleteFailure_IEs_E2N_value_type, + { 0, &asn_PER_memb_E2N_value_constr_48, memb_E2N_value_constraint_45 }, + 0, 0, /* No default value */ + "value" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2N_RICsubscriptionDeleteFailure_IEs_tags_45[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2N_RICsubscriptionDeleteFailure_IEs_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_E2N_RICsubscriptionDeleteFailure_IEs_specs_45 = { + sizeof(struct E2N_RICsubscriptionDeleteFailure_IEs), + offsetof(struct E2N_RICsubscriptionDeleteFailure_IEs, _asn_ctx), + asn_MAP_E2N_RICsubscriptionDeleteFailure_IEs_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_E2N_RICsubscriptionDeleteFailure_IEs = { + "RICsubscriptionDeleteFailure-IEs", + "RICsubscriptionDeleteFailure-IEs", + &asn_OP_SEQUENCE, + asn_DEF_E2N_RICsubscriptionDeleteFailure_IEs_tags_45, + sizeof(asn_DEF_E2N_RICsubscriptionDeleteFailure_IEs_tags_45) + /sizeof(asn_DEF_E2N_RICsubscriptionDeleteFailure_IEs_tags_45[0]), /* 1 */ + asn_DEF_E2N_RICsubscriptionDeleteFailure_IEs_tags_45, /* Same as above */ + sizeof(asn_DEF_E2N_RICsubscriptionDeleteFailure_IEs_tags_45) + /sizeof(asn_DEF_E2N_RICsubscriptionDeleteFailure_IEs_tags_45[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2N_RICsubscriptionDeleteFailure_IEs_45, + 3, /* Elements count */ + &asn_SPC_E2N_RICsubscriptionDeleteFailure_IEs_specs_45 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_E2N_value_52[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICindication_IEs__value, choice.RICrequestID), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2N_RICrequestID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICrequestID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICindication_IEs__value, choice.RANfunctionID), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_E2N_RANfunctionID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RANfunctionID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICindication_IEs__value, choice.RICactionID), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_E2N_RICactionID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICactionID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICindication_IEs__value, choice.RICindicationSN), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_E2N_RICindicationSN, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICindicationSN" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICindication_IEs__value, choice.RICindicationType), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), + 0, + &asn_DEF_E2N_RICindicationType, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICindicationType" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICindication_IEs__value, choice.RICindicationHeader), + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + 0, + &asn_DEF_E2N_RICindicationHeader, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICindicationHeader" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICindication_IEs__value, choice.RICindicationMessage), + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + 0, + &asn_DEF_E2N_RICindicationMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICindicationMessage" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICindication_IEs__value, choice.RICcallProcessID), + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + 0, + &asn_DEF_E2N_RICcallProcessID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICcallProcessID" + }, +}; +static const unsigned asn_MAP_E2N_value_to_canonical_52[] = { 1, 2, 3, 5, 6, 7, 4, 0 }; +static const unsigned asn_MAP_E2N_value_from_canonical_52[] = { 7, 0, 1, 2, 6, 3, 4, 5 }; +static const asn_TYPE_tag2member_t asn_MAP_E2N_value_tag2el_52[] = { + { (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 */ + { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 5, 0, 2 }, /* RICindicationHeader */ + { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 6, -1, 1 }, /* RICindicationMessage */ + { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 7, -2, 0 }, /* RICcallProcessID */ + { (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_E2N_value_specs_52 = { + sizeof(struct E2N_RICindication_IEs__value), + offsetof(struct E2N_RICindication_IEs__value, _asn_ctx), + offsetof(struct E2N_RICindication_IEs__value, present), + sizeof(((struct E2N_RICindication_IEs__value *)0)->present), + asn_MAP_E2N_value_tag2el_52, + 8, /* Count of tags in the map */ + asn_MAP_E2N_value_to_canonical_52, + asn_MAP_E2N_value_from_canonical_52, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_E2N_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_E2N_value_52, + 8, /* Elements count */ + &asn_SPC_E2N_value_specs_52 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2N_RICindication_IEs_49[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICindication_IEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_ProtocolIE_ID, + 0, + { 0, &asn_PER_memb_E2N_id_constr_50, memb_E2N_id_constraint_49 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICindication_IEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_Criticality, + select_RICindication_IEs_E2N_criticality_type, + { 0, &asn_PER_memb_E2N_criticality_constr_51, memb_E2N_criticality_constraint_49 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2N_RICindication_IEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_E2N_value_52, + select_RICindication_IEs_E2N_value_type, + { 0, &asn_PER_memb_E2N_value_constr_52, memb_E2N_value_constraint_49 }, + 0, 0, /* No default value */ + "value" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2N_RICindication_IEs_tags_49[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2N_RICindication_IEs_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_E2N_RICindication_IEs_specs_49 = { + sizeof(struct E2N_RICindication_IEs), + offsetof(struct E2N_RICindication_IEs, _asn_ctx), + asn_MAP_E2N_RICindication_IEs_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_E2N_RICindication_IEs = { + "RICindication-IEs", + "RICindication-IEs", + &asn_OP_SEQUENCE, + asn_DEF_E2N_RICindication_IEs_tags_49, + sizeof(asn_DEF_E2N_RICindication_IEs_tags_49) + /sizeof(asn_DEF_E2N_RICindication_IEs_tags_49[0]), /* 1 */ + asn_DEF_E2N_RICindication_IEs_tags_49, /* Same as above */ + sizeof(asn_DEF_E2N_RICindication_IEs_tags_49) + /sizeof(asn_DEF_E2N_RICindication_IEs_tags_49[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2N_RICindication_IEs_49, + 3, /* Elements count */ + &asn_SPC_E2N_RICindication_IEs_specs_49 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_E2N_value_56[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICcontrolRequest_IEs__value, choice.RICrequestID), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2N_RICrequestID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICrequestID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICcontrolRequest_IEs__value, choice.RANfunctionID), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_E2N_RANfunctionID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RANfunctionID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICcontrolRequest_IEs__value, choice.RICcallProcessID), + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + 0, + &asn_DEF_E2N_RICcallProcessID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICcallProcessID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICcontrolRequest_IEs__value, choice.RICcontrolHeader), + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + 0, + &asn_DEF_E2N_RICcontrolHeader, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICcontrolHeader" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICcontrolRequest_IEs__value, choice.RICcontrolMessage), + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + 0, + &asn_DEF_E2N_RICcontrolMessage, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICcontrolMessage" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICcontrolRequest_IEs__value, choice.RICcontrolAckRequest), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), + 0, + &asn_DEF_E2N_RICcontrolAckRequest, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICcontrolAckRequest" + }, +}; +static const unsigned asn_MAP_E2N_value_to_canonical_56[] = { 1, 2, 3, 4, 5, 0 }; +static const unsigned asn_MAP_E2N_value_from_canonical_56[] = { 5, 0, 1, 2, 3, 4 }; +static const asn_TYPE_tag2member_t asn_MAP_E2N_value_tag2el_56[] = { + { (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 */ + { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 4, -2, 0 }, /* RICcontrolMessage */ + { (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_E2N_value_specs_56 = { + sizeof(struct E2N_RICcontrolRequest_IEs__value), + offsetof(struct E2N_RICcontrolRequest_IEs__value, _asn_ctx), + offsetof(struct E2N_RICcontrolRequest_IEs__value, present), + sizeof(((struct E2N_RICcontrolRequest_IEs__value *)0)->present), + asn_MAP_E2N_value_tag2el_56, + 6, /* Count of tags in the map */ + asn_MAP_E2N_value_to_canonical_56, + asn_MAP_E2N_value_from_canonical_56, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_E2N_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_E2N_value_56, + 6, /* Elements count */ + &asn_SPC_E2N_value_specs_56 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2N_RICcontrolRequest_IEs_53[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICcontrolRequest_IEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_ProtocolIE_ID, + 0, + { 0, &asn_PER_memb_E2N_id_constr_54, memb_E2N_id_constraint_53 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICcontrolRequest_IEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_Criticality, + select_RICcontrolRequest_IEs_E2N_criticality_type, + { 0, &asn_PER_memb_E2N_criticality_constr_55, memb_E2N_criticality_constraint_53 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2N_RICcontrolRequest_IEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_E2N_value_56, + select_RICcontrolRequest_IEs_E2N_value_type, + { 0, &asn_PER_memb_E2N_value_constr_56, memb_E2N_value_constraint_53 }, + 0, 0, /* No default value */ + "value" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2N_RICcontrolRequest_IEs_tags_53[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2N_RICcontrolRequest_IEs_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_E2N_RICcontrolRequest_IEs_specs_53 = { + sizeof(struct E2N_RICcontrolRequest_IEs), + offsetof(struct E2N_RICcontrolRequest_IEs, _asn_ctx), + asn_MAP_E2N_RICcontrolRequest_IEs_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_E2N_RICcontrolRequest_IEs = { + "RICcontrolRequest-IEs", + "RICcontrolRequest-IEs", + &asn_OP_SEQUENCE, + asn_DEF_E2N_RICcontrolRequest_IEs_tags_53, + sizeof(asn_DEF_E2N_RICcontrolRequest_IEs_tags_53) + /sizeof(asn_DEF_E2N_RICcontrolRequest_IEs_tags_53[0]), /* 1 */ + asn_DEF_E2N_RICcontrolRequest_IEs_tags_53, /* Same as above */ + sizeof(asn_DEF_E2N_RICcontrolRequest_IEs_tags_53) + /sizeof(asn_DEF_E2N_RICcontrolRequest_IEs_tags_53[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2N_RICcontrolRequest_IEs_53, + 3, /* Elements count */ + &asn_SPC_E2N_RICcontrolRequest_IEs_specs_53 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_E2N_value_60[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICcontrolAcknowledge_IEs__value, choice.RICrequestID), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2N_RICrequestID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICrequestID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICcontrolAcknowledge_IEs__value, choice.RANfunctionID), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_E2N_RANfunctionID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RANfunctionID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICcontrolAcknowledge_IEs__value, choice.RICcallProcessID), + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + 0, + &asn_DEF_E2N_RICcallProcessID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICcallProcessID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICcontrolAcknowledge_IEs__value, choice.RICcontrolStatus), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), + 0, + &asn_DEF_E2N_RICcontrolStatus, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICcontrolStatus" + }, +}; +static const unsigned asn_MAP_E2N_value_to_canonical_60[] = { 1, 2, 3, 0 }; +static const unsigned asn_MAP_E2N_value_from_canonical_60[] = { 3, 0, 1, 2 }; +static const asn_TYPE_tag2member_t asn_MAP_E2N_value_tag2el_60[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* RANfunctionID */ + { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 2, 0, 0 }, /* RICcallProcessID */ + { (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), 3, 0, 0 }, /* RICcontrolStatus */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RICrequestID */ +}; +static asn_CHOICE_specifics_t asn_SPC_E2N_value_specs_60 = { + sizeof(struct E2N_RICcontrolAcknowledge_IEs__value), + offsetof(struct E2N_RICcontrolAcknowledge_IEs__value, _asn_ctx), + offsetof(struct E2N_RICcontrolAcknowledge_IEs__value, present), + sizeof(((struct E2N_RICcontrolAcknowledge_IEs__value *)0)->present), + asn_MAP_E2N_value_tag2el_60, + 4, /* Count of tags in the map */ + asn_MAP_E2N_value_to_canonical_60, + asn_MAP_E2N_value_from_canonical_60, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_E2N_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_E2N_value_60, + 4, /* Elements count */ + &asn_SPC_E2N_value_specs_60 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2N_RICcontrolAcknowledge_IEs_57[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICcontrolAcknowledge_IEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_ProtocolIE_ID, + 0, + { 0, &asn_PER_memb_E2N_id_constr_58, memb_E2N_id_constraint_57 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICcontrolAcknowledge_IEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_Criticality, + select_RICcontrolAcknowledge_IEs_E2N_criticality_type, + { 0, &asn_PER_memb_E2N_criticality_constr_59, memb_E2N_criticality_constraint_57 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2N_RICcontrolAcknowledge_IEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_E2N_value_60, + select_RICcontrolAcknowledge_IEs_E2N_value_type, + { 0, &asn_PER_memb_E2N_value_constr_60, memb_E2N_value_constraint_57 }, + 0, 0, /* No default value */ + "value" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2N_RICcontrolAcknowledge_IEs_tags_57[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2N_RICcontrolAcknowledge_IEs_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_E2N_RICcontrolAcknowledge_IEs_specs_57 = { + sizeof(struct E2N_RICcontrolAcknowledge_IEs), + offsetof(struct E2N_RICcontrolAcknowledge_IEs, _asn_ctx), + asn_MAP_E2N_RICcontrolAcknowledge_IEs_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_E2N_RICcontrolAcknowledge_IEs = { + "RICcontrolAcknowledge-IEs", + "RICcontrolAcknowledge-IEs", + &asn_OP_SEQUENCE, + asn_DEF_E2N_RICcontrolAcknowledge_IEs_tags_57, + sizeof(asn_DEF_E2N_RICcontrolAcknowledge_IEs_tags_57) + /sizeof(asn_DEF_E2N_RICcontrolAcknowledge_IEs_tags_57[0]), /* 1 */ + asn_DEF_E2N_RICcontrolAcknowledge_IEs_tags_57, /* Same as above */ + sizeof(asn_DEF_E2N_RICcontrolAcknowledge_IEs_tags_57) + /sizeof(asn_DEF_E2N_RICcontrolAcknowledge_IEs_tags_57[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2N_RICcontrolAcknowledge_IEs_57, + 3, /* Elements count */ + &asn_SPC_E2N_RICcontrolAcknowledge_IEs_specs_57 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_E2N_value_64[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICcontrolFailure_IEs__value, choice.RICrequestID), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2N_RICrequestID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICrequestID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICcontrolFailure_IEs__value, choice.RANfunctionID), + (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), + 0, + &asn_DEF_E2N_RANfunctionID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RANfunctionID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICcontrolFailure_IEs__value, choice.RICcallProcessID), + (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), + 0, + &asn_DEF_E2N_RICcallProcessID, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICcallProcessID" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICcontrolFailure_IEs__value, choice.RICcause), + -1 /* Ambiguous tag (CHOICE?) */, + 0, + &asn_DEF_E2N_RICcause, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RICcause" + }, +}; +static const unsigned asn_MAP_E2N_value_to_canonical_64[] = { 1, 2, 0, 3 }; +static const unsigned asn_MAP_E2N_value_from_canonical_64[] = { 2, 0, 1, 3 }; +static const asn_TYPE_tag2member_t asn_MAP_E2N_value_tag2el_64[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 1, 0, 0 }, /* RANfunctionID */ + { (ASN_TAG_CLASS_UNIVERSAL | (4 << 2)), 2, 0, 0 }, /* RICcallProcessID */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 }, /* RICrequestID */ + { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 3, 0, 0 }, /* radioNetwork */ + { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 3, 0, 0 }, /* transport */ + { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 3, 0, 0 }, /* protocol */ + { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* misc */ + { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 3, 0, 0 } /* ric */ +}; +static asn_CHOICE_specifics_t asn_SPC_E2N_value_specs_64 = { + sizeof(struct E2N_RICcontrolFailure_IEs__value), + offsetof(struct E2N_RICcontrolFailure_IEs__value, _asn_ctx), + offsetof(struct E2N_RICcontrolFailure_IEs__value, present), + sizeof(((struct E2N_RICcontrolFailure_IEs__value *)0)->present), + asn_MAP_E2N_value_tag2el_64, + 8, /* Count of tags in the map */ + asn_MAP_E2N_value_to_canonical_64, + asn_MAP_E2N_value_from_canonical_64, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_E2N_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_E2N_value_64, + 4, /* Elements count */ + &asn_SPC_E2N_value_specs_64 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2N_RICcontrolFailure_IEs_61[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICcontrolFailure_IEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_ProtocolIE_ID, + 0, + { 0, &asn_PER_memb_E2N_id_constr_62, memb_E2N_id_constraint_61 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICcontrolFailure_IEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_Criticality, + select_RICcontrolFailure_IEs_E2N_criticality_type, + { 0, &asn_PER_memb_E2N_criticality_constr_63, memb_E2N_criticality_constraint_61 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2N_RICcontrolFailure_IEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_E2N_value_64, + select_RICcontrolFailure_IEs_E2N_value_type, + { 0, &asn_PER_memb_E2N_value_constr_64, memb_E2N_value_constraint_61 }, + 0, 0, /* No default value */ + "value" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2N_RICcontrolFailure_IEs_tags_61[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2N_RICcontrolFailure_IEs_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_E2N_RICcontrolFailure_IEs_specs_61 = { + sizeof(struct E2N_RICcontrolFailure_IEs), + offsetof(struct E2N_RICcontrolFailure_IEs, _asn_ctx), + asn_MAP_E2N_RICcontrolFailure_IEs_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_E2N_RICcontrolFailure_IEs = { + "RICcontrolFailure-IEs", + "RICcontrolFailure-IEs", + &asn_OP_SEQUENCE, + asn_DEF_E2N_RICcontrolFailure_IEs_tags_61, + sizeof(asn_DEF_E2N_RICcontrolFailure_IEs_tags_61) + /sizeof(asn_DEF_E2N_RICcontrolFailure_IEs_tags_61[0]), /* 1 */ + asn_DEF_E2N_RICcontrolFailure_IEs_tags_61, /* Same as above */ + sizeof(asn_DEF_E2N_RICcontrolFailure_IEs_tags_61) + /sizeof(asn_DEF_E2N_RICcontrolFailure_IEs_tags_61[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2N_RICcontrolFailure_IEs_61, + 3, /* Elements count */ + &asn_SPC_E2N_RICcontrolFailure_IEs_specs_61 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_E2N_value_68[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICserviceUpdate_IEs__value, choice.RANfunctions_List), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2N_RANfunctions_List, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RANfunctions-List" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICserviceUpdate_IEs__value, choice.RANfunctionsID_List), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2N_RANfunctionsID_List, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RANfunctionsID-List" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_E2N_value_tag2el_68[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 1 }, /* RANfunctions-List */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 0 } /* RANfunctionsID-List */ +}; +static asn_CHOICE_specifics_t asn_SPC_E2N_value_specs_68 = { + sizeof(struct E2N_RICserviceUpdate_IEs__value), + offsetof(struct E2N_RICserviceUpdate_IEs__value, _asn_ctx), + offsetof(struct E2N_RICserviceUpdate_IEs__value, present), + sizeof(((struct E2N_RICserviceUpdate_IEs__value *)0)->present), + asn_MAP_E2N_value_tag2el_68, + 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_E2N_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_E2N_value_68, + 2, /* Elements count */ + &asn_SPC_E2N_value_specs_68 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2N_RICserviceUpdate_IEs_65[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICserviceUpdate_IEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_ProtocolIE_ID, + 0, + { 0, &asn_PER_memb_E2N_id_constr_66, memb_E2N_id_constraint_65 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICserviceUpdate_IEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_Criticality, + select_RICserviceUpdate_IEs_E2N_criticality_type, + { 0, &asn_PER_memb_E2N_criticality_constr_67, memb_E2N_criticality_constraint_65 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2N_RICserviceUpdate_IEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_E2N_value_68, + select_RICserviceUpdate_IEs_E2N_value_type, + { 0, &asn_PER_memb_E2N_value_constr_68, memb_E2N_value_constraint_65 }, + 0, 0, /* No default value */ + "value" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2N_RICserviceUpdate_IEs_tags_65[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2N_RICserviceUpdate_IEs_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_E2N_RICserviceUpdate_IEs_specs_65 = { + sizeof(struct E2N_RICserviceUpdate_IEs), + offsetof(struct E2N_RICserviceUpdate_IEs, _asn_ctx), + asn_MAP_E2N_RICserviceUpdate_IEs_tag2el_65, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2N_RICserviceUpdate_IEs = { + "RICserviceUpdate-IEs", + "RICserviceUpdate-IEs", + &asn_OP_SEQUENCE, + asn_DEF_E2N_RICserviceUpdate_IEs_tags_65, + sizeof(asn_DEF_E2N_RICserviceUpdate_IEs_tags_65) + /sizeof(asn_DEF_E2N_RICserviceUpdate_IEs_tags_65[0]), /* 1 */ + asn_DEF_E2N_RICserviceUpdate_IEs_tags_65, /* Same as above */ + sizeof(asn_DEF_E2N_RICserviceUpdate_IEs_tags_65) + /sizeof(asn_DEF_E2N_RICserviceUpdate_IEs_tags_65[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2N_RICserviceUpdate_IEs_65, + 3, /* Elements count */ + &asn_SPC_E2N_RICserviceUpdate_IEs_specs_65 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_E2N_value_72[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICserviceUpdateAcknowledge_IEs__value, choice.RANfunctionsID_List), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2N_RANfunctionsID_List, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RANfunctionsID-List" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICserviceUpdateAcknowledge_IEs__value, choice.RANfunctionsIDcause_List), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2N_RANfunctionsIDcause_List, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RANfunctionsIDcause-List" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_E2N_value_tag2el_72[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 1 }, /* RANfunctionsID-List */ + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 1, -1, 0 } /* RANfunctionsIDcause-List */ +}; +static asn_CHOICE_specifics_t asn_SPC_E2N_value_specs_72 = { + sizeof(struct E2N_RICserviceUpdateAcknowledge_IEs__value), + offsetof(struct E2N_RICserviceUpdateAcknowledge_IEs__value, _asn_ctx), + offsetof(struct E2N_RICserviceUpdateAcknowledge_IEs__value, present), + sizeof(((struct E2N_RICserviceUpdateAcknowledge_IEs__value *)0)->present), + asn_MAP_E2N_value_tag2el_72, + 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_E2N_value_72 = { + "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_E2N_value_72, + 2, /* Elements count */ + &asn_SPC_E2N_value_specs_72 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2N_RICserviceUpdateAcknowledge_IEs_69[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICserviceUpdateAcknowledge_IEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_ProtocolIE_ID, + 0, + { 0, &asn_PER_memb_E2N_id_constr_70, memb_E2N_id_constraint_69 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICserviceUpdateAcknowledge_IEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_Criticality, + select_RICserviceUpdateAcknowledge_IEs_E2N_criticality_type, + { 0, &asn_PER_memb_E2N_criticality_constr_71, memb_E2N_criticality_constraint_69 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2N_RICserviceUpdateAcknowledge_IEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_E2N_value_72, + select_RICserviceUpdateAcknowledge_IEs_E2N_value_type, + { 0, &asn_PER_memb_E2N_value_constr_72, memb_E2N_value_constraint_69 }, + 0, 0, /* No default value */ + "value" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2N_RICserviceUpdateAcknowledge_IEs_tags_69[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2N_RICserviceUpdateAcknowledge_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_E2N_RICserviceUpdateAcknowledge_IEs_specs_69 = { + sizeof(struct E2N_RICserviceUpdateAcknowledge_IEs), + offsetof(struct E2N_RICserviceUpdateAcknowledge_IEs, _asn_ctx), + asn_MAP_E2N_RICserviceUpdateAcknowledge_IEs_tag2el_69, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2N_RICserviceUpdateAcknowledge_IEs = { + "RICserviceUpdateAcknowledge-IEs", + "RICserviceUpdateAcknowledge-IEs", + &asn_OP_SEQUENCE, + asn_DEF_E2N_RICserviceUpdateAcknowledge_IEs_tags_69, + sizeof(asn_DEF_E2N_RICserviceUpdateAcknowledge_IEs_tags_69) + /sizeof(asn_DEF_E2N_RICserviceUpdateAcknowledge_IEs_tags_69[0]), /* 1 */ + asn_DEF_E2N_RICserviceUpdateAcknowledge_IEs_tags_69, /* Same as above */ + sizeof(asn_DEF_E2N_RICserviceUpdateAcknowledge_IEs_tags_69) + /sizeof(asn_DEF_E2N_RICserviceUpdateAcknowledge_IEs_tags_69[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2N_RICserviceUpdateAcknowledge_IEs_69, + 3, /* Elements count */ + &asn_SPC_E2N_RICserviceUpdateAcknowledge_IEs_specs_69 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_E2N_value_76[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICserviceUpdateFailure_IEs__value, choice.RANfunctionsIDcause_List), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2N_RANfunctionsIDcause_List, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RANfunctionsIDcause-List" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICserviceUpdateFailure_IEs__value, choice.TimeToWait), + (ASN_TAG_CLASS_UNIVERSAL | (10 << 2)), + 0, + &asn_DEF_E2N_TimeToWait, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "TimeToWait" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICserviceUpdateFailure_IEs__value, choice.CriticalityDiagnostics), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2N_CriticalityDiagnostics, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "CriticalityDiagnostics" + }, +}; +static const unsigned asn_MAP_E2N_value_to_canonical_76[] = { 1, 0, 2 }; +static const unsigned asn_MAP_E2N_value_from_canonical_76[] = { 1, 0, 2 }; +static const asn_TYPE_tag2member_t asn_MAP_E2N_value_tag2el_76[] = { + { (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 asn_CHOICE_specifics_t asn_SPC_E2N_value_specs_76 = { + sizeof(struct E2N_RICserviceUpdateFailure_IEs__value), + offsetof(struct E2N_RICserviceUpdateFailure_IEs__value, _asn_ctx), + offsetof(struct E2N_RICserviceUpdateFailure_IEs__value, present), + sizeof(((struct E2N_RICserviceUpdateFailure_IEs__value *)0)->present), + asn_MAP_E2N_value_tag2el_76, + 3, /* Count of tags in the map */ + asn_MAP_E2N_value_to_canonical_76, + asn_MAP_E2N_value_from_canonical_76, + -1 /* Extensions start */ +}; +static /* Use -fall-defs-global to expose */ +asn_TYPE_descriptor_t asn_DEF_E2N_value_76 = { + "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_E2N_value_76, + 3, /* Elements count */ + &asn_SPC_E2N_value_specs_76 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2N_RICserviceUpdateFailure_IEs_73[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICserviceUpdateFailure_IEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_ProtocolIE_ID, + 0, + { 0, &asn_PER_memb_E2N_id_constr_74, memb_E2N_id_constraint_73 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICserviceUpdateFailure_IEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_Criticality, + select_RICserviceUpdateFailure_IEs_E2N_criticality_type, + { 0, &asn_PER_memb_E2N_criticality_constr_75, memb_E2N_criticality_constraint_73 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2N_RICserviceUpdateFailure_IEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_E2N_value_76, + select_RICserviceUpdateFailure_IEs_E2N_value_type, + { 0, &asn_PER_memb_E2N_value_constr_76, memb_E2N_value_constraint_73 }, + 0, 0, /* No default value */ + "value" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2N_RICserviceUpdateFailure_IEs_tags_73[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2N_RICserviceUpdateFailure_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_E2N_RICserviceUpdateFailure_IEs_specs_73 = { + sizeof(struct E2N_RICserviceUpdateFailure_IEs), + offsetof(struct E2N_RICserviceUpdateFailure_IEs, _asn_ctx), + asn_MAP_E2N_RICserviceUpdateFailure_IEs_tag2el_73, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2N_RICserviceUpdateFailure_IEs = { + "RICserviceUpdateFailure-IEs", + "RICserviceUpdateFailure-IEs", + &asn_OP_SEQUENCE, + asn_DEF_E2N_RICserviceUpdateFailure_IEs_tags_73, + sizeof(asn_DEF_E2N_RICserviceUpdateFailure_IEs_tags_73) + /sizeof(asn_DEF_E2N_RICserviceUpdateFailure_IEs_tags_73[0]), /* 1 */ + asn_DEF_E2N_RICserviceUpdateFailure_IEs_tags_73, /* Same as above */ + sizeof(asn_DEF_E2N_RICserviceUpdateFailure_IEs_tags_73) + /sizeof(asn_DEF_E2N_RICserviceUpdateFailure_IEs_tags_73[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2N_RICserviceUpdateFailure_IEs_73, + 3, /* Elements count */ + &asn_SPC_E2N_RICserviceUpdateFailure_IEs_specs_73 /* Additional specs */ +}; + +static asn_TYPE_member_t asn_MBR_E2N_value_80[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICserviceQuery_IEs__value, choice.RANfunctionsID_List), + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), + 0, + &asn_DEF_E2N_RANfunctionsID_List, + 0, + { 0, 0, 0 }, + 0, 0, /* No default value */ + "RANfunctionsID-List" + }, +}; +static const asn_TYPE_tag2member_t asn_MAP_E2N_value_tag2el_80[] = { + { (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)), 0, 0, 0 } /* RANfunctionsID-List */ +}; +static asn_CHOICE_specifics_t asn_SPC_E2N_value_specs_80 = { + sizeof(struct E2N_RICserviceQuery_IEs__value), + offsetof(struct E2N_RICserviceQuery_IEs__value, _asn_ctx), + offsetof(struct E2N_RICserviceQuery_IEs__value, present), + sizeof(((struct E2N_RICserviceQuery_IEs__value *)0)->present), + asn_MAP_E2N_value_tag2el_80, + 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_E2N_value_80 = { + "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_E2N_value_80, + 1, /* Elements count */ + &asn_SPC_E2N_value_specs_80 /* Additional specs */ +}; + +asn_TYPE_member_t asn_MBR_E2N_RICserviceQuery_IEs_77[] = { + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICserviceQuery_IEs, id), + (ASN_TAG_CLASS_CONTEXT | (0 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_ProtocolIE_ID, + 0, + { 0, &asn_PER_memb_E2N_id_constr_78, memb_E2N_id_constraint_77 }, + 0, 0, /* No default value */ + "id" + }, + { ATF_NOFLAGS, 0, offsetof(struct E2N_RICserviceQuery_IEs, criticality), + (ASN_TAG_CLASS_CONTEXT | (1 << 2)), + -1, /* IMPLICIT tag at current level */ + &asn_DEF_E2N_Criticality, + select_RICserviceQuery_IEs_E2N_criticality_type, + { 0, &asn_PER_memb_E2N_criticality_constr_79, memb_E2N_criticality_constraint_77 }, + 0, 0, /* No default value */ + "criticality" + }, + { ATF_OPEN_TYPE | ATF_NOFLAGS, 0, offsetof(struct E2N_RICserviceQuery_IEs, value), + (ASN_TAG_CLASS_CONTEXT | (2 << 2)), + +1, /* EXPLICIT tag at current level */ + &asn_DEF_E2N_value_80, + select_RICserviceQuery_IEs_E2N_value_type, + { 0, &asn_PER_memb_E2N_value_constr_80, memb_E2N_value_constraint_77 }, + 0, 0, /* No default value */ + "value" + }, +}; +static const ber_tlv_tag_t asn_DEF_E2N_RICserviceQuery_IEs_tags_77[] = { + (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)) +}; +static const asn_TYPE_tag2member_t asn_MAP_E2N_RICserviceQuery_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_E2N_RICserviceQuery_IEs_specs_77 = { + sizeof(struct E2N_RICserviceQuery_IEs), + offsetof(struct E2N_RICserviceQuery_IEs, _asn_ctx), + asn_MAP_E2N_RICserviceQuery_IEs_tag2el_77, + 3, /* Count of tags in the map */ + 0, 0, 0, /* Optional elements (not needed) */ + -1, /* First extension addition */ +}; +asn_TYPE_descriptor_t asn_DEF_E2N_RICserviceQuery_IEs = { + "RICserviceQuery-IEs", + "RICserviceQuery-IEs", + &asn_OP_SEQUENCE, + asn_DEF_E2N_RICserviceQuery_IEs_tags_77, + sizeof(asn_DEF_E2N_RICserviceQuery_IEs_tags_77) + /sizeof(asn_DEF_E2N_RICserviceQuery_IEs_tags_77[0]), /* 1 */ + asn_DEF_E2N_RICserviceQuery_IEs_tags_77, /* Same as above */ + sizeof(asn_DEF_E2N_RICserviceQuery_IEs_tags_77) + /sizeof(asn_DEF_E2N_RICserviceQuery_IEs_tags_77[0]), /* 1 */ + { 0, 0, SEQUENCE_constraint }, + asn_MBR_E2N_RICserviceQuery_IEs_77, + 3, /* Elements count */ + &asn_SPC_E2N_RICserviceQuery_IEs_specs_77 /* Additional specs */ +}; +