diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-10 20:34:10 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-10 20:34:10 +0000 |
commit | e4ba6dbc3f1e76890b22773807ea37fe8fa2b1bc (patch) | |
tree | 68cb5ef9081156392f1dd62a00c6ccc1451b93df /epan/dissectors/packet-nrppa.c | |
parent | Initial commit. (diff) | |
download | wireshark-e4ba6dbc3f1e76890b22773807ea37fe8fa2b1bc.tar.xz wireshark-e4ba6dbc3f1e76890b22773807ea37fe8fa2b1bc.zip |
Adding upstream version 4.2.2.upstream/4.2.2
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'epan/dissectors/packet-nrppa.c')
-rw-r--r-- | epan/dissectors/packet-nrppa.c | 15237 |
1 files changed, 15237 insertions, 0 deletions
diff --git a/epan/dissectors/packet-nrppa.c b/epan/dissectors/packet-nrppa.c new file mode 100644 index 00000000..fc701167 --- /dev/null +++ b/epan/dissectors/packet-nrppa.c @@ -0,0 +1,15237 @@ +/* Do not modify this file. Changes will be overwritten. */ +/* Generated automatically by the ASN.1 to Wireshark dissector compiler */ +/* packet-nrppa.c */ +/* asn2wrs.py -L -p nrppa -c ./nrppa.cnf -s ./packet-nrppa-template -D . -O ../.. NRPPA-CommonDataTypes.asn NRPPA-Constants.asn NRPPA-Containers.asn NRPPA-PDU-Descriptions.asn NRPPA-IEs.asn NRPPA-PDU-Contents.asn */ + +/* packet-nrppa.c + * Routines for 3GPP NR Positioning Protocol A (NRPPa) packet dissection + * Copyright 2019, Anders Broman <anders.broman@ericsson.com> + * + * Wireshark - Network traffic analyzer + * By Gerald Combs <gerald@wireshark.org> + * Copyright 1998 Gerald Combs + * + * SPDX-License-Identifier: GPL-2.0-or-later + * + * Ref 3GPP TS 38.455 V17.4.0 (2023-03) + * http://www.3gpp.org + */ + +#include "config.h" + +#include <epan/packet.h> +#include <epan/asn1.h> + +#include "packet-per.h" +#include "packet-nrppa.h" + +#define PNAME "NR Positioning Protocol A (NRPPa)" +#define PSNAME "NRPPa" +#define PFNAME "nrppa" + +void proto_register_nrppa(void); +void proto_reg_handoff_nrppa(void); + +/* Initialize the protocol and registered fields */ +static int proto_nrppa = -1; + +static int hf_nrppa_NRPPA_PDU_PDU = -1; /* NRPPA_PDU */ +static int hf_nrppa_AbortTransmission_PDU = -1; /* AbortTransmission */ +static int hf_nrppa_ExtendedAdditionalPathList_PDU = -1; /* ExtendedAdditionalPathList */ +static int hf_nrppa_AoA_AssistanceInfo_PDU = -1; /* AoA_AssistanceInfo */ +static int hf_nrppa_ARP_ID_PDU = -1; /* ARP_ID */ +static int hf_nrppa_ARPLocationInformation_PDU = -1; /* ARPLocationInformation */ +static int hf_nrppa_nrppa_Assistance_Information_PDU = -1; /* Assistance_Information */ +static int hf_nrppa_AssistanceInformationFailureList_PDU = -1; /* AssistanceInformationFailureList */ +static int hf_nrppa_Broadcast_PDU = -1; /* Broadcast */ +static int hf_nrppa_PositioningBroadcastCells_PDU = -1; /* PositioningBroadcastCells */ +static int hf_nrppa_Cause_PDU = -1; /* Cause */ +static int hf_nrppa_Cell_Portion_ID_PDU = -1; /* Cell_Portion_ID */ +static int hf_nrppa_CGI_NR_PDU = -1; /* CGI_NR */ +static int hf_nrppa_CriticalityDiagnostics_PDU = -1; /* CriticalityDiagnostics */ +static int hf_nrppa_E_CID_MeasurementResult_PDU = -1; /* E_CID_MeasurementResult */ +static int hf_nrppa_GeographicalCoordinates_PDU = -1; /* GeographicalCoordinates */ +static int hf_nrppa_LoS_NLoSInformation_PDU = -1; /* LoS_NLoSInformation */ +static int hf_nrppa_Measurement_ID_PDU = -1; /* Measurement_ID */ +static int hf_nrppa_MeasurementAmount_PDU = -1; /* MeasurementAmount */ +static int hf_nrppa_MeasurementBeamInfoRequest_PDU = -1; /* MeasurementBeamInfoRequest */ +static int hf_nrppa_MeasurementPeriodicity_PDU = -1; /* MeasurementPeriodicity */ +static int hf_nrppa_MeasurementPeriodicityExtended_PDU = -1; /* MeasurementPeriodicityExtended */ +static int hf_nrppa_MeasurementPeriodicityNR_AoA_PDU = -1; /* MeasurementPeriodicityNR_AoA */ +static int hf_nrppa_MeasurementQuantities_PDU = -1; /* MeasurementQuantities */ +static int hf_nrppa_MeasurementQuantities_Item_PDU = -1; /* MeasurementQuantities_Item */ +static int hf_nrppa_MeasurementTimeOccasion_PDU = -1; /* MeasurementTimeOccasion */ +static int hf_nrppa_MeasurementCharacteristicsRequestIndicator_PDU = -1; /* MeasurementCharacteristicsRequestIndicator */ +static int hf_nrppa_MultipleULAoA_PDU = -1; /* MultipleULAoA */ +static int hf_nrppa_NR_TADV_PDU = -1; /* NR_TADV */ +static int hf_nrppa_NumberOfTRPRxTEG_PDU = -1; /* NumberOfTRPRxTEG */ +static int hf_nrppa_NumberOfTRPRxTxTEG_PDU = -1; /* NumberOfTRPRxTxTEG */ +static int hf_nrppa_OnDemandPRS_Info_PDU = -1; /* OnDemandPRS_Info */ +static int hf_nrppa_OTDOACells_PDU = -1; /* OTDOACells */ +static int hf_nrppa_OtherRATMeasurementQuantities_PDU = -1; /* OtherRATMeasurementQuantities */ +static int hf_nrppa_OtherRATMeasurementQuantities_Item_PDU = -1; /* OtherRATMeasurementQuantities_Item */ +static int hf_nrppa_OtherRATMeasurementResult_PDU = -1; /* OtherRATMeasurementResult */ +static int hf_nrppa_PreconfigurationResult_PDU = -1; /* PreconfigurationResult */ +static int hf_nrppa_PRSConfigRequestType_PDU = -1; /* PRSConfigRequestType */ +static int hf_nrppa_PRS_Measurements_Info_List_PDU = -1; /* PRS_Measurements_Info_List */ +static int hf_nrppa_PRS_Resource_ID_PDU = -1; /* PRS_Resource_ID */ +static int hf_nrppa_PRSTRPList_PDU = -1; /* PRSTRPList */ +static int hf_nrppa_PRSTransmissionTRPList_PDU = -1; /* PRSTransmissionTRPList */ +static int hf_nrppa_ReportCharacteristics_PDU = -1; /* ReportCharacteristics */ +static int hf_nrppa_RequestedSRSTransmissionCharacteristics_PDU = -1; /* RequestedSRSTransmissionCharacteristics */ +static int hf_nrppa_RequestType_PDU = -1; /* RequestType */ +static int hf_nrppa_ResponseTime_PDU = -1; /* ResponseTime */ +static int hf_nrppa_ResultCSI_RSRP_PDU = -1; /* ResultCSI_RSRP */ +static int hf_nrppa_ResultCSI_RSRQ_PDU = -1; /* ResultCSI_RSRQ */ +static int hf_nrppa_ResultEUTRA_PDU = -1; /* ResultEUTRA */ +static int hf_nrppa_ResultSS_RSRP_PDU = -1; /* ResultSS_RSRP */ +static int hf_nrppa_ResultSS_RSRQ_PDU = -1; /* ResultSS_RSRQ */ +static int hf_nrppa_ResultNR_PDU = -1; /* ResultNR */ +static int hf_nrppa_RelativeTime1900_PDU = -1; /* RelativeTime1900 */ +static int hf_nrppa_SFNInitialisationTime_EUTRA_PDU = -1; /* SFNInitialisationTime_EUTRA */ +static int hf_nrppa_SlotNumber_PDU = -1; /* SlotNumber */ +static int hf_nrppa_SpatialRelationInfo_PDU = -1; /* SpatialRelationInfo */ +static int hf_nrppa_SpatialRelationPerSRSResource_PDU = -1; /* SpatialRelationPerSRSResource */ +static int hf_nrppa_SRSConfiguration_PDU = -1; /* SRSConfiguration */ +static int hf_nrppa_SrsFrequency_PDU = -1; /* SrsFrequency */ +static int hf_nrppa_SRSPortIndex_PDU = -1; /* SRSPortIndex */ +static int hf_nrppa_SRSResourcetype_PDU = -1; /* SRSResourcetype */ +static int hf_nrppa_SRSTransmissionStatus_PDU = -1; /* SRSTransmissionStatus */ +static int hf_nrppa_SystemFrameNumber_PDU = -1; /* SystemFrameNumber */ +static int hf_nrppa_TDD_Config_EUTRA_Item_PDU = -1; /* TDD_Config_EUTRA_Item */ +static int hf_nrppa_TRPTEGInformation_PDU = -1; /* TRPTEGInformation */ +static int hf_nrppa_TimingErrorMargin_PDU = -1; /* TimingErrorMargin */ +static int hf_nrppa_TRPBeamAntennaInformation_PDU = -1; /* TRPBeamAntennaInformation */ +static int hf_nrppa_TRPMeasurementQuantities_PDU = -1; /* TRPMeasurementQuantities */ +static int hf_nrppa_TRP_MeasurementRequestList_PDU = -1; /* TRP_MeasurementRequestList */ +static int hf_nrppa_TRP_MeasurementResponseList_PDU = -1; /* TRP_MeasurementResponseList */ +static int hf_nrppa_TRP_MeasurementUpdateList_PDU = -1; /* TRP_MeasurementUpdateList */ +static int hf_nrppa_TRPInformationListTRPResp_PDU = -1; /* TRPInformationListTRPResp */ +static int hf_nrppa_TRPInformationTypeListTRPReq_PDU = -1; /* TRPInformationTypeListTRPReq */ +static int hf_nrppa_TRPInformationTypeItem_PDU = -1; /* TRPInformationTypeItem */ +static int hf_nrppa_TRPList_PDU = -1; /* TRPList */ +static int hf_nrppa_TRP_PRS_Information_List_PDU = -1; /* TRP_PRS_Information_List */ +static int hf_nrppa_TRP_Rx_TEGInformation_PDU = -1; /* TRP_Rx_TEGInformation */ +static int hf_nrppa_TRPTxTEGAssociation_PDU = -1; /* TRPTxTEGAssociation */ +static int hf_nrppa_TRPType_PDU = -1; /* TRPType */ +static int hf_nrppa_UE_Measurement_ID_PDU = -1; /* UE_Measurement_ID */ +static int hf_nrppa_UEReportingInformation_PDU = -1; /* UEReportingInformation */ +static int hf_nrppa_UE_TEG_ReportingPeriodicity_PDU = -1; /* UE_TEG_ReportingPeriodicity */ +static int hf_nrppa_UETxTEGAssociationList_PDU = -1; /* UETxTEGAssociationList */ +static int hf_nrppa_UE_TEG_Info_Request_PDU = -1; /* UE_TEG_Info_Request */ +static int hf_nrppa_UL_AoA_PDU = -1; /* UL_AoA */ +static int hf_nrppa_UL_SRS_RSRPP_PDU = -1; /* UL_SRS_RSRPP */ +static int hf_nrppa_WLANMeasurementQuantities_PDU = -1; /* WLANMeasurementQuantities */ +static int hf_nrppa_WLANMeasurementQuantities_Item_PDU = -1; /* WLANMeasurementQuantities_Item */ +static int hf_nrppa_WLANMeasurementResult_PDU = -1; /* WLANMeasurementResult */ +static int hf_nrppa_ZoA_PDU = -1; /* ZoA */ +static int hf_nrppa_E_CIDMeasurementInitiationRequest_PDU = -1; /* E_CIDMeasurementInitiationRequest */ +static int hf_nrppa_E_CIDMeasurementInitiationResponse_PDU = -1; /* E_CIDMeasurementInitiationResponse */ +static int hf_nrppa_E_CIDMeasurementInitiationFailure_PDU = -1; /* E_CIDMeasurementInitiationFailure */ +static int hf_nrppa_E_CIDMeasurementFailureIndication_PDU = -1; /* E_CIDMeasurementFailureIndication */ +static int hf_nrppa_E_CIDMeasurementReport_PDU = -1; /* E_CIDMeasurementReport */ +static int hf_nrppa_E_CIDMeasurementTerminationCommand_PDU = -1; /* E_CIDMeasurementTerminationCommand */ +static int hf_nrppa_OTDOAInformationRequest_PDU = -1; /* OTDOAInformationRequest */ +static int hf_nrppa_OTDOA_Information_Type_PDU = -1; /* OTDOA_Information_Type */ +static int hf_nrppa_OTDOA_Information_Type_Item_PDU = -1; /* OTDOA_Information_Type_Item */ +static int hf_nrppa_OTDOAInformationResponse_PDU = -1; /* OTDOAInformationResponse */ +static int hf_nrppa_OTDOAInformationFailure_PDU = -1; /* OTDOAInformationFailure */ +static int hf_nrppa_AssistanceInformationControl_PDU = -1; /* AssistanceInformationControl */ +static int hf_nrppa_AssistanceInformationFeedback_PDU = -1; /* AssistanceInformationFeedback */ +static int hf_nrppa_ErrorIndication_PDU = -1; /* ErrorIndication */ +static int hf_nrppa_PrivateMessage_PDU = -1; /* PrivateMessage */ +static int hf_nrppa_PositioningInformationRequest_PDU = -1; /* PositioningInformationRequest */ +static int hf_nrppa_PositioningInformationResponse_PDU = -1; /* PositioningInformationResponse */ +static int hf_nrppa_PositioningInformationFailure_PDU = -1; /* PositioningInformationFailure */ +static int hf_nrppa_PositioningInformationUpdate_PDU = -1; /* PositioningInformationUpdate */ +static int hf_nrppa_MeasurementRequest_PDU = -1; /* MeasurementRequest */ +static int hf_nrppa_MeasurementResponse_PDU = -1; /* MeasurementResponse */ +static int hf_nrppa_MeasurementFailure_PDU = -1; /* MeasurementFailure */ +static int hf_nrppa_MeasurementReport_PDU = -1; /* MeasurementReport */ +static int hf_nrppa_MeasurementUpdate_PDU = -1; /* MeasurementUpdate */ +static int hf_nrppa_MeasurementAbort_PDU = -1; /* MeasurementAbort */ +static int hf_nrppa_MeasurementFailureIndication_PDU = -1; /* MeasurementFailureIndication */ +static int hf_nrppa_TRPInformationRequest_PDU = -1; /* TRPInformationRequest */ +static int hf_nrppa_TRPInformationResponse_PDU = -1; /* TRPInformationResponse */ +static int hf_nrppa_TRPInformationFailure_PDU = -1; /* TRPInformationFailure */ +static int hf_nrppa_PositioningActivationRequest_PDU = -1; /* PositioningActivationRequest */ +static int hf_nrppa_SRSType_PDU = -1; /* SRSType */ +static int hf_nrppa_PositioningActivationResponse_PDU = -1; /* PositioningActivationResponse */ +static int hf_nrppa_PositioningActivationFailure_PDU = -1; /* PositioningActivationFailure */ +static int hf_nrppa_PositioningDeactivation_PDU = -1; /* PositioningDeactivation */ +static int hf_nrppa_PRSConfigurationRequest_PDU = -1; /* PRSConfigurationRequest */ +static int hf_nrppa_PRSConfigurationResponse_PDU = -1; /* PRSConfigurationResponse */ +static int hf_nrppa_PRSConfigurationFailure_PDU = -1; /* PRSConfigurationFailure */ +static int hf_nrppa_MeasurementPreconfigurationRequired_PDU = -1; /* MeasurementPreconfigurationRequired */ +static int hf_nrppa_MeasurementPreconfigurationConfirm_PDU = -1; /* MeasurementPreconfigurationConfirm */ +static int hf_nrppa_MeasurementPreconfigurationRefuse_PDU = -1; /* MeasurementPreconfigurationRefuse */ +static int hf_nrppa_MeasurementActivation_PDU = -1; /* MeasurementActivation */ +static int hf_nrppa_local = -1; /* INTEGER_0_maxPrivateIEs */ +static int hf_nrppa_global = -1; /* OBJECT_IDENTIFIER */ +static int hf_nrppa_ProtocolIE_Container_item = -1; /* ProtocolIE_Field */ +static int hf_nrppa_id = -1; /* ProtocolIE_ID */ +static int hf_nrppa_criticality = -1; /* Criticality */ +static int hf_nrppa_ie_field_value = -1; /* T_ie_field_value */ +static int hf_nrppa_ProtocolExtensionContainer_item = -1; /* ProtocolExtensionField */ +static int hf_nrppa_ext_id = -1; /* ProtocolIE_ID */ +static int hf_nrppa_extensionValue = -1; /* T_extensionValue */ +static int hf_nrppa_PrivateIE_Container_item = -1; /* PrivateIE_Field */ +static int hf_nrppa_id_01 = -1; /* PrivateIE_ID */ +static int hf_nrppa_value = -1; /* T_value */ +static int hf_nrppa_initiatingMessage = -1; /* InitiatingMessage */ +static int hf_nrppa_successfulOutcome = -1; /* SuccessfulOutcome */ +static int hf_nrppa_unsuccessfulOutcome = -1; /* UnsuccessfulOutcome */ +static int hf_nrppa_procedureCode = -1; /* ProcedureCode */ +static int hf_nrppa_nrppatransactionID = -1; /* NRPPATransactionID */ +static int hf_nrppa_initiatingMessagevalue = -1; /* InitiatingMessage_value */ +static int hf_nrppa_successfulOutcome_value = -1; /* SuccessfulOutcome_value */ +static int hf_nrppa_unsuccessfulOutcome_value = -1; /* UnsuccessfulOutcome_value */ +static int hf_nrppa_deactivateSRSResourceSetID = -1; /* SRSResourceSetID */ +static int hf_nrppa_releaseALL = -1; /* NULL */ +static int hf_nrppa_choice_extension = -1; /* ProtocolIE_Single_Container */ +static int hf_nrppa_locationAndBandwidth = -1; /* INTEGER_0_37949_ */ +static int hf_nrppa_subcarrierSpacing = -1; /* T_subcarrierSpacing */ +static int hf_nrppa_cyclicPrefix = -1; /* T_cyclicPrefix */ +static int hf_nrppa_txDirectCurrentLocation = -1; /* INTEGER_0_3301_ */ +static int hf_nrppa_shift7dot5kHz = -1; /* T_shift7dot5kHz */ +static int hf_nrppa_sRSConfig = -1; /* SRSConfig */ +static int hf_nrppa_iE_Extensions = -1; /* ProtocolExtensionContainer */ +static int hf_nrppa_AdditionalPathList_item = -1; /* AdditionalPathListItem */ +static int hf_nrppa_relativeTimeOfPath = -1; /* RelativePathDelay */ +static int hf_nrppa_pathQuality = -1; /* TrpMeasurementQuality */ +static int hf_nrppa_ExtendedAdditionalPathList_item = -1; /* ExtendedAdditionalPathList_Item */ +static int hf_nrppa_multipleULAoA = -1; /* MultipleULAoA */ +static int hf_nrppa_pathPower = -1; /* UL_SRS_RSRPP */ +static int hf_nrppa_angleMeasurement = -1; /* AngleMeasurementType */ +static int hf_nrppa_lCS_to_GCS_Translation = -1; /* LCS_to_GCS_Translation */ +static int hf_nrppa_AperiodicSRSResourceTriggerList_item = -1; /* AperiodicSRSResourceTrigger */ +static int hf_nrppa_expected_ULAoA = -1; /* Expected_UL_AoA */ +static int hf_nrppa_expected_ZoA = -1; /* Expected_ZoA_only */ +static int hf_nrppa_expected_Azimuth_AoA = -1; /* Expected_Azimuth_AoA */ +static int hf_nrppa_expected_Zenith_AoA = -1; /* Expected_Zenith_AoA */ +static int hf_nrppa_iE_extensions = -1; /* ProtocolExtensionContainer */ +static int hf_nrppa_expected_ZoA_only = -1; /* Expected_Zenith_AoA */ +static int hf_nrppa_expected_Azimuth_AoA_value = -1; /* Expected_Value_AoA */ +static int hf_nrppa_expected_Azimuth_AoA_uncertainty = -1; /* Uncertainty_range_AoA */ +static int hf_nrppa_expected_Zenith_AoA_value = -1; /* Expected_Value_ZoA */ +static int hf_nrppa_expected_Zenith_AoA_uncertainty = -1; /* Uncertainty_range_ZoA */ +static int hf_nrppa_ARPLocationInformation_item = -1; /* ARPLocationInformation_Item */ +static int hf_nrppa_aRP_ID = -1; /* ARP_ID */ +static int hf_nrppa_aRPLocationType = -1; /* ARPLocationType */ +static int hf_nrppa_aRPPositionRelativeGeodetic = -1; /* RelativeGeodeticLocation */ +static int hf_nrppa_aRPPositionRelativeCartesian = -1; /* RelativeCartesianLocation */ +static int hf_nrppa_systemInformation = -1; /* SystemInformation */ +static int hf_nrppa_AssistanceInformationFailureList_item = -1; /* AssistanceInformationFailureList_item */ +static int hf_nrppa_posSIB_Type = -1; /* PosSIB_Type */ +static int hf_nrppa_outcome = -1; /* Outcome */ +static int hf_nrppa_encrypted = -1; /* T_encrypted */ +static int hf_nrppa_gNSSID = -1; /* T_gNSSID */ +static int hf_nrppa_sBASID = -1; /* T_sBASID */ +static int hf_nrppa_fR1 = -1; /* T_fR1 */ +static int hf_nrppa_fR2 = -1; /* T_fR2 */ +static int hf_nrppa_PositioningBroadcastCells_item = -1; /* NG_RAN_CGI */ +static int hf_nrppa_pointA = -1; /* INTEGER_0_3279165 */ +static int hf_nrppa_offsetToCarrier = -1; /* INTEGER_0_2199_ */ +static int hf_nrppa_radioNetwork = -1; /* CauseRadioNetwork */ +static int hf_nrppa_protocol = -1; /* CauseProtocol */ +static int hf_nrppa_misc = -1; /* CauseMisc */ +static int hf_nrppa_choice_Extension = -1; /* ProtocolIE_Single_Container */ +static int hf_nrppa_pLMN_Identity = -1; /* PLMN_Identity */ +static int hf_nrppa_eUTRAcellIdentifier = -1; /* EUTRACellIdentifier */ +static int hf_nrppa_nRcellIdentifier = -1; /* NRCellIdentifier */ +static int hf_nrppa_triggeringMessage = -1; /* TriggeringMessage */ +static int hf_nrppa_procedureCriticality = -1; /* Criticality */ +static int hf_nrppa_iEsCriticalityDiagnostics = -1; /* CriticalityDiagnostics_IE_List */ +static int hf_nrppa_CriticalityDiagnostics_IE_List_item = -1; /* CriticalityDiagnostics_IE_List_item */ +static int hf_nrppa_iECriticality = -1; /* Criticality */ +static int hf_nrppa_iE_ID = -1; /* ProtocolIE_ID */ +static int hf_nrppa_typeOfError = -1; /* TypeOfError */ +static int hf_nrppa_prsid = -1; /* INTEGER_0_255 */ +static int hf_nrppa_dl_PRSResourceSetID = -1; /* PRS_Resource_Set_ID */ +static int hf_nrppa_dl_PRSResourceID = -1; /* PRS_Resource_ID */ +static int hf_nrppa_two = -1; /* BIT_STRING_SIZE_2 */ +static int hf_nrppa_four = -1; /* BIT_STRING_SIZE_4 */ +static int hf_nrppa_six = -1; /* BIT_STRING_SIZE_6 */ +static int hf_nrppa_eight = -1; /* BIT_STRING_SIZE_8 */ +static int hf_nrppa_sixteen = -1; /* BIT_STRING_SIZE_16 */ +static int hf_nrppa_thirty_two = -1; /* BIT_STRING_SIZE_32 */ +static int hf_nrppa_listofDL_PRSResourceSetARP = -1; /* SEQUENCE_SIZE_1_maxPRS_ResourceSets_OF_DLPRSResourceSetARP */ +static int hf_nrppa_listofDL_PRSResourceSetARP_item = -1; /* DLPRSResourceSetARP */ +static int hf_nrppa_dL_PRSResourceSetARPLocation = -1; /* DL_PRSResourceSetARPLocation */ +static int hf_nrppa_listofDL_PRSResourceARP = -1; /* SEQUENCE_SIZE_1_maxPRS_ResourcesPerSet_OF_DLPRSResourceARP */ +static int hf_nrppa_listofDL_PRSResourceARP_item = -1; /* DLPRSResourceARP */ +static int hf_nrppa_relativeGeodeticLocation = -1; /* RelativeGeodeticLocation */ +static int hf_nrppa_relativeCartesianLocation = -1; /* RelativeCartesianLocation */ +static int hf_nrppa_dL_PRSResourceARPLocation = -1; /* DL_PRSResourceARPLocation */ +static int hf_nrppa_servingCell_ID = -1; /* NG_RAN_CGI */ +static int hf_nrppa_servingCellTAC = -1; /* TAC */ +static int hf_nrppa_nG_RANAccessPointPosition = -1; /* NG_RANAccessPointPosition */ +static int hf_nrppa_measuredResults = -1; /* MeasuredResults */ +static int hf_nrppa_tRPPositionDefinitionType = -1; /* TRPPositionDefinitionType */ +static int hf_nrppa_dLPRSResourceCoordinates = -1; /* DLPRSResourceCoordinates */ +static int hf_nrppa_rxTxTimeDiff = -1; /* GNBRxTxTimeDiffMeas */ +static int hf_nrppa_additionalPathList = -1; /* AdditionalPathList */ +static int hf_nrppa_k0 = -1; /* INTEGER_0_1970049 */ +static int hf_nrppa_k1 = -1; /* INTEGER_0_985025 */ +static int hf_nrppa_k2 = -1; /* INTEGER_0_492513 */ +static int hf_nrppa_k3 = -1; /* INTEGER_0_246257 */ +static int hf_nrppa_k4 = -1; /* INTEGER_0_123129 */ +static int hf_nrppa_k5 = -1; /* INTEGER_0_61565 */ +static int hf_nrppa_alpha = -1; /* INTEGER_0_3599 */ +static int hf_nrppa_beta = -1; /* INTEGER_0_3599 */ +static int hf_nrppa_gamma = -1; /* INTEGER_0_3599 */ +static int hf_nrppa_alpha_01 = -1; /* INTEGER_0_359 */ +static int hf_nrppa_alphaFine = -1; /* INTEGER_0_9 */ +static int hf_nrppa_beta_01 = -1; /* INTEGER_0_359 */ +static int hf_nrppa_betaFine = -1; /* INTEGER_0_9 */ +static int hf_nrppa_gamma_01 = -1; /* INTEGER_0_359 */ +static int hf_nrppa_gammaFine = -1; /* INTEGER_0_9 */ +static int hf_nrppa_horizontalUncertainty = -1; /* INTEGER_0_255 */ +static int hf_nrppa_horizontalConfidence = -1; /* INTEGER_0_100 */ +static int hf_nrppa_verticalUncertainty = -1; /* INTEGER_0_255 */ +static int hf_nrppa_verticalConfidence = -1; /* INTEGER_0_100 */ +static int hf_nrppa_loS_NLoSIndicatorSoft = -1; /* LoS_NLoSIndicatorSoft */ +static int hf_nrppa_loS_NLoSIndicatorHard = -1; /* LoS_NLoSIndicatorHard */ +static int hf_nrppa_pRS_Resource_ID = -1; /* PRS_Resource_ID */ +static int hf_nrppa_pRS_Resource_Set_ID = -1; /* PRS_Resource_Set_ID */ +static int hf_nrppa_sSB_Index = -1; /* SSB_Index */ +static int hf_nrppa_MeasurementQuantities_item = -1; /* ProtocolIE_Single_Container */ +static int hf_nrppa_measurementQuantitiesValue = -1; /* MeasurementQuantitiesValue */ +static int hf_nrppa_MeasuredResults_item = -1; /* MeasuredResultsValue */ +static int hf_nrppa_valueAngleOfArrival_EUTRA = -1; /* INTEGER_0_719 */ +static int hf_nrppa_valueTimingAdvanceType1_EUTRA = -1; /* INTEGER_0_7690 */ +static int hf_nrppa_valueTimingAdvanceType2_EUTRA = -1; /* INTEGER_0_7690 */ +static int hf_nrppa_resultRSRP_EUTRA = -1; /* ResultRSRP_EUTRA */ +static int hf_nrppa_resultRSRQ_EUTRA = -1; /* ResultRSRQ_EUTRA */ +static int hf_nrppa_multipleULAoA_01 = -1; /* MultipleULAoA_List */ +static int hf_nrppa_MultipleULAoA_List_item = -1; /* MultipleULAoA_Item */ +static int hf_nrppa_uL_AoA = -1; /* UL_AoA */ +static int hf_nrppa_ul_ZoA = -1; /* ZoA */ +static int hf_nrppa_latitudeSign = -1; /* T_latitudeSign */ +static int hf_nrppa_latitude = -1; /* INTEGER_0_8388607 */ +static int hf_nrppa_longitude = -1; /* INTEGER_M8388608_8388607 */ +static int hf_nrppa_directionOfAltitude = -1; /* T_directionOfAltitude */ +static int hf_nrppa_altitude = -1; /* INTEGER_0_32767 */ +static int hf_nrppa_uncertaintySemi_major = -1; /* INTEGER_0_127 */ +static int hf_nrppa_uncertaintySemi_minor = -1; /* INTEGER_0_127 */ +static int hf_nrppa_orientationOfMajorAxis = -1; /* INTEGER_0_179 */ +static int hf_nrppa_uncertaintyAltitude = -1; /* INTEGER_0_127 */ +static int hf_nrppa_confidence = -1; /* INTEGER_0_100 */ +static int hf_nrppa_latitude_01 = -1; /* INTEGER_M2147483648_2147483647 */ +static int hf_nrppa_longitude_01 = -1; /* INTEGER_M2147483648_2147483647 */ +static int hf_nrppa_altitude_01 = -1; /* INTEGER_M64000_1280000 */ +static int hf_nrppa_uncertaintySemi_major_01 = -1; /* INTEGER_0_255 */ +static int hf_nrppa_uncertaintySemi_minor_01 = -1; /* INTEGER_0_255 */ +static int hf_nrppa_uncertaintyAltitude_01 = -1; /* INTEGER_0_255 */ +static int hf_nrppa_nG_RANcell = -1; /* NG_RANCell */ +static int hf_nrppa_eUTRA_CellID = -1; /* EUTRACellIdentifier */ +static int hf_nrppa_nR_CellID = -1; /* NRCellIdentifier */ +static int hf_nrppa_nR_PRS_Beam_InformationList = -1; /* SEQUENCE_SIZE_1_maxPRS_ResourceSets_OF_NR_PRS_Beam_InformationItem */ +static int hf_nrppa_nR_PRS_Beam_InformationList_item = -1; /* NR_PRS_Beam_InformationItem */ +static int hf_nrppa_lCS_to_GCS_TranslationList = -1; /* SEQUENCE_SIZE_1_maxnolcs_gcs_translation_OF_LCS_to_GCS_TranslationItem */ +static int hf_nrppa_lCS_to_GCS_TranslationList_item = -1; /* LCS_to_GCS_TranslationItem */ +static int hf_nrppa_pRSresourceSetID = -1; /* PRS_Resource_Set_ID */ +static int hf_nrppa_pRSAngle = -1; /* SEQUENCE_SIZE_1_maxPRS_ResourcesPerSet_OF_PRSAngleItem */ +static int hf_nrppa_pRSAngle_item = -1; /* PRSAngleItem */ +static int hf_nrppa_onDemandPRSRequestAllowed = -1; /* BIT_STRING_SIZE_16 */ +static int hf_nrppa_allowedResourceSetPeriodicityValues = -1; /* BIT_STRING_SIZE_24 */ +static int hf_nrppa_allowedPRSBandwidthValues = -1; /* BIT_STRING_SIZE_64 */ +static int hf_nrppa_allowedResourceRepetitionFactorValues = -1; /* BIT_STRING_SIZE_8 */ +static int hf_nrppa_allowedResourceNumberOfSymbolsValues = -1; /* BIT_STRING_SIZE_8 */ +static int hf_nrppa_allowedCombSizeValues = -1; /* BIT_STRING_SIZE_8 */ +static int hf_nrppa_OTDOACells_item = -1; /* OTDOACells_item */ +static int hf_nrppa_oTDOACellInfo = -1; /* OTDOACell_Information */ +static int hf_nrppa_OTDOACell_Information_item = -1; /* OTDOACell_Information_Item */ +static int hf_nrppa_pCI_EUTRA = -1; /* PCI_EUTRA */ +static int hf_nrppa_cGI_EUTRA = -1; /* CGI_EUTRA */ +static int hf_nrppa_tAC = -1; /* TAC */ +static int hf_nrppa_eARFCN = -1; /* EARFCN */ +static int hf_nrppa_pRS_Bandwidth_EUTRA = -1; /* PRS_Bandwidth_EUTRA */ +static int hf_nrppa_pRS_ConfigurationIndex_EUTRA = -1; /* PRS_ConfigurationIndex_EUTRA */ +static int hf_nrppa_cPLength_EUTRA = -1; /* CPLength_EUTRA */ +static int hf_nrppa_numberOfDlFrames_EUTRA = -1; /* NumberOfDlFrames_EUTRA */ +static int hf_nrppa_numberOfAntennaPorts_EUTRA = -1; /* NumberOfAntennaPorts_EUTRA */ +static int hf_nrppa_sFNInitialisationTime_EUTRA = -1; /* SFNInitialisationTime_EUTRA */ +static int hf_nrppa_pRSMutingConfiguration_EUTRA = -1; /* PRSMutingConfiguration_EUTRA */ +static int hf_nrppa_prsid_EUTRA = -1; /* PRS_ID_EUTRA */ +static int hf_nrppa_tpid_EUTRA = -1; /* TP_ID_EUTRA */ +static int hf_nrppa_tpType_EUTRA = -1; /* TP_Type_EUTRA */ +static int hf_nrppa_numberOfDlFrames_Extended_EUTRA = -1; /* NumberOfDlFrames_Extended_EUTRA */ +static int hf_nrppa_crsCPlength_EUTRA = -1; /* CPLength_EUTRA */ +static int hf_nrppa_dL_Bandwidth_EUTRA = -1; /* DL_Bandwidth_EUTRA */ +static int hf_nrppa_pRSOccasionGroup_EUTRA = -1; /* PRSOccasionGroup_EUTRA */ +static int hf_nrppa_pRSFrequencyHoppingConfiguration_EUTRA = -1; /* PRSFrequencyHoppingConfiguration_EUTRA */ +static int hf_nrppa_OtherRATMeasurementQuantities_item = -1; /* ProtocolIE_Single_Container */ +static int hf_nrppa_otherRATMeasurementQuantitiesValue = -1; /* OtherRATMeasurementQuantitiesValue */ +static int hf_nrppa_OtherRATMeasurementResult_item = -1; /* OtherRATMeasuredResultsValue */ +static int hf_nrppa_resultGERAN = -1; /* ResultGERAN */ +static int hf_nrppa_resultUTRAN = -1; /* ResultUTRAN */ +static int hf_nrppa_pathlossReferenceSignal = -1; /* PathlossReferenceSignal */ +static int hf_nrppa_sSB_Reference = -1; /* SSB */ +static int hf_nrppa_dL_PRS_Reference = -1; /* DL_PRS */ +static int hf_nrppa_PeriodicityList_item = -1; /* PeriodicityItem */ +static int hf_nrppa_PosSIBs_item = -1; /* PosSIBs_item */ +static int hf_nrppa_posSIB_Segments = -1; /* PosSIB_Segments */ +static int hf_nrppa_assistanceInformationMetaData = -1; /* AssistanceInformationMetaData */ +static int hf_nrppa_broadcastPriority = -1; /* INTEGER_1_16_ */ +static int hf_nrppa_PosSIB_Segments_item = -1; /* PosSIB_Segments_item */ +static int hf_nrppa_assistanceDataSIBelement = -1; /* OCTET_STRING */ +static int hf_nrppa_PosSRSResource_List_item = -1; /* PosSRSResource_Item */ +static int hf_nrppa_srs_PosResourceId = -1; /* SRSPosResourceID */ +static int hf_nrppa_transmissionCombPos = -1; /* TransmissionCombPos */ +static int hf_nrppa_startPosition = -1; /* INTEGER_0_13 */ +static int hf_nrppa_nrofSymbols = -1; /* T_nrofSymbols */ +static int hf_nrppa_freqDomainShift = -1; /* INTEGER_0_268 */ +static int hf_nrppa_c_SRS = -1; /* INTEGER_0_63 */ +static int hf_nrppa_groupOrSequenceHopping = -1; /* T_groupOrSequenceHopping */ +static int hf_nrppa_resourceTypePos = -1; /* ResourceTypePos */ +static int hf_nrppa_sequenceId = -1; /* INTEGER_0_65535 */ +static int hf_nrppa_spatialRelationPos = -1; /* SpatialRelationPos */ +static int hf_nrppa_PosSRSResourceID_List_item = -1; /* SRSPosResourceID */ +static int hf_nrppa_PosSRSResourceSet_List_item = -1; /* PosSRSResourceSet_Item */ +static int hf_nrppa_PosSRSResourceIDPerSet_List_item = -1; /* SRSPosResourceID */ +static int hf_nrppa_possrsResourceSetID = -1; /* INTEGER_0_15 */ +static int hf_nrppa_possRSResourceIDPerSet_List = -1; /* PosSRSResourceIDPerSet_List */ +static int hf_nrppa_posresourceSetType = -1; /* PosResourceSetType */ +static int hf_nrppa_periodic = -1; /* PosResourceSetTypePeriodic */ +static int hf_nrppa_semi_persistent = -1; /* PosResourceSetTypeSemi_persistent */ +static int hf_nrppa_aperiodic = -1; /* PosResourceSetTypeAperiodic */ +static int hf_nrppa_posperiodicSet = -1; /* T_posperiodicSet */ +static int hf_nrppa_possemi_persistentSet = -1; /* T_possemi_persistentSet */ +static int hf_nrppa_sRSResourceTrigger = -1; /* INTEGER_1_3 */ +static int hf_nrppa_nRPRSAzimuth = -1; /* INTEGER_0_359 */ +static int hf_nrppa_nRPRSAzimuthFine = -1; /* INTEGER_0_9 */ +static int hf_nrppa_nRPRSElevation = -1; /* INTEGER_0_180 */ +static int hf_nrppa_nRPRSElevationFine = -1; /* INTEGER_0_9 */ +static int hf_nrppa_pRS_IDPos = -1; /* INTEGER_0_255 */ +static int hf_nrppa_pRS_Resource_Set_IDPos = -1; /* INTEGER_0_7 */ +static int hf_nrppa_pRS_Resource_IDPos = -1; /* INTEGER_0_63 */ +static int hf_nrppa_pRSResourceSet_List = -1; /* PRSResourceSet_List */ +static int hf_nrppa_sixty_four = -1; /* BIT_STRING_SIZE_64 */ +static int hf_nrppa_one_hundred_and_twenty_eight = -1; /* BIT_STRING_SIZE_128 */ +static int hf_nrppa_two_hundred_and_fifty_six = -1; /* BIT_STRING_SIZE_256 */ +static int hf_nrppa_five_hundred_and_twelve = -1; /* BIT_STRING_SIZE_512 */ +static int hf_nrppa_one_thousand_and_twenty_four = -1; /* BIT_STRING_SIZE_1024 */ +static int hf_nrppa_noOfFreqHoppingBands = -1; /* NumberOfFrequencyHoppingBands */ +static int hf_nrppa_bandPositions = -1; /* SEQUENCE_SIZE_1_maxnoFreqHoppingBandsMinusOne_OF_NarrowBandIndex */ +static int hf_nrppa_bandPositions_item = -1; /* NarrowBandIndex */ +static int hf_nrppa_PRS_Measurements_Info_List_item = -1; /* PRS_Measurements_Info_List_Item */ +static int hf_nrppa_measPRSPeriodicity = -1; /* T_measPRSPeriodicity */ +static int hf_nrppa_measPRSOffset = -1; /* INTEGER_0_159_ */ +static int hf_nrppa_measurementPRSLength = -1; /* T_measurementPRSLength */ +static int hf_nrppa_pRSMutingOption1 = -1; /* PRSMutingOption1 */ +static int hf_nrppa_pRSMutingOption2 = -1; /* PRSMutingOption2 */ +static int hf_nrppa_mutingPattern = -1; /* DL_PRSMutingPattern */ +static int hf_nrppa_mutingBitRepetitionFactor = -1; /* T_mutingBitRepetitionFactor */ +static int hf_nrppa_PRSResource_List_item = -1; /* PRSResource_Item */ +static int hf_nrppa_pRSResourceID = -1; /* PRS_Resource_ID */ +static int hf_nrppa_sequenceID = -1; /* INTEGER_0_4095 */ +static int hf_nrppa_rEOffset = -1; /* INTEGER_0_11_ */ +static int hf_nrppa_resourceSlotOffset = -1; /* INTEGER_0_511 */ +static int hf_nrppa_resourceSymbolOffset = -1; /* INTEGER_0_12 */ +static int hf_nrppa_qCLInfo = -1; /* PRSResource_QCLInfo */ +static int hf_nrppa_qCLSourceSSB = -1; /* PRSResource_QCLSourceSSB */ +static int hf_nrppa_qCLSourcePRS = -1; /* PRSResource_QCLSourcePRS */ +static int hf_nrppa_pCI_NR = -1; /* INTEGER_0_1007 */ +static int hf_nrppa_qCLSourcePRSResourceSetID = -1; /* PRS_Resource_Set_ID */ +static int hf_nrppa_qCLSourcePRSResourceID = -1; /* PRS_Resource_ID */ +static int hf_nrppa_PRSResourceSet_List_item = -1; /* PRSResourceSet_Item */ +static int hf_nrppa_pRSResourceSetID = -1; /* PRS_Resource_Set_ID */ +static int hf_nrppa_subcarrierSpacing_01 = -1; /* T_subcarrierSpacing_01 */ +static int hf_nrppa_pRSbandwidth = -1; /* INTEGER_1_63 */ +static int hf_nrppa_startPRB = -1; /* INTEGER_0_2176 */ +static int hf_nrppa_combSize = -1; /* T_combSize */ +static int hf_nrppa_cPType = -1; /* T_cPType */ +static int hf_nrppa_resourceSetPeriodicity = -1; /* T_resourceSetPeriodicity */ +static int hf_nrppa_resourceSetSlotOffset = -1; /* INTEGER_0_81919_ */ +static int hf_nrppa_resourceRepetitionFactor = -1; /* T_resourceRepetitionFactor */ +static int hf_nrppa_resourceTimeGap = -1; /* T_resourceTimeGap */ +static int hf_nrppa_resourceNumberofSymbols = -1; /* T_resourceNumberofSymbols */ +static int hf_nrppa_pRSMuting = -1; /* PRSMuting */ +static int hf_nrppa_pRSResourceTransmitPower = -1; /* INTEGER_M60_50 */ +static int hf_nrppa_pRSResource_List = -1; /* PRSResource_List */ +static int hf_nrppa_pRSTransmissionOffPerTRP = -1; /* NULL */ +static int hf_nrppa_pRSTransmissionOffPerResourceSet = -1; /* PRSTransmissionOffPerResourceSet */ +static int hf_nrppa_pRSTransmissionOffPerResource = -1; /* PRSTransmissionOffPerResource */ +static int hf_nrppa_PRSTransmissionOffPerResource_item = -1; /* PRSTransmissionOffPerResource_Item */ +static int hf_nrppa_pRSTransmissionOffIndicationPerResourceList = -1; /* SEQUENCE_SIZE_1_maxnoofPRSresource_OF_PRSTransmissionOffIndicationPerResource_Item */ +static int hf_nrppa_pRSTransmissionOffIndicationPerResourceList_item = -1; /* PRSTransmissionOffIndicationPerResource_Item */ +static int hf_nrppa_pRSTransmissionOffIndication = -1; /* PRSTransmissionOffIndication */ +static int hf_nrppa_PRSTransmissionOffPerResourceSet_item = -1; /* PRSTransmissionOffPerResourceSet_Item */ +static int hf_nrppa_PRSTRPList_item = -1; /* PRSTRPItem */ +static int hf_nrppa_tRP_ID = -1; /* TRP_ID */ +static int hf_nrppa_requestedDLPRSTransmissionCharacteristics = -1; /* RequestedDLPRSTransmissionCharacteristics */ +static int hf_nrppa_pRSTransmissionOffInformation = -1; /* PRSTransmissionOffInformation */ +static int hf_nrppa_PRSTransmissionTRPList_item = -1; /* PRSTransmissionTRPItem */ +static int hf_nrppa_pRSConfiguration = -1; /* PRSConfiguration */ +static int hf_nrppa_nZP_CSI_RS = -1; /* NZP_CSI_RS_ResourceID */ +static int hf_nrppa_sSB = -1; /* SSB */ +static int hf_nrppa_sRS = -1; /* SRSResourceID */ +static int hf_nrppa_positioningSRS = -1; /* SRSPosResourceID */ +static int hf_nrppa_dL_PRS = -1; /* DL_PRS */ +static int hf_nrppa_relativeCoordinateID = -1; /* CoordinateID */ +static int hf_nrppa_referencePointCoordinate = -1; /* NG_RANAccessPointPosition */ +static int hf_nrppa_referencePointCoordinateHA = -1; /* NGRANHighAccuracyAccessPointPosition */ +static int hf_nrppa_milli_Arc_SecondUnits = -1; /* T_milli_Arc_SecondUnits */ +static int hf_nrppa_heightUnits = -1; /* T_heightUnits */ +static int hf_nrppa_deltaLatitude = -1; /* INTEGER_M1024_1023 */ +static int hf_nrppa_deltaLongitude = -1; /* INTEGER_M1024_1023 */ +static int hf_nrppa_deltaHeight = -1; /* INTEGER_M1024_1023 */ +static int hf_nrppa_locationUncertainty = -1; /* LocationUncertainty */ +static int hf_nrppa_xYZunit = -1; /* T_xYZunit */ +static int hf_nrppa_xvalue = -1; /* INTEGER_M65536_65535 */ +static int hf_nrppa_yvalue = -1; /* INTEGER_M65536_65535 */ +static int hf_nrppa_zvalue = -1; /* INTEGER_M32768_32767 */ +static int hf_nrppa_k0_01 = -1; /* INTEGER_0_16351 */ +static int hf_nrppa_k1_01 = -1; /* INTEGER_0_8176 */ +static int hf_nrppa_k2_01 = -1; /* INTEGER_0_4088 */ +static int hf_nrppa_k3_01 = -1; /* INTEGER_0_2044 */ +static int hf_nrppa_k4_01 = -1; /* INTEGER_0_1022 */ +static int hf_nrppa_k5_01 = -1; /* INTEGER_0_511 */ +static int hf_nrppa_requestedDLPRSResourceSet_List = -1; /* RequestedDLPRSResourceSet_List */ +static int hf_nrppa_numberofFrequencyLayers = -1; /* INTEGER_1_4 */ +static int hf_nrppa_startTimeAndDuration = -1; /* StartTimeAndDuration */ +static int hf_nrppa_RequestedDLPRSResourceSet_List_item = -1; /* RequestedDLPRSResourceSet_Item */ +static int hf_nrppa_combSize_01 = -1; /* T_combSize_01 */ +static int hf_nrppa_resourceSetPeriodicity_01 = -1; /* T_resourceSetPeriodicity_01 */ +static int hf_nrppa_resourceRepetitionFactor_01 = -1; /* T_resourceRepetitionFactor_01 */ +static int hf_nrppa_resourceNumberofSymbols_01 = -1; /* T_resourceNumberofSymbols_01 */ +static int hf_nrppa_requestedDLPRSResource_List = -1; /* RequestedDLPRSResource_List */ +static int hf_nrppa_resourceSetStartTimeAndDuration = -1; /* StartTimeAndDuration */ +static int hf_nrppa_RequestedDLPRSResource_List_item = -1; /* RequestedDLPRSResource_Item */ +static int hf_nrppa_numberOfTransmissions = -1; /* INTEGER_0_500_ */ +static int hf_nrppa_resourceType = -1; /* T_resourceType */ +static int hf_nrppa_bandwidth = -1; /* BandwidthSRS */ +static int hf_nrppa_listOfSRSResourceSet = -1; /* SEQUENCE_SIZE_1_maxnoSRS_ResourceSets_OF_SRSResourceSet_Item */ +static int hf_nrppa_listOfSRSResourceSet_item = -1; /* SRSResourceSet_Item */ +static int hf_nrppa_sSBInformation = -1; /* SSBInfo */ +static int hf_nrppa_numberOfSRSResourcePerSet = -1; /* INTEGER_1_16_ */ +static int hf_nrppa_periodicityList = -1; /* PeriodicityList */ +static int hf_nrppa_spatialRelationInformation = -1; /* SpatialRelationInfo */ +static int hf_nrppa_pathlossReferenceInformation = -1; /* PathlossReferenceInformation */ +static int hf_nrppa_periodic_01 = -1; /* ResourceSetTypePeriodic */ +static int hf_nrppa_semi_persistent_01 = -1; /* ResourceSetTypeSemi_persistent */ +static int hf_nrppa_aperiodic_01 = -1; /* ResourceSetTypeAperiodic */ +static int hf_nrppa_periodicSet = -1; /* T_periodicSet */ +static int hf_nrppa_semi_persistentSet = -1; /* T_semi_persistentSet */ +static int hf_nrppa_slotoffset = -1; /* INTEGER_0_32 */ +static int hf_nrppa_periodic_02 = -1; /* ResourceTypePeriodic */ +static int hf_nrppa_semi_persistent_02 = -1; /* ResourceTypeSemi_persistent */ +static int hf_nrppa_aperiodic_02 = -1; /* ResourceTypeAperiodic */ +static int hf_nrppa_periodicity = -1; /* T_periodicity */ +static int hf_nrppa_offset = -1; /* INTEGER_0_2559_ */ +static int hf_nrppa_periodicity_01 = -1; /* T_periodicity_01 */ +static int hf_nrppa_aperiodicResourceType = -1; /* T_aperiodicResourceType */ +static int hf_nrppa_periodic_03 = -1; /* ResourceTypePeriodicPos */ +static int hf_nrppa_semi_persistent_03 = -1; /* ResourceTypeSemi_persistentPos */ +static int hf_nrppa_aperiodic_03 = -1; /* ResourceTypeAperiodicPos */ +static int hf_nrppa_periodicity_02 = -1; /* T_periodicity_02 */ +static int hf_nrppa_offset_01 = -1; /* INTEGER_0_81919_ */ +static int hf_nrppa_periodicity_03 = -1; /* T_periodicity_03 */ +static int hf_nrppa_slotOffset = -1; /* INTEGER_0_32 */ +static int hf_nrppa_time = -1; /* INTEGER_1_128_ */ +static int hf_nrppa_timeUnit = -1; /* T_timeUnit */ +static int hf_nrppa_ResultCSI_RSRP_item = -1; /* ResultCSI_RSRP_Item */ +static int hf_nrppa_nR_PCI = -1; /* NR_PCI */ +static int hf_nrppa_nR_ARFCN = -1; /* NR_ARFCN */ +static int hf_nrppa_cGI_NR = -1; /* CGI_NR */ +static int hf_nrppa_valueCSI_RSRP_Cell = -1; /* ValueRSRP_NR */ +static int hf_nrppa_cSI_RSRP_PerCSI_RS = -1; /* ResultCSI_RSRP_PerCSI_RS */ +static int hf_nrppa_ResultCSI_RSRP_PerCSI_RS_item = -1; /* ResultCSI_RSRP_PerCSI_RS_Item */ +static int hf_nrppa_cSI_RS_Index = -1; /* INTEGER_0_95 */ +static int hf_nrppa_valueCSI_RSRP = -1; /* ValueRSRP_NR */ +static int hf_nrppa_ResultCSI_RSRQ_item = -1; /* ResultCSI_RSRQ_Item */ +static int hf_nrppa_valueCSI_RSRQ_Cell = -1; /* ValueRSRQ_NR */ +static int hf_nrppa_cSI_RSRQ_PerCSI_RS = -1; /* ResultCSI_RSRQ_PerCSI_RS */ +static int hf_nrppa_ResultCSI_RSRQ_PerCSI_RS_item = -1; /* ResultCSI_RSRQ_PerCSI_RS_Item */ +static int hf_nrppa_valueCSI_RSRQ = -1; /* ValueRSRQ_NR */ +static int hf_nrppa_ResultEUTRA_item = -1; /* ResultEUTRA_Item */ +static int hf_nrppa_valueRSRP_EUTRA = -1; /* ValueRSRP_EUTRA */ +static int hf_nrppa_valueRSRQ_EUTRA = -1; /* ValueRSRQ_EUTRA */ +static int hf_nrppa_ResultRSRP_EUTRA_item = -1; /* ResultRSRP_EUTRA_Item */ +static int hf_nrppa_ResultRSRQ_EUTRA_item = -1; /* ResultRSRQ_EUTRA_Item */ +static int hf_nrppa_cGI_UTRA = -1; /* CGI_EUTRA */ +static int hf_nrppa_ResultSS_RSRP_item = -1; /* ResultSS_RSRP_Item */ +static int hf_nrppa_valueSS_RSRP_Cell = -1; /* ValueRSRP_NR */ +static int hf_nrppa_sS_RSRP_PerSSB = -1; /* ResultSS_RSRP_PerSSB */ +static int hf_nrppa_ResultSS_RSRP_PerSSB_item = -1; /* ResultSS_RSRP_PerSSB_Item */ +static int hf_nrppa_valueSS_RSRP = -1; /* ValueRSRP_NR */ +static int hf_nrppa_ResultSS_RSRQ_item = -1; /* ResultSS_RSRQ_Item */ +static int hf_nrppa_valueSS_RSRQ_Cell = -1; /* ValueRSRQ_NR */ +static int hf_nrppa_sS_RSRQ_PerSSB = -1; /* ResultSS_RSRQ_PerSSB */ +static int hf_nrppa_ResultSS_RSRQ_PerSSB_item = -1; /* ResultSS_RSRQ_PerSSB_Item */ +static int hf_nrppa_valueSS_RSRQ = -1; /* ValueRSRQ_NR */ +static int hf_nrppa_ResultGERAN_item = -1; /* ResultGERAN_Item */ +static int hf_nrppa_bCCH = -1; /* BCCH */ +static int hf_nrppa_physCellIDGERAN = -1; /* PhysCellIDGERAN */ +static int hf_nrppa_rSSI = -1; /* RSSI */ +static int hf_nrppa_ResultNR_item = -1; /* ResultNR_Item */ +static int hf_nrppa_ResultUTRAN_item = -1; /* ResultUTRAN_Item */ +static int hf_nrppa_uARFCN = -1; /* UARFCN */ +static int hf_nrppa_physCellIDUTRAN = -1; /* T_physCellIDUTRAN */ +static int hf_nrppa_physCellIDUTRA_FDD = -1; /* PhysCellIDUTRA_FDD */ +static int hf_nrppa_physCellIDUTRA_TDD = -1; /* PhysCellIDUTRA_TDD */ +static int hf_nrppa_uTRA_RSCP = -1; /* UTRA_RSCP */ +static int hf_nrppa_uTRA_EcN0 = -1; /* UTRA_EcN0 */ +static int hf_nrppa_subcarrierSpacing_02 = -1; /* T_subcarrierSpacing_02 */ +static int hf_nrppa_carrierBandwidth = -1; /* INTEGER_1_275_ */ +static int hf_nrppa_expectedPropagationDelay = -1; /* INTEGER_M3841_3841_ */ +static int hf_nrppa_delayUncertainty = -1; /* INTEGER_1_246_ */ +static int hf_nrppa_nR_PRS_Beam_Information = -1; /* NR_PRS_Beam_Information */ +static int hf_nrppa_spatialRelationforResourceID = -1; /* SpatialRelationforResourceID */ +static int hf_nrppa_SpatialRelationforResourceID_item = -1; /* SpatialRelationforResourceIDItem */ +static int hf_nrppa_referenceSignal = -1; /* ReferenceSignal */ +static int hf_nrppa_spatialRelationPerSRSResource_List = -1; /* SpatialRelationPerSRSResource_List */ +static int hf_nrppa_SpatialRelationPerSRSResource_List_item = -1; /* SpatialRelationPerSRSResourceItem */ +static int hf_nrppa_sSBPos = -1; /* SSB */ +static int hf_nrppa_pRSInformationPos = -1; /* PRSInformationPos */ +static int hf_nrppa_sRSResource_List = -1; /* SRSResource_List */ +static int hf_nrppa_posSRSResource_List = -1; /* PosSRSResource_List */ +static int hf_nrppa_sRSResourceSet_List = -1; /* SRSResourceSet_List */ +static int hf_nrppa_posSRSResourceSet_List = -1; /* PosSRSResourceSet_List */ +static int hf_nrppa_SRSCarrier_List_item = -1; /* SRSCarrier_List_Item */ +static int hf_nrppa_uplinkChannelBW_PerSCS_List = -1; /* UplinkChannelBW_PerSCS_List */ +static int hf_nrppa_activeULBWP = -1; /* ActiveULBWP */ +static int hf_nrppa_sRSCarrier_List = -1; /* SRSCarrier_List */ +static int hf_nrppa_sRSResourceID = -1; /* SRSResourceID */ +static int hf_nrppa_nrofSRS_Ports = -1; /* T_nrofSRS_Ports */ +static int hf_nrppa_transmissionComb = -1; /* TransmissionComb */ +static int hf_nrppa_nrofSymbols_01 = -1; /* T_nrofSymbols_01 */ +static int hf_nrppa_repetitionFactor = -1; /* T_repetitionFactor */ +static int hf_nrppa_freqDomainPosition = -1; /* INTEGER_0_67 */ +static int hf_nrppa_b_SRS = -1; /* INTEGER_0_3 */ +static int hf_nrppa_b_hop = -1; /* INTEGER_0_3 */ +static int hf_nrppa_groupOrSequenceHopping_01 = -1; /* T_groupOrSequenceHopping_01 */ +static int hf_nrppa_resourceType_01 = -1; /* ResourceType */ +static int hf_nrppa_sequenceId_01 = -1; /* INTEGER_0_1023 */ +static int hf_nrppa_SRSResource_List_item = -1; /* SRSResource */ +static int hf_nrppa_SRSResourceSet_List_item = -1; /* SRSResourceSet */ +static int hf_nrppa_SRSResourceID_List_item = -1; /* SRSResourceID */ +static int hf_nrppa_sRSResourceSetID = -1; /* INTEGER_0_15 */ +static int hf_nrppa_sRSResourceID_List = -1; /* SRSResourceID_List */ +static int hf_nrppa_resourceSetType = -1; /* ResourceSetType */ +static int hf_nrppa_aperiodicSRSResourceTriggerList = -1; /* AperiodicSRSResourceTriggerList */ +static int hf_nrppa_sRSResourceTypeChoice = -1; /* SRSResourceTypeChoice */ +static int hf_nrppa_sRSResourceInfo = -1; /* SRSInfo */ +static int hf_nrppa_posSRSResourceInfo = -1; /* PosSRSInfo */ +static int hf_nrppa_sRSResource = -1; /* SRSResourceID */ +static int hf_nrppa_posSRSResourceID = -1; /* SRSPosResourceID */ +static int hf_nrppa_listOfSSBInfo = -1; /* SEQUENCE_SIZE_1_maxNoSSBs_OF_SSBInfoItem */ +static int hf_nrppa_listOfSSBInfo_item = -1; /* SSBInfoItem */ +static int hf_nrppa_sSB_Configuration = -1; /* TF_Configuration */ +static int hf_nrppa_ssb_index = -1; /* SSB_Index */ +static int hf_nrppa_shortBitmap = -1; /* BIT_STRING_SIZE_4 */ +static int hf_nrppa_mediumBitmap = -1; /* BIT_STRING_SIZE_8 */ +static int hf_nrppa_longBitmap = -1; /* BIT_STRING_SIZE_64 */ +static int hf_nrppa_startTime = -1; /* RelativeTime1900 */ +static int hf_nrppa_duration = -1; /* INTEGER_0_90060_ */ +static int hf_nrppa_SystemInformation_item = -1; /* SystemInformation_item */ +static int hf_nrppa_broadcastPeriodicity = -1; /* BroadcastPeriodicity */ +static int hf_nrppa_posSIBs = -1; /* PosSIBs */ +static int hf_nrppa_subframeAssignment = -1; /* T_subframeAssignment */ +static int hf_nrppa_rxTx_TEG = -1; /* RxTxTEG */ +static int hf_nrppa_rx_TEG = -1; /* RxTEG */ +static int hf_nrppa_tRP_RxTx_TEGInformation = -1; /* TRP_RxTx_TEGInformation */ +static int hf_nrppa_tRP_Tx_TEGInformation = -1; /* TRP_Tx_TEGInformation */ +static int hf_nrppa_tRP_Rx_TEGInformation = -1; /* TRP_Rx_TEGInformation */ +static int hf_nrppa_sSB_frequency = -1; /* INTEGER_0_3279165 */ +static int hf_nrppa_sSB_subcarrier_spacing = -1; /* T_sSB_subcarrier_spacing */ +static int hf_nrppa_sSB_Transmit_power = -1; /* INTEGER_M60_50 */ +static int hf_nrppa_sSB_periodicity = -1; /* T_sSB_periodicity */ +static int hf_nrppa_sSB_half_frame_offset = -1; /* INTEGER_0_1 */ +static int hf_nrppa_sSB_SFN_offset = -1; /* INTEGER_0_15 */ +static int hf_nrppa_sSB_BurstPosition = -1; /* SSBBurstPosition */ +static int hf_nrppa_sFN_initialisation_time = -1; /* RelativeTime1900 */ +static int hf_nrppa_systemFrameNumber = -1; /* SystemFrameNumber */ +static int hf_nrppa_slotIndex = -1; /* TimeStampSlotIndex */ +static int hf_nrppa_measurementTime = -1; /* RelativeTime1900 */ +static int hf_nrppa_iE_Extension = -1; /* ProtocolExtensionContainer */ +static int hf_nrppa_sCS_15 = -1; /* INTEGER_0_9 */ +static int hf_nrppa_sCS_30 = -1; /* INTEGER_0_19 */ +static int hf_nrppa_sCS_60 = -1; /* INTEGER_0_39 */ +static int hf_nrppa_sCS_120 = -1; /* INTEGER_0_79 */ +static int hf_nrppa_n2 = -1; /* T_n2 */ +static int hf_nrppa_combOffset_n2 = -1; /* INTEGER_0_1 */ +static int hf_nrppa_cyclicShift_n2 = -1; /* INTEGER_0_7 */ +static int hf_nrppa_n4 = -1; /* T_n4 */ +static int hf_nrppa_combOffset_n4 = -1; /* INTEGER_0_3 */ +static int hf_nrppa_cyclicShift_n4 = -1; /* INTEGER_0_11 */ +static int hf_nrppa_n2_01 = -1; /* T_n2_01 */ +static int hf_nrppa_n4_01 = -1; /* T_n4_01 */ +static int hf_nrppa_n8 = -1; /* T_n8 */ +static int hf_nrppa_combOffset_n8 = -1; /* INTEGER_0_7 */ +static int hf_nrppa_cyclicShift_n8 = -1; /* INTEGER_0_5 */ +static int hf_nrppa_choice_TRP_Beam_Antenna_Info_Item = -1; /* Choice_TRP_Beam_Antenna_Info_Item */ +static int hf_nrppa_reference = -1; /* TRP_ID */ +static int hf_nrppa_explicit = -1; /* TRP_BeamAntennaExplicitInformation */ +static int hf_nrppa_noChange = -1; /* NULL */ +static int hf_nrppa_trp_BeamAntennaAngles = -1; /* TRP_BeamAntennaAngles */ +static int hf_nrppa_lcs_to_gcs_translation = -1; /* LCS_to_GCS_Translation */ +static int hf_nrppa_TRP_BeamAntennaAngles_item = -1; /* TRP_BeamAntennaAnglesList_Item */ +static int hf_nrppa_trp_azimuth_angle = -1; /* INTEGER_0_359 */ +static int hf_nrppa_trp_azimuth_angle_fine = -1; /* INTEGER_0_9 */ +static int hf_nrppa_trp_elevation_angle_list = -1; /* SEQUENCE_SIZE_1_maxnoElevationAngles_OF_TRP_ElevationAngleList_Item */ +static int hf_nrppa_trp_elevation_angle_list_item = -1; /* TRP_ElevationAngleList_Item */ +static int hf_nrppa_trp_elevation_angle = -1; /* INTEGER_0_180 */ +static int hf_nrppa_trp_elevation_angle_fine = -1; /* INTEGER_0_9 */ +static int hf_nrppa_trp_beam_power_list = -1; /* SEQUENCE_SIZE_2_maxNumResourcesPerAngle_OF_TRP_Beam_Power_Item */ +static int hf_nrppa_trp_beam_power_list_item = -1; /* TRP_Beam_Power_Item */ +static int hf_nrppa_relativePower = -1; /* INTEGER_0_30 */ +static int hf_nrppa_relativePowerFine = -1; /* INTEGER_0_9 */ +static int hf_nrppa_TRPMeasurementQuantities_item = -1; /* TRPMeasurementQuantitiesList_Item */ +static int hf_nrppa_tRPMeasurementQuantities_Item = -1; /* TRPMeasurementQuantities_Item */ +static int hf_nrppa_timingReportingGranularityFactor = -1; /* INTEGER_0_5 */ +static int hf_nrppa_TrpMeasurementResult_item = -1; /* TrpMeasurementResultItem */ +static int hf_nrppa_measuredResultsValue = -1; /* TrpMeasuredResultsValue */ +static int hf_nrppa_timeStamp = -1; /* TimeStamp */ +static int hf_nrppa_measurementQuality = -1; /* TrpMeasurementQuality */ +static int hf_nrppa_measurementBeamInfo = -1; /* MeasurementBeamInfo */ +static int hf_nrppa_uL_AngleOfArrival = -1; /* UL_AoA */ +static int hf_nrppa_uL_SRS_RSRP = -1; /* UL_SRS_RSRP */ +static int hf_nrppa_uL_RTOA = -1; /* UL_RTOAMeasurement */ +static int hf_nrppa_gNB_RxTxTimeDiff = -1; /* GNB_RxTxTimeDiff */ +static int hf_nrppa_timingMeasQuality = -1; /* TrpMeasurementTimingQuality */ +static int hf_nrppa_angleMeasQuality = -1; /* TrpMeasurementAngleQuality */ +static int hf_nrppa_measurementQuality_01 = -1; /* INTEGER_0_31 */ +static int hf_nrppa_resolution = -1; /* T_resolution */ +static int hf_nrppa_azimuthQuality = -1; /* INTEGER_0_255 */ +static int hf_nrppa_zenithQuality = -1; /* INTEGER_0_255 */ +static int hf_nrppa_resolution_01 = -1; /* T_resolution_01 */ +static int hf_nrppa_TRP_MeasurementRequestList_item = -1; /* TRP_MeasurementRequestItem */ +static int hf_nrppa_search_window_information = -1; /* Search_window_information */ +static int hf_nrppa_TRP_MeasurementResponseList_item = -1; /* TRP_MeasurementResponseItem */ +static int hf_nrppa_measurementResult = -1; /* TrpMeasurementResult */ +static int hf_nrppa_TRP_MeasurementUpdateList_item = -1; /* TRP_MeasurementUpdateItem */ +static int hf_nrppa_aoA_window_information = -1; /* AoA_AssistanceInfo */ +static int hf_nrppa_TRPInformationListTRPResp_item = -1; /* TRPInformationListTRPResp_item */ +static int hf_nrppa_tRPInformation = -1; /* TRPInformation */ +static int hf_nrppa_tRPInformationTypeResponseList = -1; /* TRPInformationTypeResponseList */ +static int hf_nrppa_TRPInformationTypeResponseList_item = -1; /* TRPInformationTypeResponseItem */ +static int hf_nrppa_aRFCN = -1; /* INTEGER_0_3279165 */ +static int hf_nrppa_sSBinformation = -1; /* SSBInfo */ +static int hf_nrppa_sFNInitialisationTime = -1; /* RelativeTime1900 */ +static int hf_nrppa_spatialDirectionInformation = -1; /* SpatialDirectionInformation */ +static int hf_nrppa_geographicalCoordinates = -1; /* GeographicalCoordinates */ +static int hf_nrppa_TRPInformationTypeListTRPReq_item = -1; /* ProtocolIE_Single_Container */ +static int hf_nrppa_TRPList_item = -1; /* TRPItem */ +static int hf_nrppa_direct = -1; /* TRPPositionDirect */ +static int hf_nrppa_referenced = -1; /* TRPPositionReferenced */ +static int hf_nrppa_accuracy = -1; /* TRPPositionDirectAccuracy */ +static int hf_nrppa_tRPPosition = -1; /* NG_RANAccessPointPosition */ +static int hf_nrppa_tRPHAposition = -1; /* NGRANHighAccuracyAccessPointPosition */ +static int hf_nrppa_referencePoint = -1; /* ReferencePoint */ +static int hf_nrppa_referencePointType = -1; /* TRPReferencePointType */ +static int hf_nrppa_TRP_PRS_Information_List_item = -1; /* TRP_PRS_Information_List_Item */ +static int hf_nrppa_tRPPositionRelativeGeodetic = -1; /* RelativeGeodeticLocation */ +static int hf_nrppa_tRPPositionRelativeCartesian = -1; /* RelativeCartesianLocation */ +static int hf_nrppa_tRP_Rx_TEGID = -1; /* INTEGER_0_31 */ +static int hf_nrppa_tRP_Rx_TimingErrorMargin = -1; /* TimingErrorMargin */ +static int hf_nrppa_tRP_RxTx_TEGID = -1; /* INTEGER_0_255 */ +static int hf_nrppa_tRP_RxTx_TimingErrorMargin = -1; /* RxTxTimingErrorMargin */ +static int hf_nrppa_tRP_Tx_TEGID = -1; /* INTEGER_0_7 */ +static int hf_nrppa_tRP_Tx_TimingErrorMargin = -1; /* TimingErrorMargin */ +static int hf_nrppa_TRPTxTEGAssociation_item = -1; /* TRPTEGItem */ +static int hf_nrppa_dl_PRSResourceID_List = -1; /* SEQUENCE_SIZE_1_maxPRS_ResourcesPerSet_OF_DLPRSResourceID_Item */ +static int hf_nrppa_dl_PRSResourceID_List_item = -1; /* DLPRSResourceID_Item */ +static int hf_nrppa_reportingAmount = -1; /* T_reportingAmount */ +static int hf_nrppa_reportingInterval = -1; /* T_reportingInterval */ +static int hf_nrppa_UETxTEGAssociationList_item = -1; /* UETxTEGAssociationItem */ +static int hf_nrppa_uE_Tx_TEG_ID = -1; /* INTEGER_0_7 */ +static int hf_nrppa_posSRSResourceID_List = -1; /* PosSRSResourceID_List */ +static int hf_nrppa_carrierFreq = -1; /* CarrierFreq */ +static int hf_nrppa_azimuthAoA = -1; /* INTEGER_0_3599 */ +static int hf_nrppa_zenithAoA = -1; /* INTEGER_0_1799 */ +static int hf_nrppa_uLRTOAmeas = -1; /* ULRTOAMeas */ +static int hf_nrppa_firstPathRSRPP = -1; /* INTEGER_0_126 */ +static int hf_nrppa_UplinkChannelBW_PerSCS_List_item = -1; /* SCS_SpecificCarrier */ +static int hf_nrppa_WLANMeasurementQuantities_item = -1; /* ProtocolIE_Single_Container */ +static int hf_nrppa_wLANMeasurementQuantitiesValue = -1; /* WLANMeasurementQuantitiesValue */ +static int hf_nrppa_WLANMeasurementResult_item = -1; /* WLANMeasurementResult_Item */ +static int hf_nrppa_wLAN_RSSI = -1; /* WLAN_RSSI */ +static int hf_nrppa_sSID = -1; /* SSID */ +static int hf_nrppa_bSSID = -1; /* BSSID */ +static int hf_nrppa_hESSID = -1; /* HESSID */ +static int hf_nrppa_operatingClass = -1; /* WLANOperatingClass */ +static int hf_nrppa_countryCode = -1; /* WLANCountryCode */ +static int hf_nrppa_wLANChannelList = -1; /* WLANChannelList */ +static int hf_nrppa_wLANBand = -1; /* WLANBand */ +static int hf_nrppa_WLANChannelList_item = -1; /* WLANChannel */ +static int hf_nrppa_protocolIEs = -1; /* ProtocolIE_Container */ +static int hf_nrppa_OTDOA_Information_Type_item = -1; /* ProtocolIE_Single_Container */ +static int hf_nrppa_oTDOA_Information_Item = -1; /* OTDOA_Information_Item */ +static int hf_nrppa_privateIEs = -1; /* PrivateIE_Container */ +static int hf_nrppa_semipersistentSRS = -1; /* SemipersistentSRS */ +static int hf_nrppa_aperiodicSRS = -1; /* AperiodicSRS */ +static int hf_nrppa_sRSResourceSetID_01 = -1; /* SRSResourceSetID */ +static int hf_nrppa_aperiodic_04 = -1; /* T_aperiodic */ +static int hf_nrppa_sRSResourceTrigger_01 = -1; /* SRSResourceTrigger */ + +/* Initialize the subtree pointers */ +static gint ett_nrppa = -1; +static gint ett_nrppa_PrivateIE_ID = -1; +static gint ett_nrppa_ProtocolIE_Container = -1; +static gint ett_nrppa_ProtocolIE_Field = -1; +static gint ett_nrppa_ProtocolExtensionContainer = -1; +static gint ett_nrppa_ProtocolExtensionField = -1; +static gint ett_nrppa_PrivateIE_Container = -1; +static gint ett_nrppa_PrivateIE_Field = -1; +static gint ett_nrppa_NRPPA_PDU = -1; +static gint ett_nrppa_InitiatingMessage = -1; +static gint ett_nrppa_SuccessfulOutcome = -1; +static gint ett_nrppa_UnsuccessfulOutcome = -1; +static gint ett_nrppa_AbortTransmission = -1; +static gint ett_nrppa_ActiveULBWP = -1; +static gint ett_nrppa_AdditionalPathList = -1; +static gint ett_nrppa_AdditionalPathListItem = -1; +static gint ett_nrppa_ExtendedAdditionalPathList = -1; +static gint ett_nrppa_ExtendedAdditionalPathList_Item = -1; +static gint ett_nrppa_AoA_AssistanceInfo = -1; +static gint ett_nrppa_AperiodicSRSResourceTriggerList = -1; +static gint ett_nrppa_AngleMeasurementType = -1; +static gint ett_nrppa_Expected_UL_AoA = -1; +static gint ett_nrppa_Expected_ZoA_only = -1; +static gint ett_nrppa_Expected_Azimuth_AoA = -1; +static gint ett_nrppa_Expected_Zenith_AoA = -1; +static gint ett_nrppa_ARPLocationInformation = -1; +static gint ett_nrppa_ARPLocationInformation_Item = -1; +static gint ett_nrppa_ARPLocationType = -1; +static gint ett_nrppa_Assistance_Information = -1; +static gint ett_nrppa_AssistanceInformationFailureList = -1; +static gint ett_nrppa_AssistanceInformationFailureList_item = -1; +static gint ett_nrppa_AssistanceInformationMetaData = -1; +static gint ett_nrppa_BandwidthSRS = -1; +static gint ett_nrppa_PositioningBroadcastCells = -1; +static gint ett_nrppa_CarrierFreq = -1; +static gint ett_nrppa_Cause = -1; +static gint ett_nrppa_CGI_EUTRA = -1; +static gint ett_nrppa_CGI_NR = -1; +static gint ett_nrppa_CriticalityDiagnostics = -1; +static gint ett_nrppa_CriticalityDiagnostics_IE_List = -1; +static gint ett_nrppa_CriticalityDiagnostics_IE_List_item = -1; +static gint ett_nrppa_DL_PRS = -1; +static gint ett_nrppa_DL_PRSMutingPattern = -1; +static gint ett_nrppa_DLPRSResourceCoordinates = -1; +static gint ett_nrppa_SEQUENCE_SIZE_1_maxPRS_ResourceSets_OF_DLPRSResourceSetARP = -1; +static gint ett_nrppa_DLPRSResourceSetARP = -1; +static gint ett_nrppa_SEQUENCE_SIZE_1_maxPRS_ResourcesPerSet_OF_DLPRSResourceARP = -1; +static gint ett_nrppa_DL_PRSResourceSetARPLocation = -1; +static gint ett_nrppa_DLPRSResourceARP = -1; +static gint ett_nrppa_DL_PRSResourceARPLocation = -1; +static gint ett_nrppa_E_CID_MeasurementResult = -1; +static gint ett_nrppa_GeographicalCoordinates = -1; +static gint ett_nrppa_GNB_RxTxTimeDiff = -1; +static gint ett_nrppa_GNBRxTxTimeDiffMeas = -1; +static gint ett_nrppa_LCS_to_GCS_Translation = -1; +static gint ett_nrppa_LCS_to_GCS_TranslationItem = -1; +static gint ett_nrppa_LocationUncertainty = -1; +static gint ett_nrppa_LoS_NLoSInformation = -1; +static gint ett_nrppa_MeasurementBeamInfo = -1; +static gint ett_nrppa_MeasurementQuantities = -1; +static gint ett_nrppa_MeasurementQuantities_Item = -1; +static gint ett_nrppa_MeasuredResults = -1; +static gint ett_nrppa_MeasuredResultsValue = -1; +static gint ett_nrppa_MultipleULAoA = -1; +static gint ett_nrppa_MultipleULAoA_List = -1; +static gint ett_nrppa_MultipleULAoA_Item = -1; +static gint ett_nrppa_NG_RANAccessPointPosition = -1; +static gint ett_nrppa_NGRANHighAccuracyAccessPointPosition = -1; +static gint ett_nrppa_NG_RAN_CGI = -1; +static gint ett_nrppa_NG_RANCell = -1; +static gint ett_nrppa_NR_PRS_Beam_Information = -1; +static gint ett_nrppa_SEQUENCE_SIZE_1_maxPRS_ResourceSets_OF_NR_PRS_Beam_InformationItem = -1; +static gint ett_nrppa_SEQUENCE_SIZE_1_maxnolcs_gcs_translation_OF_LCS_to_GCS_TranslationItem = -1; +static gint ett_nrppa_NR_PRS_Beam_InformationItem = -1; +static gint ett_nrppa_SEQUENCE_SIZE_1_maxPRS_ResourcesPerSet_OF_PRSAngleItem = -1; +static gint ett_nrppa_OnDemandPRS_Info = -1; +static gint ett_nrppa_OTDOACells = -1; +static gint ett_nrppa_OTDOACells_item = -1; +static gint ett_nrppa_OTDOACell_Information = -1; +static gint ett_nrppa_OTDOACell_Information_Item = -1; +static gint ett_nrppa_OtherRATMeasurementQuantities = -1; +static gint ett_nrppa_OtherRATMeasurementQuantities_Item = -1; +static gint ett_nrppa_OtherRATMeasurementResult = -1; +static gint ett_nrppa_OtherRATMeasuredResultsValue = -1; +static gint ett_nrppa_PathlossReferenceInformation = -1; +static gint ett_nrppa_PathlossReferenceSignal = -1; +static gint ett_nrppa_PeriodicityList = -1; +static gint ett_nrppa_PosSIBs = -1; +static gint ett_nrppa_PosSIBs_item = -1; +static gint ett_nrppa_PosSIB_Segments = -1; +static gint ett_nrppa_PosSIB_Segments_item = -1; +static gint ett_nrppa_PosSRSResource_List = -1; +static gint ett_nrppa_PosSRSResource_Item = -1; +static gint ett_nrppa_PosSRSResourceID_List = -1; +static gint ett_nrppa_PosSRSResourceSet_List = -1; +static gint ett_nrppa_PosSRSResourceIDPerSet_List = -1; +static gint ett_nrppa_PosSRSResourceSet_Item = -1; +static gint ett_nrppa_PosResourceSetType = -1; +static gint ett_nrppa_PosResourceSetTypePeriodic = -1; +static gint ett_nrppa_PosResourceSetTypeSemi_persistent = -1; +static gint ett_nrppa_PosResourceSetTypeAperiodic = -1; +static gint ett_nrppa_PRSAngleItem = -1; +static gint ett_nrppa_PRSInformationPos = -1; +static gint ett_nrppa_PRSConfiguration = -1; +static gint ett_nrppa_PRSMutingConfiguration_EUTRA = -1; +static gint ett_nrppa_PRSFrequencyHoppingConfiguration_EUTRA = -1; +static gint ett_nrppa_SEQUENCE_SIZE_1_maxnoFreqHoppingBandsMinusOne_OF_NarrowBandIndex = -1; +static gint ett_nrppa_PRS_Measurements_Info_List = -1; +static gint ett_nrppa_PRS_Measurements_Info_List_Item = -1; +static gint ett_nrppa_PRSMuting = -1; +static gint ett_nrppa_PRSMutingOption1 = -1; +static gint ett_nrppa_PRSMutingOption2 = -1; +static gint ett_nrppa_PRSResource_List = -1; +static gint ett_nrppa_PRSResource_Item = -1; +static gint ett_nrppa_PRSResource_QCLInfo = -1; +static gint ett_nrppa_PRSResource_QCLSourceSSB = -1; +static gint ett_nrppa_PRSResource_QCLSourcePRS = -1; +static gint ett_nrppa_PRSResourceSet_List = -1; +static gint ett_nrppa_PRSResourceSet_Item = -1; +static gint ett_nrppa_PRSTransmissionOffIndication = -1; +static gint ett_nrppa_PRSTransmissionOffPerResource = -1; +static gint ett_nrppa_PRSTransmissionOffPerResource_Item = -1; +static gint ett_nrppa_SEQUENCE_SIZE_1_maxnoofPRSresource_OF_PRSTransmissionOffIndicationPerResource_Item = -1; +static gint ett_nrppa_PRSTransmissionOffIndicationPerResource_Item = -1; +static gint ett_nrppa_PRSTransmissionOffInformation = -1; +static gint ett_nrppa_PRSTransmissionOffPerResourceSet = -1; +static gint ett_nrppa_PRSTransmissionOffPerResourceSet_Item = -1; +static gint ett_nrppa_PRSTRPList = -1; +static gint ett_nrppa_PRSTRPItem = -1; +static gint ett_nrppa_PRSTransmissionTRPList = -1; +static gint ett_nrppa_PRSTransmissionTRPItem = -1; +static gint ett_nrppa_ReferenceSignal = -1; +static gint ett_nrppa_ReferencePoint = -1; +static gint ett_nrppa_RelativeGeodeticLocation = -1; +static gint ett_nrppa_RelativeCartesianLocation = -1; +static gint ett_nrppa_RelativePathDelay = -1; +static gint ett_nrppa_RequestedDLPRSTransmissionCharacteristics = -1; +static gint ett_nrppa_RequestedDLPRSResourceSet_List = -1; +static gint ett_nrppa_RequestedDLPRSResourceSet_Item = -1; +static gint ett_nrppa_RequestedDLPRSResource_List = -1; +static gint ett_nrppa_RequestedDLPRSResource_Item = -1; +static gint ett_nrppa_RequestedSRSTransmissionCharacteristics = -1; +static gint ett_nrppa_SEQUENCE_SIZE_1_maxnoSRS_ResourceSets_OF_SRSResourceSet_Item = -1; +static gint ett_nrppa_SRSResourceSet_Item = -1; +static gint ett_nrppa_ResourceSetType = -1; +static gint ett_nrppa_ResourceSetTypePeriodic = -1; +static gint ett_nrppa_ResourceSetTypeSemi_persistent = -1; +static gint ett_nrppa_ResourceSetTypeAperiodic = -1; +static gint ett_nrppa_ResourceType = -1; +static gint ett_nrppa_ResourceTypePeriodic = -1; +static gint ett_nrppa_ResourceTypeSemi_persistent = -1; +static gint ett_nrppa_ResourceTypeAperiodic = -1; +static gint ett_nrppa_ResourceTypePos = -1; +static gint ett_nrppa_ResourceTypePeriodicPos = -1; +static gint ett_nrppa_ResourceTypeSemi_persistentPos = -1; +static gint ett_nrppa_ResourceTypeAperiodicPos = -1; +static gint ett_nrppa_ResponseTime = -1; +static gint ett_nrppa_ResultCSI_RSRP = -1; +static gint ett_nrppa_ResultCSI_RSRP_Item = -1; +static gint ett_nrppa_ResultCSI_RSRP_PerCSI_RS = -1; +static gint ett_nrppa_ResultCSI_RSRP_PerCSI_RS_Item = -1; +static gint ett_nrppa_ResultCSI_RSRQ = -1; +static gint ett_nrppa_ResultCSI_RSRQ_Item = -1; +static gint ett_nrppa_ResultCSI_RSRQ_PerCSI_RS = -1; +static gint ett_nrppa_ResultCSI_RSRQ_PerCSI_RS_Item = -1; +static gint ett_nrppa_ResultEUTRA = -1; +static gint ett_nrppa_ResultEUTRA_Item = -1; +static gint ett_nrppa_ResultRSRP_EUTRA = -1; +static gint ett_nrppa_ResultRSRP_EUTRA_Item = -1; +static gint ett_nrppa_ResultRSRQ_EUTRA = -1; +static gint ett_nrppa_ResultRSRQ_EUTRA_Item = -1; +static gint ett_nrppa_ResultSS_RSRP = -1; +static gint ett_nrppa_ResultSS_RSRP_Item = -1; +static gint ett_nrppa_ResultSS_RSRP_PerSSB = -1; +static gint ett_nrppa_ResultSS_RSRP_PerSSB_Item = -1; +static gint ett_nrppa_ResultSS_RSRQ = -1; +static gint ett_nrppa_ResultSS_RSRQ_Item = -1; +static gint ett_nrppa_ResultSS_RSRQ_PerSSB = -1; +static gint ett_nrppa_ResultSS_RSRQ_PerSSB_Item = -1; +static gint ett_nrppa_ResultGERAN = -1; +static gint ett_nrppa_ResultGERAN_Item = -1; +static gint ett_nrppa_ResultNR = -1; +static gint ett_nrppa_ResultNR_Item = -1; +static gint ett_nrppa_ResultUTRAN = -1; +static gint ett_nrppa_ResultUTRAN_Item = -1; +static gint ett_nrppa_T_physCellIDUTRAN = -1; +static gint ett_nrppa_SCS_SpecificCarrier = -1; +static gint ett_nrppa_Search_window_information = -1; +static gint ett_nrppa_SpatialDirectionInformation = -1; +static gint ett_nrppa_SpatialRelationInfo = -1; +static gint ett_nrppa_SpatialRelationforResourceID = -1; +static gint ett_nrppa_SpatialRelationforResourceIDItem = -1; +static gint ett_nrppa_SpatialRelationPerSRSResource = -1; +static gint ett_nrppa_SpatialRelationPerSRSResource_List = -1; +static gint ett_nrppa_SpatialRelationPerSRSResourceItem = -1; +static gint ett_nrppa_SpatialRelationPos = -1; +static gint ett_nrppa_SRSConfig = -1; +static gint ett_nrppa_SRSCarrier_List = -1; +static gint ett_nrppa_SRSCarrier_List_Item = -1; +static gint ett_nrppa_SRSConfiguration = -1; +static gint ett_nrppa_SRSResource = -1; +static gint ett_nrppa_SRSResource_List = -1; +static gint ett_nrppa_SRSResourceSet_List = -1; +static gint ett_nrppa_SRSResourceID_List = -1; +static gint ett_nrppa_SRSResourceSet = -1; +static gint ett_nrppa_SRSResourceTrigger = -1; +static gint ett_nrppa_SRSResourcetype = -1; +static gint ett_nrppa_SRSResourceTypeChoice = -1; +static gint ett_nrppa_SRSInfo = -1; +static gint ett_nrppa_PosSRSInfo = -1; +static gint ett_nrppa_SSBInfo = -1; +static gint ett_nrppa_SEQUENCE_SIZE_1_maxNoSSBs_OF_SSBInfoItem = -1; +static gint ett_nrppa_SSBInfoItem = -1; +static gint ett_nrppa_SSB = -1; +static gint ett_nrppa_SSBBurstPosition = -1; +static gint ett_nrppa_StartTimeAndDuration = -1; +static gint ett_nrppa_SystemInformation = -1; +static gint ett_nrppa_SystemInformation_item = -1; +static gint ett_nrppa_TDD_Config_EUTRA_Item = -1; +static gint ett_nrppa_TRPTEGInformation = -1; +static gint ett_nrppa_RxTxTEG = -1; +static gint ett_nrppa_RxTEG = -1; +static gint ett_nrppa_TF_Configuration = -1; +static gint ett_nrppa_TimeStamp = -1; +static gint ett_nrppa_TimeStampSlotIndex = -1; +static gint ett_nrppa_TransmissionComb = -1; +static gint ett_nrppa_T_n2 = -1; +static gint ett_nrppa_T_n4 = -1; +static gint ett_nrppa_TransmissionCombPos = -1; +static gint ett_nrppa_T_n2_01 = -1; +static gint ett_nrppa_T_n4_01 = -1; +static gint ett_nrppa_T_n8 = -1; +static gint ett_nrppa_TRPBeamAntennaInformation = -1; +static gint ett_nrppa_Choice_TRP_Beam_Antenna_Info_Item = -1; +static gint ett_nrppa_TRP_BeamAntennaExplicitInformation = -1; +static gint ett_nrppa_TRP_BeamAntennaAngles = -1; +static gint ett_nrppa_TRP_BeamAntennaAnglesList_Item = -1; +static gint ett_nrppa_SEQUENCE_SIZE_1_maxnoElevationAngles_OF_TRP_ElevationAngleList_Item = -1; +static gint ett_nrppa_TRP_ElevationAngleList_Item = -1; +static gint ett_nrppa_SEQUENCE_SIZE_2_maxNumResourcesPerAngle_OF_TRP_Beam_Power_Item = -1; +static gint ett_nrppa_TRP_Beam_Power_Item = -1; +static gint ett_nrppa_TRPMeasurementQuantities = -1; +static gint ett_nrppa_TRPMeasurementQuantitiesList_Item = -1; +static gint ett_nrppa_TrpMeasurementResult = -1; +static gint ett_nrppa_TrpMeasurementResultItem = -1; +static gint ett_nrppa_TrpMeasuredResultsValue = -1; +static gint ett_nrppa_TrpMeasurementQuality = -1; +static gint ett_nrppa_TrpMeasurementTimingQuality = -1; +static gint ett_nrppa_TrpMeasurementAngleQuality = -1; +static gint ett_nrppa_TRP_MeasurementRequestList = -1; +static gint ett_nrppa_TRP_MeasurementRequestItem = -1; +static gint ett_nrppa_TRP_MeasurementResponseList = -1; +static gint ett_nrppa_TRP_MeasurementResponseItem = -1; +static gint ett_nrppa_TRP_MeasurementUpdateList = -1; +static gint ett_nrppa_TRP_MeasurementUpdateItem = -1; +static gint ett_nrppa_TRPInformationListTRPResp = -1; +static gint ett_nrppa_TRPInformationListTRPResp_item = -1; +static gint ett_nrppa_TRPInformation = -1; +static gint ett_nrppa_TRPInformationTypeResponseList = -1; +static gint ett_nrppa_TRPInformationTypeResponseItem = -1; +static gint ett_nrppa_TRPInformationTypeListTRPReq = -1; +static gint ett_nrppa_TRPList = -1; +static gint ett_nrppa_TRPItem = -1; +static gint ett_nrppa_TRPPositionDefinitionType = -1; +static gint ett_nrppa_TRPPositionDirect = -1; +static gint ett_nrppa_TRPPositionDirectAccuracy = -1; +static gint ett_nrppa_TRPPositionReferenced = -1; +static gint ett_nrppa_TRP_PRS_Information_List = -1; +static gint ett_nrppa_TRP_PRS_Information_List_Item = -1; +static gint ett_nrppa_TRPReferencePointType = -1; +static gint ett_nrppa_TRP_Rx_TEGInformation = -1; +static gint ett_nrppa_TRP_RxTx_TEGInformation = -1; +static gint ett_nrppa_TRP_Tx_TEGInformation = -1; +static gint ett_nrppa_TRPTxTEGAssociation = -1; +static gint ett_nrppa_TRPTEGItem = -1; +static gint ett_nrppa_SEQUENCE_SIZE_1_maxPRS_ResourcesPerSet_OF_DLPRSResourceID_Item = -1; +static gint ett_nrppa_DLPRSResourceID_Item = -1; +static gint ett_nrppa_UEReportingInformation = -1; +static gint ett_nrppa_UETxTEGAssociationList = -1; +static gint ett_nrppa_UETxTEGAssociationItem = -1; +static gint ett_nrppa_UL_AoA = -1; +static gint ett_nrppa_UL_RTOAMeasurement = -1; +static gint ett_nrppa_ULRTOAMeas = -1; +static gint ett_nrppa_UL_SRS_RSRPP = -1; +static gint ett_nrppa_UplinkChannelBW_PerSCS_List = -1; +static gint ett_nrppa_WLANMeasurementQuantities = -1; +static gint ett_nrppa_WLANMeasurementQuantities_Item = -1; +static gint ett_nrppa_WLANMeasurementResult = -1; +static gint ett_nrppa_WLANMeasurementResult_Item = -1; +static gint ett_nrppa_WLANChannelList = -1; +static gint ett_nrppa_ZoA = -1; +static gint ett_nrppa_E_CIDMeasurementInitiationRequest = -1; +static gint ett_nrppa_E_CIDMeasurementInitiationResponse = -1; +static gint ett_nrppa_E_CIDMeasurementInitiationFailure = -1; +static gint ett_nrppa_E_CIDMeasurementFailureIndication = -1; +static gint ett_nrppa_E_CIDMeasurementReport = -1; +static gint ett_nrppa_E_CIDMeasurementTerminationCommand = -1; +static gint ett_nrppa_OTDOAInformationRequest = -1; +static gint ett_nrppa_OTDOA_Information_Type = -1; +static gint ett_nrppa_OTDOA_Information_Type_Item = -1; +static gint ett_nrppa_OTDOAInformationResponse = -1; +static gint ett_nrppa_OTDOAInformationFailure = -1; +static gint ett_nrppa_AssistanceInformationControl = -1; +static gint ett_nrppa_AssistanceInformationFeedback = -1; +static gint ett_nrppa_ErrorIndication = -1; +static gint ett_nrppa_PrivateMessage = -1; +static gint ett_nrppa_PositioningInformationRequest = -1; +static gint ett_nrppa_PositioningInformationResponse = -1; +static gint ett_nrppa_PositioningInformationFailure = -1; +static gint ett_nrppa_PositioningInformationUpdate = -1; +static gint ett_nrppa_MeasurementRequest = -1; +static gint ett_nrppa_MeasurementResponse = -1; +static gint ett_nrppa_MeasurementFailure = -1; +static gint ett_nrppa_MeasurementReport = -1; +static gint ett_nrppa_MeasurementUpdate = -1; +static gint ett_nrppa_MeasurementAbort = -1; +static gint ett_nrppa_MeasurementFailureIndication = -1; +static gint ett_nrppa_TRPInformationRequest = -1; +static gint ett_nrppa_TRPInformationResponse = -1; +static gint ett_nrppa_TRPInformationFailure = -1; +static gint ett_nrppa_PositioningActivationRequest = -1; +static gint ett_nrppa_SRSType = -1; +static gint ett_nrppa_SemipersistentSRS = -1; +static gint ett_nrppa_AperiodicSRS = -1; +static gint ett_nrppa_PositioningActivationResponse = -1; +static gint ett_nrppa_PositioningActivationFailure = -1; +static gint ett_nrppa_PositioningDeactivation = -1; +static gint ett_nrppa_PRSConfigurationRequest = -1; +static gint ett_nrppa_PRSConfigurationResponse = -1; +static gint ett_nrppa_PRSConfigurationFailure = -1; +static gint ett_nrppa_MeasurementPreconfigurationRequired = -1; +static gint ett_nrppa_MeasurementPreconfigurationConfirm = -1; +static gint ett_nrppa_MeasurementPreconfigurationRefuse = -1; +static gint ett_nrppa_MeasurementActivation = -1; + +/* Global variables */ +static guint32 ProcedureCode; +static guint32 ProtocolIE_ID; + +/* Dissector tables */ +static dissector_table_t nrppa_ies_dissector_table; +static dissector_table_t nrppa_extension_dissector_table; +static dissector_table_t nrppa_proc_imsg_dissector_table; +static dissector_table_t nrppa_proc_sout_dissector_table; +static dissector_table_t nrppa_proc_uout_dissector_table; + +/* Include constants */ +#define maxPrivateIEs 65535 +#define maxProtocolExtensions 65535 +#define maxProtocolIEs 65535 +#define maxNrOfErrors 256 +#define maxCellinRANnode 3840 +#define maxIndexesReport 64 +#define maxNoMeas 64 +#define maxCellReport 9 +#define maxCellReportNR 9 +#define maxnoOTDOAtypes 63 +#define maxServCell 5 +#define maxEUTRAMeas 8 +#define maxGERANMeas 8 +#define maxNRMeas 8 +#define maxUTRANMeas 8 +#define maxWLANchannels 16 +#define maxnoFreqHoppingBandsMinusOne 7 +#define maxNoPath 2 +#define maxNrOfPosSImessage 32 +#define maxnoAssistInfoFailureListItems 32 +#define maxNrOfSegments 64 +#define maxNrOfPosSIBs 32 +#define maxNoOfMeasTRPs 64 +#define maxnoTRPs 65535 +#define maxnoTRPInfoTypes 64 +#define maxnoofAngleInfo 65535 +#define maxnolcs_gcs_translation 3 +#define maxnoBcastCell 16384 +#define maxnoSRSTriggerStates 3 +#define maxnoSpatialRelations 64 +#define maxnoPosMeas 16384 +#define maxnoSRS_Carriers 32 +#define maxnoSCSs 5 +#define maxnoSRS_Resources 64 +#define maxnoSRS_PosResources 64 +#define maxnoSRS_ResourceSets 16 +#define maxnoSRS_ResourcePerSet 16 +#define maxnoSRS_PosResourceSets 16 +#define maxnoSRS_PosResourcePerSet 16 +#define maxPRS_ResourceSets 2 +#define maxPRS_ResourcesPerSet 64 +#define maxNoSSBs 255 +#define maxnoofPRSresourceSet 8 +#define maxnoofPRSresource 64 +#define maxnoofULAoAs 8 +#define maxNoPathExtended 8 +#define maxnoARPs 16 +#define maxnoUETEGs 256 +#define maxnoTRPTEGs 8 +#define maxFreqLayers 4 +#define maxNumResourcesPerAngle 24 +#define maxnoAzimuthAngles 3600 +#define maxnoElevationAngles 1801 +#define maxnoPRSTRPs 256 + +typedef enum _ProcedureCode_enum { + id_errorIndication = 0, + id_privateMessage = 1, + id_e_CIDMeasurementInitiation = 2, + id_e_CIDMeasurementFailureIndication = 3, + id_e_CIDMeasurementReport = 4, + id_e_CIDMeasurementTermination = 5, + id_oTDOAInformationExchange = 6, + id_assistanceInformationControl = 7, + id_assistanceInformationFeedback = 8, + id_positioningInformationExchange = 9, + id_positioningInformationUpdate = 10, + id_Measurement = 11, + id_MeasurementReport = 12, + id_MeasurementUpdate = 13, + id_MeasurementAbort = 14, + id_MeasurementFailureIndication = 15, + id_tRPInformationExchange = 16, + id_positioningActivation = 17, + id_positioningDeactivation = 18, + id_pRSConfigurationExchange = 19, + id_measurementPreconfiguration = 20, + id_measurementActivation = 21 +} ProcedureCode_enum; + +typedef enum _ProtocolIE_ID_enum { + id_Cause = 0, + id_CriticalityDiagnostics = 1, + id_LMF_UE_Measurement_ID = 2, + id_ReportCharacteristics = 3, + id_MeasurementPeriodicity = 4, + id_MeasurementQuantities = 5, + id_RAN_UE_Measurement_ID = 6, + id_E_CID_MeasurementResult = 7, + id_OTDOACells = 8, + id_OTDOA_Information_Type_Group = 9, + id_OTDOA_Information_Type_Item = 10, + id_MeasurementQuantities_Item = 11, + id_RequestedSRSTransmissionCharacteristics = 12, + id_Cell_Portion_ID = 14, + id_OtherRATMeasurementQuantities = 15, + id_OtherRATMeasurementQuantities_Item = 16, + id_OtherRATMeasurementResult = 17, + id_WLANMeasurementQuantities = 19, + id_WLANMeasurementQuantities_Item = 20, + id_WLANMeasurementResult = 21, + id_TDD_Config_EUTRA_Item = 22, + id_Assistance_Information = 23, + id_Broadcast = 24, + id_AssistanceInformationFailureList = 25, + id_SRSConfiguration = 26, + id_MeasurementResult = 27, + id_TRP_ID = 28, + id_TRPInformationTypeListTRPReq = 29, + id_TRPInformationListTRPResp = 30, + id_MeasurementBeamInfoRequest = 31, + id_ResultSS_RSRP = 32, + id_ResultSS_RSRQ = 33, + id_ResultCSI_RSRP = 34, + id_ResultCSI_RSRQ = 35, + id_AngleOfArrivalNR = 36, + id_GeographicalCoordinates = 37, + id_PositioningBroadcastCells = 38, + id_LMF_Measurement_ID = 39, + id_RAN_Measurement_ID = 40, + id_TRP_MeasurementRequestList = 41, + id_TRP_MeasurementResponseList = 42, + id_TRP_MeasurementReportList = 43, + id_SRSType = 44, + id_ActivationTime = 45, + id_SRSResourceSetID = 46, + id_TRPList = 47, + id_SRSSpatialRelation = 48, + id_SystemFrameNumber = 49, + id_SlotNumber = 50, + id_SRSResourceTrigger = 51, + id_TRPMeasurementQuantities = 52, + id_AbortTransmission = 53, + id_SFNInitialisationTime = 54, + id_ResultNR = 55, + id_ResultEUTRA = 56, + id_TRPInformationTypeItem = 57, + id_CGI_NR = 58, + id_SFNInitialisationTime_NR = 59, + id_Cell_ID = 60, + id_SrsFrequency = 61, + id_TRPType = 62, + id_SRSSpatialRelationPerSRSResource = 63, + id_MeasurementPeriodicityExtended = 64, + id_PRS_Resource_ID = 65, + id_PRSTRPList = 66, + id_PRSTransmissionTRPList = 67, + id_OnDemandPRS = 68, + id_AoA_SearchWindow = 69, + id_TRP_MeasurementUpdateList = 70, + id_ZoA = 71, + id_ResponseTime = 72, + id_UEReportingInformation = 73, + id_MultipleULAoA = 74, + id_UL_SRS_RSRPP = 75, + id_SRSResourcetype = 76, + id_ExtendedAdditionalPathList = 77, + id_ARPLocationInfo = 78, + id_ARP_ID = 79, + id_LoS_NLoSInformation = 80, + id_UETxTEGAssociationList = 81, + id_NumberOfTRPRxTEG = 82, + id_NumberOfTRPRxTxTEG = 83, + id_TRPTxTEGAssociation = 84, + id_TRPTEGInformation = 85, + id_TRP_Rx_TEGInformation = 86, + id_TRP_PRS_Information_List = 87, + id_PRS_Measurements_Info_List = 88, + id_PRSConfigRequestType = 89, + id_UE_TEG_Info_Request = 90, + id_MeasurementTimeOccasion = 91, + id_MeasurementCharacteristicsRequestIndicator = 92, + id_TRPBeamAntennaInformation = 93, + id_NR_TADV = 94, + id_MeasurementAmount = 95, + id_pathPower = 96, + id_PreconfigurationResult = 97, + id_RequestType = 98, + id_UE_TEG_ReportingPeriodicity = 99, + id_SRSPortIndex = 100, + id_procedure_code_101_not_to_be_used = 101, + id_procedure_code_102_not_to_be_used = 102, + id_procedure_code_103_not_to_be_used = 103, + id_UETxTimingErrorMargin = 104, + id_MeasurementPeriodicityNR_AoA = 105, + id_SRSTransmissionStatus = 106 +} ProtocolIE_ID_enum; + +static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *); +static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *); +static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *); +static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *); +static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *); + + +static const value_string nrppa_Criticality_vals[] = { + { 0, "reject" }, + { 1, "ignore" }, + { 2, "notify" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_Criticality(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, FALSE, 0, NULL); + + return offset; +} + + + +static int +dissect_nrppa_NRPPATransactionID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 32767U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_maxPrivateIEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, maxPrivateIEs, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_OBJECT_IDENTIFIER(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_object_identifier(tvb, offset, actx, tree, hf_index, NULL); + + return offset; +} + + +static const value_string nrppa_PrivateIE_ID_vals[] = { + { 0, "local" }, + { 1, "global" }, + { 0, NULL } +}; + +static const per_choice_t PrivateIE_ID_choice[] = { + { 0, &hf_nrppa_local , ASN1_NO_EXTENSIONS , dissect_nrppa_INTEGER_0_maxPrivateIEs }, + { 1, &hf_nrppa_global , ASN1_NO_EXTENSIONS , dissect_nrppa_OBJECT_IDENTIFIER }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_PrivateIE_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_PrivateIE_ID, PrivateIE_ID_choice, + NULL); + + return offset; +} + + +static const value_string nrppa_ProcedureCode_vals[] = { + { id_errorIndication, "id-errorIndication" }, + { id_privateMessage, "id-privateMessage" }, + { id_e_CIDMeasurementInitiation, "id-e-CIDMeasurementInitiation" }, + { id_e_CIDMeasurementFailureIndication, "id-e-CIDMeasurementFailureIndication" }, + { id_e_CIDMeasurementReport, "id-e-CIDMeasurementReport" }, + { id_e_CIDMeasurementTermination, "id-e-CIDMeasurementTermination" }, + { id_oTDOAInformationExchange, "id-oTDOAInformationExchange" }, + { id_assistanceInformationControl, "id-assistanceInformationControl" }, + { id_assistanceInformationFeedback, "id-assistanceInformationFeedback" }, + { id_positioningInformationExchange, "id-positioningInformationExchange" }, + { id_positioningInformationUpdate, "id-positioningInformationUpdate" }, + { id_Measurement, "id-Measurement" }, + { id_MeasurementReport, "id-MeasurementReport" }, + { id_MeasurementUpdate, "id-MeasurementUpdate" }, + { id_MeasurementAbort, "id-MeasurementAbort" }, + { id_MeasurementFailureIndication, "id-MeasurementFailureIndication" }, + { id_tRPInformationExchange, "id-tRPInformationExchange" }, + { id_positioningActivation, "id-positioningActivation" }, + { id_positioningDeactivation, "id-positioningDeactivation" }, + { id_pRSConfigurationExchange, "id-pRSConfigurationExchange" }, + { id_measurementPreconfiguration, "id-measurementPreconfiguration" }, + { id_measurementActivation, "id-measurementActivation" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_ProcedureCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 255U, &ProcedureCode, FALSE); + + col_add_fstr(actx->pinfo->cinfo, COL_INFO, "%s ", + val_to_str(ProcedureCode, nrppa_ProcedureCode_vals, + "unknown message")); + return offset; +} + + +static const value_string nrppa_ProtocolIE_ID_vals[] = { + { id_Cause, "id-Cause" }, + { id_CriticalityDiagnostics, "id-CriticalityDiagnostics" }, + { id_LMF_UE_Measurement_ID, "id-LMF-UE-Measurement-ID" }, + { id_ReportCharacteristics, "id-ReportCharacteristics" }, + { id_MeasurementPeriodicity, "id-MeasurementPeriodicity" }, + { id_MeasurementQuantities, "id-MeasurementQuantities" }, + { id_RAN_UE_Measurement_ID, "id-RAN-UE-Measurement-ID" }, + { id_E_CID_MeasurementResult, "id-E-CID-MeasurementResult" }, + { id_OTDOACells, "id-OTDOACells" }, + { id_OTDOA_Information_Type_Group, "id-OTDOA-Information-Type-Group" }, + { id_OTDOA_Information_Type_Item, "id-OTDOA-Information-Type-Item" }, + { id_MeasurementQuantities_Item, "id-MeasurementQuantities-Item" }, + { id_RequestedSRSTransmissionCharacteristics, "id-RequestedSRSTransmissionCharacteristics" }, + { id_Cell_Portion_ID, "id-Cell-Portion-ID" }, + { id_OtherRATMeasurementQuantities, "id-OtherRATMeasurementQuantities" }, + { id_OtherRATMeasurementQuantities_Item, "id-OtherRATMeasurementQuantities-Item" }, + { id_OtherRATMeasurementResult, "id-OtherRATMeasurementResult" }, + { id_WLANMeasurementQuantities, "id-WLANMeasurementQuantities" }, + { id_WLANMeasurementQuantities_Item, "id-WLANMeasurementQuantities-Item" }, + { id_WLANMeasurementResult, "id-WLANMeasurementResult" }, + { id_TDD_Config_EUTRA_Item, "id-TDD-Config-EUTRA-Item" }, + { id_Assistance_Information, "id-Assistance-Information" }, + { id_Broadcast, "id-Broadcast" }, + { id_AssistanceInformationFailureList, "id-AssistanceInformationFailureList" }, + { id_SRSConfiguration, "id-SRSConfiguration" }, + { id_MeasurementResult, "id-MeasurementResult" }, + { id_TRP_ID, "id-TRP-ID" }, + { id_TRPInformationTypeListTRPReq, "id-TRPInformationTypeListTRPReq" }, + { id_TRPInformationListTRPResp, "id-TRPInformationListTRPResp" }, + { id_MeasurementBeamInfoRequest, "id-MeasurementBeamInfoRequest" }, + { id_ResultSS_RSRP, "id-ResultSS-RSRP" }, + { id_ResultSS_RSRQ, "id-ResultSS-RSRQ" }, + { id_ResultCSI_RSRP, "id-ResultCSI-RSRP" }, + { id_ResultCSI_RSRQ, "id-ResultCSI-RSRQ" }, + { id_AngleOfArrivalNR, "id-AngleOfArrivalNR" }, + { id_GeographicalCoordinates, "id-GeographicalCoordinates" }, + { id_PositioningBroadcastCells, "id-PositioningBroadcastCells" }, + { id_LMF_Measurement_ID, "id-LMF-Measurement-ID" }, + { id_RAN_Measurement_ID, "id-RAN-Measurement-ID" }, + { id_TRP_MeasurementRequestList, "id-TRP-MeasurementRequestList" }, + { id_TRP_MeasurementResponseList, "id-TRP-MeasurementResponseList" }, + { id_TRP_MeasurementReportList, "id-TRP-MeasurementReportList" }, + { id_SRSType, "id-SRSType" }, + { id_ActivationTime, "id-ActivationTime" }, + { id_SRSResourceSetID, "id-SRSResourceSetID" }, + { id_TRPList, "id-TRPList" }, + { id_SRSSpatialRelation, "id-SRSSpatialRelation" }, + { id_SystemFrameNumber, "id-SystemFrameNumber" }, + { id_SlotNumber, "id-SlotNumber" }, + { id_SRSResourceTrigger, "id-SRSResourceTrigger" }, + { id_TRPMeasurementQuantities, "id-TRPMeasurementQuantities" }, + { id_AbortTransmission, "id-AbortTransmission" }, + { id_SFNInitialisationTime, "id-SFNInitialisationTime" }, + { id_ResultNR, "id-ResultNR" }, + { id_ResultEUTRA, "id-ResultEUTRA" }, + { id_TRPInformationTypeItem, "id-TRPInformationTypeItem" }, + { id_CGI_NR, "id-CGI-NR" }, + { id_SFNInitialisationTime_NR, "id-SFNInitialisationTime-NR" }, + { id_Cell_ID, "id-Cell-ID" }, + { id_SrsFrequency, "id-SrsFrequency" }, + { id_TRPType, "id-TRPType" }, + { id_SRSSpatialRelationPerSRSResource, "id-SRSSpatialRelationPerSRSResource" }, + { id_MeasurementPeriodicityExtended, "id-MeasurementPeriodicityExtended" }, + { id_PRS_Resource_ID, "id-PRS-Resource-ID" }, + { id_PRSTRPList, "id-PRSTRPList" }, + { id_PRSTransmissionTRPList, "id-PRSTransmissionTRPList" }, + { id_OnDemandPRS, "id-OnDemandPRS" }, + { id_AoA_SearchWindow, "id-AoA-SearchWindow" }, + { id_TRP_MeasurementUpdateList, "id-TRP-MeasurementUpdateList" }, + { id_ZoA, "id-ZoA" }, + { id_ResponseTime, "id-ResponseTime" }, + { id_UEReportingInformation, "id-UEReportingInformation" }, + { id_MultipleULAoA, "id-MultipleULAoA" }, + { id_UL_SRS_RSRPP, "id-UL-SRS-RSRPP" }, + { id_SRSResourcetype, "id-SRSResourcetype" }, + { id_ExtendedAdditionalPathList, "id-ExtendedAdditionalPathList" }, + { id_ARPLocationInfo, "id-ARPLocationInfo" }, + { id_ARP_ID, "id-ARP-ID" }, + { id_LoS_NLoSInformation, "id-LoS-NLoSInformation" }, + { id_UETxTEGAssociationList, "id-UETxTEGAssociationList" }, + { id_NumberOfTRPRxTEG, "id-NumberOfTRPRxTEG" }, + { id_NumberOfTRPRxTxTEG, "id-NumberOfTRPRxTxTEG" }, + { id_TRPTxTEGAssociation, "id-TRPTxTEGAssociation" }, + { id_TRPTEGInformation, "id-TRPTEGInformation" }, + { id_TRP_Rx_TEGInformation, "id-TRP-Rx-TEGInformation" }, + { id_TRP_PRS_Information_List, "id-TRP-PRS-Information-List" }, + { id_PRS_Measurements_Info_List, "id-PRS-Measurements-Info-List" }, + { id_PRSConfigRequestType, "id-PRSConfigRequestType" }, + { id_UE_TEG_Info_Request, "id-UE-TEG-Info-Request" }, + { id_MeasurementTimeOccasion, "id-MeasurementTimeOccasion" }, + { id_MeasurementCharacteristicsRequestIndicator, "id-MeasurementCharacteristicsRequestIndicator" }, + { id_TRPBeamAntennaInformation, "id-TRPBeamAntennaInformation" }, + { id_NR_TADV, "id-NR-TADV" }, + { id_MeasurementAmount, "id-MeasurementAmount" }, + { id_pathPower, "id-pathPower" }, + { id_PreconfigurationResult, "id-PreconfigurationResult" }, + { id_RequestType, "id-RequestType" }, + { id_UE_TEG_ReportingPeriodicity, "id-UE-TEG-ReportingPeriodicity" }, + { id_SRSPortIndex, "id-SRSPortIndex" }, + { id_procedure_code_101_not_to_be_used, "id-procedure-code-101-not-to-be-used" }, + { id_procedure_code_102_not_to_be_used, "id-procedure-code-102-not-to-be-used" }, + { id_procedure_code_103_not_to_be_used, "id-procedure-code-103-not-to-be-used" }, + { id_UETxTimingErrorMargin, "id-UETxTimingErrorMargin" }, + { id_MeasurementPeriodicityNR_AoA, "id-MeasurementPeriodicityNR-AoA" }, + { id_SRSTransmissionStatus, "id-SRSTransmissionStatus" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_ProtocolIE_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, maxProtocolIEs, &ProtocolIE_ID, FALSE); + + if (tree) { + proto_item_append_text(proto_item_get_parent_nth(actx->created_item, 2), ": %s", val_to_str(ProtocolIE_ID, VALS(nrppa_ProtocolIE_ID_vals), "unknown (%d)")); + } + return offset; +} + + +static const value_string nrppa_TriggeringMessage_vals[] = { + { 0, "initiating-message" }, + { 1, "successful-outcome" }, + { 2, "unsuccessful-outcome" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_TriggeringMessage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, FALSE, 0, NULL); + + return offset; +} + + + +static int +dissect_nrppa_T_ie_field_value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_open_type_pdu_new(tvb, offset, actx, tree, hf_index, dissect_ProtocolIEFieldValue); + + return offset; +} + + +static const per_sequence_t ProtocolIE_Field_sequence[] = { + { &hf_nrppa_id , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_ID }, + { &hf_nrppa_criticality , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_Criticality }, + { &hf_nrppa_ie_field_value, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_T_ie_field_value }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ProtocolIE_Field(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ProtocolIE_Field, ProtocolIE_Field_sequence); + + return offset; +} + + +static const per_sequence_t ProtocolIE_Container_sequence_of[1] = { + { &hf_nrppa_ProtocolIE_Container_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Field }, +}; + +static int +dissect_nrppa_ProtocolIE_Container(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_ProtocolIE_Container, ProtocolIE_Container_sequence_of, + 0, maxProtocolIEs, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_ProtocolIE_Single_Container(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_nrppa_ProtocolIE_Field(tvb, offset, actx, tree, hf_index); + + return offset; +} + + + +static int +dissect_nrppa_T_extensionValue(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_open_type_pdu_new(tvb, offset, actx, tree, hf_index, dissect_ProtocolExtensionFieldExtensionValue); + + return offset; +} + + +static const per_sequence_t ProtocolExtensionField_sequence[] = { + { &hf_nrppa_ext_id , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_ID }, + { &hf_nrppa_criticality , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_Criticality }, + { &hf_nrppa_extensionValue, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_T_extensionValue }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ProtocolExtensionField(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ProtocolExtensionField, ProtocolExtensionField_sequence); + + return offset; +} + + +static const per_sequence_t ProtocolExtensionContainer_sequence_of[1] = { + { &hf_nrppa_ProtocolExtensionContainer_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolExtensionField }, +}; + +static int +dissect_nrppa_ProtocolExtensionContainer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_ProtocolExtensionContainer, ProtocolExtensionContainer_sequence_of, + 1, maxProtocolExtensions, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_T_value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_open_type(tvb, offset, actx, tree, hf_index, NULL); + + return offset; +} + + +static const per_sequence_t PrivateIE_Field_sequence[] = { + { &hf_nrppa_id_01 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_PrivateIE_ID }, + { &hf_nrppa_criticality , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_Criticality }, + { &hf_nrppa_value , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_T_value }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PrivateIE_Field(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PrivateIE_Field, PrivateIE_Field_sequence); + + return offset; +} + + +static const per_sequence_t PrivateIE_Container_sequence_of[1] = { + { &hf_nrppa_PrivateIE_Container_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_PrivateIE_Field }, +}; + +static int +dissect_nrppa_PrivateIE_Container(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_PrivateIE_Container, PrivateIE_Container_sequence_of, + 1, maxPrivateIEs, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_InitiatingMessage_value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_open_type_pdu_new(tvb, offset, actx, tree, hf_index, dissect_InitiatingMessageValue); + + return offset; +} + + +static const per_sequence_t InitiatingMessage_sequence[] = { + { &hf_nrppa_procedureCode , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_ProcedureCode }, + { &hf_nrppa_criticality , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_Criticality }, + { &hf_nrppa_nrppatransactionID, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_NRPPATransactionID }, + { &hf_nrppa_initiatingMessagevalue, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_InitiatingMessage_value }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_InitiatingMessage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_InitiatingMessage, InitiatingMessage_sequence); + + return offset; +} + + + +static int +dissect_nrppa_SuccessfulOutcome_value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_open_type_pdu_new(tvb, offset, actx, tree, hf_index, dissect_SuccessfulOutcomeValue); + + return offset; +} + + +static const per_sequence_t SuccessfulOutcome_sequence[] = { + { &hf_nrppa_procedureCode , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_ProcedureCode }, + { &hf_nrppa_criticality , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_Criticality }, + { &hf_nrppa_nrppatransactionID, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_NRPPATransactionID }, + { &hf_nrppa_successfulOutcome_value, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_SuccessfulOutcome_value }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_SuccessfulOutcome(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_SuccessfulOutcome, SuccessfulOutcome_sequence); + + return offset; +} + + + +static int +dissect_nrppa_UnsuccessfulOutcome_value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_open_type_pdu_new(tvb, offset, actx, tree, hf_index, dissect_UnsuccessfulOutcomeValue); + + return offset; +} + + +static const per_sequence_t UnsuccessfulOutcome_sequence[] = { + { &hf_nrppa_procedureCode , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_ProcedureCode }, + { &hf_nrppa_criticality , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_Criticality }, + { &hf_nrppa_nrppatransactionID, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_NRPPATransactionID }, + { &hf_nrppa_unsuccessfulOutcome_value, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_UnsuccessfulOutcome_value }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_UnsuccessfulOutcome(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_UnsuccessfulOutcome, UnsuccessfulOutcome_sequence); + + return offset; +} + + +static const value_string nrppa_NRPPA_PDU_vals[] = { + { 0, "initiatingMessage" }, + { 1, "successfulOutcome" }, + { 2, "unsuccessfulOutcome" }, + { 0, NULL } +}; + +static const per_choice_t NRPPA_PDU_choice[] = { + { 0, &hf_nrppa_initiatingMessage, ASN1_EXTENSION_ROOT , dissect_nrppa_InitiatingMessage }, + { 1, &hf_nrppa_successfulOutcome, ASN1_EXTENSION_ROOT , dissect_nrppa_SuccessfulOutcome }, + { 2, &hf_nrppa_unsuccessfulOutcome, ASN1_EXTENSION_ROOT , dissect_nrppa_UnsuccessfulOutcome }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_NRPPA_PDU(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + proto_tree_add_item(tree, proto_nrppa, tvb, 0, -1, ENC_NA); + add_per_encoded_label(tvb, actx->pinfo, tree); + + col_append_sep_str(actx->pinfo->cinfo, COL_PROTOCOL, "/", "NRPPa"); + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_NRPPA_PDU, NRPPA_PDU_choice, + NULL); + + return offset; +} + + + +static int +dissect_nrppa_SRSResourceSetID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 15U, NULL, TRUE); + + return offset; +} + + + +static int +dissect_nrppa_NULL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_null(tvb, offset, actx, tree, hf_index); + + return offset; +} + + +static const value_string nrppa_AbortTransmission_vals[] = { + { 0, "deactivateSRSResourceSetID" }, + { 1, "releaseALL" }, + { 2, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t AbortTransmission_choice[] = { + { 0, &hf_nrppa_deactivateSRSResourceSetID, ASN1_NO_EXTENSIONS , dissect_nrppa_SRSResourceSetID }, + { 1, &hf_nrppa_releaseALL , ASN1_NO_EXTENSIONS , dissect_nrppa_NULL }, + { 2, &hf_nrppa_choice_extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_AbortTransmission(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_AbortTransmission, AbortTransmission_choice, + NULL); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_37949_(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 37949U, NULL, TRUE); + + return offset; +} + + +static const value_string nrppa_T_subcarrierSpacing_vals[] = { + { 0, "kHz15" }, + { 1, "kHz30" }, + { 2, "kHz60" }, + { 3, "kHz120" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_subcarrierSpacing(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_T_cyclicPrefix_vals[] = { + { 0, "normal" }, + { 1, "extended" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_cyclicPrefix(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, FALSE, 0, NULL); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_3301_(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 3301U, NULL, TRUE); + + return offset; +} + + +static const value_string nrppa_T_shift7dot5kHz_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_shift7dot5kHz(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_nrppa_SRSResourceID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 63U, NULL, FALSE); + + return offset; +} + + +static const value_string nrppa_T_nrofSRS_Ports_vals[] = { + { 0, "port1" }, + { 1, "ports2" }, + { 2, "ports4" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_nrofSRS_Ports(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, FALSE, 0, NULL); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 1U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 7U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_n2_sequence[] = { + { &hf_nrppa_combOffset_n2 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_1 }, + { &hf_nrppa_cyclicShift_n2, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_7 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_T_n2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_T_n2, T_n2_sequence); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 3U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 11U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_n4_sequence[] = { + { &hf_nrppa_combOffset_n4 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_3 }, + { &hf_nrppa_cyclicShift_n4, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_11 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_T_n4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_T_n4, T_n4_sequence); + + return offset; +} + + +static const value_string nrppa_TransmissionComb_vals[] = { + { 0, "n2" }, + { 1, "n4" }, + { 2, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t TransmissionComb_choice[] = { + { 0, &hf_nrppa_n2 , ASN1_NO_EXTENSIONS , dissect_nrppa_T_n2 }, + { 1, &hf_nrppa_n4 , ASN1_NO_EXTENSIONS , dissect_nrppa_T_n4 }, + { 2, &hf_nrppa_choice_extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_TransmissionComb(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_TransmissionComb, TransmissionComb_choice, + NULL); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 13U, NULL, FALSE); + + return offset; +} + + +static const value_string nrppa_T_nrofSymbols_01_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_nrofSymbols_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_T_repetitionFactor_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_repetitionFactor(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, FALSE, 0, NULL); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_67(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 67U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_268(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 268U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_63(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 63U, NULL, FALSE); + + return offset; +} + + +static const value_string nrppa_T_groupOrSequenceHopping_01_vals[] = { + { 0, "neither" }, + { 1, "groupHopping" }, + { 2, "sequenceHopping" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_groupOrSequenceHopping_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_T_periodicity_vals[] = { + { 0, "slot1" }, + { 1, "slot2" }, + { 2, "slot4" }, + { 3, "slot5" }, + { 4, "slot8" }, + { 5, "slot10" }, + { 6, "slot16" }, + { 7, "slot20" }, + { 8, "slot32" }, + { 9, "slot40" }, + { 10, "slot64" }, + { 11, "slot80" }, + { 12, "slot160" }, + { 13, "slot320" }, + { 14, "slot640" }, + { 15, "slot1280" }, + { 16, "slot2560" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_periodicity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 17, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_2559_(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 2559U, NULL, TRUE); + + return offset; +} + + +static const per_sequence_t ResourceTypePeriodic_sequence[] = { + { &hf_nrppa_periodicity , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_periodicity }, + { &hf_nrppa_offset , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_2559_ }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ResourceTypePeriodic(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResourceTypePeriodic, ResourceTypePeriodic_sequence); + + return offset; +} + + +static const value_string nrppa_T_periodicity_01_vals[] = { + { 0, "slot1" }, + { 1, "slot2" }, + { 2, "slot4" }, + { 3, "slot5" }, + { 4, "slot8" }, + { 5, "slot10" }, + { 6, "slot16" }, + { 7, "slot20" }, + { 8, "slot32" }, + { 9, "slot40" }, + { 10, "slot64" }, + { 11, "slot80" }, + { 12, "slot160" }, + { 13, "slot320" }, + { 14, "slot640" }, + { 15, "slot1280" }, + { 16, "slot2560" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_periodicity_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 17, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t ResourceTypeSemi_persistent_sequence[] = { + { &hf_nrppa_periodicity_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_periodicity_01 }, + { &hf_nrppa_offset , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_2559_ }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ResourceTypeSemi_persistent(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResourceTypeSemi_persistent, ResourceTypeSemi_persistent_sequence); + + return offset; +} + + +static const value_string nrppa_T_aperiodicResourceType_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_aperiodicResourceType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t ResourceTypeAperiodic_sequence[] = { + { &hf_nrppa_aperiodicResourceType, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_aperiodicResourceType }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ResourceTypeAperiodic(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResourceTypeAperiodic, ResourceTypeAperiodic_sequence); + + return offset; +} + + +static const value_string nrppa_ResourceType_vals[] = { + { 0, "periodic" }, + { 1, "semi-persistent" }, + { 2, "aperiodic" }, + { 3, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t ResourceType_choice[] = { + { 0, &hf_nrppa_periodic_02 , ASN1_NO_EXTENSIONS , dissect_nrppa_ResourceTypePeriodic }, + { 1, &hf_nrppa_semi_persistent_02, ASN1_NO_EXTENSIONS , dissect_nrppa_ResourceTypeSemi_persistent }, + { 2, &hf_nrppa_aperiodic_02 , ASN1_NO_EXTENSIONS , dissect_nrppa_ResourceTypeAperiodic }, + { 3, &hf_nrppa_choice_extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_ResourceType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResourceType, ResourceType_choice, + NULL); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_1023(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 1023U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t SRSResource_sequence[] = { + { &hf_nrppa_sRSResourceID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_SRSResourceID }, + { &hf_nrppa_nrofSRS_Ports , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_nrofSRS_Ports }, + { &hf_nrppa_transmissionComb, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TransmissionComb }, + { &hf_nrppa_startPosition , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_13 }, + { &hf_nrppa_nrofSymbols_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_nrofSymbols_01 }, + { &hf_nrppa_repetitionFactor, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_repetitionFactor }, + { &hf_nrppa_freqDomainPosition, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_67 }, + { &hf_nrppa_freqDomainShift, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_268 }, + { &hf_nrppa_c_SRS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_63 }, + { &hf_nrppa_b_SRS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_3 }, + { &hf_nrppa_b_hop , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_3 }, + { &hf_nrppa_groupOrSequenceHopping_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_groupOrSequenceHopping_01 }, + { &hf_nrppa_resourceType_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ResourceType }, + { &hf_nrppa_sequenceId_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_1023 }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_SRSResource(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_SRSResource, SRSResource_sequence); + + return offset; +} + + +static const per_sequence_t SRSResource_List_sequence_of[1] = { + { &hf_nrppa_SRSResource_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_SRSResource }, +}; + +static int +dissect_nrppa_SRSResource_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_SRSResource_List, SRSResource_List_sequence_of, + 1, maxnoSRS_Resources, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_SRSPosResourceID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 63U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_n2_01_sequence[] = { + { &hf_nrppa_combOffset_n2 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_1 }, + { &hf_nrppa_cyclicShift_n2, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_7 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_T_n2_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_T_n2_01, T_n2_01_sequence); + + return offset; +} + + +static const per_sequence_t T_n4_01_sequence[] = { + { &hf_nrppa_combOffset_n4 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_3 }, + { &hf_nrppa_cyclicShift_n4, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_11 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_T_n4_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_T_n4_01, T_n4_01_sequence); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 5U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_n8_sequence[] = { + { &hf_nrppa_combOffset_n8 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_7 }, + { &hf_nrppa_cyclicShift_n8, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_5 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_T_n8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_T_n8, T_n8_sequence); + + return offset; +} + + +static const value_string nrppa_TransmissionCombPos_vals[] = { + { 0, "n2" }, + { 1, "n4" }, + { 2, "n8" }, + { 3, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t TransmissionCombPos_choice[] = { + { 0, &hf_nrppa_n2_01 , ASN1_NO_EXTENSIONS , dissect_nrppa_T_n2_01 }, + { 1, &hf_nrppa_n4_01 , ASN1_NO_EXTENSIONS , dissect_nrppa_T_n4_01 }, + { 2, &hf_nrppa_n8 , ASN1_NO_EXTENSIONS , dissect_nrppa_T_n8 }, + { 3, &hf_nrppa_choice_extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_TransmissionCombPos(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_TransmissionCombPos, TransmissionCombPos_choice, + NULL); + + return offset; +} + + +static const value_string nrppa_T_nrofSymbols_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "n8" }, + { 4, "n12" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_nrofSymbols(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 5, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_T_groupOrSequenceHopping_vals[] = { + { 0, "neither" }, + { 1, "groupHopping" }, + { 2, "sequenceHopping" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_groupOrSequenceHopping(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_T_periodicity_02_vals[] = { + { 0, "slot1" }, + { 1, "slot2" }, + { 2, "slot4" }, + { 3, "slot5" }, + { 4, "slot8" }, + { 5, "slot10" }, + { 6, "slot16" }, + { 7, "slot20" }, + { 8, "slot32" }, + { 9, "slot40" }, + { 10, "slot64" }, + { 11, "slot80" }, + { 12, "slot160" }, + { 13, "slot320" }, + { 14, "slot640" }, + { 15, "slot1280" }, + { 16, "slot2560" }, + { 17, "slot5120" }, + { 18, "slot10240" }, + { 19, "slot40960" }, + { 20, "slot81920" }, + { 21, "slot128" }, + { 22, "slot256" }, + { 23, "slot512" }, + { 24, "slot20480" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_periodicity_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 21, NULL, TRUE, 4, NULL); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_81919_(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 81919U, NULL, TRUE); + + return offset; +} + + +static const per_sequence_t ResourceTypePeriodicPos_sequence[] = { + { &hf_nrppa_periodicity_02, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_periodicity_02 }, + { &hf_nrppa_offset_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_81919_ }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ResourceTypePeriodicPos(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResourceTypePeriodicPos, ResourceTypePeriodicPos_sequence); + + return offset; +} + + +static const value_string nrppa_T_periodicity_03_vals[] = { + { 0, "slot1" }, + { 1, "slot2" }, + { 2, "slot4" }, + { 3, "slot5" }, + { 4, "slot8" }, + { 5, "slot10" }, + { 6, "slot16" }, + { 7, "slot20" }, + { 8, "slot32" }, + { 9, "slot40" }, + { 10, "slot64" }, + { 11, "slot80" }, + { 12, "slot160" }, + { 13, "slot320" }, + { 14, "slot640" }, + { 15, "slot1280" }, + { 16, "slot2560" }, + { 17, "slot5120" }, + { 18, "slot10240" }, + { 19, "slot40960" }, + { 20, "slot81920" }, + { 21, "slot128" }, + { 22, "slot256" }, + { 23, "slot512" }, + { 24, "slot20480" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_periodicity_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 21, NULL, TRUE, 4, NULL); + + return offset; +} + + +static const per_sequence_t ResourceTypeSemi_persistentPos_sequence[] = { + { &hf_nrppa_periodicity_03, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_periodicity_03 }, + { &hf_nrppa_offset_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_81919_ }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ResourceTypeSemi_persistentPos(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResourceTypeSemi_persistentPos, ResourceTypeSemi_persistentPos_sequence); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 32U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t ResourceTypeAperiodicPos_sequence[] = { + { &hf_nrppa_slotOffset , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_32 }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ResourceTypeAperiodicPos(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResourceTypeAperiodicPos, ResourceTypeAperiodicPos_sequence); + + return offset; +} + + +static const value_string nrppa_ResourceTypePos_vals[] = { + { 0, "periodic" }, + { 1, "semi-persistent" }, + { 2, "aperiodic" }, + { 3, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t ResourceTypePos_choice[] = { + { 0, &hf_nrppa_periodic_03 , ASN1_NO_EXTENSIONS , dissect_nrppa_ResourceTypePeriodicPos }, + { 1, &hf_nrppa_semi_persistent_03, ASN1_NO_EXTENSIONS , dissect_nrppa_ResourceTypeSemi_persistentPos }, + { 2, &hf_nrppa_aperiodic_03 , ASN1_NO_EXTENSIONS , dissect_nrppa_ResourceTypeAperiodicPos }, + { 3, &hf_nrppa_choice_extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_ResourceTypePos(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResourceTypePos, ResourceTypePos_choice, + NULL); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_65535(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 65535U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_1007(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 1007U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_SSB_Index(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 63U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t SSB_sequence[] = { + { &hf_nrppa_pCI_NR , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_1007 }, + { &hf_nrppa_ssb_index , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_SSB_Index }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_SSB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_SSB, SSB_sequence); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_255(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 255U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t PRSInformationPos_sequence[] = { + { &hf_nrppa_pRS_IDPos , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_255 }, + { &hf_nrppa_pRS_Resource_Set_IDPos, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_7 }, + { &hf_nrppa_pRS_Resource_IDPos, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_INTEGER_0_63 }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PRSInformationPos(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRSInformationPos, PRSInformationPos_sequence); + + return offset; +} + + +static const value_string nrppa_SpatialRelationPos_vals[] = { + { 0, "sSBPos" }, + { 1, "pRSInformationPos" }, + { 2, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t SpatialRelationPos_choice[] = { + { 0, &hf_nrppa_sSBPos , ASN1_NO_EXTENSIONS , dissect_nrppa_SSB }, + { 1, &hf_nrppa_pRSInformationPos, ASN1_NO_EXTENSIONS , dissect_nrppa_PRSInformationPos }, + { 2, &hf_nrppa_choice_extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_SpatialRelationPos(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_SpatialRelationPos, SpatialRelationPos_choice, + NULL); + + return offset; +} + + +static const per_sequence_t PosSRSResource_Item_sequence[] = { + { &hf_nrppa_srs_PosResourceId, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_SRSPosResourceID }, + { &hf_nrppa_transmissionCombPos, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TransmissionCombPos }, + { &hf_nrppa_startPosition , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_13 }, + { &hf_nrppa_nrofSymbols , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_nrofSymbols }, + { &hf_nrppa_freqDomainShift, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_268 }, + { &hf_nrppa_c_SRS , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_63 }, + { &hf_nrppa_groupOrSequenceHopping, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_groupOrSequenceHopping }, + { &hf_nrppa_resourceTypePos, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ResourceTypePos }, + { &hf_nrppa_sequenceId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_65535 }, + { &hf_nrppa_spatialRelationPos, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_SpatialRelationPos }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PosSRSResource_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PosSRSResource_Item, PosSRSResource_Item_sequence); + + return offset; +} + + +static const per_sequence_t PosSRSResource_List_sequence_of[1] = { + { &hf_nrppa_PosSRSResource_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_PosSRSResource_Item }, +}; + +static int +dissect_nrppa_PosSRSResource_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_PosSRSResource_List, PosSRSResource_List_sequence_of, + 1, maxnoSRS_PosResources, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 15U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t SRSResourceID_List_sequence_of[1] = { + { &hf_nrppa_SRSResourceID_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_SRSResourceID }, +}; + +static int +dissect_nrppa_SRSResourceID_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_SRSResourceID_List, SRSResourceID_List_sequence_of, + 1, maxnoSRS_ResourcePerSet, FALSE); + + return offset; +} + + +static const value_string nrppa_T_periodicSet_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_periodicSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t ResourceSetTypePeriodic_sequence[] = { + { &hf_nrppa_periodicSet , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_periodicSet }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ResourceSetTypePeriodic(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResourceSetTypePeriodic, ResourceSetTypePeriodic_sequence); + + return offset; +} + + +static const value_string nrppa_T_semi_persistentSet_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_semi_persistentSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t ResourceSetTypeSemi_persistent_sequence[] = { + { &hf_nrppa_semi_persistentSet, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_semi_persistentSet }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ResourceSetTypeSemi_persistent(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResourceSetTypeSemi_persistent, ResourceSetTypeSemi_persistent_sequence); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_1_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 3U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t ResourceSetTypeAperiodic_sequence[] = { + { &hf_nrppa_sRSResourceTrigger, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_1_3 }, + { &hf_nrppa_slotoffset , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_32 }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ResourceSetTypeAperiodic(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResourceSetTypeAperiodic, ResourceSetTypeAperiodic_sequence); + + return offset; +} + + +static const value_string nrppa_ResourceSetType_vals[] = { + { 0, "periodic" }, + { 1, "semi-persistent" }, + { 2, "aperiodic" }, + { 3, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t ResourceSetType_choice[] = { + { 0, &hf_nrppa_periodic_01 , ASN1_NO_EXTENSIONS , dissect_nrppa_ResourceSetTypePeriodic }, + { 1, &hf_nrppa_semi_persistent_01, ASN1_NO_EXTENSIONS , dissect_nrppa_ResourceSetTypeSemi_persistent }, + { 2, &hf_nrppa_aperiodic_01 , ASN1_NO_EXTENSIONS , dissect_nrppa_ResourceSetTypeAperiodic }, + { 3, &hf_nrppa_choice_extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_ResourceSetType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResourceSetType, ResourceSetType_choice, + NULL); + + return offset; +} + + +static const per_sequence_t SRSResourceSet_sequence[] = { + { &hf_nrppa_sRSResourceSetID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_15 }, + { &hf_nrppa_sRSResourceID_List, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_SRSResourceID_List }, + { &hf_nrppa_resourceSetType, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ResourceSetType }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_SRSResourceSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_SRSResourceSet, SRSResourceSet_sequence); + + return offset; +} + + +static const per_sequence_t SRSResourceSet_List_sequence_of[1] = { + { &hf_nrppa_SRSResourceSet_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_SRSResourceSet }, +}; + +static int +dissect_nrppa_SRSResourceSet_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_SRSResourceSet_List, SRSResourceSet_List_sequence_of, + 1, maxnoSRS_ResourceSets, FALSE); + + return offset; +} + + +static const per_sequence_t PosSRSResourceIDPerSet_List_sequence_of[1] = { + { &hf_nrppa_PosSRSResourceIDPerSet_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_SRSPosResourceID }, +}; + +static int +dissect_nrppa_PosSRSResourceIDPerSet_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_PosSRSResourceIDPerSet_List, PosSRSResourceIDPerSet_List_sequence_of, + 1, maxnoSRS_PosResourcePerSet, FALSE); + + return offset; +} + + +static const value_string nrppa_T_posperiodicSet_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_posperiodicSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t PosResourceSetTypePeriodic_sequence[] = { + { &hf_nrppa_posperiodicSet, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_posperiodicSet }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PosResourceSetTypePeriodic(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PosResourceSetTypePeriodic, PosResourceSetTypePeriodic_sequence); + + return offset; +} + + +static const value_string nrppa_T_possemi_persistentSet_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_possemi_persistentSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t PosResourceSetTypeSemi_persistent_sequence[] = { + { &hf_nrppa_possemi_persistentSet, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_possemi_persistentSet }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PosResourceSetTypeSemi_persistent(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PosResourceSetTypeSemi_persistent, PosResourceSetTypeSemi_persistent_sequence); + + return offset; +} + + +static const per_sequence_t PosResourceSetTypeAperiodic_sequence[] = { + { &hf_nrppa_sRSResourceTrigger, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_1_3 }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PosResourceSetTypeAperiodic(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PosResourceSetTypeAperiodic, PosResourceSetTypeAperiodic_sequence); + + return offset; +} + + +static const value_string nrppa_PosResourceSetType_vals[] = { + { 0, "periodic" }, + { 1, "semi-persistent" }, + { 2, "aperiodic" }, + { 3, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t PosResourceSetType_choice[] = { + { 0, &hf_nrppa_periodic , ASN1_NO_EXTENSIONS , dissect_nrppa_PosResourceSetTypePeriodic }, + { 1, &hf_nrppa_semi_persistent, ASN1_NO_EXTENSIONS , dissect_nrppa_PosResourceSetTypeSemi_persistent }, + { 2, &hf_nrppa_aperiodic , ASN1_NO_EXTENSIONS , dissect_nrppa_PosResourceSetTypeAperiodic }, + { 3, &hf_nrppa_choice_extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_PosResourceSetType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_PosResourceSetType, PosResourceSetType_choice, + NULL); + + return offset; +} + + +static const per_sequence_t PosSRSResourceSet_Item_sequence[] = { + { &hf_nrppa_possrsResourceSetID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_15 }, + { &hf_nrppa_possRSResourceIDPerSet_List, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PosSRSResourceIDPerSet_List }, + { &hf_nrppa_posresourceSetType, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PosResourceSetType }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PosSRSResourceSet_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PosSRSResourceSet_Item, PosSRSResourceSet_Item_sequence); + + return offset; +} + + +static const per_sequence_t PosSRSResourceSet_List_sequence_of[1] = { + { &hf_nrppa_PosSRSResourceSet_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_PosSRSResourceSet_Item }, +}; + +static int +dissect_nrppa_PosSRSResourceSet_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_PosSRSResourceSet_List, PosSRSResourceSet_List_sequence_of, + 1, maxnoSRS_PosResourceSets, FALSE); + + return offset; +} + + +static const per_sequence_t SRSConfig_sequence[] = { + { &hf_nrppa_sRSResource_List, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_SRSResource_List }, + { &hf_nrppa_posSRSResource_List, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_PosSRSResource_List }, + { &hf_nrppa_sRSResourceSet_List, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_SRSResourceSet_List }, + { &hf_nrppa_posSRSResourceSet_List, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_PosSRSResourceSet_List }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_SRSConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_SRSConfig, SRSConfig_sequence); + + return offset; +} + + +static const per_sequence_t ActiveULBWP_sequence[] = { + { &hf_nrppa_locationAndBandwidth, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_37949_ }, + { &hf_nrppa_subcarrierSpacing, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_subcarrierSpacing }, + { &hf_nrppa_cyclicPrefix , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_cyclicPrefix }, + { &hf_nrppa_txDirectCurrentLocation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_3301_ }, + { &hf_nrppa_shift7dot5kHz , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_T_shift7dot5kHz }, + { &hf_nrppa_sRSConfig , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_SRSConfig }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ActiveULBWP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ActiveULBWP, ActiveULBWP_sequence); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_16351(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 16351U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_8176(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 8176U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_4088(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 4088U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_2044(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 2044U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_1022(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 1022U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_511(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 511U, NULL, FALSE); + + return offset; +} + + +static const value_string nrppa_RelativePathDelay_vals[] = { + { 0, "k0" }, + { 1, "k1" }, + { 2, "k2" }, + { 3, "k3" }, + { 4, "k4" }, + { 5, "k5" }, + { 6, "choice-Extension" }, + { 0, NULL } +}; + +static const per_choice_t RelativePathDelay_choice[] = { + { 0, &hf_nrppa_k0_01 , ASN1_NO_EXTENSIONS , dissect_nrppa_INTEGER_0_16351 }, + { 1, &hf_nrppa_k1_01 , ASN1_NO_EXTENSIONS , dissect_nrppa_INTEGER_0_8176 }, + { 2, &hf_nrppa_k2_01 , ASN1_NO_EXTENSIONS , dissect_nrppa_INTEGER_0_4088 }, + { 3, &hf_nrppa_k3_01 , ASN1_NO_EXTENSIONS , dissect_nrppa_INTEGER_0_2044 }, + { 4, &hf_nrppa_k4_01 , ASN1_NO_EXTENSIONS , dissect_nrppa_INTEGER_0_1022 }, + { 5, &hf_nrppa_k5_01 , ASN1_NO_EXTENSIONS , dissect_nrppa_INTEGER_0_511 }, + { 6, &hf_nrppa_choice_Extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_RelativePathDelay(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_RelativePathDelay, RelativePathDelay_choice, + NULL); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_31(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 31U, NULL, FALSE); + + return offset; +} + + +static const value_string nrppa_T_resolution_vals[] = { + { 0, "m0dot1" }, + { 1, "m1" }, + { 2, "m10" }, + { 3, "m30" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_resolution(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t TrpMeasurementTimingQuality_sequence[] = { + { &hf_nrppa_measurementQuality_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_31 }, + { &hf_nrppa_resolution , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_resolution }, + { &hf_nrppa_iE_extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_TrpMeasurementTimingQuality(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_TrpMeasurementTimingQuality, TrpMeasurementTimingQuality_sequence); + + return offset; +} + + +static const value_string nrppa_T_resolution_01_vals[] = { + { 0, "deg0dot1" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_resolution_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t TrpMeasurementAngleQuality_sequence[] = { + { &hf_nrppa_azimuthQuality, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_255 }, + { &hf_nrppa_zenithQuality , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_INTEGER_0_255 }, + { &hf_nrppa_resolution_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_resolution_01 }, + { &hf_nrppa_iE_extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_TrpMeasurementAngleQuality(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_TrpMeasurementAngleQuality, TrpMeasurementAngleQuality_sequence); + + return offset; +} + + +static const value_string nrppa_TrpMeasurementQuality_vals[] = { + { 0, "timingMeasQuality" }, + { 1, "angleMeasQuality" }, + { 2, "choice-Extension" }, + { 0, NULL } +}; + +static const per_choice_t TrpMeasurementQuality_choice[] = { + { 0, &hf_nrppa_timingMeasQuality, ASN1_NO_EXTENSIONS , dissect_nrppa_TrpMeasurementTimingQuality }, + { 1, &hf_nrppa_angleMeasQuality, ASN1_NO_EXTENSIONS , dissect_nrppa_TrpMeasurementAngleQuality }, + { 2, &hf_nrppa_choice_Extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_TrpMeasurementQuality(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_TrpMeasurementQuality, TrpMeasurementQuality_choice, + NULL); + + return offset; +} + + +static const per_sequence_t AdditionalPathListItem_sequence[] = { + { &hf_nrppa_relativeTimeOfPath, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_RelativePathDelay }, + { &hf_nrppa_pathQuality , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_TrpMeasurementQuality }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_AdditionalPathListItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_AdditionalPathListItem, AdditionalPathListItem_sequence); + + return offset; +} + + +static const per_sequence_t AdditionalPathList_sequence_of[1] = { + { &hf_nrppa_AdditionalPathList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_AdditionalPathListItem }, +}; + +static int +dissect_nrppa_AdditionalPathList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_AdditionalPathList, AdditionalPathList_sequence_of, + 1, maxNoPath, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_3599(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 3599U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_1799(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 1799U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t LCS_to_GCS_Translation_sequence[] = { + { &hf_nrppa_alpha , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_3599 }, + { &hf_nrppa_beta , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_3599 }, + { &hf_nrppa_gamma , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_3599 }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_LCS_to_GCS_Translation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_LCS_to_GCS_Translation, LCS_to_GCS_Translation_sequence); + + return offset; +} + + +static const per_sequence_t UL_AoA_sequence[] = { + { &hf_nrppa_azimuthAoA , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_3599 }, + { &hf_nrppa_zenithAoA , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_INTEGER_0_1799 }, + { &hf_nrppa_lCS_to_GCS_Translation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_LCS_to_GCS_Translation }, + { &hf_nrppa_iE_extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_UL_AoA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_UL_AoA, UL_AoA_sequence); + + return offset; +} + + +static const per_sequence_t ZoA_sequence[] = { + { &hf_nrppa_zenithAoA , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_1799 }, + { &hf_nrppa_lCS_to_GCS_Translation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_LCS_to_GCS_Translation }, + { &hf_nrppa_iE_extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ZoA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ZoA, ZoA_sequence); + + return offset; +} + + +static const value_string nrppa_MultipleULAoA_Item_vals[] = { + { 0, "uL-AoA" }, + { 1, "ul-ZoA" }, + { 2, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t MultipleULAoA_Item_choice[] = { + { 0, &hf_nrppa_uL_AoA , ASN1_NO_EXTENSIONS , dissect_nrppa_UL_AoA }, + { 1, &hf_nrppa_ul_ZoA , ASN1_NO_EXTENSIONS , dissect_nrppa_ZoA }, + { 2, &hf_nrppa_choice_extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_MultipleULAoA_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_MultipleULAoA_Item, MultipleULAoA_Item_choice, + NULL); + + return offset; +} + + +static const per_sequence_t MultipleULAoA_List_sequence_of[1] = { + { &hf_nrppa_MultipleULAoA_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_MultipleULAoA_Item }, +}; + +static int +dissect_nrppa_MultipleULAoA_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_MultipleULAoA_List, MultipleULAoA_List_sequence_of, + 1, maxnoofULAoAs, FALSE); + + return offset; +} + + +static const per_sequence_t MultipleULAoA_sequence[] = { + { &hf_nrppa_multipleULAoA_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_MultipleULAoA_List }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_MultipleULAoA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_MultipleULAoA, MultipleULAoA_sequence); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_126(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 126U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t UL_SRS_RSRPP_sequence[] = { + { &hf_nrppa_firstPathRSRPP, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_126 }, + { &hf_nrppa_iE_extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_UL_SRS_RSRPP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_UL_SRS_RSRPP, UL_SRS_RSRPP_sequence); + + return offset; +} + + +static const per_sequence_t ExtendedAdditionalPathList_Item_sequence[] = { + { &hf_nrppa_relativeTimeOfPath, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_RelativePathDelay }, + { &hf_nrppa_pathQuality , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_TrpMeasurementQuality }, + { &hf_nrppa_multipleULAoA , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_MultipleULAoA }, + { &hf_nrppa_pathPower , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_UL_SRS_RSRPP }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ExtendedAdditionalPathList_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ExtendedAdditionalPathList_Item, ExtendedAdditionalPathList_Item_sequence); + + return offset; +} + + +static const per_sequence_t ExtendedAdditionalPathList_sequence_of[1] = { + { &hf_nrppa_ExtendedAdditionalPathList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_ExtendedAdditionalPathList_Item }, +}; + +static int +dissect_nrppa_ExtendedAdditionalPathList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_ExtendedAdditionalPathList, ExtendedAdditionalPathList_sequence_of, + 1, maxNoPathExtended, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_Expected_Value_AoA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 3599U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_Uncertainty_range_AoA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 3599U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t Expected_Azimuth_AoA_sequence[] = { + { &hf_nrppa_expected_Azimuth_AoA_value, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_Expected_Value_AoA }, + { &hf_nrppa_expected_Azimuth_AoA_uncertainty, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_Uncertainty_range_AoA }, + { &hf_nrppa_iE_extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_Expected_Azimuth_AoA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_Expected_Azimuth_AoA, Expected_Azimuth_AoA_sequence); + + return offset; +} + + + +static int +dissect_nrppa_Expected_Value_ZoA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 1799U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_Uncertainty_range_ZoA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 1799U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t Expected_Zenith_AoA_sequence[] = { + { &hf_nrppa_expected_Zenith_AoA_value, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_Expected_Value_ZoA }, + { &hf_nrppa_expected_Zenith_AoA_uncertainty, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_Uncertainty_range_ZoA }, + { &hf_nrppa_iE_extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_Expected_Zenith_AoA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_Expected_Zenith_AoA, Expected_Zenith_AoA_sequence); + + return offset; +} + + +static const per_sequence_t Expected_UL_AoA_sequence[] = { + { &hf_nrppa_expected_Azimuth_AoA, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_Expected_Azimuth_AoA }, + { &hf_nrppa_expected_Zenith_AoA, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_Expected_Zenith_AoA }, + { &hf_nrppa_iE_extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_Expected_UL_AoA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_Expected_UL_AoA, Expected_UL_AoA_sequence); + + return offset; +} + + +static const per_sequence_t Expected_ZoA_only_sequence[] = { + { &hf_nrppa_expected_ZoA_only, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_Expected_Zenith_AoA }, + { &hf_nrppa_iE_extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_Expected_ZoA_only(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_Expected_ZoA_only, Expected_ZoA_only_sequence); + + return offset; +} + + +static const value_string nrppa_AngleMeasurementType_vals[] = { + { 0, "expected-ULAoA" }, + { 1, "expected-ZoA" }, + { 2, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t AngleMeasurementType_choice[] = { + { 0, &hf_nrppa_expected_ULAoA, ASN1_NO_EXTENSIONS , dissect_nrppa_Expected_UL_AoA }, + { 1, &hf_nrppa_expected_ZoA , ASN1_NO_EXTENSIONS , dissect_nrppa_Expected_ZoA_only }, + { 2, &hf_nrppa_choice_extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_AngleMeasurementType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_AngleMeasurementType, AngleMeasurementType_choice, + NULL); + + return offset; +} + + +static const per_sequence_t AoA_AssistanceInfo_sequence[] = { + { &hf_nrppa_angleMeasurement, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_AngleMeasurementType }, + { &hf_nrppa_lCS_to_GCS_Translation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_LCS_to_GCS_Translation }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_AoA_AssistanceInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_AoA_AssistanceInfo, AoA_AssistanceInfo_sequence); + + return offset; +} + + + +static int +dissect_nrppa_AperiodicSRSResourceTrigger(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 3U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t AperiodicSRSResourceTriggerList_sequence_of[1] = { + { &hf_nrppa_AperiodicSRSResourceTriggerList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_AperiodicSRSResourceTrigger }, +}; + +static int +dissect_nrppa_AperiodicSRSResourceTriggerList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_AperiodicSRSResourceTriggerList, AperiodicSRSResourceTriggerList_sequence_of, + 1, maxnoSRSTriggerStates, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_ARP_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 16U, NULL, TRUE); + + return offset; +} + + +static const value_string nrppa_T_milli_Arc_SecondUnits_vals[] = { + { 0, "zerodot03" }, + { 1, "zerodot3" }, + { 2, "three" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_milli_Arc_SecondUnits(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_T_heightUnits_vals[] = { + { 0, "mm" }, + { 1, "cm" }, + { 2, "m" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_heightUnits(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_M1024_1023(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -1024, 1023U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_100(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 100U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t LocationUncertainty_sequence[] = { + { &hf_nrppa_horizontalUncertainty, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_255 }, + { &hf_nrppa_horizontalConfidence, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_100 }, + { &hf_nrppa_verticalUncertainty, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_255 }, + { &hf_nrppa_verticalConfidence, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_100 }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_LocationUncertainty(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_LocationUncertainty, LocationUncertainty_sequence); + + return offset; +} + + +static const per_sequence_t RelativeGeodeticLocation_sequence[] = { + { &hf_nrppa_milli_Arc_SecondUnits, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_milli_Arc_SecondUnits }, + { &hf_nrppa_heightUnits , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_heightUnits }, + { &hf_nrppa_deltaLatitude , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_M1024_1023 }, + { &hf_nrppa_deltaLongitude, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_M1024_1023 }, + { &hf_nrppa_deltaHeight , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_M1024_1023 }, + { &hf_nrppa_locationUncertainty, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_LocationUncertainty }, + { &hf_nrppa_iE_extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_RelativeGeodeticLocation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_RelativeGeodeticLocation, RelativeGeodeticLocation_sequence); + + return offset; +} + + +static const value_string nrppa_T_xYZunit_vals[] = { + { 0, "mm" }, + { 1, "cm" }, + { 2, "dm" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_xYZunit(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_M65536_65535(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -65536, 65535U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_M32768_32767(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -32768, 32767U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t RelativeCartesianLocation_sequence[] = { + { &hf_nrppa_xYZunit , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_xYZunit }, + { &hf_nrppa_xvalue , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_M65536_65535 }, + { &hf_nrppa_yvalue , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_M65536_65535 }, + { &hf_nrppa_zvalue , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_M32768_32767 }, + { &hf_nrppa_locationUncertainty, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_LocationUncertainty }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_RelativeCartesianLocation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_RelativeCartesianLocation, RelativeCartesianLocation_sequence); + + return offset; +} + + +static const value_string nrppa_ARPLocationType_vals[] = { + { 0, "aRPPositionRelativeGeodetic" }, + { 1, "aRPPositionRelativeCartesian" }, + { 2, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t ARPLocationType_choice[] = { + { 0, &hf_nrppa_aRPPositionRelativeGeodetic, ASN1_NO_EXTENSIONS , dissect_nrppa_RelativeGeodeticLocation }, + { 1, &hf_nrppa_aRPPositionRelativeCartesian, ASN1_NO_EXTENSIONS , dissect_nrppa_RelativeCartesianLocation }, + { 2, &hf_nrppa_choice_extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_ARPLocationType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_ARPLocationType, ARPLocationType_choice, + NULL); + + return offset; +} + + +static const per_sequence_t ARPLocationInformation_Item_sequence[] = { + { &hf_nrppa_aRP_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ARP_ID }, + { &hf_nrppa_aRPLocationType, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ARPLocationType }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ARPLocationInformation_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ARPLocationInformation_Item, ARPLocationInformation_Item_sequence); + + return offset; +} + + +static const per_sequence_t ARPLocationInformation_sequence_of[1] = { + { &hf_nrppa_ARPLocationInformation_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_ARPLocationInformation_Item }, +}; + +static int +dissect_nrppa_ARPLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_ARPLocationInformation, ARPLocationInformation_sequence_of, + 1, maxnoARPs, FALSE); + + return offset; +} + + +static const value_string nrppa_BroadcastPeriodicity_vals[] = { + { 0, "ms80" }, + { 1, "ms160" }, + { 2, "ms320" }, + { 3, "ms640" }, + { 4, "ms1280" }, + { 5, "ms2560" }, + { 6, "ms5120" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_BroadcastPeriodicity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 7, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_PosSIB_Type_vals[] = { + { 0, "posSibType1-1" }, + { 1, "posSibType1-2" }, + { 2, "posSibType1-3" }, + { 3, "posSibType1-4" }, + { 4, "posSibType1-5" }, + { 5, "posSibType1-6" }, + { 6, "posSibType1-7" }, + { 7, "posSibType1-8" }, + { 8, "posSibType2-1" }, + { 9, "posSibType2-2" }, + { 10, "posSibType2-3" }, + { 11, "posSibType2-4" }, + { 12, "posSibType2-5" }, + { 13, "posSibType2-6" }, + { 14, "posSibType2-7" }, + { 15, "posSibType2-8" }, + { 16, "posSibType2-9" }, + { 17, "posSibType2-10" }, + { 18, "posSibType2-11" }, + { 19, "posSibType2-12" }, + { 20, "posSibType2-13" }, + { 21, "posSibType2-14" }, + { 22, "posSibType2-15" }, + { 23, "posSibType2-16" }, + { 24, "posSibType2-17" }, + { 25, "posSibType2-18" }, + { 26, "posSibType2-19" }, + { 27, "posSibType2-20" }, + { 28, "posSibType2-21" }, + { 29, "posSibType2-22" }, + { 30, "posSibType2-23" }, + { 31, "posSibType2-24" }, + { 32, "posSibType2-25" }, + { 33, "posSibType3-1" }, + { 34, "posSibType4-1" }, + { 35, "posSibType5-1" }, + { 36, "posSibType6-1" }, + { 37, "posSibType6-2" }, + { 38, "posSibType6-3" }, + { 39, "posSibType1-9" }, + { 40, "posSibType1-10" }, + { 41, "posSibType6-4" }, + { 42, "posSibType6-5" }, + { 43, "posSibType6-6" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_PosSIB_Type(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 39, NULL, TRUE, 5, NULL); + + return offset; +} + + + +static int +dissect_nrppa_OCTET_STRING(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t PosSIB_Segments_item_sequence[] = { + { &hf_nrppa_assistanceDataSIBelement, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_OCTET_STRING }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PosSIB_Segments_item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PosSIB_Segments_item, PosSIB_Segments_item_sequence); + + return offset; +} + + +static const per_sequence_t PosSIB_Segments_sequence_of[1] = { + { &hf_nrppa_PosSIB_Segments_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_PosSIB_Segments_item }, +}; + +static int +dissect_nrppa_PosSIB_Segments(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_PosSIB_Segments, PosSIB_Segments_sequence_of, + 1, maxNrOfSegments, FALSE); + + return offset; +} + + +static const value_string nrppa_T_encrypted_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_encrypted(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_T_gNSSID_vals[] = { + { 0, "gps" }, + { 1, "sbas" }, + { 2, "qzss" }, + { 3, "galileo" }, + { 4, "glonass" }, + { 5, "bds" }, + { 6, "navic" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_gNSSID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 7, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_T_sBASID_vals[] = { + { 0, "waas" }, + { 1, "egnos" }, + { 2, "msas" }, + { 3, "gagan" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_sBASID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t AssistanceInformationMetaData_sequence[] = { + { &hf_nrppa_encrypted , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_T_encrypted }, + { &hf_nrppa_gNSSID , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_T_gNSSID }, + { &hf_nrppa_sBASID , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_T_sBASID }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_AssistanceInformationMetaData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_AssistanceInformationMetaData, AssistanceInformationMetaData_sequence); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_1_16_(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 16U, NULL, TRUE); + + return offset; +} + + +static const per_sequence_t PosSIBs_item_sequence[] = { + { &hf_nrppa_posSIB_Type , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PosSIB_Type }, + { &hf_nrppa_posSIB_Segments, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PosSIB_Segments }, + { &hf_nrppa_assistanceInformationMetaData, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_AssistanceInformationMetaData }, + { &hf_nrppa_broadcastPriority, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_INTEGER_1_16_ }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PosSIBs_item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PosSIBs_item, PosSIBs_item_sequence); + + return offset; +} + + +static const per_sequence_t PosSIBs_sequence_of[1] = { + { &hf_nrppa_PosSIBs_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_PosSIBs_item }, +}; + +static int +dissect_nrppa_PosSIBs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_PosSIBs, PosSIBs_sequence_of, + 1, maxNrOfPosSIBs, FALSE); + + return offset; +} + + +static const per_sequence_t SystemInformation_item_sequence[] = { + { &hf_nrppa_broadcastPeriodicity, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_BroadcastPeriodicity }, + { &hf_nrppa_posSIBs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PosSIBs }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_SystemInformation_item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_SystemInformation_item, SystemInformation_item_sequence); + + return offset; +} + + +static const per_sequence_t SystemInformation_sequence_of[1] = { + { &hf_nrppa_SystemInformation_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_SystemInformation_item }, +}; + +static int +dissect_nrppa_SystemInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_SystemInformation, SystemInformation_sequence_of, + 1, maxNrOfPosSImessage, FALSE); + + return offset; +} + + +static const per_sequence_t Assistance_Information_sequence[] = { + { &hf_nrppa_systemInformation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_SystemInformation }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_Assistance_Information(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_Assistance_Information, Assistance_Information_sequence); + + return offset; +} + + +static const value_string nrppa_Outcome_vals[] = { + { 0, "failed" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_Outcome(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t AssistanceInformationFailureList_item_sequence[] = { + { &hf_nrppa_posSIB_Type , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PosSIB_Type }, + { &hf_nrppa_outcome , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_Outcome }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_AssistanceInformationFailureList_item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_AssistanceInformationFailureList_item, AssistanceInformationFailureList_item_sequence); + + return offset; +} + + +static const per_sequence_t AssistanceInformationFailureList_sequence_of[1] = { + { &hf_nrppa_AssistanceInformationFailureList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_AssistanceInformationFailureList_item }, +}; + +static int +dissect_nrppa_AssistanceInformationFailureList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_AssistanceInformationFailureList, AssistanceInformationFailureList_sequence_of, + 1, maxnoAssistInfoFailureListItems, FALSE); + + return offset; +} + + +static const value_string nrppa_T_fR1_vals[] = { + { 0, "mHz5" }, + { 1, "mHz10" }, + { 2, "mHz20" }, + { 3, "mHz40" }, + { 4, "mHz50" }, + { 5, "mHz80" }, + { 6, "mHz100" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_fR1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 7, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_T_fR2_vals[] = { + { 0, "mHz50" }, + { 1, "mHz100" }, + { 2, "mHz200" }, + { 3, "mHz400" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_fR2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_BandwidthSRS_vals[] = { + { 0, "fR1" }, + { 1, "fR2" }, + { 2, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t BandwidthSRS_choice[] = { + { 0, &hf_nrppa_fR1 , ASN1_NO_EXTENSIONS , dissect_nrppa_T_fR1 }, + { 1, &hf_nrppa_fR2 , ASN1_NO_EXTENSIONS , dissect_nrppa_T_fR2 }, + { 2, &hf_nrppa_choice_extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_BandwidthSRS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_BandwidthSRS, BandwidthSRS_choice, + NULL); + + return offset; +} + + + +static int +dissect_nrppa_BCCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 1023U, NULL, TRUE); + + return offset; +} + + +static const value_string nrppa_Broadcast_vals[] = { + { 0, "start" }, + { 1, "stop" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_Broadcast(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_nrppa_PLMN_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + 3, 3, FALSE, NULL); + + return offset; +} + + + +static int +dissect_nrppa_EUTRACellIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 28, 28, FALSE, NULL, 0, NULL, NULL); + + return offset; +} + + + +static int +dissect_nrppa_NRCellIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 36, 36, FALSE, NULL, 0, NULL, NULL); + + return offset; +} + + +static const value_string nrppa_NG_RANCell_vals[] = { + { 0, "eUTRA-CellID" }, + { 1, "nR-CellID" }, + { 2, "choice-Extension" }, + { 0, NULL } +}; + +static const per_choice_t NG_RANCell_choice[] = { + { 0, &hf_nrppa_eUTRA_CellID , ASN1_NO_EXTENSIONS , dissect_nrppa_EUTRACellIdentifier }, + { 1, &hf_nrppa_nR_CellID , ASN1_NO_EXTENSIONS , dissect_nrppa_NRCellIdentifier }, + { 2, &hf_nrppa_choice_Extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_NG_RANCell(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_NG_RANCell, NG_RANCell_choice, + NULL); + + return offset; +} + + +static const per_sequence_t NG_RAN_CGI_sequence[] = { + { &hf_nrppa_pLMN_Identity , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PLMN_Identity }, + { &hf_nrppa_nG_RANcell , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_NG_RANCell }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_NG_RAN_CGI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_NG_RAN_CGI, NG_RAN_CGI_sequence); + + return offset; +} + + +static const per_sequence_t PositioningBroadcastCells_sequence_of[1] = { + { &hf_nrppa_PositioningBroadcastCells_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_NG_RAN_CGI }, +}; + +static int +dissect_nrppa_PositioningBroadcastCells(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_PositioningBroadcastCells, PositioningBroadcastCells_sequence_of, + 1, maxnoBcastCell, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_BSSID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + 6, 6, FALSE, NULL); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_3279165(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 3279165U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_2199_(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 2199U, NULL, TRUE); + + return offset; +} + + +static const per_sequence_t CarrierFreq_sequence[] = { + { &hf_nrppa_pointA , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_3279165 }, + { &hf_nrppa_offsetToCarrier, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_2199_ }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_CarrierFreq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_CarrierFreq, CarrierFreq_sequence); + + return offset; +} + + +static const value_string nrppa_CauseRadioNetwork_vals[] = { + { 0, "unspecified" }, + { 1, "requested-item-not-supported" }, + { 2, "requested-item-temporarily-not-available" }, + { 3, "serving-NG-RAN-node-changed" }, + { 4, "requested-item-not-supported-on-time" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_CauseRadioNetwork(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 2, NULL); + + return offset; +} + + +static const value_string nrppa_CauseProtocol_vals[] = { + { 0, "transfer-syntax-error" }, + { 1, "abstract-syntax-error-reject" }, + { 2, "abstract-syntax-error-ignore-and-notify" }, + { 3, "message-not-compatible-with-receiver-state" }, + { 4, "semantic-error" }, + { 5, "unspecified" }, + { 6, "abstract-syntax-error-falsely-constructed-message" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_CauseProtocol(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 7, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_CauseMisc_vals[] = { + { 0, "unspecified" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_CauseMisc(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_Cause_vals[] = { + { 0, "radioNetwork" }, + { 1, "protocol" }, + { 2, "misc" }, + { 3, "choice-Extension" }, + { 0, NULL } +}; + +static const per_choice_t Cause_choice[] = { + { 0, &hf_nrppa_radioNetwork , ASN1_NO_EXTENSIONS , dissect_nrppa_CauseRadioNetwork }, + { 1, &hf_nrppa_protocol , ASN1_NO_EXTENSIONS , dissect_nrppa_CauseProtocol }, + { 2, &hf_nrppa_misc , ASN1_NO_EXTENSIONS , dissect_nrppa_CauseMisc }, + { 3, &hf_nrppa_choice_Extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_Cause(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_Cause, Cause_choice, + NULL); + + return offset; +} + + + +static int +dissect_nrppa_Cell_Portion_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 4095U, NULL, TRUE); + + return offset; +} + + +static const per_sequence_t CGI_EUTRA_sequence[] = { + { &hf_nrppa_pLMN_Identity , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PLMN_Identity }, + { &hf_nrppa_eUTRAcellIdentifier, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_EUTRACellIdentifier }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_CGI_EUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_CGI_EUTRA, CGI_EUTRA_sequence); + + return offset; +} + + +static const per_sequence_t CGI_NR_sequence[] = { + { &hf_nrppa_pLMN_Identity , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PLMN_Identity }, + { &hf_nrppa_nRcellIdentifier, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_NRCellIdentifier }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_CGI_NR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_CGI_NR, CGI_NR_sequence); + + return offset; +} + + +static const value_string nrppa_CPLength_EUTRA_vals[] = { + { 0, "normal" }, + { 1, "extended" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_CPLength_EUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_TypeOfError_vals[] = { + { 0, "not-understood" }, + { 1, "missing" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_TypeOfError(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t CriticalityDiagnostics_IE_List_item_sequence[] = { + { &hf_nrppa_iECriticality , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_Criticality }, + { &hf_nrppa_iE_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_ID }, + { &hf_nrppa_typeOfError , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TypeOfError }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_CriticalityDiagnostics_IE_List_item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_CriticalityDiagnostics_IE_List_item, CriticalityDiagnostics_IE_List_item_sequence); + + return offset; +} + + +static const per_sequence_t CriticalityDiagnostics_IE_List_sequence_of[1] = { + { &hf_nrppa_CriticalityDiagnostics_IE_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_CriticalityDiagnostics_IE_List_item }, +}; + +static int +dissect_nrppa_CriticalityDiagnostics_IE_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_CriticalityDiagnostics_IE_List, CriticalityDiagnostics_IE_List_sequence_of, + 1, maxNrOfErrors, FALSE); + + return offset; +} + + +static const per_sequence_t CriticalityDiagnostics_sequence[] = { + { &hf_nrppa_procedureCode , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProcedureCode }, + { &hf_nrppa_triggeringMessage, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_TriggeringMessage }, + { &hf_nrppa_procedureCriticality, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_Criticality }, + { &hf_nrppa_nrppatransactionID, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_NRPPATransactionID }, + { &hf_nrppa_iEsCriticalityDiagnostics, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_CriticalityDiagnostics_IE_List }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_CriticalityDiagnostics(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_CriticalityDiagnostics, CriticalityDiagnostics_sequence); + + return offset; +} + + +static const value_string nrppa_DL_Bandwidth_EUTRA_vals[] = { + { 0, "bw6" }, + { 1, "bw15" }, + { 2, "bw25" }, + { 3, "bw50" }, + { 4, "bw75" }, + { 5, "bw100" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_DL_Bandwidth_EUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 6, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_nrppa_PRS_Resource_Set_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 7U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_PRS_Resource_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 63U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t DL_PRS_sequence[] = { + { &hf_nrppa_prsid , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_255 }, + { &hf_nrppa_dl_PRSResourceSetID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PRS_Resource_Set_ID }, + { &hf_nrppa_dl_PRSResourceID, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_PRS_Resource_ID }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_DL_PRS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_DL_PRS, DL_PRS_sequence); + + return offset; +} + + + +static int +dissect_nrppa_BIT_STRING_SIZE_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 2, 2, FALSE, NULL, 0, NULL, NULL); + + return offset; +} + + + +static int +dissect_nrppa_BIT_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 4, 4, FALSE, NULL, 0, NULL, NULL); + + return offset; +} + + + +static int +dissect_nrppa_BIT_STRING_SIZE_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 6, 6, FALSE, NULL, 0, NULL, NULL); + + return offset; +} + + + +static int +dissect_nrppa_BIT_STRING_SIZE_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 8, 8, FALSE, NULL, 0, NULL, NULL); + + return offset; +} + + + +static int +dissect_nrppa_BIT_STRING_SIZE_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 16, 16, FALSE, NULL, 0, NULL, NULL); + + return offset; +} + + + +static int +dissect_nrppa_BIT_STRING_SIZE_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 32, 32, FALSE, NULL, 0, NULL, NULL); + + return offset; +} + + +static const value_string nrppa_DL_PRSMutingPattern_vals[] = { + { 0, "two" }, + { 1, "four" }, + { 2, "six" }, + { 3, "eight" }, + { 4, "sixteen" }, + { 5, "thirty-two" }, + { 6, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t DL_PRSMutingPattern_choice[] = { + { 0, &hf_nrppa_two , ASN1_NO_EXTENSIONS , dissect_nrppa_BIT_STRING_SIZE_2 }, + { 1, &hf_nrppa_four , ASN1_NO_EXTENSIONS , dissect_nrppa_BIT_STRING_SIZE_4 }, + { 2, &hf_nrppa_six , ASN1_NO_EXTENSIONS , dissect_nrppa_BIT_STRING_SIZE_6 }, + { 3, &hf_nrppa_eight , ASN1_NO_EXTENSIONS , dissect_nrppa_BIT_STRING_SIZE_8 }, + { 4, &hf_nrppa_sixteen , ASN1_NO_EXTENSIONS , dissect_nrppa_BIT_STRING_SIZE_16 }, + { 5, &hf_nrppa_thirty_two , ASN1_NO_EXTENSIONS , dissect_nrppa_BIT_STRING_SIZE_32 }, + { 6, &hf_nrppa_choice_extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_DL_PRSMutingPattern(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_DL_PRSMutingPattern, DL_PRSMutingPattern_choice, + NULL); + + return offset; +} + + +static const value_string nrppa_DL_PRSResourceSetARPLocation_vals[] = { + { 0, "relativeGeodeticLocation" }, + { 1, "relativeCartesianLocation" }, + { 2, "choice-Extension" }, + { 0, NULL } +}; + +static const per_choice_t DL_PRSResourceSetARPLocation_choice[] = { + { 0, &hf_nrppa_relativeGeodeticLocation, ASN1_NO_EXTENSIONS , dissect_nrppa_RelativeGeodeticLocation }, + { 1, &hf_nrppa_relativeCartesianLocation, ASN1_NO_EXTENSIONS , dissect_nrppa_RelativeCartesianLocation }, + { 2, &hf_nrppa_choice_Extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_DL_PRSResourceSetARPLocation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_DL_PRSResourceSetARPLocation, DL_PRSResourceSetARPLocation_choice, + NULL); + + return offset; +} + + +static const value_string nrppa_DL_PRSResourceARPLocation_vals[] = { + { 0, "relativeGeodeticLocation" }, + { 1, "relativeCartesianLocation" }, + { 2, "choice-Extension" }, + { 0, NULL } +}; + +static const per_choice_t DL_PRSResourceARPLocation_choice[] = { + { 0, &hf_nrppa_relativeGeodeticLocation, ASN1_NO_EXTENSIONS , dissect_nrppa_RelativeGeodeticLocation }, + { 1, &hf_nrppa_relativeCartesianLocation, ASN1_NO_EXTENSIONS , dissect_nrppa_RelativeCartesianLocation }, + { 2, &hf_nrppa_choice_Extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_DL_PRSResourceARPLocation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_DL_PRSResourceARPLocation, DL_PRSResourceARPLocation_choice, + NULL); + + return offset; +} + + +static const per_sequence_t DLPRSResourceARP_sequence[] = { + { &hf_nrppa_dl_PRSResourceID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PRS_Resource_ID }, + { &hf_nrppa_dL_PRSResourceARPLocation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_DL_PRSResourceARPLocation }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_DLPRSResourceARP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_DLPRSResourceARP, DLPRSResourceARP_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxPRS_ResourcesPerSet_OF_DLPRSResourceARP_sequence_of[1] = { + { &hf_nrppa_listofDL_PRSResourceARP_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_DLPRSResourceARP }, +}; + +static int +dissect_nrppa_SEQUENCE_SIZE_1_maxPRS_ResourcesPerSet_OF_DLPRSResourceARP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_SEQUENCE_SIZE_1_maxPRS_ResourcesPerSet_OF_DLPRSResourceARP, SEQUENCE_SIZE_1_maxPRS_ResourcesPerSet_OF_DLPRSResourceARP_sequence_of, + 1, maxPRS_ResourcesPerSet, FALSE); + + return offset; +} + + +static const per_sequence_t DLPRSResourceSetARP_sequence[] = { + { &hf_nrppa_dl_PRSResourceSetID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PRS_Resource_Set_ID }, + { &hf_nrppa_dL_PRSResourceSetARPLocation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_DL_PRSResourceSetARPLocation }, + { &hf_nrppa_listofDL_PRSResourceARP, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_SEQUENCE_SIZE_1_maxPRS_ResourcesPerSet_OF_DLPRSResourceARP }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_DLPRSResourceSetARP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_DLPRSResourceSetARP, DLPRSResourceSetARP_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxPRS_ResourceSets_OF_DLPRSResourceSetARP_sequence_of[1] = { + { &hf_nrppa_listofDL_PRSResourceSetARP_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_DLPRSResourceSetARP }, +}; + +static int +dissect_nrppa_SEQUENCE_SIZE_1_maxPRS_ResourceSets_OF_DLPRSResourceSetARP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_SEQUENCE_SIZE_1_maxPRS_ResourceSets_OF_DLPRSResourceSetARP, SEQUENCE_SIZE_1_maxPRS_ResourceSets_OF_DLPRSResourceSetARP_sequence_of, + 1, maxPRS_ResourceSets, FALSE); + + return offset; +} + + +static const per_sequence_t DLPRSResourceCoordinates_sequence[] = { + { &hf_nrppa_listofDL_PRSResourceSetARP, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_SEQUENCE_SIZE_1_maxPRS_ResourceSets_OF_DLPRSResourceSetARP }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_DLPRSResourceCoordinates(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_DLPRSResourceCoordinates, DLPRSResourceCoordinates_sequence); + + return offset; +} + + + +static int +dissect_nrppa_TAC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *parameter_tvb = NULL; + offset = dissect_per_octet_string(tvb, offset, actx, tree, -1, + 3, 3, FALSE, ¶meter_tvb); + + if (parameter_tvb) { + actx->created_item = proto_tree_add_item(tree, hf_index, parameter_tvb, 0, 3, ENC_BIG_ENDIAN); + } + + + return offset; +} + + +static const value_string nrppa_T_latitudeSign_vals[] = { + { 0, "north" }, + { 1, "south" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_latitudeSign(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, FALSE, 0, NULL); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_8388607(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 8388607U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_M8388608_8388607(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -8388608, 8388607U, NULL, FALSE); + + return offset; +} + + +static const value_string nrppa_T_directionOfAltitude_vals[] = { + { 0, "height" }, + { 1, "depth" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_directionOfAltitude(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, FALSE, 0, NULL); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_32767(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 32767U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_127(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 127U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_179(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 179U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t NG_RANAccessPointPosition_sequence[] = { + { &hf_nrppa_latitudeSign , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_latitudeSign }, + { &hf_nrppa_latitude , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_8388607 }, + { &hf_nrppa_longitude , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_M8388608_8388607 }, + { &hf_nrppa_directionOfAltitude, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_directionOfAltitude }, + { &hf_nrppa_altitude , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_32767 }, + { &hf_nrppa_uncertaintySemi_major, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_127 }, + { &hf_nrppa_uncertaintySemi_minor, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_127 }, + { &hf_nrppa_orientationOfMajorAxis, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_179 }, + { &hf_nrppa_uncertaintyAltitude, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_127 }, + { &hf_nrppa_confidence , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_100 }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_NG_RANAccessPointPosition(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_NG_RANAccessPointPosition, NG_RANAccessPointPosition_sequence); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_719(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 719U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_7690(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 7690U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_PCI_EUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 503U, NULL, TRUE); + + return offset; +} + + + +static int +dissect_nrppa_EARFCN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 262143U, NULL, TRUE); + + return offset; +} + + + +static int +dissect_nrppa_ValueRSRP_EUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 97U, NULL, TRUE); + + return offset; +} + + +static const per_sequence_t ResultRSRP_EUTRA_Item_sequence[] = { + { &hf_nrppa_pCI_EUTRA , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PCI_EUTRA }, + { &hf_nrppa_eARFCN , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_EARFCN }, + { &hf_nrppa_cGI_EUTRA , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_CGI_EUTRA }, + { &hf_nrppa_valueRSRP_EUTRA, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ValueRSRP_EUTRA }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ResultRSRP_EUTRA_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResultRSRP_EUTRA_Item, ResultRSRP_EUTRA_Item_sequence); + + return offset; +} + + +static const per_sequence_t ResultRSRP_EUTRA_sequence_of[1] = { + { &hf_nrppa_ResultRSRP_EUTRA_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_ResultRSRP_EUTRA_Item }, +}; + +static int +dissect_nrppa_ResultRSRP_EUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResultRSRP_EUTRA, ResultRSRP_EUTRA_sequence_of, + 1, maxCellReport, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_ValueRSRQ_EUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 34U, NULL, TRUE); + + return offset; +} + + +static const per_sequence_t ResultRSRQ_EUTRA_Item_sequence[] = { + { &hf_nrppa_pCI_EUTRA , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PCI_EUTRA }, + { &hf_nrppa_eARFCN , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_EARFCN }, + { &hf_nrppa_cGI_UTRA , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_CGI_EUTRA }, + { &hf_nrppa_valueRSRQ_EUTRA, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ValueRSRQ_EUTRA }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ResultRSRQ_EUTRA_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResultRSRQ_EUTRA_Item, ResultRSRQ_EUTRA_Item_sequence); + + return offset; +} + + +static const per_sequence_t ResultRSRQ_EUTRA_sequence_of[1] = { + { &hf_nrppa_ResultRSRQ_EUTRA_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_ResultRSRQ_EUTRA_Item }, +}; + +static int +dissect_nrppa_ResultRSRQ_EUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResultRSRQ_EUTRA, ResultRSRQ_EUTRA_sequence_of, + 1, maxCellReport, FALSE); + + return offset; +} + + +static const value_string nrppa_MeasuredResultsValue_vals[] = { + { 0, "valueAngleOfArrival-EUTRA" }, + { 1, "valueTimingAdvanceType1-EUTRA" }, + { 2, "valueTimingAdvanceType2-EUTRA" }, + { 3, "resultRSRP-EUTRA" }, + { 4, "resultRSRQ-EUTRA" }, + { 5, "choice-Extension" }, + { 0, NULL } +}; + +static const per_choice_t MeasuredResultsValue_choice[] = { + { 0, &hf_nrppa_valueAngleOfArrival_EUTRA, ASN1_NO_EXTENSIONS , dissect_nrppa_INTEGER_0_719 }, + { 1, &hf_nrppa_valueTimingAdvanceType1_EUTRA, ASN1_NO_EXTENSIONS , dissect_nrppa_INTEGER_0_7690 }, + { 2, &hf_nrppa_valueTimingAdvanceType2_EUTRA, ASN1_NO_EXTENSIONS , dissect_nrppa_INTEGER_0_7690 }, + { 3, &hf_nrppa_resultRSRP_EUTRA, ASN1_NO_EXTENSIONS , dissect_nrppa_ResultRSRP_EUTRA }, + { 4, &hf_nrppa_resultRSRQ_EUTRA, ASN1_NO_EXTENSIONS , dissect_nrppa_ResultRSRQ_EUTRA }, + { 5, &hf_nrppa_choice_Extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_MeasuredResultsValue(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_MeasuredResultsValue, MeasuredResultsValue_choice, + NULL); + + return offset; +} + + +static const per_sequence_t MeasuredResults_sequence_of[1] = { + { &hf_nrppa_MeasuredResults_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_MeasuredResultsValue }, +}; + +static int +dissect_nrppa_MeasuredResults(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_MeasuredResults, MeasuredResults_sequence_of, + 1, maxNoMeas, FALSE); + + return offset; +} + + +static const per_sequence_t E_CID_MeasurementResult_sequence[] = { + { &hf_nrppa_servingCell_ID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_NG_RAN_CGI }, + { &hf_nrppa_servingCellTAC, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TAC }, + { &hf_nrppa_nG_RANAccessPointPosition, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_NG_RANAccessPointPosition }, + { &hf_nrppa_measuredResults, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_MeasuredResults }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_E_CID_MeasurementResult(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_E_CID_MeasurementResult, E_CID_MeasurementResult_sequence); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_M2147483648_2147483647(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + G_MININT32, 2147483647U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_M64000_1280000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -64000, 1280000U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t NGRANHighAccuracyAccessPointPosition_sequence[] = { + { &hf_nrppa_latitude_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_M2147483648_2147483647 }, + { &hf_nrppa_longitude_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_M2147483648_2147483647 }, + { &hf_nrppa_altitude_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_M64000_1280000 }, + { &hf_nrppa_uncertaintySemi_major_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_255 }, + { &hf_nrppa_uncertaintySemi_minor_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_255 }, + { &hf_nrppa_orientationOfMajorAxis, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_179 }, + { &hf_nrppa_horizontalConfidence, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_100 }, + { &hf_nrppa_uncertaintyAltitude_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_255 }, + { &hf_nrppa_verticalConfidence, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_100 }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_NGRANHighAccuracyAccessPointPosition(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_NGRANHighAccuracyAccessPointPosition, NGRANHighAccuracyAccessPointPosition_sequence); + + return offset; +} + + +static const value_string nrppa_TRPPositionDirectAccuracy_vals[] = { + { 0, "tRPPosition" }, + { 1, "tRPHAposition" }, + { 2, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t TRPPositionDirectAccuracy_choice[] = { + { 0, &hf_nrppa_tRPPosition , ASN1_NO_EXTENSIONS , dissect_nrppa_NG_RANAccessPointPosition }, + { 1, &hf_nrppa_tRPHAposition , ASN1_NO_EXTENSIONS , dissect_nrppa_NGRANHighAccuracyAccessPointPosition }, + { 2, &hf_nrppa_choice_extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_TRPPositionDirectAccuracy(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRPPositionDirectAccuracy, TRPPositionDirectAccuracy_choice, + NULL); + + return offset; +} + + +static const per_sequence_t TRPPositionDirect_sequence[] = { + { &hf_nrppa_accuracy , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TRPPositionDirectAccuracy }, + { &hf_nrppa_iE_extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_TRPPositionDirect(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRPPositionDirect, TRPPositionDirect_sequence); + + return offset; +} + + + +static int +dissect_nrppa_CoordinateID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 511U, NULL, TRUE); + + return offset; +} + + +static const value_string nrppa_ReferencePoint_vals[] = { + { 0, "relativeCoordinateID" }, + { 1, "referencePointCoordinate" }, + { 2, "referencePointCoordinateHA" }, + { 3, "choice-Extension" }, + { 0, NULL } +}; + +static const per_choice_t ReferencePoint_choice[] = { + { 0, &hf_nrppa_relativeCoordinateID, ASN1_NO_EXTENSIONS , dissect_nrppa_CoordinateID }, + { 1, &hf_nrppa_referencePointCoordinate, ASN1_NO_EXTENSIONS , dissect_nrppa_NG_RANAccessPointPosition }, + { 2, &hf_nrppa_referencePointCoordinateHA, ASN1_NO_EXTENSIONS , dissect_nrppa_NGRANHighAccuracyAccessPointPosition }, + { 3, &hf_nrppa_choice_Extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_ReferencePoint(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_ReferencePoint, ReferencePoint_choice, + NULL); + + return offset; +} + + +static const value_string nrppa_TRPReferencePointType_vals[] = { + { 0, "tRPPositionRelativeGeodetic" }, + { 1, "tRPPositionRelativeCartesian" }, + { 2, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t TRPReferencePointType_choice[] = { + { 0, &hf_nrppa_tRPPositionRelativeGeodetic, ASN1_NO_EXTENSIONS , dissect_nrppa_RelativeGeodeticLocation }, + { 1, &hf_nrppa_tRPPositionRelativeCartesian, ASN1_NO_EXTENSIONS , dissect_nrppa_RelativeCartesianLocation }, + { 2, &hf_nrppa_choice_extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_TRPReferencePointType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRPReferencePointType, TRPReferencePointType_choice, + NULL); + + return offset; +} + + +static const per_sequence_t TRPPositionReferenced_sequence[] = { + { &hf_nrppa_referencePoint, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ReferencePoint }, + { &hf_nrppa_referencePointType, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TRPReferencePointType }, + { &hf_nrppa_iE_extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_TRPPositionReferenced(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRPPositionReferenced, TRPPositionReferenced_sequence); + + return offset; +} + + +static const value_string nrppa_TRPPositionDefinitionType_vals[] = { + { 0, "direct" }, + { 1, "referenced" }, + { 2, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t TRPPositionDefinitionType_choice[] = { + { 0, &hf_nrppa_direct , ASN1_NO_EXTENSIONS , dissect_nrppa_TRPPositionDirect }, + { 1, &hf_nrppa_referenced , ASN1_NO_EXTENSIONS , dissect_nrppa_TRPPositionReferenced }, + { 2, &hf_nrppa_choice_extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_TRPPositionDefinitionType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRPPositionDefinitionType, TRPPositionDefinitionType_choice, + NULL); + + return offset; +} + + +static const per_sequence_t GeographicalCoordinates_sequence[] = { + { &hf_nrppa_tRPPositionDefinitionType, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TRPPositionDefinitionType }, + { &hf_nrppa_dLPRSResourceCoordinates, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_DLPRSResourceCoordinates }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_GeographicalCoordinates(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_GeographicalCoordinates, GeographicalCoordinates_sequence); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_1970049(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 1970049U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_985025(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 985025U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_492513(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 492513U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_246257(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 246257U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_123129(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 123129U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_61565(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 61565U, NULL, FALSE); + + return offset; +} + + +static const value_string nrppa_GNBRxTxTimeDiffMeas_vals[] = { + { 0, "k0" }, + { 1, "k1" }, + { 2, "k2" }, + { 3, "k3" }, + { 4, "k4" }, + { 5, "k5" }, + { 6, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t GNBRxTxTimeDiffMeas_choice[] = { + { 0, &hf_nrppa_k0 , ASN1_NO_EXTENSIONS , dissect_nrppa_INTEGER_0_1970049 }, + { 1, &hf_nrppa_k1 , ASN1_NO_EXTENSIONS , dissect_nrppa_INTEGER_0_985025 }, + { 2, &hf_nrppa_k2 , ASN1_NO_EXTENSIONS , dissect_nrppa_INTEGER_0_492513 }, + { 3, &hf_nrppa_k3 , ASN1_NO_EXTENSIONS , dissect_nrppa_INTEGER_0_246257 }, + { 4, &hf_nrppa_k4 , ASN1_NO_EXTENSIONS , dissect_nrppa_INTEGER_0_123129 }, + { 5, &hf_nrppa_k5 , ASN1_NO_EXTENSIONS , dissect_nrppa_INTEGER_0_61565 }, + { 6, &hf_nrppa_choice_extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_GNBRxTxTimeDiffMeas(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_GNBRxTxTimeDiffMeas, GNBRxTxTimeDiffMeas_choice, + NULL); + + return offset; +} + + +static const per_sequence_t GNB_RxTxTimeDiff_sequence[] = { + { &hf_nrppa_rxTxTimeDiff , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_GNBRxTxTimeDiffMeas }, + { &hf_nrppa_additionalPathList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_AdditionalPathList }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_GNB_RxTxTimeDiff(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_GNB_RxTxTimeDiff, GNB_RxTxTimeDiff_sequence); + + return offset; +} + + + +static int +dissect_nrppa_HESSID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + 6, 6, FALSE, NULL); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_359(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 359U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 9U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t LCS_to_GCS_TranslationItem_sequence[] = { + { &hf_nrppa_alpha_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_359 }, + { &hf_nrppa_alphaFine , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_INTEGER_0_9 }, + { &hf_nrppa_beta_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_359 }, + { &hf_nrppa_betaFine , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_INTEGER_0_9 }, + { &hf_nrppa_gamma_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_359 }, + { &hf_nrppa_gammaFine , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_INTEGER_0_9 }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_LCS_to_GCS_TranslationItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_LCS_to_GCS_TranslationItem, LCS_to_GCS_TranslationItem_sequence); + + return offset; +} + + +static const value_string nrppa_LoS_NLoSIndicatorHard_vals[] = { + { 0, "nlos" }, + { 1, "los" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_LoS_NLoSIndicatorHard(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, FALSE, 0, NULL); + + return offset; +} + + + +static int +dissect_nrppa_LoS_NLoSIndicatorSoft(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 10U, NULL, FALSE); + + return offset; +} + + +static const value_string nrppa_LoS_NLoSInformation_vals[] = { + { 0, "loS-NLoSIndicatorSoft" }, + { 1, "loS-NLoSIndicatorHard" }, + { 2, "choice-Extension" }, + { 0, NULL } +}; + +static const per_choice_t LoS_NLoSInformation_choice[] = { + { 0, &hf_nrppa_loS_NLoSIndicatorSoft, ASN1_NO_EXTENSIONS , dissect_nrppa_LoS_NLoSIndicatorSoft }, + { 1, &hf_nrppa_loS_NLoSIndicatorHard, ASN1_NO_EXTENSIONS , dissect_nrppa_LoS_NLoSIndicatorHard }, + { 2, &hf_nrppa_choice_Extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_LoS_NLoSInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_LoS_NLoSInformation, LoS_NLoSInformation_choice, + NULL); + + return offset; +} + + + +static int +dissect_nrppa_Measurement_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 65536U, NULL, TRUE); + + return offset; +} + + +static const value_string nrppa_MeasurementAmount_vals[] = { + { 0, "ma0" }, + { 1, "ma1" }, + { 2, "ma2" }, + { 3, "ma4" }, + { 4, "ma8" }, + { 5, "ma16" }, + { 6, "ma32" }, + { 7, "ma64" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_MeasurementAmount(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 8, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_MeasurementBeamInfoRequest_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_MeasurementBeamInfoRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t MeasurementBeamInfo_sequence[] = { + { &hf_nrppa_pRS_Resource_ID, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_PRS_Resource_ID }, + { &hf_nrppa_pRS_Resource_Set_ID, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_PRS_Resource_Set_ID }, + { &hf_nrppa_sSB_Index , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_SSB_Index }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_MeasurementBeamInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_MeasurementBeamInfo, MeasurementBeamInfo_sequence); + + return offset; +} + + +static const value_string nrppa_MeasurementPeriodicity_vals[] = { + { 0, "ms120" }, + { 1, "ms240" }, + { 2, "ms480" }, + { 3, "ms640" }, + { 4, "ms1024" }, + { 5, "ms2048" }, + { 6, "ms5120" }, + { 7, "ms10240" }, + { 8, "min1" }, + { 9, "min6" }, + { 10, "min12" }, + { 11, "min30" }, + { 12, "min60" }, + { 13, "ms20480" }, + { 14, "ms40960" }, + { 15, "extended" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_MeasurementPeriodicity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 13, NULL, TRUE, 3, NULL); + + return offset; +} + + +static const value_string nrppa_MeasurementPeriodicityExtended_vals[] = { + { 0, "ms160" }, + { 1, "ms320" }, + { 2, "ms1280" }, + { 3, "ms2560" }, + { 4, "ms61440" }, + { 5, "ms81920" }, + { 6, "ms368640" }, + { 7, "ms737280" }, + { 8, "ms1843200" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_MeasurementPeriodicityExtended(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 9, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_MeasurementPeriodicityNR_AoA_vals[] = { + { 0, "ms160" }, + { 1, "ms320" }, + { 2, "ms640" }, + { 3, "ms1280" }, + { 4, "ms2560" }, + { 5, "ms5120" }, + { 6, "ms10240" }, + { 7, "ms20480" }, + { 8, "ms40960" }, + { 9, "ms61440" }, + { 10, "ms81920" }, + { 11, "ms368640" }, + { 12, "ms737280" }, + { 13, "ms1843200" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_MeasurementPeriodicityNR_AoA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 14, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t MeasurementQuantities_sequence_of[1] = { + { &hf_nrppa_MeasurementQuantities_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Single_Container }, +}; + +static int +dissect_nrppa_MeasurementQuantities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_MeasurementQuantities, MeasurementQuantities_sequence_of, + 1, maxNoMeas, FALSE); + + return offset; +} + + +static const value_string nrppa_MeasurementQuantitiesValue_vals[] = { + { 0, "cell-ID" }, + { 1, "angleOfArrival" }, + { 2, "timingAdvanceType1" }, + { 3, "timingAdvanceType2" }, + { 4, "rSRP" }, + { 5, "rSRQ" }, + { 6, "sS-RSRP" }, + { 7, "sS-RSRQ" }, + { 8, "cSI-RSRP" }, + { 9, "cSI-RSRQ" }, + { 10, "angleOfArrivalNR" }, + { 11, "timingAdvanceNR" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_MeasurementQuantitiesValue(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 6, NULL, TRUE, 6, NULL); + + return offset; +} + + +static const per_sequence_t MeasurementQuantities_Item_sequence[] = { + { &hf_nrppa_measurementQuantitiesValue, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_MeasurementQuantitiesValue }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_MeasurementQuantities_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_MeasurementQuantities_Item, MeasurementQuantities_Item_sequence); + + return offset; +} + + +static const value_string nrppa_MeasurementTimeOccasion_vals[] = { + { 0, "o1" }, + { 1, "o4" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_MeasurementTimeOccasion(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_nrppa_MeasurementCharacteristicsRequestIndicator(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 16, 16, FALSE, NULL, 0, NULL, NULL); + + return offset; +} + + + +static int +dissect_nrppa_NarrowBandIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 15U, NULL, TRUE); + + return offset; +} + + + +static int +dissect_nrppa_NR_ARFCN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 3279165U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_NR_PCI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 1007U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_180(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 180U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t PRSAngleItem_sequence[] = { + { &hf_nrppa_nRPRSAzimuth , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_359 }, + { &hf_nrppa_nRPRSAzimuthFine, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_INTEGER_0_9 }, + { &hf_nrppa_nRPRSElevation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_INTEGER_0_180 }, + { &hf_nrppa_nRPRSElevationFine, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_INTEGER_0_9 }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PRSAngleItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRSAngleItem, PRSAngleItem_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxPRS_ResourcesPerSet_OF_PRSAngleItem_sequence_of[1] = { + { &hf_nrppa_pRSAngle_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_PRSAngleItem }, +}; + +static int +dissect_nrppa_SEQUENCE_SIZE_1_maxPRS_ResourcesPerSet_OF_PRSAngleItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_SEQUENCE_SIZE_1_maxPRS_ResourcesPerSet_OF_PRSAngleItem, SEQUENCE_SIZE_1_maxPRS_ResourcesPerSet_OF_PRSAngleItem_sequence_of, + 1, maxPRS_ResourcesPerSet, FALSE); + + return offset; +} + + +static const per_sequence_t NR_PRS_Beam_InformationItem_sequence[] = { + { &hf_nrppa_pRSresourceSetID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PRS_Resource_Set_ID }, + { &hf_nrppa_pRSAngle , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_SEQUENCE_SIZE_1_maxPRS_ResourcesPerSet_OF_PRSAngleItem }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_NR_PRS_Beam_InformationItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_NR_PRS_Beam_InformationItem, NR_PRS_Beam_InformationItem_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxPRS_ResourceSets_OF_NR_PRS_Beam_InformationItem_sequence_of[1] = { + { &hf_nrppa_nR_PRS_Beam_InformationList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_NR_PRS_Beam_InformationItem }, +}; + +static int +dissect_nrppa_SEQUENCE_SIZE_1_maxPRS_ResourceSets_OF_NR_PRS_Beam_InformationItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_SEQUENCE_SIZE_1_maxPRS_ResourceSets_OF_NR_PRS_Beam_InformationItem, SEQUENCE_SIZE_1_maxPRS_ResourceSets_OF_NR_PRS_Beam_InformationItem_sequence_of, + 1, maxPRS_ResourceSets, FALSE); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxnolcs_gcs_translation_OF_LCS_to_GCS_TranslationItem_sequence_of[1] = { + { &hf_nrppa_lCS_to_GCS_TranslationList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_LCS_to_GCS_TranslationItem }, +}; + +static int +dissect_nrppa_SEQUENCE_SIZE_1_maxnolcs_gcs_translation_OF_LCS_to_GCS_TranslationItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_SEQUENCE_SIZE_1_maxnolcs_gcs_translation_OF_LCS_to_GCS_TranslationItem, SEQUENCE_SIZE_1_maxnolcs_gcs_translation_OF_LCS_to_GCS_TranslationItem_sequence_of, + 1, maxnolcs_gcs_translation, FALSE); + + return offset; +} + + +static const per_sequence_t NR_PRS_Beam_Information_sequence[] = { + { &hf_nrppa_nR_PRS_Beam_InformationList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_SEQUENCE_SIZE_1_maxPRS_ResourceSets_OF_NR_PRS_Beam_InformationItem }, + { &hf_nrppa_lCS_to_GCS_TranslationList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_SEQUENCE_SIZE_1_maxnolcs_gcs_translation_OF_LCS_to_GCS_TranslationItem }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_NR_PRS_Beam_Information(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_NR_PRS_Beam_Information, NR_PRS_Beam_Information_sequence); + + return offset; +} + + + +static int +dissect_nrppa_NR_TADV(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 7690U, NULL, FALSE); + + return offset; +} + + +static const value_string nrppa_NumberOfAntennaPorts_EUTRA_vals[] = { + { 0, "n1-or-n2" }, + { 1, "n4" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_NumberOfAntennaPorts_EUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_NumberOfDlFrames_EUTRA_vals[] = { + { 0, "sf1" }, + { 1, "sf2" }, + { 2, "sf4" }, + { 3, "sf6" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_NumberOfDlFrames_EUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_nrppa_NumberOfDlFrames_Extended_EUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 160U, NULL, TRUE); + + return offset; +} + + +static const value_string nrppa_NumberOfFrequencyHoppingBands_vals[] = { + { 0, "twobands" }, + { 1, "fourbands" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_NumberOfFrequencyHoppingBands(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_NumberOfTRPRxTEG_vals[] = { + { 0, "two" }, + { 1, "three" }, + { 2, "four" }, + { 3, "six" }, + { 4, "eight" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_NumberOfTRPRxTEG(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 5, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_NumberOfTRPRxTxTEG_vals[] = { + { 0, "two" }, + { 1, "three" }, + { 2, "four" }, + { 3, "six" }, + { 4, "eight" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_NumberOfTRPRxTxTEG(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 5, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_nrppa_NZP_CSI_RS_ResourceID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 191U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_BIT_STRING_SIZE_24(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 24, 24, FALSE, NULL, 0, NULL, NULL); + + return offset; +} + + + +static int +dissect_nrppa_BIT_STRING_SIZE_64(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 64, 64, FALSE, NULL, 0, NULL, NULL); + + return offset; +} + + +static const per_sequence_t OnDemandPRS_Info_sequence[] = { + { &hf_nrppa_onDemandPRSRequestAllowed, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_BIT_STRING_SIZE_16 }, + { &hf_nrppa_allowedResourceSetPeriodicityValues, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_BIT_STRING_SIZE_24 }, + { &hf_nrppa_allowedPRSBandwidthValues, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_BIT_STRING_SIZE_64 }, + { &hf_nrppa_allowedResourceRepetitionFactorValues, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_BIT_STRING_SIZE_8 }, + { &hf_nrppa_allowedResourceNumberOfSymbolsValues, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_BIT_STRING_SIZE_8 }, + { &hf_nrppa_allowedCombSizeValues, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_BIT_STRING_SIZE_8 }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_OnDemandPRS_Info(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_OnDemandPRS_Info, OnDemandPRS_Info_sequence); + + return offset; +} + + +static const value_string nrppa_PRS_Bandwidth_EUTRA_vals[] = { + { 0, "bw6" }, + { 1, "bw15" }, + { 2, "bw25" }, + { 3, "bw50" }, + { 4, "bw75" }, + { 5, "bw100" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_PRS_Bandwidth_EUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 6, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_nrppa_PRS_ConfigurationIndex_EUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 4095U, NULL, TRUE); + + return offset; +} + + + +static int +dissect_nrppa_SFNInitialisationTime_EUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 64, 64, FALSE, NULL, 0, NULL, NULL); + + return offset; +} + + + +static int +dissect_nrppa_BIT_STRING_SIZE_128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 128, 128, FALSE, NULL, 0, NULL, NULL); + + return offset; +} + + + +static int +dissect_nrppa_BIT_STRING_SIZE_256(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 256, 256, FALSE, NULL, 0, NULL, NULL); + + return offset; +} + + + +static int +dissect_nrppa_BIT_STRING_SIZE_512(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 512, 512, FALSE, NULL, 0, NULL, NULL); + + return offset; +} + + + +static int +dissect_nrppa_BIT_STRING_SIZE_1024(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1024, 1024, FALSE, NULL, 0, NULL, NULL); + + return offset; +} + + +static const value_string nrppa_PRSMutingConfiguration_EUTRA_vals[] = { + { 0, "two" }, + { 1, "four" }, + { 2, "eight" }, + { 3, "sixteen" }, + { 4, "thirty-two" }, + { 5, "sixty-four" }, + { 6, "one-hundred-and-twenty-eight" }, + { 7, "two-hundred-and-fifty-six" }, + { 8, "five-hundred-and-twelve" }, + { 9, "one-thousand-and-twenty-four" }, + { 10, "choice-Extension" }, + { 0, NULL } +}; + +static const per_choice_t PRSMutingConfiguration_EUTRA_choice[] = { + { 0, &hf_nrppa_two , ASN1_NO_EXTENSIONS , dissect_nrppa_BIT_STRING_SIZE_2 }, + { 1, &hf_nrppa_four , ASN1_NO_EXTENSIONS , dissect_nrppa_BIT_STRING_SIZE_4 }, + { 2, &hf_nrppa_eight , ASN1_NO_EXTENSIONS , dissect_nrppa_BIT_STRING_SIZE_8 }, + { 3, &hf_nrppa_sixteen , ASN1_NO_EXTENSIONS , dissect_nrppa_BIT_STRING_SIZE_16 }, + { 4, &hf_nrppa_thirty_two , ASN1_NO_EXTENSIONS , dissect_nrppa_BIT_STRING_SIZE_32 }, + { 5, &hf_nrppa_sixty_four , ASN1_NO_EXTENSIONS , dissect_nrppa_BIT_STRING_SIZE_64 }, + { 6, &hf_nrppa_one_hundred_and_twenty_eight, ASN1_NO_EXTENSIONS , dissect_nrppa_BIT_STRING_SIZE_128 }, + { 7, &hf_nrppa_two_hundred_and_fifty_six, ASN1_NO_EXTENSIONS , dissect_nrppa_BIT_STRING_SIZE_256 }, + { 8, &hf_nrppa_five_hundred_and_twelve, ASN1_NO_EXTENSIONS , dissect_nrppa_BIT_STRING_SIZE_512 }, + { 9, &hf_nrppa_one_thousand_and_twenty_four, ASN1_NO_EXTENSIONS , dissect_nrppa_BIT_STRING_SIZE_1024 }, + { 10, &hf_nrppa_choice_Extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_PRSMutingConfiguration_EUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRSMutingConfiguration_EUTRA, PRSMutingConfiguration_EUTRA_choice, + NULL); + + return offset; +} + + + +static int +dissect_nrppa_PRS_ID_EUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 4095U, NULL, TRUE); + + return offset; +} + + + +static int +dissect_nrppa_TP_ID_EUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 4095U, NULL, TRUE); + + return offset; +} + + +static const value_string nrppa_TP_Type_EUTRA_vals[] = { + { 0, "prs-only-tp" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_TP_Type_EUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_PRSOccasionGroup_EUTRA_vals[] = { + { 0, "og2" }, + { 1, "og4" }, + { 2, "og8" }, + { 3, "og16" }, + { 4, "og32" }, + { 5, "og64" }, + { 6, "og128" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_PRSOccasionGroup_EUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 7, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxnoFreqHoppingBandsMinusOne_OF_NarrowBandIndex_sequence_of[1] = { + { &hf_nrppa_bandPositions_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_NarrowBandIndex }, +}; + +static int +dissect_nrppa_SEQUENCE_SIZE_1_maxnoFreqHoppingBandsMinusOne_OF_NarrowBandIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_SEQUENCE_SIZE_1_maxnoFreqHoppingBandsMinusOne_OF_NarrowBandIndex, SEQUENCE_SIZE_1_maxnoFreqHoppingBandsMinusOne_OF_NarrowBandIndex_sequence_of, + 1, maxnoFreqHoppingBandsMinusOne, FALSE); + + return offset; +} + + +static const per_sequence_t PRSFrequencyHoppingConfiguration_EUTRA_sequence[] = { + { &hf_nrppa_noOfFreqHoppingBands, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_NumberOfFrequencyHoppingBands }, + { &hf_nrppa_bandPositions , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_SEQUENCE_SIZE_1_maxnoFreqHoppingBandsMinusOne_OF_NarrowBandIndex }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PRSFrequencyHoppingConfiguration_EUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRSFrequencyHoppingConfiguration_EUTRA, PRSFrequencyHoppingConfiguration_EUTRA_sequence); + + return offset; +} + + +static const value_string nrppa_OTDOACell_Information_Item_vals[] = { + { 0, "pCI-EUTRA" }, + { 1, "cGI-EUTRA" }, + { 2, "tAC" }, + { 3, "eARFCN" }, + { 4, "pRS-Bandwidth-EUTRA" }, + { 5, "pRS-ConfigurationIndex-EUTRA" }, + { 6, "cPLength-EUTRA" }, + { 7, "numberOfDlFrames-EUTRA" }, + { 8, "numberOfAntennaPorts-EUTRA" }, + { 9, "sFNInitialisationTime-EUTRA" }, + { 10, "nG-RANAccessPointPosition" }, + { 11, "pRSMutingConfiguration-EUTRA" }, + { 12, "prsid-EUTRA" }, + { 13, "tpid-EUTRA" }, + { 14, "tpType-EUTRA" }, + { 15, "numberOfDlFrames-Extended-EUTRA" }, + { 16, "crsCPlength-EUTRA" }, + { 17, "dL-Bandwidth-EUTRA" }, + { 18, "pRSOccasionGroup-EUTRA" }, + { 19, "pRSFrequencyHoppingConfiguration-EUTRA" }, + { 20, "choice-Extension" }, + { 0, NULL } +}; + +static const per_choice_t OTDOACell_Information_Item_choice[] = { + { 0, &hf_nrppa_pCI_EUTRA , ASN1_NO_EXTENSIONS , dissect_nrppa_PCI_EUTRA }, + { 1, &hf_nrppa_cGI_EUTRA , ASN1_NO_EXTENSIONS , dissect_nrppa_CGI_EUTRA }, + { 2, &hf_nrppa_tAC , ASN1_NO_EXTENSIONS , dissect_nrppa_TAC }, + { 3, &hf_nrppa_eARFCN , ASN1_NO_EXTENSIONS , dissect_nrppa_EARFCN }, + { 4, &hf_nrppa_pRS_Bandwidth_EUTRA, ASN1_NO_EXTENSIONS , dissect_nrppa_PRS_Bandwidth_EUTRA }, + { 5, &hf_nrppa_pRS_ConfigurationIndex_EUTRA, ASN1_NO_EXTENSIONS , dissect_nrppa_PRS_ConfigurationIndex_EUTRA }, + { 6, &hf_nrppa_cPLength_EUTRA, ASN1_NO_EXTENSIONS , dissect_nrppa_CPLength_EUTRA }, + { 7, &hf_nrppa_numberOfDlFrames_EUTRA, ASN1_NO_EXTENSIONS , dissect_nrppa_NumberOfDlFrames_EUTRA }, + { 8, &hf_nrppa_numberOfAntennaPorts_EUTRA, ASN1_NO_EXTENSIONS , dissect_nrppa_NumberOfAntennaPorts_EUTRA }, + { 9, &hf_nrppa_sFNInitialisationTime_EUTRA, ASN1_NO_EXTENSIONS , dissect_nrppa_SFNInitialisationTime_EUTRA }, + { 10, &hf_nrppa_nG_RANAccessPointPosition, ASN1_NO_EXTENSIONS , dissect_nrppa_NG_RANAccessPointPosition }, + { 11, &hf_nrppa_pRSMutingConfiguration_EUTRA, ASN1_NO_EXTENSIONS , dissect_nrppa_PRSMutingConfiguration_EUTRA }, + { 12, &hf_nrppa_prsid_EUTRA , ASN1_NO_EXTENSIONS , dissect_nrppa_PRS_ID_EUTRA }, + { 13, &hf_nrppa_tpid_EUTRA , ASN1_NO_EXTENSIONS , dissect_nrppa_TP_ID_EUTRA }, + { 14, &hf_nrppa_tpType_EUTRA , ASN1_NO_EXTENSIONS , dissect_nrppa_TP_Type_EUTRA }, + { 15, &hf_nrppa_numberOfDlFrames_Extended_EUTRA, ASN1_NO_EXTENSIONS , dissect_nrppa_NumberOfDlFrames_Extended_EUTRA }, + { 16, &hf_nrppa_crsCPlength_EUTRA, ASN1_NO_EXTENSIONS , dissect_nrppa_CPLength_EUTRA }, + { 17, &hf_nrppa_dL_Bandwidth_EUTRA, ASN1_NO_EXTENSIONS , dissect_nrppa_DL_Bandwidth_EUTRA }, + { 18, &hf_nrppa_pRSOccasionGroup_EUTRA, ASN1_NO_EXTENSIONS , dissect_nrppa_PRSOccasionGroup_EUTRA }, + { 19, &hf_nrppa_pRSFrequencyHoppingConfiguration_EUTRA, ASN1_NO_EXTENSIONS , dissect_nrppa_PRSFrequencyHoppingConfiguration_EUTRA }, + { 20, &hf_nrppa_choice_Extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_OTDOACell_Information_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_OTDOACell_Information_Item, OTDOACell_Information_Item_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OTDOACell_Information_sequence_of[1] = { + { &hf_nrppa_OTDOACell_Information_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_OTDOACell_Information_Item }, +}; + +static int +dissect_nrppa_OTDOACell_Information(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_OTDOACell_Information, OTDOACell_Information_sequence_of, + 1, maxnoOTDOAtypes, FALSE); + + return offset; +} + + +static const per_sequence_t OTDOACells_item_sequence[] = { + { &hf_nrppa_oTDOACellInfo , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_OTDOACell_Information }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_OTDOACells_item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_OTDOACells_item, OTDOACells_item_sequence); + + return offset; +} + + +static const per_sequence_t OTDOACells_sequence_of[1] = { + { &hf_nrppa_OTDOACells_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_OTDOACells_item }, +}; + +static int +dissect_nrppa_OTDOACells(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_OTDOACells, OTDOACells_sequence_of, + 1, maxCellinRANnode, FALSE); + + return offset; +} + + +static const value_string nrppa_OTDOA_Information_Item_vals[] = { + { 0, "pci" }, + { 1, "cGI" }, + { 2, "tac" }, + { 3, "earfcn" }, + { 4, "prsBandwidth" }, + { 5, "prsConfigIndex" }, + { 6, "cpLength" }, + { 7, "noDlFrames" }, + { 8, "noAntennaPorts" }, + { 9, "sFNInitTime" }, + { 10, "nG-RANAccessPointPosition" }, + { 11, "prsmutingconfiguration" }, + { 12, "prsid" }, + { 13, "tpid" }, + { 14, "tpType" }, + { 15, "crsCPlength" }, + { 16, "dlBandwidth" }, + { 17, "multipleprsConfigurationsperCell" }, + { 18, "prsOccasionGroup" }, + { 19, "prsFrequencyHoppingConfiguration" }, + { 20, "tddConfig" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_OTDOA_Information_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 20, NULL, TRUE, 1, NULL); + + return offset; +} + + +static const per_sequence_t OtherRATMeasurementQuantities_sequence_of[1] = { + { &hf_nrppa_OtherRATMeasurementQuantities_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Single_Container }, +}; + +static int +dissect_nrppa_OtherRATMeasurementQuantities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_OtherRATMeasurementQuantities, OtherRATMeasurementQuantities_sequence_of, + 0, maxNoMeas, FALSE); + + return offset; +} + + +static const value_string nrppa_OtherRATMeasurementQuantitiesValue_vals[] = { + { 0, "geran" }, + { 1, "utran" }, + { 2, "nR" }, + { 3, "eUTRA" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_OtherRATMeasurementQuantitiesValue(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, TRUE, 2, NULL); + + return offset; +} + + +static const per_sequence_t OtherRATMeasurementQuantities_Item_sequence[] = { + { &hf_nrppa_otherRATMeasurementQuantitiesValue, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_OtherRATMeasurementQuantitiesValue }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_OtherRATMeasurementQuantities_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_OtherRATMeasurementQuantities_Item, OtherRATMeasurementQuantities_Item_sequence); + + return offset; +} + + + +static int +dissect_nrppa_PhysCellIDGERAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 63U, NULL, TRUE); + + return offset; +} + + + +static int +dissect_nrppa_RSSI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 63U, NULL, TRUE); + + return offset; +} + + +static const per_sequence_t ResultGERAN_Item_sequence[] = { + { &hf_nrppa_bCCH , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_BCCH }, + { &hf_nrppa_physCellIDGERAN, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PhysCellIDGERAN }, + { &hf_nrppa_rSSI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_RSSI }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ResultGERAN_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResultGERAN_Item, ResultGERAN_Item_sequence); + + return offset; +} + + +static const per_sequence_t ResultGERAN_sequence_of[1] = { + { &hf_nrppa_ResultGERAN_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_ResultGERAN_Item }, +}; + +static int +dissect_nrppa_ResultGERAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResultGERAN, ResultGERAN_sequence_of, + 1, maxGERANMeas, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_UARFCN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 16383U, NULL, TRUE); + + return offset; +} + + + +static int +dissect_nrppa_PhysCellIDUTRA_FDD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 511U, NULL, TRUE); + + return offset; +} + + + +static int +dissect_nrppa_PhysCellIDUTRA_TDD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 127U, NULL, TRUE); + + return offset; +} + + +static const value_string nrppa_T_physCellIDUTRAN_vals[] = { + { 0, "physCellIDUTRA-FDD" }, + { 1, "physCellIDUTRA-TDD" }, + { 0, NULL } +}; + +static const per_choice_t T_physCellIDUTRAN_choice[] = { + { 0, &hf_nrppa_physCellIDUTRA_FDD, ASN1_NO_EXTENSIONS , dissect_nrppa_PhysCellIDUTRA_FDD }, + { 1, &hf_nrppa_physCellIDUTRA_TDD, ASN1_NO_EXTENSIONS , dissect_nrppa_PhysCellIDUTRA_TDD }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_T_physCellIDUTRAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_T_physCellIDUTRAN, T_physCellIDUTRAN_choice, + NULL); + + return offset; +} + + + +static int +dissect_nrppa_UTRA_RSCP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -5, 91U, NULL, TRUE); + + return offset; +} + + + +static int +dissect_nrppa_UTRA_EcN0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 49U, NULL, TRUE); + + return offset; +} + + +static const per_sequence_t ResultUTRAN_Item_sequence[] = { + { &hf_nrppa_uARFCN , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_UARFCN }, + { &hf_nrppa_physCellIDUTRAN, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_physCellIDUTRAN }, + { &hf_nrppa_uTRA_RSCP , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_UTRA_RSCP }, + { &hf_nrppa_uTRA_EcN0 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_UTRA_EcN0 }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ResultUTRAN_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResultUTRAN_Item, ResultUTRAN_Item_sequence); + + return offset; +} + + +static const per_sequence_t ResultUTRAN_sequence_of[1] = { + { &hf_nrppa_ResultUTRAN_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_ResultUTRAN_Item }, +}; + +static int +dissect_nrppa_ResultUTRAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResultUTRAN, ResultUTRAN_sequence_of, + 1, maxUTRANMeas, FALSE); + + return offset; +} + + +static const value_string nrppa_OtherRATMeasuredResultsValue_vals[] = { + { 0, "resultGERAN" }, + { 1, "resultUTRAN" }, + { 2, "choice-Extension" }, + { 0, NULL } +}; + +static const per_choice_t OtherRATMeasuredResultsValue_choice[] = { + { 0, &hf_nrppa_resultGERAN , ASN1_NO_EXTENSIONS , dissect_nrppa_ResultGERAN }, + { 1, &hf_nrppa_resultUTRAN , ASN1_NO_EXTENSIONS , dissect_nrppa_ResultUTRAN }, + { 2, &hf_nrppa_choice_Extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_OtherRATMeasuredResultsValue(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_OtherRATMeasuredResultsValue, OtherRATMeasuredResultsValue_choice, + NULL); + + return offset; +} + + +static const per_sequence_t OtherRATMeasurementResult_sequence_of[1] = { + { &hf_nrppa_OtherRATMeasurementResult_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_OtherRATMeasuredResultsValue }, +}; + +static int +dissect_nrppa_OtherRATMeasurementResult(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_OtherRATMeasurementResult, OtherRATMeasurementResult_sequence_of, + 1, maxNoMeas, FALSE); + + return offset; +} + + +static const value_string nrppa_PathlossReferenceSignal_vals[] = { + { 0, "sSB-Reference" }, + { 1, "dL-PRS-Reference" }, + { 2, "choice-Extension" }, + { 0, NULL } +}; + +static const per_choice_t PathlossReferenceSignal_choice[] = { + { 0, &hf_nrppa_sSB_Reference , ASN1_NO_EXTENSIONS , dissect_nrppa_SSB }, + { 1, &hf_nrppa_dL_PRS_Reference, ASN1_NO_EXTENSIONS , dissect_nrppa_DL_PRS }, + { 2, &hf_nrppa_choice_Extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_PathlossReferenceSignal(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_PathlossReferenceSignal, PathlossReferenceSignal_choice, + NULL); + + return offset; +} + + +static const per_sequence_t PathlossReferenceInformation_sequence[] = { + { &hf_nrppa_pathlossReferenceSignal, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PathlossReferenceSignal }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PathlossReferenceInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PathlossReferenceInformation, PathlossReferenceInformation_sequence); + + return offset; +} + + +static const value_string nrppa_PeriodicityItem_vals[] = { + { 0, "ms0dot125" }, + { 1, "ms0dot25" }, + { 2, "ms0dot5" }, + { 3, "ms0dot625" }, + { 4, "ms1" }, + { 5, "ms1dot25" }, + { 6, "ms2" }, + { 7, "ms2dot5" }, + { 8, "ms4dot" }, + { 9, "ms5" }, + { 10, "ms8" }, + { 11, "ms10" }, + { 12, "ms16" }, + { 13, "ms20" }, + { 14, "ms32" }, + { 15, "ms40" }, + { 16, "ms64" }, + { 17, "ms80m" }, + { 18, "ms160" }, + { 19, "ms320" }, + { 20, "ms640m" }, + { 21, "ms1280" }, + { 22, "ms2560" }, + { 23, "ms5120" }, + { 24, "ms10240" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_PeriodicityItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 25, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t PeriodicityList_sequence_of[1] = { + { &hf_nrppa_PeriodicityList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_PeriodicityItem }, +}; + +static int +dissect_nrppa_PeriodicityList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_PeriodicityList, PeriodicityList_sequence_of, + 1, maxnoSRS_ResourcePerSet, FALSE); + + return offset; +} + + +static const per_sequence_t PosSRSResourceID_List_sequence_of[1] = { + { &hf_nrppa_PosSRSResourceID_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_SRSPosResourceID }, +}; + +static int +dissect_nrppa_PosSRSResourceID_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_PosSRSResourceID_List, PosSRSResourceID_List_sequence_of, + 1, maxnoSRS_PosResources, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_PreconfigurationResult(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 8, 8, FALSE, NULL, 0, NULL, NULL); + + return offset; +} + + +static const value_string nrppa_PRSConfigRequestType_vals[] = { + { 0, "configure" }, + { 1, "off" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_PRSConfigRequestType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_T_subcarrierSpacing_01_vals[] = { + { 0, "kHz15" }, + { 1, "kHz30" }, + { 2, "kHz60" }, + { 3, "kHz120" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_subcarrierSpacing_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_1_63(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 63U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_2176(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 2176U, NULL, FALSE); + + return offset; +} + + +static const value_string nrppa_T_combSize_vals[] = { + { 0, "n2" }, + { 1, "n4" }, + { 2, "n6" }, + { 3, "n12" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_combSize(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_T_cPType_vals[] = { + { 0, "normal" }, + { 1, "extended" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_cPType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_T_resourceSetPeriodicity_vals[] = { + { 0, "n4" }, + { 1, "n5" }, + { 2, "n8" }, + { 3, "n10" }, + { 4, "n16" }, + { 5, "n20" }, + { 6, "n32" }, + { 7, "n40" }, + { 8, "n64" }, + { 9, "n80" }, + { 10, "n160" }, + { 11, "n320" }, + { 12, "n640" }, + { 13, "n1280" }, + { 14, "n2560" }, + { 15, "n5120" }, + { 16, "n10240" }, + { 17, "n20480" }, + { 18, "n40960" }, + { 19, "n81920" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_resourceSetPeriodicity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 20, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_T_resourceRepetitionFactor_vals[] = { + { 0, "rf1" }, + { 1, "rf2" }, + { 2, "rf4" }, + { 3, "rf6" }, + { 4, "rf8" }, + { 5, "rf16" }, + { 6, "rf32" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_resourceRepetitionFactor(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 7, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_T_resourceTimeGap_vals[] = { + { 0, "tg1" }, + { 1, "tg2" }, + { 2, "tg4" }, + { 3, "tg8" }, + { 4, "tg16" }, + { 5, "tg32" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_resourceTimeGap(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 6, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_T_resourceNumberofSymbols_vals[] = { + { 0, "n2" }, + { 1, "n4" }, + { 2, "n6" }, + { 3, "n12" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_resourceNumberofSymbols(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_T_mutingBitRepetitionFactor_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "n8" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_mutingBitRepetitionFactor(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t PRSMutingOption1_sequence[] = { + { &hf_nrppa_mutingPattern , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_DL_PRSMutingPattern }, + { &hf_nrppa_mutingBitRepetitionFactor, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_mutingBitRepetitionFactor }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PRSMutingOption1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRSMutingOption1, PRSMutingOption1_sequence); + + return offset; +} + + +static const per_sequence_t PRSMutingOption2_sequence[] = { + { &hf_nrppa_mutingPattern , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_DL_PRSMutingPattern }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PRSMutingOption2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRSMutingOption2, PRSMutingOption2_sequence); + + return offset; +} + + +static const per_sequence_t PRSMuting_sequence[] = { + { &hf_nrppa_pRSMutingOption1, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_PRSMutingOption1 }, + { &hf_nrppa_pRSMutingOption2, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_PRSMutingOption2 }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PRSMuting(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRSMuting, PRSMuting_sequence); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_M60_50(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -60, 50U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_4095(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 4095U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_11_(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 11U, NULL, TRUE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 12U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t PRSResource_QCLSourceSSB_sequence[] = { + { &hf_nrppa_pCI_NR , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_1007 }, + { &hf_nrppa_sSB_Index , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_SSB_Index }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PRSResource_QCLSourceSSB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRSResource_QCLSourceSSB, PRSResource_QCLSourceSSB_sequence); + + return offset; +} + + +static const per_sequence_t PRSResource_QCLSourcePRS_sequence[] = { + { &hf_nrppa_qCLSourcePRSResourceSetID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PRS_Resource_Set_ID }, + { &hf_nrppa_qCLSourcePRSResourceID, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_PRS_Resource_ID }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PRSResource_QCLSourcePRS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRSResource_QCLSourcePRS, PRSResource_QCLSourcePRS_sequence); + + return offset; +} + + +static const value_string nrppa_PRSResource_QCLInfo_vals[] = { + { 0, "qCLSourceSSB" }, + { 1, "qCLSourcePRS" }, + { 2, "choice-Extension" }, + { 0, NULL } +}; + +static const per_choice_t PRSResource_QCLInfo_choice[] = { + { 0, &hf_nrppa_qCLSourceSSB , ASN1_NO_EXTENSIONS , dissect_nrppa_PRSResource_QCLSourceSSB }, + { 1, &hf_nrppa_qCLSourcePRS , ASN1_NO_EXTENSIONS , dissect_nrppa_PRSResource_QCLSourcePRS }, + { 2, &hf_nrppa_choice_Extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_PRSResource_QCLInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRSResource_QCLInfo, PRSResource_QCLInfo_choice, + NULL); + + return offset; +} + + +static const per_sequence_t PRSResource_Item_sequence[] = { + { &hf_nrppa_pRSResourceID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PRS_Resource_ID }, + { &hf_nrppa_sequenceID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_4095 }, + { &hf_nrppa_rEOffset , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_11_ }, + { &hf_nrppa_resourceSlotOffset, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_511 }, + { &hf_nrppa_resourceSymbolOffset, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_12 }, + { &hf_nrppa_qCLInfo , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_PRSResource_QCLInfo }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PRSResource_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRSResource_Item, PRSResource_Item_sequence); + + return offset; +} + + +static const per_sequence_t PRSResource_List_sequence_of[1] = { + { &hf_nrppa_PRSResource_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_PRSResource_Item }, +}; + +static int +dissect_nrppa_PRSResource_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRSResource_List, PRSResource_List_sequence_of, + 1, maxnoofPRSresource, FALSE); + + return offset; +} + + +static const per_sequence_t PRSResourceSet_Item_sequence[] = { + { &hf_nrppa_pRSResourceSetID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PRS_Resource_Set_ID }, + { &hf_nrppa_subcarrierSpacing_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_subcarrierSpacing_01 }, + { &hf_nrppa_pRSbandwidth , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_1_63 }, + { &hf_nrppa_startPRB , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_2176 }, + { &hf_nrppa_pointA , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_3279165 }, + { &hf_nrppa_combSize , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_combSize }, + { &hf_nrppa_cPType , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_cPType }, + { &hf_nrppa_resourceSetPeriodicity, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_resourceSetPeriodicity }, + { &hf_nrppa_resourceSetSlotOffset, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_81919_ }, + { &hf_nrppa_resourceRepetitionFactor, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_resourceRepetitionFactor }, + { &hf_nrppa_resourceTimeGap, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_resourceTimeGap }, + { &hf_nrppa_resourceNumberofSymbols, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_resourceNumberofSymbols }, + { &hf_nrppa_pRSMuting , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_PRSMuting }, + { &hf_nrppa_pRSResourceTransmitPower, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_M60_50 }, + { &hf_nrppa_pRSResource_List, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PRSResource_List }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PRSResourceSet_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRSResourceSet_Item, PRSResourceSet_Item_sequence); + + return offset; +} + + +static const per_sequence_t PRSResourceSet_List_sequence_of[1] = { + { &hf_nrppa_PRSResourceSet_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_PRSResourceSet_Item }, +}; + +static int +dissect_nrppa_PRSResourceSet_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRSResourceSet_List, PRSResourceSet_List_sequence_of, + 1, maxnoofPRSresourceSet, FALSE); + + return offset; +} + + +static const per_sequence_t PRSConfiguration_sequence[] = { + { &hf_nrppa_pRSResourceSet_List, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PRSResourceSet_List }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PRSConfiguration(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRSConfiguration, PRSConfiguration_sequence); + + return offset; +} + + +static const value_string nrppa_T_measPRSPeriodicity_vals[] = { + { 0, "ms20" }, + { 1, "ms40" }, + { 2, "ms80" }, + { 3, "ms160" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_measPRSPeriodicity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_159_(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 159U, NULL, TRUE); + + return offset; +} + + +static const value_string nrppa_T_measurementPRSLength_vals[] = { + { 0, "ms1dot5" }, + { 1, "ms3" }, + { 2, "ms3dot5" }, + { 3, "ms4" }, + { 4, "ms5dot5" }, + { 5, "ms6" }, + { 6, "ms10" }, + { 7, "ms20" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_measurementPRSLength(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 8, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t PRS_Measurements_Info_List_Item_sequence[] = { + { &hf_nrppa_pointA , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_3279165 }, + { &hf_nrppa_measPRSPeriodicity, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_measPRSPeriodicity }, + { &hf_nrppa_measPRSOffset , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_159_ }, + { &hf_nrppa_measurementPRSLength, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_measurementPRSLength }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PRS_Measurements_Info_List_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRS_Measurements_Info_List_Item, PRS_Measurements_Info_List_Item_sequence); + + return offset; +} + + +static const per_sequence_t PRS_Measurements_Info_List_sequence_of[1] = { + { &hf_nrppa_PRS_Measurements_Info_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_PRS_Measurements_Info_List_Item }, +}; + +static int +dissect_nrppa_PRS_Measurements_Info_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRS_Measurements_Info_List, PRS_Measurements_Info_List_sequence_of, + 1, maxFreqLayers, FALSE); + + return offset; +} + + +static const per_sequence_t PRSTransmissionOffPerResourceSet_Item_sequence[] = { + { &hf_nrppa_pRSResourceSetID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PRS_Resource_Set_ID }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PRSTransmissionOffPerResourceSet_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRSTransmissionOffPerResourceSet_Item, PRSTransmissionOffPerResourceSet_Item_sequence); + + return offset; +} + + +static const per_sequence_t PRSTransmissionOffPerResourceSet_sequence_of[1] = { + { &hf_nrppa_PRSTransmissionOffPerResourceSet_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_PRSTransmissionOffPerResourceSet_Item }, +}; + +static int +dissect_nrppa_PRSTransmissionOffPerResourceSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRSTransmissionOffPerResourceSet, PRSTransmissionOffPerResourceSet_sequence_of, + 1, maxnoofPRSresourceSet, FALSE); + + return offset; +} + + +static const per_sequence_t PRSTransmissionOffIndicationPerResource_Item_sequence[] = { + { &hf_nrppa_pRSResourceID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PRS_Resource_ID }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PRSTransmissionOffIndicationPerResource_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRSTransmissionOffIndicationPerResource_Item, PRSTransmissionOffIndicationPerResource_Item_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxnoofPRSresource_OF_PRSTransmissionOffIndicationPerResource_Item_sequence_of[1] = { + { &hf_nrppa_pRSTransmissionOffIndicationPerResourceList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_PRSTransmissionOffIndicationPerResource_Item }, +}; + +static int +dissect_nrppa_SEQUENCE_SIZE_1_maxnoofPRSresource_OF_PRSTransmissionOffIndicationPerResource_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_SEQUENCE_SIZE_1_maxnoofPRSresource_OF_PRSTransmissionOffIndicationPerResource_Item, SEQUENCE_SIZE_1_maxnoofPRSresource_OF_PRSTransmissionOffIndicationPerResource_Item_sequence_of, + 1, maxnoofPRSresource, FALSE); + + return offset; +} + + +static const per_sequence_t PRSTransmissionOffPerResource_Item_sequence[] = { + { &hf_nrppa_pRSResourceSetID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PRS_Resource_Set_ID }, + { &hf_nrppa_pRSTransmissionOffIndicationPerResourceList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_SEQUENCE_SIZE_1_maxnoofPRSresource_OF_PRSTransmissionOffIndicationPerResource_Item }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PRSTransmissionOffPerResource_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRSTransmissionOffPerResource_Item, PRSTransmissionOffPerResource_Item_sequence); + + return offset; +} + + +static const per_sequence_t PRSTransmissionOffPerResource_sequence_of[1] = { + { &hf_nrppa_PRSTransmissionOffPerResource_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_PRSTransmissionOffPerResource_Item }, +}; + +static int +dissect_nrppa_PRSTransmissionOffPerResource(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRSTransmissionOffPerResource, PRSTransmissionOffPerResource_sequence_of, + 1, maxnoofPRSresourceSet, FALSE); + + return offset; +} + + +static const value_string nrppa_PRSTransmissionOffIndication_vals[] = { + { 0, "pRSTransmissionOffPerTRP" }, + { 1, "pRSTransmissionOffPerResourceSet" }, + { 2, "pRSTransmissionOffPerResource" }, + { 3, "choice-Extension" }, + { 0, NULL } +}; + +static const per_choice_t PRSTransmissionOffIndication_choice[] = { + { 0, &hf_nrppa_pRSTransmissionOffPerTRP, ASN1_NO_EXTENSIONS , dissect_nrppa_NULL }, + { 1, &hf_nrppa_pRSTransmissionOffPerResourceSet, ASN1_NO_EXTENSIONS , dissect_nrppa_PRSTransmissionOffPerResourceSet }, + { 2, &hf_nrppa_pRSTransmissionOffPerResource, ASN1_NO_EXTENSIONS , dissect_nrppa_PRSTransmissionOffPerResource }, + { 3, &hf_nrppa_choice_Extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_PRSTransmissionOffIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRSTransmissionOffIndication, PRSTransmissionOffIndication_choice, + NULL); + + return offset; +} + + +static const per_sequence_t PRSTransmissionOffInformation_sequence[] = { + { &hf_nrppa_pRSTransmissionOffIndication, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PRSTransmissionOffIndication }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PRSTransmissionOffInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRSTransmissionOffInformation, PRSTransmissionOffInformation_sequence); + + return offset; +} + + + +static int +dissect_nrppa_TRP_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, maxnoTRPs, NULL, TRUE); + + return offset; +} + + +static const value_string nrppa_T_combSize_01_vals[] = { + { 0, "n2" }, + { 1, "n4" }, + { 2, "n6" }, + { 3, "n12" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_combSize_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_T_resourceSetPeriodicity_01_vals[] = { + { 0, "n4" }, + { 1, "n5" }, + { 2, "n8" }, + { 3, "n10" }, + { 4, "n16" }, + { 5, "n20" }, + { 6, "n32" }, + { 7, "n40" }, + { 8, "n64" }, + { 9, "n80" }, + { 10, "n160" }, + { 11, "n320" }, + { 12, "n640" }, + { 13, "n1280" }, + { 14, "n2560" }, + { 15, "n5120" }, + { 16, "n10240" }, + { 17, "n20480" }, + { 18, "n40960" }, + { 19, "n81920" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_resourceSetPeriodicity_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 20, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_T_resourceRepetitionFactor_01_vals[] = { + { 0, "rf1" }, + { 1, "rf2" }, + { 2, "rf4" }, + { 3, "rf6" }, + { 4, "rf8" }, + { 5, "rf16" }, + { 6, "rf32" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_resourceRepetitionFactor_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 7, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_T_resourceNumberofSymbols_01_vals[] = { + { 0, "n2" }, + { 1, "n4" }, + { 2, "n6" }, + { 3, "n12" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_resourceNumberofSymbols_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t RequestedDLPRSResource_Item_sequence[] = { + { &hf_nrppa_qCLInfo , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_PRSResource_QCLInfo }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_RequestedDLPRSResource_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_RequestedDLPRSResource_Item, RequestedDLPRSResource_Item_sequence); + + return offset; +} + + +static const per_sequence_t RequestedDLPRSResource_List_sequence_of[1] = { + { &hf_nrppa_RequestedDLPRSResource_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_RequestedDLPRSResource_Item }, +}; + +static int +dissect_nrppa_RequestedDLPRSResource_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_RequestedDLPRSResource_List, RequestedDLPRSResource_List_sequence_of, + 1, maxnoofPRSresource, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_RelativeTime1900(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 64, 64, FALSE, NULL, 0, NULL, NULL); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_90060_(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 90060U, NULL, TRUE); + + return offset; +} + + +static const per_sequence_t StartTimeAndDuration_sequence[] = { + { &hf_nrppa_startTime , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_RelativeTime1900 }, + { &hf_nrppa_duration , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_INTEGER_0_90060_ }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_StartTimeAndDuration(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_StartTimeAndDuration, StartTimeAndDuration_sequence); + + return offset; +} + + +static const per_sequence_t RequestedDLPRSResourceSet_Item_sequence[] = { + { &hf_nrppa_pRSbandwidth , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_INTEGER_1_63 }, + { &hf_nrppa_combSize_01 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_T_combSize_01 }, + { &hf_nrppa_resourceSetPeriodicity_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_T_resourceSetPeriodicity_01 }, + { &hf_nrppa_resourceRepetitionFactor_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_T_resourceRepetitionFactor_01 }, + { &hf_nrppa_resourceNumberofSymbols_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_T_resourceNumberofSymbols_01 }, + { &hf_nrppa_requestedDLPRSResource_List, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_RequestedDLPRSResource_List }, + { &hf_nrppa_resourceSetStartTimeAndDuration, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_StartTimeAndDuration }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_RequestedDLPRSResourceSet_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_RequestedDLPRSResourceSet_Item, RequestedDLPRSResourceSet_Item_sequence); + + return offset; +} + + +static const per_sequence_t RequestedDLPRSResourceSet_List_sequence_of[1] = { + { &hf_nrppa_RequestedDLPRSResourceSet_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_RequestedDLPRSResourceSet_Item }, +}; + +static int +dissect_nrppa_RequestedDLPRSResourceSet_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_RequestedDLPRSResourceSet_List, RequestedDLPRSResourceSet_List_sequence_of, + 1, maxnoofPRSresourceSet, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_1_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 4U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t RequestedDLPRSTransmissionCharacteristics_sequence[] = { + { &hf_nrppa_requestedDLPRSResourceSet_List, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_RequestedDLPRSResourceSet_List }, + { &hf_nrppa_numberofFrequencyLayers, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_INTEGER_1_4 }, + { &hf_nrppa_startTimeAndDuration, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_StartTimeAndDuration }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_RequestedDLPRSTransmissionCharacteristics(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_RequestedDLPRSTransmissionCharacteristics, RequestedDLPRSTransmissionCharacteristics_sequence); + + return offset; +} + + +static const per_sequence_t PRSTRPItem_sequence[] = { + { &hf_nrppa_tRP_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TRP_ID }, + { &hf_nrppa_requestedDLPRSTransmissionCharacteristics, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_RequestedDLPRSTransmissionCharacteristics }, + { &hf_nrppa_pRSTransmissionOffInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_PRSTransmissionOffInformation }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PRSTRPItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRSTRPItem, PRSTRPItem_sequence); + + return offset; +} + + +static const per_sequence_t PRSTRPList_sequence_of[1] = { + { &hf_nrppa_PRSTRPList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_PRSTRPItem }, +}; + +static int +dissect_nrppa_PRSTRPList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRSTRPList, PRSTRPList_sequence_of, + 1, maxnoTRPs, FALSE); + + return offset; +} + + +static const per_sequence_t PRSTransmissionTRPItem_sequence[] = { + { &hf_nrppa_tRP_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TRP_ID }, + { &hf_nrppa_pRSConfiguration, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PRSConfiguration }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PRSTransmissionTRPItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRSTransmissionTRPItem, PRSTransmissionTRPItem_sequence); + + return offset; +} + + +static const per_sequence_t PRSTransmissionTRPList_sequence_of[1] = { + { &hf_nrppa_PRSTransmissionTRPList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_PRSTransmissionTRPItem }, +}; + +static int +dissect_nrppa_PRSTransmissionTRPList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRSTransmissionTRPList, PRSTransmissionTRPList_sequence_of, + 1, maxnoTRPs, FALSE); + + return offset; +} + + +static const value_string nrppa_ReferenceSignal_vals[] = { + { 0, "nZP-CSI-RS" }, + { 1, "sSB" }, + { 2, "sRS" }, + { 3, "positioningSRS" }, + { 4, "dL-PRS" }, + { 5, "choice-Extension" }, + { 0, NULL } +}; + +static const per_choice_t ReferenceSignal_choice[] = { + { 0, &hf_nrppa_nZP_CSI_RS , ASN1_NO_EXTENSIONS , dissect_nrppa_NZP_CSI_RS_ResourceID }, + { 1, &hf_nrppa_sSB , ASN1_NO_EXTENSIONS , dissect_nrppa_SSB }, + { 2, &hf_nrppa_sRS , ASN1_NO_EXTENSIONS , dissect_nrppa_SRSResourceID }, + { 3, &hf_nrppa_positioningSRS, ASN1_NO_EXTENSIONS , dissect_nrppa_SRSPosResourceID }, + { 4, &hf_nrppa_dL_PRS , ASN1_NO_EXTENSIONS , dissect_nrppa_DL_PRS }, + { 5, &hf_nrppa_choice_Extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_ReferenceSignal(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_ReferenceSignal, ReferenceSignal_choice, + NULL); + + return offset; +} + + +static const value_string nrppa_ReportCharacteristics_vals[] = { + { 0, "onDemand" }, + { 1, "periodic" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_ReportCharacteristics(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_500_(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 500U, NULL, TRUE); + + return offset; +} + + +static const value_string nrppa_T_resourceType_vals[] = { + { 0, "periodic" }, + { 1, "semi-persistent" }, + { 2, "aperiodic" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_resourceType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t SpatialRelationforResourceIDItem_sequence[] = { + { &hf_nrppa_referenceSignal, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ReferenceSignal }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_SpatialRelationforResourceIDItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_SpatialRelationforResourceIDItem, SpatialRelationforResourceIDItem_sequence); + + return offset; +} + + +static const per_sequence_t SpatialRelationforResourceID_sequence_of[1] = { + { &hf_nrppa_SpatialRelationforResourceID_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_SpatialRelationforResourceIDItem }, +}; + +static int +dissect_nrppa_SpatialRelationforResourceID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_SpatialRelationforResourceID, SpatialRelationforResourceID_sequence_of, + 1, maxnoSpatialRelations, FALSE); + + return offset; +} + + +static const per_sequence_t SpatialRelationInfo_sequence[] = { + { &hf_nrppa_spatialRelationforResourceID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_SpatialRelationforResourceID }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_SpatialRelationInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_SpatialRelationInfo, SpatialRelationInfo_sequence); + + return offset; +} + + +static const per_sequence_t SRSResourceSet_Item_sequence[] = { + { &hf_nrppa_numberOfSRSResourcePerSet, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_INTEGER_1_16_ }, + { &hf_nrppa_periodicityList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_PeriodicityList }, + { &hf_nrppa_spatialRelationInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_SpatialRelationInfo }, + { &hf_nrppa_pathlossReferenceInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_PathlossReferenceInformation }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_SRSResourceSet_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_SRSResourceSet_Item, SRSResourceSet_Item_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxnoSRS_ResourceSets_OF_SRSResourceSet_Item_sequence_of[1] = { + { &hf_nrppa_listOfSRSResourceSet_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_SRSResourceSet_Item }, +}; + +static int +dissect_nrppa_SEQUENCE_SIZE_1_maxnoSRS_ResourceSets_OF_SRSResourceSet_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_SEQUENCE_SIZE_1_maxnoSRS_ResourceSets_OF_SRSResourceSet_Item, SEQUENCE_SIZE_1_maxnoSRS_ResourceSets_OF_SRSResourceSet_Item_sequence_of, + 1, maxnoSRS_ResourceSets, FALSE); + + return offset; +} + + +static const value_string nrppa_T_sSB_subcarrier_spacing_vals[] = { + { 0, "kHz15" }, + { 1, "kHz30" }, + { 2, "kHz120" }, + { 3, "kHz240" }, + { 4, "kHz60" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_sSB_subcarrier_spacing(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 1, NULL); + + return offset; +} + + +static const value_string nrppa_T_sSB_periodicity_vals[] = { + { 0, "ms5" }, + { 1, "ms10" }, + { 2, "ms20" }, + { 3, "ms40" }, + { 4, "ms80" }, + { 5, "ms160" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_sSB_periodicity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 6, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_SSBBurstPosition_vals[] = { + { 0, "shortBitmap" }, + { 1, "mediumBitmap" }, + { 2, "longBitmap" }, + { 3, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t SSBBurstPosition_choice[] = { + { 0, &hf_nrppa_shortBitmap , ASN1_NO_EXTENSIONS , dissect_nrppa_BIT_STRING_SIZE_4 }, + { 1, &hf_nrppa_mediumBitmap , ASN1_NO_EXTENSIONS , dissect_nrppa_BIT_STRING_SIZE_8 }, + { 2, &hf_nrppa_longBitmap , ASN1_NO_EXTENSIONS , dissect_nrppa_BIT_STRING_SIZE_64 }, + { 3, &hf_nrppa_choice_extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_SSBBurstPosition(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_SSBBurstPosition, SSBBurstPosition_choice, + NULL); + + return offset; +} + + +static const per_sequence_t TF_Configuration_sequence[] = { + { &hf_nrppa_sSB_frequency , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_3279165 }, + { &hf_nrppa_sSB_subcarrier_spacing, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_sSB_subcarrier_spacing }, + { &hf_nrppa_sSB_Transmit_power, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_M60_50 }, + { &hf_nrppa_sSB_periodicity, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_sSB_periodicity }, + { &hf_nrppa_sSB_half_frame_offset, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_1 }, + { &hf_nrppa_sSB_SFN_offset, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_15 }, + { &hf_nrppa_sSB_BurstPosition, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_SSBBurstPosition }, + { &hf_nrppa_sFN_initialisation_time, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_RelativeTime1900 }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_TF_Configuration(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_TF_Configuration, TF_Configuration_sequence); + + return offset; +} + + +static const per_sequence_t SSBInfoItem_sequence[] = { + { &hf_nrppa_sSB_Configuration, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TF_Configuration }, + { &hf_nrppa_pCI_NR , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_1007 }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_SSBInfoItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_SSBInfoItem, SSBInfoItem_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxNoSSBs_OF_SSBInfoItem_sequence_of[1] = { + { &hf_nrppa_listOfSSBInfo_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_SSBInfoItem }, +}; + +static int +dissect_nrppa_SEQUENCE_SIZE_1_maxNoSSBs_OF_SSBInfoItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_SEQUENCE_SIZE_1_maxNoSSBs_OF_SSBInfoItem, SEQUENCE_SIZE_1_maxNoSSBs_OF_SSBInfoItem_sequence_of, + 1, maxNoSSBs, FALSE); + + return offset; +} + + +static const per_sequence_t SSBInfo_sequence[] = { + { &hf_nrppa_listOfSSBInfo , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_SEQUENCE_SIZE_1_maxNoSSBs_OF_SSBInfoItem }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_SSBInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_SSBInfo, SSBInfo_sequence); + + return offset; +} + + +static const per_sequence_t RequestedSRSTransmissionCharacteristics_sequence[] = { + { &hf_nrppa_numberOfTransmissions, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_INTEGER_0_500_ }, + { &hf_nrppa_resourceType , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_resourceType }, + { &hf_nrppa_bandwidth , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_BandwidthSRS }, + { &hf_nrppa_listOfSRSResourceSet, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_SEQUENCE_SIZE_1_maxnoSRS_ResourceSets_OF_SRSResourceSet_Item }, + { &hf_nrppa_sSBInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_SSBInfo }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_RequestedSRSTransmissionCharacteristics(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_RequestedSRSTransmissionCharacteristics, RequestedSRSTransmissionCharacteristics_sequence); + + return offset; +} + + +static const value_string nrppa_RequestType_vals[] = { + { 0, "activate" }, + { 1, "deactivate" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_RequestType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_1_128_(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 128U, NULL, TRUE); + + return offset; +} + + +static const value_string nrppa_T_timeUnit_vals[] = { + { 0, "second" }, + { 1, "ten-seconds" }, + { 2, "ten-milliseconds" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_timeUnit(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t ResponseTime_sequence[] = { + { &hf_nrppa_time , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_1_128_ }, + { &hf_nrppa_timeUnit , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_timeUnit }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ResponseTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResponseTime, ResponseTime_sequence); + + return offset; +} + + + +static int +dissect_nrppa_ValueRSRP_NR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 127U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_95(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 95U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t ResultCSI_RSRP_PerCSI_RS_Item_sequence[] = { + { &hf_nrppa_cSI_RS_Index , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_95 }, + { &hf_nrppa_valueCSI_RSRP , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ValueRSRP_NR }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ResultCSI_RSRP_PerCSI_RS_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResultCSI_RSRP_PerCSI_RS_Item, ResultCSI_RSRP_PerCSI_RS_Item_sequence); + + return offset; +} + + +static const per_sequence_t ResultCSI_RSRP_PerCSI_RS_sequence_of[1] = { + { &hf_nrppa_ResultCSI_RSRP_PerCSI_RS_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_ResultCSI_RSRP_PerCSI_RS_Item }, +}; + +static int +dissect_nrppa_ResultCSI_RSRP_PerCSI_RS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResultCSI_RSRP_PerCSI_RS, ResultCSI_RSRP_PerCSI_RS_sequence_of, + 1, maxIndexesReport, FALSE); + + return offset; +} + + +static const per_sequence_t ResultCSI_RSRP_Item_sequence[] = { + { &hf_nrppa_nR_PCI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_NR_PCI }, + { &hf_nrppa_nR_ARFCN , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_NR_ARFCN }, + { &hf_nrppa_cGI_NR , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_CGI_NR }, + { &hf_nrppa_valueCSI_RSRP_Cell, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ValueRSRP_NR }, + { &hf_nrppa_cSI_RSRP_PerCSI_RS, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ResultCSI_RSRP_PerCSI_RS }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ResultCSI_RSRP_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResultCSI_RSRP_Item, ResultCSI_RSRP_Item_sequence); + + return offset; +} + + +static const per_sequence_t ResultCSI_RSRP_sequence_of[1] = { + { &hf_nrppa_ResultCSI_RSRP_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_ResultCSI_RSRP_Item }, +}; + +static int +dissect_nrppa_ResultCSI_RSRP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResultCSI_RSRP, ResultCSI_RSRP_sequence_of, + 1, maxCellReportNR, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_ValueRSRQ_NR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 127U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t ResultCSI_RSRQ_PerCSI_RS_Item_sequence[] = { + { &hf_nrppa_cSI_RS_Index , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_95 }, + { &hf_nrppa_valueCSI_RSRQ , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ValueRSRQ_NR }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ResultCSI_RSRQ_PerCSI_RS_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResultCSI_RSRQ_PerCSI_RS_Item, ResultCSI_RSRQ_PerCSI_RS_Item_sequence); + + return offset; +} + + +static const per_sequence_t ResultCSI_RSRQ_PerCSI_RS_sequence_of[1] = { + { &hf_nrppa_ResultCSI_RSRQ_PerCSI_RS_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_ResultCSI_RSRQ_PerCSI_RS_Item }, +}; + +static int +dissect_nrppa_ResultCSI_RSRQ_PerCSI_RS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResultCSI_RSRQ_PerCSI_RS, ResultCSI_RSRQ_PerCSI_RS_sequence_of, + 1, maxIndexesReport, FALSE); + + return offset; +} + + +static const per_sequence_t ResultCSI_RSRQ_Item_sequence[] = { + { &hf_nrppa_nR_PCI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_NR_PCI }, + { &hf_nrppa_nR_ARFCN , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_NR_ARFCN }, + { &hf_nrppa_cGI_NR , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_CGI_NR }, + { &hf_nrppa_valueCSI_RSRQ_Cell, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ValueRSRQ_NR }, + { &hf_nrppa_cSI_RSRQ_PerCSI_RS, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ResultCSI_RSRQ_PerCSI_RS }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ResultCSI_RSRQ_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResultCSI_RSRQ_Item, ResultCSI_RSRQ_Item_sequence); + + return offset; +} + + +static const per_sequence_t ResultCSI_RSRQ_sequence_of[1] = { + { &hf_nrppa_ResultCSI_RSRQ_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_ResultCSI_RSRQ_Item }, +}; + +static int +dissect_nrppa_ResultCSI_RSRQ(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResultCSI_RSRQ, ResultCSI_RSRQ_sequence_of, + 1, maxCellReportNR, FALSE); + + return offset; +} + + +static const per_sequence_t ResultEUTRA_Item_sequence[] = { + { &hf_nrppa_pCI_EUTRA , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PCI_EUTRA }, + { &hf_nrppa_eARFCN , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_EARFCN }, + { &hf_nrppa_valueRSRP_EUTRA, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ValueRSRP_EUTRA }, + { &hf_nrppa_valueRSRQ_EUTRA, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ValueRSRQ_EUTRA }, + { &hf_nrppa_cGI_EUTRA , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_CGI_EUTRA }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ResultEUTRA_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResultEUTRA_Item, ResultEUTRA_Item_sequence); + + return offset; +} + + +static const per_sequence_t ResultEUTRA_sequence_of[1] = { + { &hf_nrppa_ResultEUTRA_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_ResultEUTRA_Item }, +}; + +static int +dissect_nrppa_ResultEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResultEUTRA, ResultEUTRA_sequence_of, + 1, maxEUTRAMeas, FALSE); + + return offset; +} + + +static const per_sequence_t ResultSS_RSRP_PerSSB_Item_sequence[] = { + { &hf_nrppa_sSB_Index , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_SSB_Index }, + { &hf_nrppa_valueSS_RSRP , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ValueRSRP_NR }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ResultSS_RSRP_PerSSB_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResultSS_RSRP_PerSSB_Item, ResultSS_RSRP_PerSSB_Item_sequence); + + return offset; +} + + +static const per_sequence_t ResultSS_RSRP_PerSSB_sequence_of[1] = { + { &hf_nrppa_ResultSS_RSRP_PerSSB_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_ResultSS_RSRP_PerSSB_Item }, +}; + +static int +dissect_nrppa_ResultSS_RSRP_PerSSB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResultSS_RSRP_PerSSB, ResultSS_RSRP_PerSSB_sequence_of, + 1, maxIndexesReport, FALSE); + + return offset; +} + + +static const per_sequence_t ResultSS_RSRP_Item_sequence[] = { + { &hf_nrppa_nR_PCI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_NR_PCI }, + { &hf_nrppa_nR_ARFCN , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_NR_ARFCN }, + { &hf_nrppa_cGI_NR , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_CGI_NR }, + { &hf_nrppa_valueSS_RSRP_Cell, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ValueRSRP_NR }, + { &hf_nrppa_sS_RSRP_PerSSB, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ResultSS_RSRP_PerSSB }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ResultSS_RSRP_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResultSS_RSRP_Item, ResultSS_RSRP_Item_sequence); + + return offset; +} + + +static const per_sequence_t ResultSS_RSRP_sequence_of[1] = { + { &hf_nrppa_ResultSS_RSRP_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_ResultSS_RSRP_Item }, +}; + +static int +dissect_nrppa_ResultSS_RSRP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResultSS_RSRP, ResultSS_RSRP_sequence_of, + 1, maxCellReportNR, FALSE); + + return offset; +} + + +static const per_sequence_t ResultSS_RSRQ_PerSSB_Item_sequence[] = { + { &hf_nrppa_sSB_Index , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_SSB_Index }, + { &hf_nrppa_valueSS_RSRQ , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ValueRSRQ_NR }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ResultSS_RSRQ_PerSSB_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResultSS_RSRQ_PerSSB_Item, ResultSS_RSRQ_PerSSB_Item_sequence); + + return offset; +} + + +static const per_sequence_t ResultSS_RSRQ_PerSSB_sequence_of[1] = { + { &hf_nrppa_ResultSS_RSRQ_PerSSB_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_ResultSS_RSRQ_PerSSB_Item }, +}; + +static int +dissect_nrppa_ResultSS_RSRQ_PerSSB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResultSS_RSRQ_PerSSB, ResultSS_RSRQ_PerSSB_sequence_of, + 1, maxIndexesReport, FALSE); + + return offset; +} + + +static const per_sequence_t ResultSS_RSRQ_Item_sequence[] = { + { &hf_nrppa_nR_PCI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_NR_PCI }, + { &hf_nrppa_nR_ARFCN , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_NR_ARFCN }, + { &hf_nrppa_cGI_NR , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_CGI_NR }, + { &hf_nrppa_valueSS_RSRQ_Cell, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ValueRSRQ_NR }, + { &hf_nrppa_sS_RSRQ_PerSSB, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ResultSS_RSRQ_PerSSB }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ResultSS_RSRQ_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResultSS_RSRQ_Item, ResultSS_RSRQ_Item_sequence); + + return offset; +} + + +static const per_sequence_t ResultSS_RSRQ_sequence_of[1] = { + { &hf_nrppa_ResultSS_RSRQ_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_ResultSS_RSRQ_Item }, +}; + +static int +dissect_nrppa_ResultSS_RSRQ(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResultSS_RSRQ, ResultSS_RSRQ_sequence_of, + 1, maxCellReportNR, FALSE); + + return offset; +} + + +static const per_sequence_t ResultNR_Item_sequence[] = { + { &hf_nrppa_nR_PCI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_NR_PCI }, + { &hf_nrppa_nR_ARFCN , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_NR_ARFCN }, + { &hf_nrppa_valueSS_RSRP_Cell, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ValueRSRP_NR }, + { &hf_nrppa_valueSS_RSRQ_Cell, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ValueRSRQ_NR }, + { &hf_nrppa_sS_RSRP_PerSSB, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ResultSS_RSRP_PerSSB }, + { &hf_nrppa_sS_RSRQ_PerSSB, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ResultSS_RSRQ_PerSSB }, + { &hf_nrppa_cGI_NR , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_CGI_NR }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ResultNR_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResultNR_Item, ResultNR_Item_sequence); + + return offset; +} + + +static const per_sequence_t ResultNR_sequence_of[1] = { + { &hf_nrppa_ResultNR_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_ResultNR_Item }, +}; + +static int +dissect_nrppa_ResultNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_ResultNR, ResultNR_sequence_of, + 1, maxNRMeas, FALSE); + + return offset; +} + + +static const value_string nrppa_RxTxTimingErrorMargin_vals[] = { + { 0, "tc0dot5" }, + { 1, "tc1" }, + { 2, "tc2" }, + { 3, "tc4" }, + { 4, "tc8" }, + { 5, "tc12" }, + { 6, "tc16" }, + { 7, "tc20" }, + { 8, "tc24" }, + { 9, "tc32" }, + { 10, "tc40" }, + { 11, "tc48" }, + { 12, "tc64" }, + { 13, "tc80" }, + { 14, "tc96" }, + { 15, "tc128" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_RxTxTimingErrorMargin(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 16, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_T_subcarrierSpacing_02_vals[] = { + { 0, "kHz15" }, + { 1, "kHz30" }, + { 2, "kHz60" }, + { 3, "kHz120" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_subcarrierSpacing_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_1_275_(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 275U, NULL, TRUE); + + return offset; +} + + +static const per_sequence_t SCS_SpecificCarrier_sequence[] = { + { &hf_nrppa_offsetToCarrier, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_2199_ }, + { &hf_nrppa_subcarrierSpacing_02, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_subcarrierSpacing_02 }, + { &hf_nrppa_carrierBandwidth, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_1_275_ }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_SCS_SpecificCarrier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_SCS_SpecificCarrier, SCS_SpecificCarrier_sequence); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_M3841_3841_(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -3841, 3841U, NULL, TRUE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_1_246_(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 246U, NULL, TRUE); + + return offset; +} + + +static const per_sequence_t Search_window_information_sequence[] = { + { &hf_nrppa_expectedPropagationDelay, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_M3841_3841_ }, + { &hf_nrppa_delayUncertainty, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_1_246_ }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_Search_window_information(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_Search_window_information, Search_window_information_sequence); + + return offset; +} + + + +static int +dissect_nrppa_SlotNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 79U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t SpatialDirectionInformation_sequence[] = { + { &hf_nrppa_nR_PRS_Beam_Information, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_NR_PRS_Beam_Information }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_SpatialDirectionInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_SpatialDirectionInformation, SpatialDirectionInformation_sequence); + + return offset; +} + + +static const per_sequence_t SpatialRelationPerSRSResourceItem_sequence[] = { + { &hf_nrppa_referenceSignal, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ReferenceSignal }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_SpatialRelationPerSRSResourceItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_SpatialRelationPerSRSResourceItem, SpatialRelationPerSRSResourceItem_sequence); + + return offset; +} + + +static const per_sequence_t SpatialRelationPerSRSResource_List_sequence_of[1] = { + { &hf_nrppa_SpatialRelationPerSRSResource_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_SpatialRelationPerSRSResourceItem }, +}; + +static int +dissect_nrppa_SpatialRelationPerSRSResource_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_SpatialRelationPerSRSResource_List, SpatialRelationPerSRSResource_List_sequence_of, + 1, maxnoSRS_ResourcePerSet, FALSE); + + return offset; +} + + +static const per_sequence_t SpatialRelationPerSRSResource_sequence[] = { + { &hf_nrppa_spatialRelationPerSRSResource_List, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_SpatialRelationPerSRSResource_List }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_SpatialRelationPerSRSResource(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_SpatialRelationPerSRSResource, SpatialRelationPerSRSResource_sequence); + + return offset; +} + + +static const per_sequence_t UplinkChannelBW_PerSCS_List_sequence_of[1] = { + { &hf_nrppa_UplinkChannelBW_PerSCS_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_SCS_SpecificCarrier }, +}; + +static int +dissect_nrppa_UplinkChannelBW_PerSCS_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_UplinkChannelBW_PerSCS_List, UplinkChannelBW_PerSCS_List_sequence_of, + 1, maxnoSCSs, FALSE); + + return offset; +} + + +static const per_sequence_t SRSCarrier_List_Item_sequence[] = { + { &hf_nrppa_pointA , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_3279165 }, + { &hf_nrppa_uplinkChannelBW_PerSCS_List, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_UplinkChannelBW_PerSCS_List }, + { &hf_nrppa_activeULBWP , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ActiveULBWP }, + { &hf_nrppa_pCI_NR , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_INTEGER_0_1007 }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_SRSCarrier_List_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_SRSCarrier_List_Item, SRSCarrier_List_Item_sequence); + + return offset; +} + + +static const per_sequence_t SRSCarrier_List_sequence_of[1] = { + { &hf_nrppa_SRSCarrier_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_SRSCarrier_List_Item }, +}; + +static int +dissect_nrppa_SRSCarrier_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_SRSCarrier_List, SRSCarrier_List_sequence_of, + 1, maxnoSRS_Carriers, FALSE); + + return offset; +} + + +static const per_sequence_t SRSConfiguration_sequence[] = { + { &hf_nrppa_sRSCarrier_List, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_SRSCarrier_List }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_SRSConfiguration(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_SRSConfiguration, SRSConfiguration_sequence); + + return offset; +} + + + +static int +dissect_nrppa_SrsFrequency(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 3279165U, NULL, FALSE); + + return offset; +} + + +static const value_string nrppa_SRSPortIndex_vals[] = { + { 0, "id1000" }, + { 1, "id1001" }, + { 2, "id1002" }, + { 3, "id1003" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_SRSPortIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t SRSResourceTrigger_sequence[] = { + { &hf_nrppa_aperiodicSRSResourceTriggerList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_AperiodicSRSResourceTriggerList }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_SRSResourceTrigger(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_SRSResourceTrigger, SRSResourceTrigger_sequence); + + return offset; +} + + +static const per_sequence_t SRSInfo_sequence[] = { + { &hf_nrppa_sRSResource , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_SRSResourceID }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_SRSInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_SRSInfo, SRSInfo_sequence); + + return offset; +} + + +static const per_sequence_t PosSRSInfo_sequence[] = { + { &hf_nrppa_posSRSResourceID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_SRSPosResourceID }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PosSRSInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PosSRSInfo, PosSRSInfo_sequence); + + return offset; +} + + +static const value_string nrppa_SRSResourceTypeChoice_vals[] = { + { 0, "sRSResourceInfo" }, + { 1, "posSRSResourceInfo" }, + { 0, NULL } +}; + +static const per_choice_t SRSResourceTypeChoice_choice[] = { + { 0, &hf_nrppa_sRSResourceInfo, ASN1_EXTENSION_ROOT , dissect_nrppa_SRSInfo }, + { 1, &hf_nrppa_posSRSResourceInfo, ASN1_EXTENSION_ROOT , dissect_nrppa_PosSRSInfo }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_SRSResourceTypeChoice(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_SRSResourceTypeChoice, SRSResourceTypeChoice_choice, + NULL); + + return offset; +} + + +static const per_sequence_t SRSResourcetype_sequence[] = { + { &hf_nrppa_sRSResourceTypeChoice, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_SRSResourceTypeChoice }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_SRSResourcetype(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_SRSResourcetype, SRSResourcetype_sequence); + + return offset; +} + + +static const value_string nrppa_SRSTransmissionStatus_vals[] = { + { 0, "stopped" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_SRSTransmissionStatus(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_nrppa_SSID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + 1, 32, FALSE, NULL); + + return offset; +} + + + +static int +dissect_nrppa_SystemFrameNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 1023U, NULL, FALSE); + + return offset; +} + + +static const value_string nrppa_T_subframeAssignment_vals[] = { + { 0, "sa0" }, + { 1, "sa1" }, + { 2, "sa2" }, + { 3, "sa3" }, + { 4, "sa4" }, + { 5, "sa5" }, + { 6, "sa6" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_subframeAssignment(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 7, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t TDD_Config_EUTRA_Item_sequence[] = { + { &hf_nrppa_subframeAssignment, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_subframeAssignment }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_TDD_Config_EUTRA_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_TDD_Config_EUTRA_Item, TDD_Config_EUTRA_Item_sequence); + + return offset; +} + + +static const per_sequence_t TRP_RxTx_TEGInformation_sequence[] = { + { &hf_nrppa_tRP_RxTx_TEGID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_255 }, + { &hf_nrppa_tRP_RxTx_TimingErrorMargin, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_RxTxTimingErrorMargin }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_TRP_RxTx_TEGInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRP_RxTx_TEGInformation, TRP_RxTx_TEGInformation_sequence); + + return offset; +} + + +static const value_string nrppa_TimingErrorMargin_vals[] = { + { 0, "tc0" }, + { 1, "tc2" }, + { 2, "tc4" }, + { 3, "tc6" }, + { 4, "tc8" }, + { 5, "tc12" }, + { 6, "tc16" }, + { 7, "tc20" }, + { 8, "tc24" }, + { 9, "tc32" }, + { 10, "tc40" }, + { 11, "tc48" }, + { 12, "tc56" }, + { 13, "tc64" }, + { 14, "tc72" }, + { 15, "tc80" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_TimingErrorMargin(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 16, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t TRP_Tx_TEGInformation_sequence[] = { + { &hf_nrppa_tRP_Tx_TEGID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_7 }, + { &hf_nrppa_tRP_Tx_TimingErrorMargin, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TimingErrorMargin }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_TRP_Tx_TEGInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRP_Tx_TEGInformation, TRP_Tx_TEGInformation_sequence); + + return offset; +} + + +static const per_sequence_t RxTxTEG_sequence[] = { + { &hf_nrppa_tRP_RxTx_TEGInformation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TRP_RxTx_TEGInformation }, + { &hf_nrppa_tRP_Tx_TEGInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_TRP_Tx_TEGInformation }, + { &hf_nrppa_iE_extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_RxTxTEG(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_RxTxTEG, RxTxTEG_sequence); + + return offset; +} + + +static const per_sequence_t TRP_Rx_TEGInformation_sequence[] = { + { &hf_nrppa_tRP_Rx_TEGID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_31 }, + { &hf_nrppa_tRP_Rx_TimingErrorMargin, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TimingErrorMargin }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_TRP_Rx_TEGInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRP_Rx_TEGInformation, TRP_Rx_TEGInformation_sequence); + + return offset; +} + + +static const per_sequence_t RxTEG_sequence[] = { + { &hf_nrppa_tRP_Rx_TEGInformation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TRP_Rx_TEGInformation }, + { &hf_nrppa_tRP_Tx_TEGInformation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TRP_Tx_TEGInformation }, + { &hf_nrppa_iE_extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_RxTEG(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_RxTEG, RxTEG_sequence); + + return offset; +} + + +static const value_string nrppa_TRPTEGInformation_vals[] = { + { 0, "rxTx-TEG" }, + { 1, "rx-TEG" }, + { 2, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t TRPTEGInformation_choice[] = { + { 0, &hf_nrppa_rxTx_TEG , ASN1_NO_EXTENSIONS , dissect_nrppa_RxTxTEG }, + { 1, &hf_nrppa_rx_TEG , ASN1_NO_EXTENSIONS , dissect_nrppa_RxTEG }, + { 2, &hf_nrppa_choice_extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_TRPTEGInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRPTEGInformation, TRPTEGInformation_choice, + NULL); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_19(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 19U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_39(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 39U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_79(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 79U, NULL, FALSE); + + return offset; +} + + +static const value_string nrppa_TimeStampSlotIndex_vals[] = { + { 0, "sCS-15" }, + { 1, "sCS-30" }, + { 2, "sCS-60" }, + { 3, "sCS-120" }, + { 4, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t TimeStampSlotIndex_choice[] = { + { 0, &hf_nrppa_sCS_15 , ASN1_NO_EXTENSIONS , dissect_nrppa_INTEGER_0_9 }, + { 1, &hf_nrppa_sCS_30 , ASN1_NO_EXTENSIONS , dissect_nrppa_INTEGER_0_19 }, + { 2, &hf_nrppa_sCS_60 , ASN1_NO_EXTENSIONS , dissect_nrppa_INTEGER_0_39 }, + { 3, &hf_nrppa_sCS_120 , ASN1_NO_EXTENSIONS , dissect_nrppa_INTEGER_0_79 }, + { 4, &hf_nrppa_choice_extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_TimeStampSlotIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_TimeStampSlotIndex, TimeStampSlotIndex_choice, + NULL); + + return offset; +} + + +static const per_sequence_t TimeStamp_sequence[] = { + { &hf_nrppa_systemFrameNumber, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_SystemFrameNumber }, + { &hf_nrppa_slotIndex , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TimeStampSlotIndex }, + { &hf_nrppa_measurementTime, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_RelativeTime1900 }, + { &hf_nrppa_iE_Extension , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_TimeStamp(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_TimeStamp, TimeStamp_sequence); + + return offset; +} + + + +static int +dissect_nrppa_INTEGER_0_30(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 30U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t TRP_Beam_Power_Item_sequence[] = { + { &hf_nrppa_pRSResourceSetID, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_PRS_Resource_Set_ID }, + { &hf_nrppa_pRSResourceID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PRS_Resource_ID }, + { &hf_nrppa_relativePower , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_30 }, + { &hf_nrppa_relativePowerFine, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_INTEGER_0_9 }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_TRP_Beam_Power_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRP_Beam_Power_Item, TRP_Beam_Power_Item_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_2_maxNumResourcesPerAngle_OF_TRP_Beam_Power_Item_sequence_of[1] = { + { &hf_nrppa_trp_beam_power_list_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_TRP_Beam_Power_Item }, +}; + +static int +dissect_nrppa_SEQUENCE_SIZE_2_maxNumResourcesPerAngle_OF_TRP_Beam_Power_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_SEQUENCE_SIZE_2_maxNumResourcesPerAngle_OF_TRP_Beam_Power_Item, SEQUENCE_SIZE_2_maxNumResourcesPerAngle_OF_TRP_Beam_Power_Item_sequence_of, + 2, maxNumResourcesPerAngle, FALSE); + + return offset; +} + + +static const per_sequence_t TRP_ElevationAngleList_Item_sequence[] = { + { &hf_nrppa_trp_elevation_angle, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_180 }, + { &hf_nrppa_trp_elevation_angle_fine, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_INTEGER_0_9 }, + { &hf_nrppa_trp_beam_power_list, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_SEQUENCE_SIZE_2_maxNumResourcesPerAngle_OF_TRP_Beam_Power_Item }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_TRP_ElevationAngleList_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRP_ElevationAngleList_Item, TRP_ElevationAngleList_Item_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxnoElevationAngles_OF_TRP_ElevationAngleList_Item_sequence_of[1] = { + { &hf_nrppa_trp_elevation_angle_list_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_TRP_ElevationAngleList_Item }, +}; + +static int +dissect_nrppa_SEQUENCE_SIZE_1_maxnoElevationAngles_OF_TRP_ElevationAngleList_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_SEQUENCE_SIZE_1_maxnoElevationAngles_OF_TRP_ElevationAngleList_Item, SEQUENCE_SIZE_1_maxnoElevationAngles_OF_TRP_ElevationAngleList_Item_sequence_of, + 1, maxnoElevationAngles, FALSE); + + return offset; +} + + +static const per_sequence_t TRP_BeamAntennaAnglesList_Item_sequence[] = { + { &hf_nrppa_trp_azimuth_angle, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_359 }, + { &hf_nrppa_trp_azimuth_angle_fine, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_INTEGER_0_9 }, + { &hf_nrppa_trp_elevation_angle_list, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_SEQUENCE_SIZE_1_maxnoElevationAngles_OF_TRP_ElevationAngleList_Item }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_TRP_BeamAntennaAnglesList_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRP_BeamAntennaAnglesList_Item, TRP_BeamAntennaAnglesList_Item_sequence); + + return offset; +} + + +static const per_sequence_t TRP_BeamAntennaAngles_sequence_of[1] = { + { &hf_nrppa_TRP_BeamAntennaAngles_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_TRP_BeamAntennaAnglesList_Item }, +}; + +static int +dissect_nrppa_TRP_BeamAntennaAngles(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRP_BeamAntennaAngles, TRP_BeamAntennaAngles_sequence_of, + 1, maxnoAzimuthAngles, FALSE); + + return offset; +} + + +static const per_sequence_t TRP_BeamAntennaExplicitInformation_sequence[] = { + { &hf_nrppa_trp_BeamAntennaAngles, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TRP_BeamAntennaAngles }, + { &hf_nrppa_lcs_to_gcs_translation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_LCS_to_GCS_Translation }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_TRP_BeamAntennaExplicitInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRP_BeamAntennaExplicitInformation, TRP_BeamAntennaExplicitInformation_sequence); + + return offset; +} + + +static const value_string nrppa_Choice_TRP_Beam_Antenna_Info_Item_vals[] = { + { 0, "reference" }, + { 1, "explicit" }, + { 2, "noChange" }, + { 3, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t Choice_TRP_Beam_Antenna_Info_Item_choice[] = { + { 0, &hf_nrppa_reference , ASN1_NO_EXTENSIONS , dissect_nrppa_TRP_ID }, + { 1, &hf_nrppa_explicit , ASN1_NO_EXTENSIONS , dissect_nrppa_TRP_BeamAntennaExplicitInformation }, + { 2, &hf_nrppa_noChange , ASN1_NO_EXTENSIONS , dissect_nrppa_NULL }, + { 3, &hf_nrppa_choice_extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_Choice_TRP_Beam_Antenna_Info_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_Choice_TRP_Beam_Antenna_Info_Item, Choice_TRP_Beam_Antenna_Info_Item_choice, + NULL); + + return offset; +} + + +static const per_sequence_t TRPBeamAntennaInformation_sequence[] = { + { &hf_nrppa_choice_TRP_Beam_Antenna_Info_Item, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_Choice_TRP_Beam_Antenna_Info_Item }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_TRPBeamAntennaInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRPBeamAntennaInformation, TRPBeamAntennaInformation_sequence); + + return offset; +} + + +static const value_string nrppa_TRPMeasurementQuantities_Item_vals[] = { + { 0, "gNB-RxTxTimeDiff" }, + { 1, "uL-SRS-RSRP" }, + { 2, "uL-AoA" }, + { 3, "uL-RTOA" }, + { 4, "multiple-UL-AoA" }, + { 5, "uL-SRS-RSRPP" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_TRPMeasurementQuantities_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 2, NULL); + + return offset; +} + + +static const per_sequence_t TRPMeasurementQuantitiesList_Item_sequence[] = { + { &hf_nrppa_tRPMeasurementQuantities_Item, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TRPMeasurementQuantities_Item }, + { &hf_nrppa_timingReportingGranularityFactor, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_INTEGER_0_5 }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_TRPMeasurementQuantitiesList_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRPMeasurementQuantitiesList_Item, TRPMeasurementQuantitiesList_Item_sequence); + + return offset; +} + + +static const per_sequence_t TRPMeasurementQuantities_sequence_of[1] = { + { &hf_nrppa_TRPMeasurementQuantities_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_TRPMeasurementQuantitiesList_Item }, +}; + +static int +dissect_nrppa_TRPMeasurementQuantities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRPMeasurementQuantities, TRPMeasurementQuantities_sequence_of, + 1, maxnoPosMeas, FALSE); + + return offset; +} + + + +static int +dissect_nrppa_UL_SRS_RSRP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 126U, NULL, FALSE); + + return offset; +} + + +static const value_string nrppa_ULRTOAMeas_vals[] = { + { 0, "k0" }, + { 1, "k1" }, + { 2, "k2" }, + { 3, "k3" }, + { 4, "k4" }, + { 5, "k5" }, + { 6, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t ULRTOAMeas_choice[] = { + { 0, &hf_nrppa_k0 , ASN1_NO_EXTENSIONS , dissect_nrppa_INTEGER_0_1970049 }, + { 1, &hf_nrppa_k1 , ASN1_NO_EXTENSIONS , dissect_nrppa_INTEGER_0_985025 }, + { 2, &hf_nrppa_k2 , ASN1_NO_EXTENSIONS , dissect_nrppa_INTEGER_0_492513 }, + { 3, &hf_nrppa_k3 , ASN1_NO_EXTENSIONS , dissect_nrppa_INTEGER_0_246257 }, + { 4, &hf_nrppa_k4 , ASN1_NO_EXTENSIONS , dissect_nrppa_INTEGER_0_123129 }, + { 5, &hf_nrppa_k5 , ASN1_NO_EXTENSIONS , dissect_nrppa_INTEGER_0_61565 }, + { 6, &hf_nrppa_choice_extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_ULRTOAMeas(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_ULRTOAMeas, ULRTOAMeas_choice, + NULL); + + return offset; +} + + +static const per_sequence_t UL_RTOAMeasurement_sequence[] = { + { &hf_nrppa_uLRTOAmeas , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ULRTOAMeas }, + { &hf_nrppa_additionalPathList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_AdditionalPathList }, + { &hf_nrppa_iE_extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_UL_RTOAMeasurement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_UL_RTOAMeasurement, UL_RTOAMeasurement_sequence); + + return offset; +} + + +static const value_string nrppa_TrpMeasuredResultsValue_vals[] = { + { 0, "uL-AngleOfArrival" }, + { 1, "uL-SRS-RSRP" }, + { 2, "uL-RTOA" }, + { 3, "gNB-RxTxTimeDiff" }, + { 4, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t TrpMeasuredResultsValue_choice[] = { + { 0, &hf_nrppa_uL_AngleOfArrival, ASN1_NO_EXTENSIONS , dissect_nrppa_UL_AoA }, + { 1, &hf_nrppa_uL_SRS_RSRP , ASN1_NO_EXTENSIONS , dissect_nrppa_UL_SRS_RSRP }, + { 2, &hf_nrppa_uL_RTOA , ASN1_NO_EXTENSIONS , dissect_nrppa_UL_RTOAMeasurement }, + { 3, &hf_nrppa_gNB_RxTxTimeDiff, ASN1_NO_EXTENSIONS , dissect_nrppa_GNB_RxTxTimeDiff }, + { 4, &hf_nrppa_choice_extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_TrpMeasuredResultsValue(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_TrpMeasuredResultsValue, TrpMeasuredResultsValue_choice, + NULL); + + return offset; +} + + +static const per_sequence_t TrpMeasurementResultItem_sequence[] = { + { &hf_nrppa_measuredResultsValue, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TrpMeasuredResultsValue }, + { &hf_nrppa_timeStamp , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TimeStamp }, + { &hf_nrppa_measurementQuality, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_TrpMeasurementQuality }, + { &hf_nrppa_measurementBeamInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_MeasurementBeamInfo }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_TrpMeasurementResultItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_TrpMeasurementResultItem, TrpMeasurementResultItem_sequence); + + return offset; +} + + +static const per_sequence_t TrpMeasurementResult_sequence_of[1] = { + { &hf_nrppa_TrpMeasurementResult_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_TrpMeasurementResultItem }, +}; + +static int +dissect_nrppa_TrpMeasurementResult(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_TrpMeasurementResult, TrpMeasurementResult_sequence_of, + 1, maxnoPosMeas, FALSE); + + return offset; +} + + +static const per_sequence_t TRP_MeasurementRequestItem_sequence[] = { + { &hf_nrppa_tRP_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TRP_ID }, + { &hf_nrppa_search_window_information, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_Search_window_information }, + { &hf_nrppa_iE_extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_TRP_MeasurementRequestItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRP_MeasurementRequestItem, TRP_MeasurementRequestItem_sequence); + + return offset; +} + + +static const per_sequence_t TRP_MeasurementRequestList_sequence_of[1] = { + { &hf_nrppa_TRP_MeasurementRequestList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_TRP_MeasurementRequestItem }, +}; + +static int +dissect_nrppa_TRP_MeasurementRequestList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRP_MeasurementRequestList, TRP_MeasurementRequestList_sequence_of, + 1, maxNoOfMeasTRPs, FALSE); + + return offset; +} + + +static const per_sequence_t TRP_MeasurementResponseItem_sequence[] = { + { &hf_nrppa_tRP_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TRP_ID }, + { &hf_nrppa_measurementResult, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TrpMeasurementResult }, + { &hf_nrppa_iE_extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_TRP_MeasurementResponseItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRP_MeasurementResponseItem, TRP_MeasurementResponseItem_sequence); + + return offset; +} + + +static const per_sequence_t TRP_MeasurementResponseList_sequence_of[1] = { + { &hf_nrppa_TRP_MeasurementResponseList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_TRP_MeasurementResponseItem }, +}; + +static int +dissect_nrppa_TRP_MeasurementResponseList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRP_MeasurementResponseList, TRP_MeasurementResponseList_sequence_of, + 1, maxNoOfMeasTRPs, FALSE); + + return offset; +} + + +static const per_sequence_t TRP_MeasurementUpdateItem_sequence[] = { + { &hf_nrppa_tRP_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TRP_ID }, + { &hf_nrppa_aoA_window_information, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_AoA_AssistanceInfo }, + { &hf_nrppa_iE_extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_TRP_MeasurementUpdateItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRP_MeasurementUpdateItem, TRP_MeasurementUpdateItem_sequence); + + return offset; +} + + +static const per_sequence_t TRP_MeasurementUpdateList_sequence_of[1] = { + { &hf_nrppa_TRP_MeasurementUpdateList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_TRP_MeasurementUpdateItem }, +}; + +static int +dissect_nrppa_TRP_MeasurementUpdateList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRP_MeasurementUpdateList, TRP_MeasurementUpdateList_sequence_of, + 1, maxNoOfMeasTRPs, FALSE); + + return offset; +} + + +static const value_string nrppa_TRPInformationTypeResponseItem_vals[] = { + { 0, "pCI-NR" }, + { 1, "cGI-NR" }, + { 2, "aRFCN" }, + { 3, "pRSConfiguration" }, + { 4, "sSBinformation" }, + { 5, "sFNInitialisationTime" }, + { 6, "spatialDirectionInformation" }, + { 7, "geographicalCoordinates" }, + { 8, "choice-extension" }, + { 0, NULL } +}; + +static const per_choice_t TRPInformationTypeResponseItem_choice[] = { + { 0, &hf_nrppa_pCI_NR , ASN1_NO_EXTENSIONS , dissect_nrppa_INTEGER_0_1007 }, + { 1, &hf_nrppa_cGI_NR , ASN1_NO_EXTENSIONS , dissect_nrppa_CGI_NR }, + { 2, &hf_nrppa_aRFCN , ASN1_NO_EXTENSIONS , dissect_nrppa_INTEGER_0_3279165 }, + { 3, &hf_nrppa_pRSConfiguration, ASN1_NO_EXTENSIONS , dissect_nrppa_PRSConfiguration }, + { 4, &hf_nrppa_sSBinformation, ASN1_NO_EXTENSIONS , dissect_nrppa_SSBInfo }, + { 5, &hf_nrppa_sFNInitialisationTime, ASN1_NO_EXTENSIONS , dissect_nrppa_RelativeTime1900 }, + { 6, &hf_nrppa_spatialDirectionInformation, ASN1_NO_EXTENSIONS , dissect_nrppa_SpatialDirectionInformation }, + { 7, &hf_nrppa_geographicalCoordinates, ASN1_NO_EXTENSIONS , dissect_nrppa_GeographicalCoordinates }, + { 8, &hf_nrppa_choice_extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_TRPInformationTypeResponseItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRPInformationTypeResponseItem, TRPInformationTypeResponseItem_choice, + NULL); + + return offset; +} + + +static const per_sequence_t TRPInformationTypeResponseList_sequence_of[1] = { + { &hf_nrppa_TRPInformationTypeResponseList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_TRPInformationTypeResponseItem }, +}; + +static int +dissect_nrppa_TRPInformationTypeResponseList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRPInformationTypeResponseList, TRPInformationTypeResponseList_sequence_of, + 1, maxnoTRPInfoTypes, FALSE); + + return offset; +} + + +static const per_sequence_t TRPInformation_sequence[] = { + { &hf_nrppa_tRP_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TRP_ID }, + { &hf_nrppa_tRPInformationTypeResponseList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TRPInformationTypeResponseList }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_TRPInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRPInformation, TRPInformation_sequence); + + return offset; +} + + +static const per_sequence_t TRPInformationListTRPResp_item_sequence[] = { + { &hf_nrppa_tRPInformation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TRPInformation }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_TRPInformationListTRPResp_item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRPInformationListTRPResp_item, TRPInformationListTRPResp_item_sequence); + + return offset; +} + + +static const per_sequence_t TRPInformationListTRPResp_sequence_of[1] = { + { &hf_nrppa_TRPInformationListTRPResp_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_TRPInformationListTRPResp_item }, +}; + +static int +dissect_nrppa_TRPInformationListTRPResp(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRPInformationListTRPResp, TRPInformationListTRPResp_sequence_of, + 1, maxnoTRPs, FALSE); + + return offset; +} + + +static const per_sequence_t TRPInformationTypeListTRPReq_sequence_of[1] = { + { &hf_nrppa_TRPInformationTypeListTRPReq_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Single_Container }, +}; + +static int +dissect_nrppa_TRPInformationTypeListTRPReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRPInformationTypeListTRPReq, TRPInformationTypeListTRPReq_sequence_of, + 1, maxnoTRPInfoTypes, FALSE); + + return offset; +} + + +static const value_string nrppa_TRPInformationTypeItem_vals[] = { + { 0, "nrPCI" }, + { 1, "nG-RAN-CGI" }, + { 2, "arfcn" }, + { 3, "pRSConfig" }, + { 4, "sSBInfo" }, + { 5, "sFNInitTime" }, + { 6, "spatialDirectInfo" }, + { 7, "geoCoord" }, + { 8, "trp-type" }, + { 9, "ondemandPRSInfo" }, + { 10, "trpTxTeg" }, + { 11, "beam-antenna-info" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_TRPInformationTypeItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 8, NULL, TRUE, 4, NULL); + + return offset; +} + + +static const per_sequence_t TRPItem_sequence[] = { + { &hf_nrppa_tRP_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TRP_ID }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_TRPItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRPItem, TRPItem_sequence); + + return offset; +} + + +static const per_sequence_t TRPList_sequence_of[1] = { + { &hf_nrppa_TRPList_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_TRPItem }, +}; + +static int +dissect_nrppa_TRPList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRPList, TRPList_sequence_of, + 1, maxnoTRPs, FALSE); + + return offset; +} + + +static const per_sequence_t TRP_PRS_Information_List_Item_sequence[] = { + { &hf_nrppa_tRP_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TRP_ID }, + { &hf_nrppa_nR_PCI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_NR_PCI }, + { &hf_nrppa_cGI_NR , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_CGI_NR }, + { &hf_nrppa_pRSConfiguration, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PRSConfiguration }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_TRP_PRS_Information_List_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRP_PRS_Information_List_Item, TRP_PRS_Information_List_Item_sequence); + + return offset; +} + + +static const per_sequence_t TRP_PRS_Information_List_sequence_of[1] = { + { &hf_nrppa_TRP_PRS_Information_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_TRP_PRS_Information_List_Item }, +}; + +static int +dissect_nrppa_TRP_PRS_Information_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRP_PRS_Information_List, TRP_PRS_Information_List_sequence_of, + 1, maxnoPRSTRPs, FALSE); + + return offset; +} + + +static const per_sequence_t DLPRSResourceID_Item_sequence[] = { + { &hf_nrppa_dl_PRSResourceID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PRS_Resource_ID }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_DLPRSResourceID_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_DLPRSResourceID_Item, DLPRSResourceID_Item_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxPRS_ResourcesPerSet_OF_DLPRSResourceID_Item_sequence_of[1] = { + { &hf_nrppa_dl_PRSResourceID_List_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_DLPRSResourceID_Item }, +}; + +static int +dissect_nrppa_SEQUENCE_SIZE_1_maxPRS_ResourcesPerSet_OF_DLPRSResourceID_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_SEQUENCE_SIZE_1_maxPRS_ResourcesPerSet_OF_DLPRSResourceID_Item, SEQUENCE_SIZE_1_maxPRS_ResourcesPerSet_OF_DLPRSResourceID_Item_sequence_of, + 1, maxPRS_ResourcesPerSet, FALSE); + + return offset; +} + + +static const per_sequence_t TRPTEGItem_sequence[] = { + { &hf_nrppa_tRP_Tx_TEGInformation, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TRP_Tx_TEGInformation }, + { &hf_nrppa_dl_PRSResourceSetID, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PRS_Resource_Set_ID }, + { &hf_nrppa_dl_PRSResourceID_List, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_SEQUENCE_SIZE_1_maxPRS_ResourcesPerSet_OF_DLPRSResourceID_Item }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_TRPTEGItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRPTEGItem, TRPTEGItem_sequence); + + return offset; +} + + +static const per_sequence_t TRPTxTEGAssociation_sequence_of[1] = { + { &hf_nrppa_TRPTxTEGAssociation_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_TRPTEGItem }, +}; + +static int +dissect_nrppa_TRPTxTEGAssociation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRPTxTEGAssociation, TRPTxTEGAssociation_sequence_of, + 1, maxnoTRPTEGs, FALSE); + + return offset; +} + + +static const value_string nrppa_TRPType_vals[] = { + { 0, "prsOnlyTP" }, + { 1, "srsOnlyRP" }, + { 2, "tp" }, + { 3, "rp" }, + { 4, "trp" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_TRPType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 5, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_nrppa_UE_Measurement_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 15U, NULL, TRUE); + + return offset; +} + + +static const value_string nrppa_T_reportingAmount_vals[] = { + { 0, "ma0" }, + { 1, "ma1" }, + { 2, "ma2" }, + { 3, "ma4" }, + { 4, "ma8" }, + { 5, "ma16" }, + { 6, "ma32" }, + { 7, "ma64" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_reportingAmount(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 8, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string nrppa_T_reportingInterval_vals[] = { + { 0, "none" }, + { 1, "one" }, + { 2, "two" }, + { 3, "four" }, + { 4, "eight" }, + { 5, "ten" }, + { 6, "sixteen" }, + { 7, "twenty" }, + { 8, "thirty-two" }, + { 9, "sixty-four" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_reportingInterval(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 10, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t UEReportingInformation_sequence[] = { + { &hf_nrppa_reportingAmount, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_reportingAmount }, + { &hf_nrppa_reportingInterval, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_reportingInterval }, + { &hf_nrppa_iE_extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_UEReportingInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_UEReportingInformation, UEReportingInformation_sequence); + + return offset; +} + + +static const value_string nrppa_UE_TEG_ReportingPeriodicity_vals[] = { + { 0, "ms160" }, + { 1, "ms320" }, + { 2, "ms1280" }, + { 3, "ms2560" }, + { 4, "ms61440" }, + { 5, "ms81920" }, + { 6, "ms368640" }, + { 7, "ms737280" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_UE_TEG_ReportingPeriodicity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 8, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t UETxTEGAssociationItem_sequence[] = { + { &hf_nrppa_uE_Tx_TEG_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_INTEGER_0_7 }, + { &hf_nrppa_posSRSResourceID_List, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PosSRSResourceID_List }, + { &hf_nrppa_timeStamp , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_TimeStamp }, + { &hf_nrppa_carrierFreq , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_CarrierFreq }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_UETxTEGAssociationItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_UETxTEGAssociationItem, UETxTEGAssociationItem_sequence); + + return offset; +} + + +static const per_sequence_t UETxTEGAssociationList_sequence_of[1] = { + { &hf_nrppa_UETxTEGAssociationList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_UETxTEGAssociationItem }, +}; + +static int +dissect_nrppa_UETxTEGAssociationList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_UETxTEGAssociationList, UETxTEGAssociationList_sequence_of, + 1, maxnoUETEGs, FALSE); + + return offset; +} + + +static const value_string nrppa_UE_TEG_Info_Request_vals[] = { + { 0, "onDemand" }, + { 1, "periodic" }, + { 2, "stop" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_UE_TEG_Info_Request(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t WLANMeasurementQuantities_sequence_of[1] = { + { &hf_nrppa_WLANMeasurementQuantities_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Single_Container }, +}; + +static int +dissect_nrppa_WLANMeasurementQuantities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_WLANMeasurementQuantities, WLANMeasurementQuantities_sequence_of, + 0, maxNoMeas, FALSE); + + return offset; +} + + +static const value_string nrppa_WLANMeasurementQuantitiesValue_vals[] = { + { 0, "wlan" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_WLANMeasurementQuantitiesValue(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t WLANMeasurementQuantities_Item_sequence[] = { + { &hf_nrppa_wLANMeasurementQuantitiesValue, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_WLANMeasurementQuantitiesValue }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_WLANMeasurementQuantities_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_WLANMeasurementQuantities_Item, WLANMeasurementQuantities_Item_sequence); + + return offset; +} + + + +static int +dissect_nrppa_WLAN_RSSI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 141U, NULL, TRUE); + + return offset; +} + + + +static int +dissect_nrppa_WLANOperatingClass(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 255U, NULL, FALSE); + + return offset; +} + + +static const value_string nrppa_WLANCountryCode_vals[] = { + { 0, "unitedStates" }, + { 1, "europe" }, + { 2, "japan" }, + { 3, "global" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_WLANCountryCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_nrppa_WLANChannel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 255U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t WLANChannelList_sequence_of[1] = { + { &hf_nrppa_WLANChannelList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_WLANChannel }, +}; + +static int +dissect_nrppa_WLANChannelList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_WLANChannelList, WLANChannelList_sequence_of, + 1, maxWLANchannels, FALSE); + + return offset; +} + + +static const value_string nrppa_WLANBand_vals[] = { + { 0, "band2dot4" }, + { 1, "band5" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_WLANBand(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t WLANMeasurementResult_Item_sequence[] = { + { &hf_nrppa_wLAN_RSSI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_WLAN_RSSI }, + { &hf_nrppa_sSID , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_SSID }, + { &hf_nrppa_bSSID , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_BSSID }, + { &hf_nrppa_hESSID , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_HESSID }, + { &hf_nrppa_operatingClass, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_WLANOperatingClass }, + { &hf_nrppa_countryCode , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_WLANCountryCode }, + { &hf_nrppa_wLANChannelList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_WLANChannelList }, + { &hf_nrppa_wLANBand , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_WLANBand }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_WLANMeasurementResult_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_WLANMeasurementResult_Item, WLANMeasurementResult_Item_sequence); + + return offset; +} + + +static const per_sequence_t WLANMeasurementResult_sequence_of[1] = { + { &hf_nrppa_WLANMeasurementResult_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_WLANMeasurementResult_Item }, +}; + +static int +dissect_nrppa_WLANMeasurementResult(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_WLANMeasurementResult, WLANMeasurementResult_sequence_of, + 1, maxNoMeas, FALSE); + + return offset; +} + + +static const per_sequence_t E_CIDMeasurementInitiationRequest_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_E_CIDMeasurementInitiationRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_E_CIDMeasurementInitiationRequest, E_CIDMeasurementInitiationRequest_sequence); + + return offset; +} + + +static const per_sequence_t E_CIDMeasurementInitiationResponse_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_E_CIDMeasurementInitiationResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_E_CIDMeasurementInitiationResponse, E_CIDMeasurementInitiationResponse_sequence); + + return offset; +} + + +static const per_sequence_t E_CIDMeasurementInitiationFailure_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_E_CIDMeasurementInitiationFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_E_CIDMeasurementInitiationFailure, E_CIDMeasurementInitiationFailure_sequence); + + return offset; +} + + +static const per_sequence_t E_CIDMeasurementFailureIndication_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_E_CIDMeasurementFailureIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_E_CIDMeasurementFailureIndication, E_CIDMeasurementFailureIndication_sequence); + + return offset; +} + + +static const per_sequence_t E_CIDMeasurementReport_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_E_CIDMeasurementReport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_E_CIDMeasurementReport, E_CIDMeasurementReport_sequence); + + return offset; +} + + +static const per_sequence_t E_CIDMeasurementTerminationCommand_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_E_CIDMeasurementTerminationCommand(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_E_CIDMeasurementTerminationCommand, E_CIDMeasurementTerminationCommand_sequence); + + return offset; +} + + +static const per_sequence_t OTDOAInformationRequest_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_OTDOAInformationRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_OTDOAInformationRequest, OTDOAInformationRequest_sequence); + + return offset; +} + + +static const per_sequence_t OTDOA_Information_Type_sequence_of[1] = { + { &hf_nrppa_OTDOA_Information_Type_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Single_Container }, +}; + +static int +dissect_nrppa_OTDOA_Information_Type(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_nrppa_OTDOA_Information_Type, OTDOA_Information_Type_sequence_of, + 1, maxnoOTDOAtypes, FALSE); + + return offset; +} + + +static const per_sequence_t OTDOA_Information_Type_Item_sequence[] = { + { &hf_nrppa_oTDOA_Information_Item, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_OTDOA_Information_Item }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_OTDOA_Information_Type_Item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_OTDOA_Information_Type_Item, OTDOA_Information_Type_Item_sequence); + + return offset; +} + + +static const per_sequence_t OTDOAInformationResponse_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_OTDOAInformationResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_OTDOAInformationResponse, OTDOAInformationResponse_sequence); + + return offset; +} + + +static const per_sequence_t OTDOAInformationFailure_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_OTDOAInformationFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_OTDOAInformationFailure, OTDOAInformationFailure_sequence); + + return offset; +} + + +static const per_sequence_t AssistanceInformationControl_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_AssistanceInformationControl(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_AssistanceInformationControl, AssistanceInformationControl_sequence); + + return offset; +} + + +static const per_sequence_t AssistanceInformationFeedback_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_AssistanceInformationFeedback(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_AssistanceInformationFeedback, AssistanceInformationFeedback_sequence); + + return offset; +} + + +static const per_sequence_t ErrorIndication_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_ErrorIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_ErrorIndication, ErrorIndication_sequence); + + return offset; +} + + +static const per_sequence_t PrivateMessage_sequence[] = { + { &hf_nrppa_privateIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_PrivateIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PrivateMessage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PrivateMessage, PrivateMessage_sequence); + + return offset; +} + + +static const per_sequence_t PositioningInformationRequest_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PositioningInformationRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PositioningInformationRequest, PositioningInformationRequest_sequence); + + return offset; +} + + +static const per_sequence_t PositioningInformationResponse_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PositioningInformationResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PositioningInformationResponse, PositioningInformationResponse_sequence); + + return offset; +} + + +static const per_sequence_t PositioningInformationFailure_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PositioningInformationFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PositioningInformationFailure, PositioningInformationFailure_sequence); + + return offset; +} + + +static const per_sequence_t PositioningInformationUpdate_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PositioningInformationUpdate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PositioningInformationUpdate, PositioningInformationUpdate_sequence); + + return offset; +} + + +static const per_sequence_t MeasurementRequest_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_MeasurementRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_MeasurementRequest, MeasurementRequest_sequence); + + return offset; +} + + +static const per_sequence_t MeasurementResponse_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_MeasurementResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_MeasurementResponse, MeasurementResponse_sequence); + + return offset; +} + + +static const per_sequence_t MeasurementFailure_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_MeasurementFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_MeasurementFailure, MeasurementFailure_sequence); + + return offset; +} + + +static const per_sequence_t MeasurementReport_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_MeasurementReport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_MeasurementReport, MeasurementReport_sequence); + + return offset; +} + + +static const per_sequence_t MeasurementUpdate_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_MeasurementUpdate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_MeasurementUpdate, MeasurementUpdate_sequence); + + return offset; +} + + +static const per_sequence_t MeasurementAbort_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_MeasurementAbort(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_MeasurementAbort, MeasurementAbort_sequence); + + return offset; +} + + +static const per_sequence_t MeasurementFailureIndication_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_MeasurementFailureIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_MeasurementFailureIndication, MeasurementFailureIndication_sequence); + + return offset; +} + + +static const per_sequence_t TRPInformationRequest_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_TRPInformationRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRPInformationRequest, TRPInformationRequest_sequence); + + return offset; +} + + +static const per_sequence_t TRPInformationResponse_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_TRPInformationResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRPInformationResponse, TRPInformationResponse_sequence); + + return offset; +} + + +static const per_sequence_t TRPInformationFailure_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_TRPInformationFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_TRPInformationFailure, TRPInformationFailure_sequence); + + return offset; +} + + +static const per_sequence_t PositioningActivationRequest_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PositioningActivationRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PositioningActivationRequest, PositioningActivationRequest_sequence); + + return offset; +} + + +static const per_sequence_t SemipersistentSRS_sequence[] = { + { &hf_nrppa_sRSResourceSetID_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_SRSResourceSetID }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_SemipersistentSRS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_SemipersistentSRS, SemipersistentSRS_sequence); + + return offset; +} + + +static const value_string nrppa_T_aperiodic_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_nrppa_T_aperiodic(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t AperiodicSRS_sequence[] = { + { &hf_nrppa_aperiodic_04 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_T_aperiodic }, + { &hf_nrppa_sRSResourceTrigger_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_SRSResourceTrigger }, + { &hf_nrppa_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_nrppa_ProtocolExtensionContainer }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_AperiodicSRS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_AperiodicSRS, AperiodicSRS_sequence); + + return offset; +} + + +static const value_string nrppa_SRSType_vals[] = { + { 0, "semipersistentSRS" }, + { 1, "aperiodicSRS" }, + { 2, "choice-Extension" }, + { 0, NULL } +}; + +static const per_choice_t SRSType_choice[] = { + { 0, &hf_nrppa_semipersistentSRS, ASN1_NO_EXTENSIONS , dissect_nrppa_SemipersistentSRS }, + { 1, &hf_nrppa_aperiodicSRS , ASN1_NO_EXTENSIONS , dissect_nrppa_AperiodicSRS }, + { 2, &hf_nrppa_choice_Extension, ASN1_NO_EXTENSIONS , dissect_nrppa_ProtocolIE_Single_Container }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_nrppa_SRSType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_nrppa_SRSType, SRSType_choice, + NULL); + + return offset; +} + + +static const per_sequence_t PositioningActivationResponse_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PositioningActivationResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PositioningActivationResponse, PositioningActivationResponse_sequence); + + return offset; +} + + +static const per_sequence_t PositioningActivationFailure_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PositioningActivationFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PositioningActivationFailure, PositioningActivationFailure_sequence); + + return offset; +} + + +static const per_sequence_t PositioningDeactivation_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PositioningDeactivation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PositioningDeactivation, PositioningDeactivation_sequence); + + return offset; +} + + +static const per_sequence_t PRSConfigurationRequest_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PRSConfigurationRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRSConfigurationRequest, PRSConfigurationRequest_sequence); + + return offset; +} + + +static const per_sequence_t PRSConfigurationResponse_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PRSConfigurationResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRSConfigurationResponse, PRSConfigurationResponse_sequence); + + return offset; +} + + +static const per_sequence_t PRSConfigurationFailure_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_PRSConfigurationFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_PRSConfigurationFailure, PRSConfigurationFailure_sequence); + + return offset; +} + + +static const per_sequence_t MeasurementPreconfigurationRequired_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_MeasurementPreconfigurationRequired(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_MeasurementPreconfigurationRequired, MeasurementPreconfigurationRequired_sequence); + + return offset; +} + + +static const per_sequence_t MeasurementPreconfigurationConfirm_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_MeasurementPreconfigurationConfirm(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_MeasurementPreconfigurationConfirm, MeasurementPreconfigurationConfirm_sequence); + + return offset; +} + + +static const per_sequence_t MeasurementPreconfigurationRefuse_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_MeasurementPreconfigurationRefuse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_MeasurementPreconfigurationRefuse, MeasurementPreconfigurationRefuse_sequence); + + return offset; +} + + +static const per_sequence_t MeasurementActivation_sequence[] = { + { &hf_nrppa_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_nrppa_ProtocolIE_Container }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_nrppa_MeasurementActivation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_nrppa_MeasurementActivation, MeasurementActivation_sequence); + + return offset; +} + +/*--- PDUs ---*/ + +static int dissect_NRPPA_PDU_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_NRPPA_PDU(tvb, offset, &asn1_ctx, tree, hf_nrppa_NRPPA_PDU_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_AbortTransmission_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_AbortTransmission(tvb, offset, &asn1_ctx, tree, hf_nrppa_AbortTransmission_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_ExtendedAdditionalPathList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_ExtendedAdditionalPathList(tvb, offset, &asn1_ctx, tree, hf_nrppa_ExtendedAdditionalPathList_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_AoA_AssistanceInfo_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_AoA_AssistanceInfo(tvb, offset, &asn1_ctx, tree, hf_nrppa_AoA_AssistanceInfo_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_ARP_ID_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_ARP_ID(tvb, offset, &asn1_ctx, tree, hf_nrppa_ARP_ID_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_ARPLocationInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_ARPLocationInformation(tvb, offset, &asn1_ctx, tree, hf_nrppa_ARPLocationInformation_PDU); + offset += 7; offset >>= 3; + return offset; +} +int dissect_nrppa_Assistance_Information_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_Assistance_Information(tvb, offset, &asn1_ctx, tree, hf_nrppa_nrppa_Assistance_Information_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_AssistanceInformationFailureList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_AssistanceInformationFailureList(tvb, offset, &asn1_ctx, tree, hf_nrppa_AssistanceInformationFailureList_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_Broadcast_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_Broadcast(tvb, offset, &asn1_ctx, tree, hf_nrppa_Broadcast_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PositioningBroadcastCells_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_PositioningBroadcastCells(tvb, offset, &asn1_ctx, tree, hf_nrppa_PositioningBroadcastCells_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_Cause_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_Cause(tvb, offset, &asn1_ctx, tree, hf_nrppa_Cause_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_Cell_Portion_ID_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_Cell_Portion_ID(tvb, offset, &asn1_ctx, tree, hf_nrppa_Cell_Portion_ID_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_CGI_NR_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_CGI_NR(tvb, offset, &asn1_ctx, tree, hf_nrppa_CGI_NR_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_CriticalityDiagnostics_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_CriticalityDiagnostics(tvb, offset, &asn1_ctx, tree, hf_nrppa_CriticalityDiagnostics_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_E_CID_MeasurementResult_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_E_CID_MeasurementResult(tvb, offset, &asn1_ctx, tree, hf_nrppa_E_CID_MeasurementResult_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_GeographicalCoordinates_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_GeographicalCoordinates(tvb, offset, &asn1_ctx, tree, hf_nrppa_GeographicalCoordinates_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_LoS_NLoSInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_LoS_NLoSInformation(tvb, offset, &asn1_ctx, tree, hf_nrppa_LoS_NLoSInformation_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_Measurement_ID_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_Measurement_ID(tvb, offset, &asn1_ctx, tree, hf_nrppa_Measurement_ID_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_MeasurementAmount_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_MeasurementAmount(tvb, offset, &asn1_ctx, tree, hf_nrppa_MeasurementAmount_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_MeasurementBeamInfoRequest_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_MeasurementBeamInfoRequest(tvb, offset, &asn1_ctx, tree, hf_nrppa_MeasurementBeamInfoRequest_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_MeasurementPeriodicity_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_MeasurementPeriodicity(tvb, offset, &asn1_ctx, tree, hf_nrppa_MeasurementPeriodicity_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_MeasurementPeriodicityExtended_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_MeasurementPeriodicityExtended(tvb, offset, &asn1_ctx, tree, hf_nrppa_MeasurementPeriodicityExtended_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_MeasurementPeriodicityNR_AoA_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_MeasurementPeriodicityNR_AoA(tvb, offset, &asn1_ctx, tree, hf_nrppa_MeasurementPeriodicityNR_AoA_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_MeasurementQuantities_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_MeasurementQuantities(tvb, offset, &asn1_ctx, tree, hf_nrppa_MeasurementQuantities_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_MeasurementQuantities_Item_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_MeasurementQuantities_Item(tvb, offset, &asn1_ctx, tree, hf_nrppa_MeasurementQuantities_Item_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_MeasurementTimeOccasion_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_MeasurementTimeOccasion(tvb, offset, &asn1_ctx, tree, hf_nrppa_MeasurementTimeOccasion_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_MeasurementCharacteristicsRequestIndicator_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_MeasurementCharacteristicsRequestIndicator(tvb, offset, &asn1_ctx, tree, hf_nrppa_MeasurementCharacteristicsRequestIndicator_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_MultipleULAoA_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_MultipleULAoA(tvb, offset, &asn1_ctx, tree, hf_nrppa_MultipleULAoA_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_NR_TADV_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_NR_TADV(tvb, offset, &asn1_ctx, tree, hf_nrppa_NR_TADV_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_NumberOfTRPRxTEG_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_NumberOfTRPRxTEG(tvb, offset, &asn1_ctx, tree, hf_nrppa_NumberOfTRPRxTEG_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_NumberOfTRPRxTxTEG_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_NumberOfTRPRxTxTEG(tvb, offset, &asn1_ctx, tree, hf_nrppa_NumberOfTRPRxTxTEG_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_OnDemandPRS_Info_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_OnDemandPRS_Info(tvb, offset, &asn1_ctx, tree, hf_nrppa_OnDemandPRS_Info_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_OTDOACells_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_OTDOACells(tvb, offset, &asn1_ctx, tree, hf_nrppa_OTDOACells_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_OtherRATMeasurementQuantities_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_OtherRATMeasurementQuantities(tvb, offset, &asn1_ctx, tree, hf_nrppa_OtherRATMeasurementQuantities_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_OtherRATMeasurementQuantities_Item_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_OtherRATMeasurementQuantities_Item(tvb, offset, &asn1_ctx, tree, hf_nrppa_OtherRATMeasurementQuantities_Item_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_OtherRATMeasurementResult_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_OtherRATMeasurementResult(tvb, offset, &asn1_ctx, tree, hf_nrppa_OtherRATMeasurementResult_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PreconfigurationResult_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_PreconfigurationResult(tvb, offset, &asn1_ctx, tree, hf_nrppa_PreconfigurationResult_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PRSConfigRequestType_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_PRSConfigRequestType(tvb, offset, &asn1_ctx, tree, hf_nrppa_PRSConfigRequestType_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PRS_Measurements_Info_List_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_PRS_Measurements_Info_List(tvb, offset, &asn1_ctx, tree, hf_nrppa_PRS_Measurements_Info_List_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PRS_Resource_ID_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_PRS_Resource_ID(tvb, offset, &asn1_ctx, tree, hf_nrppa_PRS_Resource_ID_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PRSTRPList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_PRSTRPList(tvb, offset, &asn1_ctx, tree, hf_nrppa_PRSTRPList_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PRSTransmissionTRPList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_PRSTransmissionTRPList(tvb, offset, &asn1_ctx, tree, hf_nrppa_PRSTransmissionTRPList_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_ReportCharacteristics_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_ReportCharacteristics(tvb, offset, &asn1_ctx, tree, hf_nrppa_ReportCharacteristics_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_RequestedSRSTransmissionCharacteristics_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_RequestedSRSTransmissionCharacteristics(tvb, offset, &asn1_ctx, tree, hf_nrppa_RequestedSRSTransmissionCharacteristics_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_RequestType_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_RequestType(tvb, offset, &asn1_ctx, tree, hf_nrppa_RequestType_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_ResponseTime_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_ResponseTime(tvb, offset, &asn1_ctx, tree, hf_nrppa_ResponseTime_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_ResultCSI_RSRP_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_ResultCSI_RSRP(tvb, offset, &asn1_ctx, tree, hf_nrppa_ResultCSI_RSRP_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_ResultCSI_RSRQ_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_ResultCSI_RSRQ(tvb, offset, &asn1_ctx, tree, hf_nrppa_ResultCSI_RSRQ_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_ResultEUTRA_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_ResultEUTRA(tvb, offset, &asn1_ctx, tree, hf_nrppa_ResultEUTRA_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_ResultSS_RSRP_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_ResultSS_RSRP(tvb, offset, &asn1_ctx, tree, hf_nrppa_ResultSS_RSRP_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_ResultSS_RSRQ_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_ResultSS_RSRQ(tvb, offset, &asn1_ctx, tree, hf_nrppa_ResultSS_RSRQ_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_ResultNR_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_ResultNR(tvb, offset, &asn1_ctx, tree, hf_nrppa_ResultNR_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_RelativeTime1900_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_RelativeTime1900(tvb, offset, &asn1_ctx, tree, hf_nrppa_RelativeTime1900_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_SFNInitialisationTime_EUTRA_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_SFNInitialisationTime_EUTRA(tvb, offset, &asn1_ctx, tree, hf_nrppa_SFNInitialisationTime_EUTRA_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_SlotNumber_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_SlotNumber(tvb, offset, &asn1_ctx, tree, hf_nrppa_SlotNumber_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_SpatialRelationInfo_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_SpatialRelationInfo(tvb, offset, &asn1_ctx, tree, hf_nrppa_SpatialRelationInfo_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_SpatialRelationPerSRSResource_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_SpatialRelationPerSRSResource(tvb, offset, &asn1_ctx, tree, hf_nrppa_SpatialRelationPerSRSResource_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_SRSConfiguration_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_SRSConfiguration(tvb, offset, &asn1_ctx, tree, hf_nrppa_SRSConfiguration_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_SrsFrequency_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_SrsFrequency(tvb, offset, &asn1_ctx, tree, hf_nrppa_SrsFrequency_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_SRSPortIndex_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_SRSPortIndex(tvb, offset, &asn1_ctx, tree, hf_nrppa_SRSPortIndex_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_SRSResourcetype_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_SRSResourcetype(tvb, offset, &asn1_ctx, tree, hf_nrppa_SRSResourcetype_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_SRSTransmissionStatus_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_SRSTransmissionStatus(tvb, offset, &asn1_ctx, tree, hf_nrppa_SRSTransmissionStatus_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_SystemFrameNumber_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_SystemFrameNumber(tvb, offset, &asn1_ctx, tree, hf_nrppa_SystemFrameNumber_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_TDD_Config_EUTRA_Item_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_TDD_Config_EUTRA_Item(tvb, offset, &asn1_ctx, tree, hf_nrppa_TDD_Config_EUTRA_Item_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_TRPTEGInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_TRPTEGInformation(tvb, offset, &asn1_ctx, tree, hf_nrppa_TRPTEGInformation_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_TimingErrorMargin_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_TimingErrorMargin(tvb, offset, &asn1_ctx, tree, hf_nrppa_TimingErrorMargin_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_TRPBeamAntennaInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_TRPBeamAntennaInformation(tvb, offset, &asn1_ctx, tree, hf_nrppa_TRPBeamAntennaInformation_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_TRPMeasurementQuantities_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_TRPMeasurementQuantities(tvb, offset, &asn1_ctx, tree, hf_nrppa_TRPMeasurementQuantities_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_TRP_MeasurementRequestList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_TRP_MeasurementRequestList(tvb, offset, &asn1_ctx, tree, hf_nrppa_TRP_MeasurementRequestList_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_TRP_MeasurementResponseList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_TRP_MeasurementResponseList(tvb, offset, &asn1_ctx, tree, hf_nrppa_TRP_MeasurementResponseList_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_TRP_MeasurementUpdateList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_TRP_MeasurementUpdateList(tvb, offset, &asn1_ctx, tree, hf_nrppa_TRP_MeasurementUpdateList_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_TRPInformationListTRPResp_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_TRPInformationListTRPResp(tvb, offset, &asn1_ctx, tree, hf_nrppa_TRPInformationListTRPResp_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_TRPInformationTypeListTRPReq_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_TRPInformationTypeListTRPReq(tvb, offset, &asn1_ctx, tree, hf_nrppa_TRPInformationTypeListTRPReq_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_TRPInformationTypeItem_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_TRPInformationTypeItem(tvb, offset, &asn1_ctx, tree, hf_nrppa_TRPInformationTypeItem_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_TRPList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_TRPList(tvb, offset, &asn1_ctx, tree, hf_nrppa_TRPList_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_TRP_PRS_Information_List_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_TRP_PRS_Information_List(tvb, offset, &asn1_ctx, tree, hf_nrppa_TRP_PRS_Information_List_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_TRP_Rx_TEGInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_TRP_Rx_TEGInformation(tvb, offset, &asn1_ctx, tree, hf_nrppa_TRP_Rx_TEGInformation_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_TRPTxTEGAssociation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_TRPTxTEGAssociation(tvb, offset, &asn1_ctx, tree, hf_nrppa_TRPTxTEGAssociation_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_TRPType_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_TRPType(tvb, offset, &asn1_ctx, tree, hf_nrppa_TRPType_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_UE_Measurement_ID_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_UE_Measurement_ID(tvb, offset, &asn1_ctx, tree, hf_nrppa_UE_Measurement_ID_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_UEReportingInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_UEReportingInformation(tvb, offset, &asn1_ctx, tree, hf_nrppa_UEReportingInformation_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_UE_TEG_ReportingPeriodicity_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_UE_TEG_ReportingPeriodicity(tvb, offset, &asn1_ctx, tree, hf_nrppa_UE_TEG_ReportingPeriodicity_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_UETxTEGAssociationList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_UETxTEGAssociationList(tvb, offset, &asn1_ctx, tree, hf_nrppa_UETxTEGAssociationList_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_UE_TEG_Info_Request_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_UE_TEG_Info_Request(tvb, offset, &asn1_ctx, tree, hf_nrppa_UE_TEG_Info_Request_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_UL_AoA_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_UL_AoA(tvb, offset, &asn1_ctx, tree, hf_nrppa_UL_AoA_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_UL_SRS_RSRPP_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_UL_SRS_RSRPP(tvb, offset, &asn1_ctx, tree, hf_nrppa_UL_SRS_RSRPP_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_WLANMeasurementQuantities_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_WLANMeasurementQuantities(tvb, offset, &asn1_ctx, tree, hf_nrppa_WLANMeasurementQuantities_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_WLANMeasurementQuantities_Item_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_WLANMeasurementQuantities_Item(tvb, offset, &asn1_ctx, tree, hf_nrppa_WLANMeasurementQuantities_Item_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_WLANMeasurementResult_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_WLANMeasurementResult(tvb, offset, &asn1_ctx, tree, hf_nrppa_WLANMeasurementResult_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_ZoA_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_ZoA(tvb, offset, &asn1_ctx, tree, hf_nrppa_ZoA_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_E_CIDMeasurementInitiationRequest_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_E_CIDMeasurementInitiationRequest(tvb, offset, &asn1_ctx, tree, hf_nrppa_E_CIDMeasurementInitiationRequest_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_E_CIDMeasurementInitiationResponse_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_E_CIDMeasurementInitiationResponse(tvb, offset, &asn1_ctx, tree, hf_nrppa_E_CIDMeasurementInitiationResponse_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_E_CIDMeasurementInitiationFailure_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_E_CIDMeasurementInitiationFailure(tvb, offset, &asn1_ctx, tree, hf_nrppa_E_CIDMeasurementInitiationFailure_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_E_CIDMeasurementFailureIndication_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_E_CIDMeasurementFailureIndication(tvb, offset, &asn1_ctx, tree, hf_nrppa_E_CIDMeasurementFailureIndication_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_E_CIDMeasurementReport_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_E_CIDMeasurementReport(tvb, offset, &asn1_ctx, tree, hf_nrppa_E_CIDMeasurementReport_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_E_CIDMeasurementTerminationCommand_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_E_CIDMeasurementTerminationCommand(tvb, offset, &asn1_ctx, tree, hf_nrppa_E_CIDMeasurementTerminationCommand_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_OTDOAInformationRequest_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_OTDOAInformationRequest(tvb, offset, &asn1_ctx, tree, hf_nrppa_OTDOAInformationRequest_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_OTDOA_Information_Type_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_OTDOA_Information_Type(tvb, offset, &asn1_ctx, tree, hf_nrppa_OTDOA_Information_Type_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_OTDOA_Information_Type_Item_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_OTDOA_Information_Type_Item(tvb, offset, &asn1_ctx, tree, hf_nrppa_OTDOA_Information_Type_Item_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_OTDOAInformationResponse_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_OTDOAInformationResponse(tvb, offset, &asn1_ctx, tree, hf_nrppa_OTDOAInformationResponse_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_OTDOAInformationFailure_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_OTDOAInformationFailure(tvb, offset, &asn1_ctx, tree, hf_nrppa_OTDOAInformationFailure_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_AssistanceInformationControl_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_AssistanceInformationControl(tvb, offset, &asn1_ctx, tree, hf_nrppa_AssistanceInformationControl_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_AssistanceInformationFeedback_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_AssistanceInformationFeedback(tvb, offset, &asn1_ctx, tree, hf_nrppa_AssistanceInformationFeedback_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_ErrorIndication_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_ErrorIndication(tvb, offset, &asn1_ctx, tree, hf_nrppa_ErrorIndication_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PrivateMessage_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_PrivateMessage(tvb, offset, &asn1_ctx, tree, hf_nrppa_PrivateMessage_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PositioningInformationRequest_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_PositioningInformationRequest(tvb, offset, &asn1_ctx, tree, hf_nrppa_PositioningInformationRequest_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PositioningInformationResponse_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_PositioningInformationResponse(tvb, offset, &asn1_ctx, tree, hf_nrppa_PositioningInformationResponse_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PositioningInformationFailure_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_PositioningInformationFailure(tvb, offset, &asn1_ctx, tree, hf_nrppa_PositioningInformationFailure_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PositioningInformationUpdate_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_PositioningInformationUpdate(tvb, offset, &asn1_ctx, tree, hf_nrppa_PositioningInformationUpdate_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_MeasurementRequest_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_MeasurementRequest(tvb, offset, &asn1_ctx, tree, hf_nrppa_MeasurementRequest_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_MeasurementResponse_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_MeasurementResponse(tvb, offset, &asn1_ctx, tree, hf_nrppa_MeasurementResponse_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_MeasurementFailure_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_MeasurementFailure(tvb, offset, &asn1_ctx, tree, hf_nrppa_MeasurementFailure_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_MeasurementReport_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_MeasurementReport(tvb, offset, &asn1_ctx, tree, hf_nrppa_MeasurementReport_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_MeasurementUpdate_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_MeasurementUpdate(tvb, offset, &asn1_ctx, tree, hf_nrppa_MeasurementUpdate_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_MeasurementAbort_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_MeasurementAbort(tvb, offset, &asn1_ctx, tree, hf_nrppa_MeasurementAbort_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_MeasurementFailureIndication_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_MeasurementFailureIndication(tvb, offset, &asn1_ctx, tree, hf_nrppa_MeasurementFailureIndication_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_TRPInformationRequest_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_TRPInformationRequest(tvb, offset, &asn1_ctx, tree, hf_nrppa_TRPInformationRequest_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_TRPInformationResponse_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_TRPInformationResponse(tvb, offset, &asn1_ctx, tree, hf_nrppa_TRPInformationResponse_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_TRPInformationFailure_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_TRPInformationFailure(tvb, offset, &asn1_ctx, tree, hf_nrppa_TRPInformationFailure_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PositioningActivationRequest_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_PositioningActivationRequest(tvb, offset, &asn1_ctx, tree, hf_nrppa_PositioningActivationRequest_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_SRSType_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_SRSType(tvb, offset, &asn1_ctx, tree, hf_nrppa_SRSType_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PositioningActivationResponse_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_PositioningActivationResponse(tvb, offset, &asn1_ctx, tree, hf_nrppa_PositioningActivationResponse_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PositioningActivationFailure_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_PositioningActivationFailure(tvb, offset, &asn1_ctx, tree, hf_nrppa_PositioningActivationFailure_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PositioningDeactivation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_PositioningDeactivation(tvb, offset, &asn1_ctx, tree, hf_nrppa_PositioningDeactivation_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PRSConfigurationRequest_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_PRSConfigurationRequest(tvb, offset, &asn1_ctx, tree, hf_nrppa_PRSConfigurationRequest_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PRSConfigurationResponse_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_PRSConfigurationResponse(tvb, offset, &asn1_ctx, tree, hf_nrppa_PRSConfigurationResponse_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_PRSConfigurationFailure_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_PRSConfigurationFailure(tvb, offset, &asn1_ctx, tree, hf_nrppa_PRSConfigurationFailure_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_MeasurementPreconfigurationRequired_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_MeasurementPreconfigurationRequired(tvb, offset, &asn1_ctx, tree, hf_nrppa_MeasurementPreconfigurationRequired_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_MeasurementPreconfigurationConfirm_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_MeasurementPreconfigurationConfirm(tvb, offset, &asn1_ctx, tree, hf_nrppa_MeasurementPreconfigurationConfirm_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_MeasurementPreconfigurationRefuse_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_MeasurementPreconfigurationRefuse(tvb, offset, &asn1_ctx, tree, hf_nrppa_MeasurementPreconfigurationRefuse_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_MeasurementActivation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo); + offset = dissect_nrppa_MeasurementActivation(tvb, offset, &asn1_ctx, tree, hf_nrppa_MeasurementActivation_PDU); + offset += 7; offset >>= 3; + return offset; +} + + +static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) +{ + return (dissector_try_uint_new(nrppa_ies_dissector_table, ProtocolIE_ID, tvb, pinfo, tree, FALSE, NULL)) ? tvb_captured_length(tvb) : 0; +} + +static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) +{ + return (dissector_try_uint_new(nrppa_extension_dissector_table, ProtocolIE_ID, tvb, pinfo, tree, FALSE, NULL)) ? tvb_captured_length(tvb) : 0; +} + +static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) +{ + return (dissector_try_uint_new(nrppa_proc_imsg_dissector_table, ProcedureCode, tvb, pinfo, tree, FALSE, NULL)) ? tvb_captured_length(tvb) : 0; +} + +static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) +{ + return (dissector_try_uint_new(nrppa_proc_sout_dissector_table, ProcedureCode, tvb, pinfo, tree, FALSE, NULL)) ? tvb_captured_length(tvb) : 0; +} + +static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) +{ + return (dissector_try_uint_new(nrppa_proc_uout_dissector_table, ProcedureCode, tvb, pinfo, tree, FALSE, NULL)) ? tvb_captured_length(tvb) : 0; +} + +/*--- proto_register_nrppa -------------------------------------------*/ +void proto_register_nrppa(void) { + + /* List of fields */ + static hf_register_info hf[] = { + + { &hf_nrppa_NRPPA_PDU_PDU, + { "NRPPA-PDU", "nrppa.NRPPA_PDU", + FT_UINT32, BASE_DEC, VALS(nrppa_NRPPA_PDU_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_AbortTransmission_PDU, + { "AbortTransmission", "nrppa.AbortTransmission", + FT_UINT32, BASE_DEC, VALS(nrppa_AbortTransmission_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_ExtendedAdditionalPathList_PDU, + { "ExtendedAdditionalPathList", "nrppa.ExtendedAdditionalPathList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_AoA_AssistanceInfo_PDU, + { "AoA-AssistanceInfo", "nrppa.AoA_AssistanceInfo_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_ARP_ID_PDU, + { "ARP-ID", "nrppa.ARP_ID", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_ARPLocationInformation_PDU, + { "ARPLocationInformation", "nrppa.ARPLocationInformation", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_nrppa_Assistance_Information_PDU, + { "Assistance-Information", "nrppa.Assistance_Information_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_AssistanceInformationFailureList_PDU, + { "AssistanceInformationFailureList", "nrppa.AssistanceInformationFailureList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_Broadcast_PDU, + { "Broadcast", "nrppa.Broadcast", + FT_UINT32, BASE_DEC, VALS(nrppa_Broadcast_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_PositioningBroadcastCells_PDU, + { "PositioningBroadcastCells", "nrppa.PositioningBroadcastCells", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_Cause_PDU, + { "Cause", "nrppa.Cause", + FT_UINT32, BASE_DEC, VALS(nrppa_Cause_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_Cell_Portion_ID_PDU, + { "Cell-Portion-ID", "nrppa.Cell_Portion_ID", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_CGI_NR_PDU, + { "CGI-NR", "nrppa.CGI_NR_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_CriticalityDiagnostics_PDU, + { "CriticalityDiagnostics", "nrppa.CriticalityDiagnostics_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_E_CID_MeasurementResult_PDU, + { "E-CID-MeasurementResult", "nrppa.E_CID_MeasurementResult_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_GeographicalCoordinates_PDU, + { "GeographicalCoordinates", "nrppa.GeographicalCoordinates_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_LoS_NLoSInformation_PDU, + { "LoS-NLoSInformation", "nrppa.LoS_NLoSInformation", + FT_UINT32, BASE_DEC, VALS(nrppa_LoS_NLoSInformation_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_Measurement_ID_PDU, + { "Measurement-ID", "nrppa.Measurement_ID", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_MeasurementAmount_PDU, + { "MeasurementAmount", "nrppa.MeasurementAmount", + FT_UINT32, BASE_DEC, VALS(nrppa_MeasurementAmount_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_MeasurementBeamInfoRequest_PDU, + { "MeasurementBeamInfoRequest", "nrppa.MeasurementBeamInfoRequest", + FT_UINT32, BASE_DEC, VALS(nrppa_MeasurementBeamInfoRequest_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_MeasurementPeriodicity_PDU, + { "MeasurementPeriodicity", "nrppa.MeasurementPeriodicity", + FT_UINT32, BASE_DEC, VALS(nrppa_MeasurementPeriodicity_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_MeasurementPeriodicityExtended_PDU, + { "MeasurementPeriodicityExtended", "nrppa.MeasurementPeriodicityExtended", + FT_UINT32, BASE_DEC, VALS(nrppa_MeasurementPeriodicityExtended_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_MeasurementPeriodicityNR_AoA_PDU, + { "MeasurementPeriodicityNR-AoA", "nrppa.MeasurementPeriodicityNR_AoA", + FT_UINT32, BASE_DEC, VALS(nrppa_MeasurementPeriodicityNR_AoA_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_MeasurementQuantities_PDU, + { "MeasurementQuantities", "nrppa.MeasurementQuantities", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_MeasurementQuantities_Item_PDU, + { "MeasurementQuantities-Item", "nrppa.MeasurementQuantities_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_MeasurementTimeOccasion_PDU, + { "MeasurementTimeOccasion", "nrppa.MeasurementTimeOccasion", + FT_UINT32, BASE_DEC, VALS(nrppa_MeasurementTimeOccasion_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_MeasurementCharacteristicsRequestIndicator_PDU, + { "MeasurementCharacteristicsRequestIndicator", "nrppa.MeasurementCharacteristicsRequestIndicator", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_MultipleULAoA_PDU, + { "MultipleULAoA", "nrppa.MultipleULAoA_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_NR_TADV_PDU, + { "NR-TADV", "nrppa.NR_TADV", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_NumberOfTRPRxTEG_PDU, + { "NumberOfTRPRxTEG", "nrppa.NumberOfTRPRxTEG", + FT_UINT32, BASE_DEC, VALS(nrppa_NumberOfTRPRxTEG_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_NumberOfTRPRxTxTEG_PDU, + { "NumberOfTRPRxTxTEG", "nrppa.NumberOfTRPRxTxTEG", + FT_UINT32, BASE_DEC, VALS(nrppa_NumberOfTRPRxTxTEG_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_OnDemandPRS_Info_PDU, + { "OnDemandPRS-Info", "nrppa.OnDemandPRS_Info_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_OTDOACells_PDU, + { "OTDOACells", "nrppa.OTDOACells", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_OtherRATMeasurementQuantities_PDU, + { "OtherRATMeasurementQuantities", "nrppa.OtherRATMeasurementQuantities", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_OtherRATMeasurementQuantities_Item_PDU, + { "OtherRATMeasurementQuantities-Item", "nrppa.OtherRATMeasurementQuantities_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_OtherRATMeasurementResult_PDU, + { "OtherRATMeasurementResult", "nrppa.OtherRATMeasurementResult", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_PreconfigurationResult_PDU, + { "PreconfigurationResult", "nrppa.PreconfigurationResult", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_PRSConfigRequestType_PDU, + { "PRSConfigRequestType", "nrppa.PRSConfigRequestType", + FT_UINT32, BASE_DEC, VALS(nrppa_PRSConfigRequestType_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_PRS_Measurements_Info_List_PDU, + { "PRS-Measurements-Info-List", "nrppa.PRS_Measurements_Info_List", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_PRS_Resource_ID_PDU, + { "PRS-Resource-ID", "nrppa.PRS_Resource_ID", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_PRSTRPList_PDU, + { "PRSTRPList", "nrppa.PRSTRPList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_PRSTransmissionTRPList_PDU, + { "PRSTransmissionTRPList", "nrppa.PRSTransmissionTRPList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_ReportCharacteristics_PDU, + { "ReportCharacteristics", "nrppa.ReportCharacteristics", + FT_UINT32, BASE_DEC, VALS(nrppa_ReportCharacteristics_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_RequestedSRSTransmissionCharacteristics_PDU, + { "RequestedSRSTransmissionCharacteristics", "nrppa.RequestedSRSTransmissionCharacteristics_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_RequestType_PDU, + { "RequestType", "nrppa.RequestType", + FT_UINT32, BASE_DEC, VALS(nrppa_RequestType_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_ResponseTime_PDU, + { "ResponseTime", "nrppa.ResponseTime_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_ResultCSI_RSRP_PDU, + { "ResultCSI-RSRP", "nrppa.ResultCSI_RSRP", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_ResultCSI_RSRQ_PDU, + { "ResultCSI-RSRQ", "nrppa.ResultCSI_RSRQ", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_ResultEUTRA_PDU, + { "ResultEUTRA", "nrppa.ResultEUTRA", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_ResultSS_RSRP_PDU, + { "ResultSS-RSRP", "nrppa.ResultSS_RSRP", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_ResultSS_RSRQ_PDU, + { "ResultSS-RSRQ", "nrppa.ResultSS_RSRQ", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_ResultNR_PDU, + { "ResultNR", "nrppa.ResultNR", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_RelativeTime1900_PDU, + { "RelativeTime1900", "nrppa.RelativeTime1900", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_SFNInitialisationTime_EUTRA_PDU, + { "SFNInitialisationTime-EUTRA", "nrppa.SFNInitialisationTime_EUTRA", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_SlotNumber_PDU, + { "SlotNumber", "nrppa.SlotNumber", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_SpatialRelationInfo_PDU, + { "SpatialRelationInfo", "nrppa.SpatialRelationInfo_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_SpatialRelationPerSRSResource_PDU, + { "SpatialRelationPerSRSResource", "nrppa.SpatialRelationPerSRSResource_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_SRSConfiguration_PDU, + { "SRSConfiguration", "nrppa.SRSConfiguration_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_SrsFrequency_PDU, + { "SrsFrequency", "nrppa.SrsFrequency", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_SRSPortIndex_PDU, + { "SRSPortIndex", "nrppa.SRSPortIndex", + FT_UINT32, BASE_DEC, VALS(nrppa_SRSPortIndex_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_SRSResourcetype_PDU, + { "SRSResourcetype", "nrppa.SRSResourcetype_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_SRSTransmissionStatus_PDU, + { "SRSTransmissionStatus", "nrppa.SRSTransmissionStatus", + FT_UINT32, BASE_DEC, VALS(nrppa_SRSTransmissionStatus_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_SystemFrameNumber_PDU, + { "SystemFrameNumber", "nrppa.SystemFrameNumber", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_TDD_Config_EUTRA_Item_PDU, + { "TDD-Config-EUTRA-Item", "nrppa.TDD_Config_EUTRA_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_TRPTEGInformation_PDU, + { "TRPTEGInformation", "nrppa.TRPTEGInformation", + FT_UINT32, BASE_DEC, VALS(nrppa_TRPTEGInformation_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_TimingErrorMargin_PDU, + { "TimingErrorMargin", "nrppa.TimingErrorMargin", + FT_UINT32, BASE_DEC, VALS(nrppa_TimingErrorMargin_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_TRPBeamAntennaInformation_PDU, + { "TRPBeamAntennaInformation", "nrppa.TRPBeamAntennaInformation_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_TRPMeasurementQuantities_PDU, + { "TRPMeasurementQuantities", "nrppa.TRPMeasurementQuantities", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_TRP_MeasurementRequestList_PDU, + { "TRP-MeasurementRequestList", "nrppa.TRP_MeasurementRequestList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_TRP_MeasurementResponseList_PDU, + { "TRP-MeasurementResponseList", "nrppa.TRP_MeasurementResponseList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_TRP_MeasurementUpdateList_PDU, + { "TRP-MeasurementUpdateList", "nrppa.TRP_MeasurementUpdateList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_TRPInformationListTRPResp_PDU, + { "TRPInformationListTRPResp", "nrppa.TRPInformationListTRPResp", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_TRPInformationTypeListTRPReq_PDU, + { "TRPInformationTypeListTRPReq", "nrppa.TRPInformationTypeListTRPReq", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_TRPInformationTypeItem_PDU, + { "TRPInformationTypeItem", "nrppa.TRPInformationTypeItem", + FT_UINT32, BASE_DEC, VALS(nrppa_TRPInformationTypeItem_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_TRPList_PDU, + { "TRPList", "nrppa.TRPList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_TRP_PRS_Information_List_PDU, + { "TRP-PRS-Information-List", "nrppa.TRP_PRS_Information_List", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_TRP_Rx_TEGInformation_PDU, + { "TRP-Rx-TEGInformation", "nrppa.TRP_Rx_TEGInformation_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_TRPTxTEGAssociation_PDU, + { "TRPTxTEGAssociation", "nrppa.TRPTxTEGAssociation", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_TRPType_PDU, + { "TRPType", "nrppa.TRPType", + FT_UINT32, BASE_DEC, VALS(nrppa_TRPType_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_UE_Measurement_ID_PDU, + { "UE-Measurement-ID", "nrppa.UE_Measurement_ID", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_UEReportingInformation_PDU, + { "UEReportingInformation", "nrppa.UEReportingInformation_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_UE_TEG_ReportingPeriodicity_PDU, + { "UE-TEG-ReportingPeriodicity", "nrppa.UE_TEG_ReportingPeriodicity", + FT_UINT32, BASE_DEC, VALS(nrppa_UE_TEG_ReportingPeriodicity_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_UETxTEGAssociationList_PDU, + { "UETxTEGAssociationList", "nrppa.UETxTEGAssociationList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_UE_TEG_Info_Request_PDU, + { "UE-TEG-Info-Request", "nrppa.UE_TEG_Info_Request", + FT_UINT32, BASE_DEC, VALS(nrppa_UE_TEG_Info_Request_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_UL_AoA_PDU, + { "UL-AoA", "nrppa.UL_AoA_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_UL_SRS_RSRPP_PDU, + { "UL-SRS-RSRPP", "nrppa.UL_SRS_RSRPP_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_WLANMeasurementQuantities_PDU, + { "WLANMeasurementQuantities", "nrppa.WLANMeasurementQuantities", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_WLANMeasurementQuantities_Item_PDU, + { "WLANMeasurementQuantities-Item", "nrppa.WLANMeasurementQuantities_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_WLANMeasurementResult_PDU, + { "WLANMeasurementResult", "nrppa.WLANMeasurementResult", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_ZoA_PDU, + { "ZoA", "nrppa.ZoA_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_E_CIDMeasurementInitiationRequest_PDU, + { "E-CIDMeasurementInitiationRequest", "nrppa.E_CIDMeasurementInitiationRequest_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_E_CIDMeasurementInitiationResponse_PDU, + { "E-CIDMeasurementInitiationResponse", "nrppa.E_CIDMeasurementInitiationResponse_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_E_CIDMeasurementInitiationFailure_PDU, + { "E-CIDMeasurementInitiationFailure", "nrppa.E_CIDMeasurementInitiationFailure_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_E_CIDMeasurementFailureIndication_PDU, + { "E-CIDMeasurementFailureIndication", "nrppa.E_CIDMeasurementFailureIndication_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_E_CIDMeasurementReport_PDU, + { "E-CIDMeasurementReport", "nrppa.E_CIDMeasurementReport_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_E_CIDMeasurementTerminationCommand_PDU, + { "E-CIDMeasurementTerminationCommand", "nrppa.E_CIDMeasurementTerminationCommand_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_OTDOAInformationRequest_PDU, + { "OTDOAInformationRequest", "nrppa.OTDOAInformationRequest_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_OTDOA_Information_Type_PDU, + { "OTDOA-Information-Type", "nrppa.OTDOA_Information_Type", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_OTDOA_Information_Type_Item_PDU, + { "OTDOA-Information-Type-Item", "nrppa.OTDOA_Information_Type_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_OTDOAInformationResponse_PDU, + { "OTDOAInformationResponse", "nrppa.OTDOAInformationResponse_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_OTDOAInformationFailure_PDU, + { "OTDOAInformationFailure", "nrppa.OTDOAInformationFailure_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_AssistanceInformationControl_PDU, + { "AssistanceInformationControl", "nrppa.AssistanceInformationControl_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_AssistanceInformationFeedback_PDU, + { "AssistanceInformationFeedback", "nrppa.AssistanceInformationFeedback_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_ErrorIndication_PDU, + { "ErrorIndication", "nrppa.ErrorIndication_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_PrivateMessage_PDU, + { "PrivateMessage", "nrppa.PrivateMessage_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_PositioningInformationRequest_PDU, + { "PositioningInformationRequest", "nrppa.PositioningInformationRequest_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_PositioningInformationResponse_PDU, + { "PositioningInformationResponse", "nrppa.PositioningInformationResponse_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_PositioningInformationFailure_PDU, + { "PositioningInformationFailure", "nrppa.PositioningInformationFailure_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_PositioningInformationUpdate_PDU, + { "PositioningInformationUpdate", "nrppa.PositioningInformationUpdate_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_MeasurementRequest_PDU, + { "MeasurementRequest", "nrppa.MeasurementRequest_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_MeasurementResponse_PDU, + { "MeasurementResponse", "nrppa.MeasurementResponse_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_MeasurementFailure_PDU, + { "MeasurementFailure", "nrppa.MeasurementFailure_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_MeasurementReport_PDU, + { "MeasurementReport", "nrppa.MeasurementReport_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_MeasurementUpdate_PDU, + { "MeasurementUpdate", "nrppa.MeasurementUpdate_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_MeasurementAbort_PDU, + { "MeasurementAbort", "nrppa.MeasurementAbort_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_MeasurementFailureIndication_PDU, + { "MeasurementFailureIndication", "nrppa.MeasurementFailureIndication_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_TRPInformationRequest_PDU, + { "TRPInformationRequest", "nrppa.TRPInformationRequest_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_TRPInformationResponse_PDU, + { "TRPInformationResponse", "nrppa.TRPInformationResponse_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_TRPInformationFailure_PDU, + { "TRPInformationFailure", "nrppa.TRPInformationFailure_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_PositioningActivationRequest_PDU, + { "PositioningActivationRequest", "nrppa.PositioningActivationRequest_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_SRSType_PDU, + { "SRSType", "nrppa.SRSType", + FT_UINT32, BASE_DEC, VALS(nrppa_SRSType_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_PositioningActivationResponse_PDU, + { "PositioningActivationResponse", "nrppa.PositioningActivationResponse_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_PositioningActivationFailure_PDU, + { "PositioningActivationFailure", "nrppa.PositioningActivationFailure_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_PositioningDeactivation_PDU, + { "PositioningDeactivation", "nrppa.PositioningDeactivation_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_PRSConfigurationRequest_PDU, + { "PRSConfigurationRequest", "nrppa.PRSConfigurationRequest_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_PRSConfigurationResponse_PDU, + { "PRSConfigurationResponse", "nrppa.PRSConfigurationResponse_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_PRSConfigurationFailure_PDU, + { "PRSConfigurationFailure", "nrppa.PRSConfigurationFailure_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_MeasurementPreconfigurationRequired_PDU, + { "MeasurementPreconfigurationRequired", "nrppa.MeasurementPreconfigurationRequired_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_MeasurementPreconfigurationConfirm_PDU, + { "MeasurementPreconfigurationConfirm", "nrppa.MeasurementPreconfigurationConfirm_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_MeasurementPreconfigurationRefuse_PDU, + { "MeasurementPreconfigurationRefuse", "nrppa.MeasurementPreconfigurationRefuse_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_MeasurementActivation_PDU, + { "MeasurementActivation", "nrppa.MeasurementActivation_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_local, + { "local", "nrppa.local", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_maxPrivateIEs", HFILL }}, + { &hf_nrppa_global, + { "global", "nrppa.global", + FT_OID, BASE_NONE, NULL, 0, + "OBJECT_IDENTIFIER", HFILL }}, + { &hf_nrppa_ProtocolIE_Container_item, + { "ProtocolIE-Field", "nrppa.ProtocolIE_Field_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_id, + { "id", "nrppa.id", + FT_UINT32, BASE_DEC, VALS(nrppa_ProtocolIE_ID_vals), 0, + "ProtocolIE_ID", HFILL }}, + { &hf_nrppa_criticality, + { "criticality", "nrppa.criticality", + FT_UINT32, BASE_DEC, VALS(nrppa_Criticality_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_ie_field_value, + { "value", "nrppa.value_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_ie_field_value", HFILL }}, + { &hf_nrppa_ProtocolExtensionContainer_item, + { "ProtocolExtensionField", "nrppa.ProtocolExtensionField_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_ext_id, + { "id", "nrppa.id", + FT_UINT32, BASE_DEC, VALS(nrppa_ProtocolIE_ID_vals), 0, + "ProtocolIE_ID", HFILL }}, + { &hf_nrppa_extensionValue, + { "extensionValue", "nrppa.extensionValue_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_PrivateIE_Container_item, + { "PrivateIE-Field", "nrppa.PrivateIE_Field_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_id_01, + { "id", "nrppa.id", + FT_UINT32, BASE_DEC, VALS(nrppa_PrivateIE_ID_vals), 0, + "PrivateIE_ID", HFILL }}, + { &hf_nrppa_value, + { "value", "nrppa.value_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_initiatingMessage, + { "initiatingMessage", "nrppa.initiatingMessage_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_successfulOutcome, + { "successfulOutcome", "nrppa.successfulOutcome_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_unsuccessfulOutcome, + { "unsuccessfulOutcome", "nrppa.unsuccessfulOutcome_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_procedureCode, + { "procedureCode", "nrppa.procedureCode", + FT_UINT32, BASE_DEC, VALS(nrppa_ProcedureCode_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_nrppatransactionID, + { "nrppatransactionID", "nrppa.nrppatransactionID", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_initiatingMessagevalue, + { "value", "nrppa.value_element", + FT_NONE, BASE_NONE, NULL, 0, + "InitiatingMessage_value", HFILL }}, + { &hf_nrppa_successfulOutcome_value, + { "value", "nrppa.value_element", + FT_NONE, BASE_NONE, NULL, 0, + "SuccessfulOutcome_value", HFILL }}, + { &hf_nrppa_unsuccessfulOutcome_value, + { "value", "nrppa.value_element", + FT_NONE, BASE_NONE, NULL, 0, + "UnsuccessfulOutcome_value", HFILL }}, + { &hf_nrppa_deactivateSRSResourceSetID, + { "deactivateSRSResourceSetID", "nrppa.deactivateSRSResourceSetID", + FT_UINT32, BASE_DEC, NULL, 0, + "SRSResourceSetID", HFILL }}, + { &hf_nrppa_releaseALL, + { "releaseALL", "nrppa.releaseALL_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_choice_extension, + { "choice-extension", "nrppa.choice_extension_element", + FT_NONE, BASE_NONE, NULL, 0, + "ProtocolIE_Single_Container", HFILL }}, + { &hf_nrppa_locationAndBandwidth, + { "locationAndBandwidth", "nrppa.locationAndBandwidth", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_37949_", HFILL }}, + { &hf_nrppa_subcarrierSpacing, + { "subcarrierSpacing", "nrppa.subcarrierSpacing", + FT_UINT32, BASE_DEC, VALS(nrppa_T_subcarrierSpacing_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_cyclicPrefix, + { "cyclicPrefix", "nrppa.cyclicPrefix", + FT_UINT32, BASE_DEC, VALS(nrppa_T_cyclicPrefix_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_txDirectCurrentLocation, + { "txDirectCurrentLocation", "nrppa.txDirectCurrentLocation", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_3301_", HFILL }}, + { &hf_nrppa_shift7dot5kHz, + { "shift7dot5kHz", "nrppa.shift7dot5kHz", + FT_UINT32, BASE_DEC, VALS(nrppa_T_shift7dot5kHz_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_sRSConfig, + { "sRSConfig", "nrppa.sRSConfig_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_iE_Extensions, + { "iE-Extensions", "nrppa.iE_Extensions", + FT_UINT32, BASE_DEC, NULL, 0, + "ProtocolExtensionContainer", HFILL }}, + { &hf_nrppa_AdditionalPathList_item, + { "AdditionalPathListItem", "nrppa.AdditionalPathListItem_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_relativeTimeOfPath, + { "relativeTimeOfPath", "nrppa.relativeTimeOfPath", + FT_UINT32, BASE_DEC, VALS(nrppa_RelativePathDelay_vals), 0, + "RelativePathDelay", HFILL }}, + { &hf_nrppa_pathQuality, + { "pathQuality", "nrppa.pathQuality", + FT_UINT32, BASE_DEC, VALS(nrppa_TrpMeasurementQuality_vals), 0, + "TrpMeasurementQuality", HFILL }}, + { &hf_nrppa_ExtendedAdditionalPathList_item, + { "ExtendedAdditionalPathList-Item", "nrppa.ExtendedAdditionalPathList_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_multipleULAoA, + { "multipleULAoA", "nrppa.multipleULAoA_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_pathPower, + { "pathPower", "nrppa.pathPower_element", + FT_NONE, BASE_NONE, NULL, 0, + "UL_SRS_RSRPP", HFILL }}, + { &hf_nrppa_angleMeasurement, + { "angleMeasurement", "nrppa.angleMeasurement", + FT_UINT32, BASE_DEC, VALS(nrppa_AngleMeasurementType_vals), 0, + "AngleMeasurementType", HFILL }}, + { &hf_nrppa_lCS_to_GCS_Translation, + { "lCS-to-GCS-Translation", "nrppa.lCS_to_GCS_Translation_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_AperiodicSRSResourceTriggerList_item, + { "AperiodicSRSResourceTrigger", "nrppa.AperiodicSRSResourceTrigger", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_expected_ULAoA, + { "expected-ULAoA", "nrppa.expected_ULAoA_element", + FT_NONE, BASE_NONE, NULL, 0, + "Expected_UL_AoA", HFILL }}, + { &hf_nrppa_expected_ZoA, + { "expected-ZoA", "nrppa.expected_ZoA_element", + FT_NONE, BASE_NONE, NULL, 0, + "Expected_ZoA_only", HFILL }}, + { &hf_nrppa_expected_Azimuth_AoA, + { "expected-Azimuth-AoA", "nrppa.expected_Azimuth_AoA_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_expected_Zenith_AoA, + { "expected-Zenith-AoA", "nrppa.expected_Zenith_AoA_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_iE_extensions, + { "iE-extensions", "nrppa.iE_extensions", + FT_UINT32, BASE_DEC, NULL, 0, + "ProtocolExtensionContainer", HFILL }}, + { &hf_nrppa_expected_ZoA_only, + { "expected-ZoA-only", "nrppa.expected_ZoA_only_element", + FT_NONE, BASE_NONE, NULL, 0, + "Expected_Zenith_AoA", HFILL }}, + { &hf_nrppa_expected_Azimuth_AoA_value, + { "expected-Azimuth-AoA-value", "nrppa.expected_Azimuth_AoA_value", + FT_UINT32, BASE_DEC, NULL, 0, + "Expected_Value_AoA", HFILL }}, + { &hf_nrppa_expected_Azimuth_AoA_uncertainty, + { "expected-Azimuth-AoA-uncertainty", "nrppa.expected_Azimuth_AoA_uncertainty", + FT_UINT32, BASE_DEC, NULL, 0, + "Uncertainty_range_AoA", HFILL }}, + { &hf_nrppa_expected_Zenith_AoA_value, + { "expected-Zenith-AoA-value", "nrppa.expected_Zenith_AoA_value", + FT_UINT32, BASE_DEC, NULL, 0, + "Expected_Value_ZoA", HFILL }}, + { &hf_nrppa_expected_Zenith_AoA_uncertainty, + { "expected-Zenith-AoA-uncertainty", "nrppa.expected_Zenith_AoA_uncertainty", + FT_UINT32, BASE_DEC, NULL, 0, + "Uncertainty_range_ZoA", HFILL }}, + { &hf_nrppa_ARPLocationInformation_item, + { "ARPLocationInformation-Item", "nrppa.ARPLocationInformation_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_aRP_ID, + { "aRP-ID", "nrppa.aRP_ID", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_aRPLocationType, + { "aRPLocationType", "nrppa.aRPLocationType", + FT_UINT32, BASE_DEC, VALS(nrppa_ARPLocationType_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_aRPPositionRelativeGeodetic, + { "aRPPositionRelativeGeodetic", "nrppa.aRPPositionRelativeGeodetic_element", + FT_NONE, BASE_NONE, NULL, 0, + "RelativeGeodeticLocation", HFILL }}, + { &hf_nrppa_aRPPositionRelativeCartesian, + { "aRPPositionRelativeCartesian", "nrppa.aRPPositionRelativeCartesian_element", + FT_NONE, BASE_NONE, NULL, 0, + "RelativeCartesianLocation", HFILL }}, + { &hf_nrppa_systemInformation, + { "systemInformation", "nrppa.systemInformation", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_AssistanceInformationFailureList_item, + { "AssistanceInformationFailureList item", "nrppa.AssistanceInformationFailureList_item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_posSIB_Type, + { "posSIB-Type", "nrppa.posSIB_Type", + FT_UINT32, BASE_DEC, VALS(nrppa_PosSIB_Type_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_outcome, + { "outcome", "nrppa.outcome", + FT_UINT32, BASE_DEC, VALS(nrppa_Outcome_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_encrypted, + { "encrypted", "nrppa.encrypted", + FT_UINT32, BASE_DEC, VALS(nrppa_T_encrypted_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_gNSSID, + { "gNSSID", "nrppa.gNSSID", + FT_UINT32, BASE_DEC, VALS(nrppa_T_gNSSID_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_sBASID, + { "sBASID", "nrppa.sBASID", + FT_UINT32, BASE_DEC, VALS(nrppa_T_sBASID_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_fR1, + { "fR1", "nrppa.fR1", + FT_UINT32, BASE_DEC, VALS(nrppa_T_fR1_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_fR2, + { "fR2", "nrppa.fR2", + FT_UINT32, BASE_DEC, VALS(nrppa_T_fR2_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_PositioningBroadcastCells_item, + { "NG-RAN-CGI", "nrppa.NG_RAN_CGI_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_pointA, + { "pointA", "nrppa.pointA", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_3279165", HFILL }}, + { &hf_nrppa_offsetToCarrier, + { "offsetToCarrier", "nrppa.offsetToCarrier", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_2199_", HFILL }}, + { &hf_nrppa_radioNetwork, + { "radioNetwork", "nrppa.radioNetwork", + FT_UINT32, BASE_DEC, VALS(nrppa_CauseRadioNetwork_vals), 0, + "CauseRadioNetwork", HFILL }}, + { &hf_nrppa_protocol, + { "protocol", "nrppa.protocol", + FT_UINT32, BASE_DEC, VALS(nrppa_CauseProtocol_vals), 0, + "CauseProtocol", HFILL }}, + { &hf_nrppa_misc, + { "misc", "nrppa.misc", + FT_UINT32, BASE_DEC, VALS(nrppa_CauseMisc_vals), 0, + "CauseMisc", HFILL }}, + { &hf_nrppa_choice_Extension, + { "choice-Extension", "nrppa.choice_Extension_element", + FT_NONE, BASE_NONE, NULL, 0, + "ProtocolIE_Single_Container", HFILL }}, + { &hf_nrppa_pLMN_Identity, + { "pLMN-Identity", "nrppa.pLMN_Identity", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_eUTRAcellIdentifier, + { "eUTRAcellIdentifier", "nrppa.eUTRAcellIdentifier", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_nRcellIdentifier, + { "nRcellIdentifier", "nrppa.nRcellIdentifier", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_triggeringMessage, + { "triggeringMessage", "nrppa.triggeringMessage", + FT_UINT32, BASE_DEC, VALS(nrppa_TriggeringMessage_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_procedureCriticality, + { "procedureCriticality", "nrppa.procedureCriticality", + FT_UINT32, BASE_DEC, VALS(nrppa_Criticality_vals), 0, + "Criticality", HFILL }}, + { &hf_nrppa_iEsCriticalityDiagnostics, + { "iEsCriticalityDiagnostics", "nrppa.iEsCriticalityDiagnostics", + FT_UINT32, BASE_DEC, NULL, 0, + "CriticalityDiagnostics_IE_List", HFILL }}, + { &hf_nrppa_CriticalityDiagnostics_IE_List_item, + { "CriticalityDiagnostics-IE-List item", "nrppa.CriticalityDiagnostics_IE_List_item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_iECriticality, + { "iECriticality", "nrppa.iECriticality", + FT_UINT32, BASE_DEC, VALS(nrppa_Criticality_vals), 0, + "Criticality", HFILL }}, + { &hf_nrppa_iE_ID, + { "iE-ID", "nrppa.iE_ID", + FT_UINT32, BASE_DEC, VALS(nrppa_ProtocolIE_ID_vals), 0, + "ProtocolIE_ID", HFILL }}, + { &hf_nrppa_typeOfError, + { "typeOfError", "nrppa.typeOfError", + FT_UINT32, BASE_DEC, VALS(nrppa_TypeOfError_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_prsid, + { "prsid", "nrppa.prsid", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_nrppa_dl_PRSResourceSetID, + { "dl-PRSResourceSetID", "nrppa.dl_PRSResourceSetID", + FT_UINT32, BASE_DEC, NULL, 0, + "PRS_Resource_Set_ID", HFILL }}, + { &hf_nrppa_dl_PRSResourceID, + { "dl-PRSResourceID", "nrppa.dl_PRSResourceID", + FT_UINT32, BASE_DEC, NULL, 0, + "PRS_Resource_ID", HFILL }}, + { &hf_nrppa_two, + { "two", "nrppa.two", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_2", HFILL }}, + { &hf_nrppa_four, + { "four", "nrppa.four", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_4", HFILL }}, + { &hf_nrppa_six, + { "six", "nrppa.six", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_6", HFILL }}, + { &hf_nrppa_eight, + { "eight", "nrppa.eight", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_8", HFILL }}, + { &hf_nrppa_sixteen, + { "sixteen", "nrppa.sixteen", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_16", HFILL }}, + { &hf_nrppa_thirty_two, + { "thirty-two", "nrppa.thirty_two", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_32", HFILL }}, + { &hf_nrppa_listofDL_PRSResourceSetARP, + { "listofDL-PRSResourceSetARP", "nrppa.listofDL_PRSResourceSetARP", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxPRS_ResourceSets_OF_DLPRSResourceSetARP", HFILL }}, + { &hf_nrppa_listofDL_PRSResourceSetARP_item, + { "DLPRSResourceSetARP", "nrppa.DLPRSResourceSetARP_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_dL_PRSResourceSetARPLocation, + { "dL-PRSResourceSetARPLocation", "nrppa.dL_PRSResourceSetARPLocation", + FT_UINT32, BASE_DEC, VALS(nrppa_DL_PRSResourceSetARPLocation_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_listofDL_PRSResourceARP, + { "listofDL-PRSResourceARP", "nrppa.listofDL_PRSResourceARP", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxPRS_ResourcesPerSet_OF_DLPRSResourceARP", HFILL }}, + { &hf_nrppa_listofDL_PRSResourceARP_item, + { "DLPRSResourceARP", "nrppa.DLPRSResourceARP_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_relativeGeodeticLocation, + { "relativeGeodeticLocation", "nrppa.relativeGeodeticLocation_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_relativeCartesianLocation, + { "relativeCartesianLocation", "nrppa.relativeCartesianLocation_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_dL_PRSResourceARPLocation, + { "dL-PRSResourceARPLocation", "nrppa.dL_PRSResourceARPLocation", + FT_UINT32, BASE_DEC, VALS(nrppa_DL_PRSResourceARPLocation_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_servingCell_ID, + { "servingCell-ID", "nrppa.servingCell_ID_element", + FT_NONE, BASE_NONE, NULL, 0, + "NG_RAN_CGI", HFILL }}, + { &hf_nrppa_servingCellTAC, + { "servingCellTAC", "nrppa.servingCellTAC", + FT_UINT24, BASE_DEC_HEX, NULL, 0, + "TAC", HFILL }}, + { &hf_nrppa_nG_RANAccessPointPosition, + { "nG-RANAccessPointPosition", "nrppa.nG_RANAccessPointPosition_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_measuredResults, + { "measuredResults", "nrppa.measuredResults", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_tRPPositionDefinitionType, + { "tRPPositionDefinitionType", "nrppa.tRPPositionDefinitionType", + FT_UINT32, BASE_DEC, VALS(nrppa_TRPPositionDefinitionType_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_dLPRSResourceCoordinates, + { "dLPRSResourceCoordinates", "nrppa.dLPRSResourceCoordinates_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_rxTxTimeDiff, + { "rxTxTimeDiff", "nrppa.rxTxTimeDiff", + FT_UINT32, BASE_DEC, VALS(nrppa_GNBRxTxTimeDiffMeas_vals), 0, + "GNBRxTxTimeDiffMeas", HFILL }}, + { &hf_nrppa_additionalPathList, + { "additionalPathList", "nrppa.additionalPathList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_k0, + { "k0", "nrppa.k0", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1970049", HFILL }}, + { &hf_nrppa_k1, + { "k1", "nrppa.k1", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_985025", HFILL }}, + { &hf_nrppa_k2, + { "k2", "nrppa.k2", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_492513", HFILL }}, + { &hf_nrppa_k3, + { "k3", "nrppa.k3", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_246257", HFILL }}, + { &hf_nrppa_k4, + { "k4", "nrppa.k4", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_123129", HFILL }}, + { &hf_nrppa_k5, + { "k5", "nrppa.k5", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_61565", HFILL }}, + { &hf_nrppa_alpha, + { "alpha", "nrppa.alpha", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_3599", HFILL }}, + { &hf_nrppa_beta, + { "beta", "nrppa.beta", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_3599", HFILL }}, + { &hf_nrppa_gamma, + { "gamma", "nrppa.gamma", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_3599", HFILL }}, + { &hf_nrppa_alpha_01, + { "alpha", "nrppa.alpha", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_359", HFILL }}, + { &hf_nrppa_alphaFine, + { "alphaFine", "nrppa.alphaFine", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_9", HFILL }}, + { &hf_nrppa_beta_01, + { "beta", "nrppa.beta", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_359", HFILL }}, + { &hf_nrppa_betaFine, + { "betaFine", "nrppa.betaFine", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_9", HFILL }}, + { &hf_nrppa_gamma_01, + { "gamma", "nrppa.gamma", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_359", HFILL }}, + { &hf_nrppa_gammaFine, + { "gammaFine", "nrppa.gammaFine", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_9", HFILL }}, + { &hf_nrppa_horizontalUncertainty, + { "horizontalUncertainty", "nrppa.horizontalUncertainty", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_nrppa_horizontalConfidence, + { "horizontalConfidence", "nrppa.horizontalConfidence", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_100", HFILL }}, + { &hf_nrppa_verticalUncertainty, + { "verticalUncertainty", "nrppa.verticalUncertainty", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_nrppa_verticalConfidence, + { "verticalConfidence", "nrppa.verticalConfidence", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_100", HFILL }}, + { &hf_nrppa_loS_NLoSIndicatorSoft, + { "loS-NLoSIndicatorSoft", "nrppa.loS_NLoSIndicatorSoft", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_loS_NLoSIndicatorHard, + { "loS-NLoSIndicatorHard", "nrppa.loS_NLoSIndicatorHard", + FT_UINT32, BASE_DEC, VALS(nrppa_LoS_NLoSIndicatorHard_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_pRS_Resource_ID, + { "pRS-Resource-ID", "nrppa.pRS_Resource_ID", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_pRS_Resource_Set_ID, + { "pRS-Resource-Set-ID", "nrppa.pRS_Resource_Set_ID", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_sSB_Index, + { "sSB-Index", "nrppa.sSB_Index", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_MeasurementQuantities_item, + { "ProtocolIE-Single-Container", "nrppa.ProtocolIE_Single_Container_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_measurementQuantitiesValue, + { "measurementQuantitiesValue", "nrppa.measurementQuantitiesValue", + FT_UINT32, BASE_DEC, VALS(nrppa_MeasurementQuantitiesValue_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_MeasuredResults_item, + { "MeasuredResultsValue", "nrppa.MeasuredResultsValue", + FT_UINT32, BASE_DEC, VALS(nrppa_MeasuredResultsValue_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_valueAngleOfArrival_EUTRA, + { "valueAngleOfArrival-EUTRA", "nrppa.valueAngleOfArrival_EUTRA", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_719", HFILL }}, + { &hf_nrppa_valueTimingAdvanceType1_EUTRA, + { "valueTimingAdvanceType1-EUTRA", "nrppa.valueTimingAdvanceType1_EUTRA", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_7690", HFILL }}, + { &hf_nrppa_valueTimingAdvanceType2_EUTRA, + { "valueTimingAdvanceType2-EUTRA", "nrppa.valueTimingAdvanceType2_EUTRA", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_7690", HFILL }}, + { &hf_nrppa_resultRSRP_EUTRA, + { "resultRSRP-EUTRA", "nrppa.resultRSRP_EUTRA", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_resultRSRQ_EUTRA, + { "resultRSRQ-EUTRA", "nrppa.resultRSRQ_EUTRA", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_multipleULAoA_01, + { "multipleULAoA", "nrppa.multipleULAoA", + FT_UINT32, BASE_DEC, NULL, 0, + "MultipleULAoA_List", HFILL }}, + { &hf_nrppa_MultipleULAoA_List_item, + { "MultipleULAoA-Item", "nrppa.MultipleULAoA_Item", + FT_UINT32, BASE_DEC, VALS(nrppa_MultipleULAoA_Item_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_uL_AoA, + { "uL-AoA", "nrppa.uL_AoA_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_ul_ZoA, + { "ul-ZoA", "nrppa.ul_ZoA_element", + FT_NONE, BASE_NONE, NULL, 0, + "ZoA", HFILL }}, + { &hf_nrppa_latitudeSign, + { "latitudeSign", "nrppa.latitudeSign", + FT_UINT32, BASE_DEC, VALS(nrppa_T_latitudeSign_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_latitude, + { "latitude", "nrppa.latitude", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_8388607", HFILL }}, + { &hf_nrppa_longitude, + { "longitude", "nrppa.longitude", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M8388608_8388607", HFILL }}, + { &hf_nrppa_directionOfAltitude, + { "directionOfAltitude", "nrppa.directionOfAltitude", + FT_UINT32, BASE_DEC, VALS(nrppa_T_directionOfAltitude_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_altitude, + { "altitude", "nrppa.altitude", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_32767", HFILL }}, + { &hf_nrppa_uncertaintySemi_major, + { "uncertaintySemi-major", "nrppa.uncertaintySemi_major", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_127", HFILL }}, + { &hf_nrppa_uncertaintySemi_minor, + { "uncertaintySemi-minor", "nrppa.uncertaintySemi_minor", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_127", HFILL }}, + { &hf_nrppa_orientationOfMajorAxis, + { "orientationOfMajorAxis", "nrppa.orientationOfMajorAxis", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_179", HFILL }}, + { &hf_nrppa_uncertaintyAltitude, + { "uncertaintyAltitude", "nrppa.uncertaintyAltitude", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_127", HFILL }}, + { &hf_nrppa_confidence, + { "confidence", "nrppa.confidence", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_100", HFILL }}, + { &hf_nrppa_latitude_01, + { "latitude", "nrppa.latitude", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M2147483648_2147483647", HFILL }}, + { &hf_nrppa_longitude_01, + { "longitude", "nrppa.longitude", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M2147483648_2147483647", HFILL }}, + { &hf_nrppa_altitude_01, + { "altitude", "nrppa.altitude", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M64000_1280000", HFILL }}, + { &hf_nrppa_uncertaintySemi_major_01, + { "uncertaintySemi-major", "nrppa.uncertaintySemi_major", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_nrppa_uncertaintySemi_minor_01, + { "uncertaintySemi-minor", "nrppa.uncertaintySemi_minor", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_nrppa_uncertaintyAltitude_01, + { "uncertaintyAltitude", "nrppa.uncertaintyAltitude", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_nrppa_nG_RANcell, + { "nG-RANcell", "nrppa.nG_RANcell", + FT_UINT32, BASE_DEC, VALS(nrppa_NG_RANCell_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_eUTRA_CellID, + { "eUTRA-CellID", "nrppa.eUTRA_CellID", + FT_BYTES, BASE_NONE, NULL, 0, + "EUTRACellIdentifier", HFILL }}, + { &hf_nrppa_nR_CellID, + { "nR-CellID", "nrppa.nR_CellID", + FT_BYTES, BASE_NONE, NULL, 0, + "NRCellIdentifier", HFILL }}, + { &hf_nrppa_nR_PRS_Beam_InformationList, + { "nR-PRS-Beam-InformationList", "nrppa.nR_PRS_Beam_InformationList", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxPRS_ResourceSets_OF_NR_PRS_Beam_InformationItem", HFILL }}, + { &hf_nrppa_nR_PRS_Beam_InformationList_item, + { "NR-PRS-Beam-InformationItem", "nrppa.NR_PRS_Beam_InformationItem_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_lCS_to_GCS_TranslationList, + { "lCS-to-GCS-TranslationList", "nrppa.lCS_to_GCS_TranslationList", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxnolcs_gcs_translation_OF_LCS_to_GCS_TranslationItem", HFILL }}, + { &hf_nrppa_lCS_to_GCS_TranslationList_item, + { "LCS-to-GCS-TranslationItem", "nrppa.LCS_to_GCS_TranslationItem_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_pRSresourceSetID, + { "pRSresourceSetID", "nrppa.pRSresourceSetID", + FT_UINT32, BASE_DEC, NULL, 0, + "PRS_Resource_Set_ID", HFILL }}, + { &hf_nrppa_pRSAngle, + { "pRSAngle", "nrppa.pRSAngle", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxPRS_ResourcesPerSet_OF_PRSAngleItem", HFILL }}, + { &hf_nrppa_pRSAngle_item, + { "PRSAngleItem", "nrppa.PRSAngleItem_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_onDemandPRSRequestAllowed, + { "onDemandPRSRequestAllowed", "nrppa.onDemandPRSRequestAllowed", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_16", HFILL }}, + { &hf_nrppa_allowedResourceSetPeriodicityValues, + { "allowedResourceSetPeriodicityValues", "nrppa.allowedResourceSetPeriodicityValues", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_24", HFILL }}, + { &hf_nrppa_allowedPRSBandwidthValues, + { "allowedPRSBandwidthValues", "nrppa.allowedPRSBandwidthValues", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_64", HFILL }}, + { &hf_nrppa_allowedResourceRepetitionFactorValues, + { "allowedResourceRepetitionFactorValues", "nrppa.allowedResourceRepetitionFactorValues", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_8", HFILL }}, + { &hf_nrppa_allowedResourceNumberOfSymbolsValues, + { "allowedResourceNumberOfSymbolsValues", "nrppa.allowedResourceNumberOfSymbolsValues", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_8", HFILL }}, + { &hf_nrppa_allowedCombSizeValues, + { "allowedCombSizeValues", "nrppa.allowedCombSizeValues", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_8", HFILL }}, + { &hf_nrppa_OTDOACells_item, + { "OTDOACells item", "nrppa.OTDOACells_item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_oTDOACellInfo, + { "oTDOACellInfo", "nrppa.oTDOACellInfo", + FT_UINT32, BASE_DEC, NULL, 0, + "OTDOACell_Information", HFILL }}, + { &hf_nrppa_OTDOACell_Information_item, + { "OTDOACell-Information-Item", "nrppa.OTDOACell_Information_Item", + FT_UINT32, BASE_DEC, VALS(nrppa_OTDOACell_Information_Item_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_pCI_EUTRA, + { "pCI-EUTRA", "nrppa.pCI_EUTRA", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_cGI_EUTRA, + { "cGI-EUTRA", "nrppa.cGI_EUTRA_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_tAC, + { "tAC", "nrppa.tAC", + FT_UINT24, BASE_DEC_HEX, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_eARFCN, + { "eARFCN", "nrppa.eARFCN", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_pRS_Bandwidth_EUTRA, + { "pRS-Bandwidth-EUTRA", "nrppa.pRS_Bandwidth_EUTRA", + FT_UINT32, BASE_DEC, VALS(nrppa_PRS_Bandwidth_EUTRA_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_pRS_ConfigurationIndex_EUTRA, + { "pRS-ConfigurationIndex-EUTRA", "nrppa.pRS_ConfigurationIndex_EUTRA", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_cPLength_EUTRA, + { "cPLength-EUTRA", "nrppa.cPLength_EUTRA", + FT_UINT32, BASE_DEC, VALS(nrppa_CPLength_EUTRA_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_numberOfDlFrames_EUTRA, + { "numberOfDlFrames-EUTRA", "nrppa.numberOfDlFrames_EUTRA", + FT_UINT32, BASE_DEC, VALS(nrppa_NumberOfDlFrames_EUTRA_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_numberOfAntennaPorts_EUTRA, + { "numberOfAntennaPorts-EUTRA", "nrppa.numberOfAntennaPorts_EUTRA", + FT_UINT32, BASE_DEC, VALS(nrppa_NumberOfAntennaPorts_EUTRA_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_sFNInitialisationTime_EUTRA, + { "sFNInitialisationTime-EUTRA", "nrppa.sFNInitialisationTime_EUTRA", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_pRSMutingConfiguration_EUTRA, + { "pRSMutingConfiguration-EUTRA", "nrppa.pRSMutingConfiguration_EUTRA", + FT_UINT32, BASE_DEC, VALS(nrppa_PRSMutingConfiguration_EUTRA_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_prsid_EUTRA, + { "prsid-EUTRA", "nrppa.prsid_EUTRA", + FT_UINT32, BASE_DEC, NULL, 0, + "PRS_ID_EUTRA", HFILL }}, + { &hf_nrppa_tpid_EUTRA, + { "tpid-EUTRA", "nrppa.tpid_EUTRA", + FT_UINT32, BASE_DEC, NULL, 0, + "TP_ID_EUTRA", HFILL }}, + { &hf_nrppa_tpType_EUTRA, + { "tpType-EUTRA", "nrppa.tpType_EUTRA", + FT_UINT32, BASE_DEC, VALS(nrppa_TP_Type_EUTRA_vals), 0, + "TP_Type_EUTRA", HFILL }}, + { &hf_nrppa_numberOfDlFrames_Extended_EUTRA, + { "numberOfDlFrames-Extended-EUTRA", "nrppa.numberOfDlFrames_Extended_EUTRA", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_crsCPlength_EUTRA, + { "crsCPlength-EUTRA", "nrppa.crsCPlength_EUTRA", + FT_UINT32, BASE_DEC, VALS(nrppa_CPLength_EUTRA_vals), 0, + "CPLength_EUTRA", HFILL }}, + { &hf_nrppa_dL_Bandwidth_EUTRA, + { "dL-Bandwidth-EUTRA", "nrppa.dL_Bandwidth_EUTRA", + FT_UINT32, BASE_DEC, VALS(nrppa_DL_Bandwidth_EUTRA_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_pRSOccasionGroup_EUTRA, + { "pRSOccasionGroup-EUTRA", "nrppa.pRSOccasionGroup_EUTRA", + FT_UINT32, BASE_DEC, VALS(nrppa_PRSOccasionGroup_EUTRA_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_pRSFrequencyHoppingConfiguration_EUTRA, + { "pRSFrequencyHoppingConfiguration-EUTRA", "nrppa.pRSFrequencyHoppingConfiguration_EUTRA_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_OtherRATMeasurementQuantities_item, + { "ProtocolIE-Single-Container", "nrppa.ProtocolIE_Single_Container_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_otherRATMeasurementQuantitiesValue, + { "otherRATMeasurementQuantitiesValue", "nrppa.otherRATMeasurementQuantitiesValue", + FT_UINT32, BASE_DEC, VALS(nrppa_OtherRATMeasurementQuantitiesValue_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_OtherRATMeasurementResult_item, + { "OtherRATMeasuredResultsValue", "nrppa.OtherRATMeasuredResultsValue", + FT_UINT32, BASE_DEC, VALS(nrppa_OtherRATMeasuredResultsValue_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_resultGERAN, + { "resultGERAN", "nrppa.resultGERAN", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_resultUTRAN, + { "resultUTRAN", "nrppa.resultUTRAN", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_pathlossReferenceSignal, + { "pathlossReferenceSignal", "nrppa.pathlossReferenceSignal", + FT_UINT32, BASE_DEC, VALS(nrppa_PathlossReferenceSignal_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_sSB_Reference, + { "sSB-Reference", "nrppa.sSB_Reference_element", + FT_NONE, BASE_NONE, NULL, 0, + "SSB", HFILL }}, + { &hf_nrppa_dL_PRS_Reference, + { "dL-PRS-Reference", "nrppa.dL_PRS_Reference_element", + FT_NONE, BASE_NONE, NULL, 0, + "DL_PRS", HFILL }}, + { &hf_nrppa_PeriodicityList_item, + { "PeriodicityItem", "nrppa.PeriodicityItem", + FT_UINT32, BASE_DEC, VALS(nrppa_PeriodicityItem_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_PosSIBs_item, + { "PosSIBs item", "nrppa.PosSIBs_item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_posSIB_Segments, + { "posSIB-Segments", "nrppa.posSIB_Segments", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_assistanceInformationMetaData, + { "assistanceInformationMetaData", "nrppa.assistanceInformationMetaData_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_broadcastPriority, + { "broadcastPriority", "nrppa.broadcastPriority", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_16_", HFILL }}, + { &hf_nrppa_PosSIB_Segments_item, + { "PosSIB-Segments item", "nrppa.PosSIB_Segments_item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_assistanceDataSIBelement, + { "assistanceDataSIBelement", "nrppa.assistanceDataSIBelement", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING", HFILL }}, + { &hf_nrppa_PosSRSResource_List_item, + { "PosSRSResource-Item", "nrppa.PosSRSResource_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_srs_PosResourceId, + { "srs-PosResourceId", "nrppa.srs_PosResourceId", + FT_UINT32, BASE_DEC, NULL, 0, + "SRSPosResourceID", HFILL }}, + { &hf_nrppa_transmissionCombPos, + { "transmissionCombPos", "nrppa.transmissionCombPos", + FT_UINT32, BASE_DEC, VALS(nrppa_TransmissionCombPos_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_startPosition, + { "startPosition", "nrppa.startPosition", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_13", HFILL }}, + { &hf_nrppa_nrofSymbols, + { "nrofSymbols", "nrppa.nrofSymbols", + FT_UINT32, BASE_DEC, VALS(nrppa_T_nrofSymbols_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_freqDomainShift, + { "freqDomainShift", "nrppa.freqDomainShift", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_268", HFILL }}, + { &hf_nrppa_c_SRS, + { "c-SRS", "nrppa.c_SRS", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_63", HFILL }}, + { &hf_nrppa_groupOrSequenceHopping, + { "groupOrSequenceHopping", "nrppa.groupOrSequenceHopping", + FT_UINT32, BASE_DEC, VALS(nrppa_T_groupOrSequenceHopping_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_resourceTypePos, + { "resourceTypePos", "nrppa.resourceTypePos", + FT_UINT32, BASE_DEC, VALS(nrppa_ResourceTypePos_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_sequenceId, + { "sequenceId", "nrppa.sequenceId", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_65535", HFILL }}, + { &hf_nrppa_spatialRelationPos, + { "spatialRelationPos", "nrppa.spatialRelationPos", + FT_UINT32, BASE_DEC, VALS(nrppa_SpatialRelationPos_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_PosSRSResourceID_List_item, + { "SRSPosResourceID", "nrppa.SRSPosResourceID", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_PosSRSResourceSet_List_item, + { "PosSRSResourceSet-Item", "nrppa.PosSRSResourceSet_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_PosSRSResourceIDPerSet_List_item, + { "SRSPosResourceID", "nrppa.SRSPosResourceID", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_possrsResourceSetID, + { "possrsResourceSetID", "nrppa.possrsResourceSetID", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_15", HFILL }}, + { &hf_nrppa_possRSResourceIDPerSet_List, + { "possRSResourceIDPerSet-List", "nrppa.possRSResourceIDPerSet_List", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_posresourceSetType, + { "posresourceSetType", "nrppa.posresourceSetType", + FT_UINT32, BASE_DEC, VALS(nrppa_PosResourceSetType_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_periodic, + { "periodic", "nrppa.periodic_element", + FT_NONE, BASE_NONE, NULL, 0, + "PosResourceSetTypePeriodic", HFILL }}, + { &hf_nrppa_semi_persistent, + { "semi-persistent", "nrppa.semi_persistent_element", + FT_NONE, BASE_NONE, NULL, 0, + "PosResourceSetTypeSemi_persistent", HFILL }}, + { &hf_nrppa_aperiodic, + { "aperiodic", "nrppa.aperiodic_element", + FT_NONE, BASE_NONE, NULL, 0, + "PosResourceSetTypeAperiodic", HFILL }}, + { &hf_nrppa_posperiodicSet, + { "posperiodicSet", "nrppa.posperiodicSet", + FT_UINT32, BASE_DEC, VALS(nrppa_T_posperiodicSet_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_possemi_persistentSet, + { "possemi-persistentSet", "nrppa.possemi_persistentSet", + FT_UINT32, BASE_DEC, VALS(nrppa_T_possemi_persistentSet_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_sRSResourceTrigger, + { "sRSResourceTrigger", "nrppa.sRSResourceTrigger", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_3", HFILL }}, + { &hf_nrppa_nRPRSAzimuth, + { "nRPRSAzimuth", "nrppa.nRPRSAzimuth", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_359", HFILL }}, + { &hf_nrppa_nRPRSAzimuthFine, + { "nRPRSAzimuthFine", "nrppa.nRPRSAzimuthFine", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_9", HFILL }}, + { &hf_nrppa_nRPRSElevation, + { "nRPRSElevation", "nrppa.nRPRSElevation", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_180", HFILL }}, + { &hf_nrppa_nRPRSElevationFine, + { "nRPRSElevationFine", "nrppa.nRPRSElevationFine", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_9", HFILL }}, + { &hf_nrppa_pRS_IDPos, + { "pRS-IDPos", "nrppa.pRS_IDPos", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_nrppa_pRS_Resource_Set_IDPos, + { "pRS-Resource-Set-IDPos", "nrppa.pRS_Resource_Set_IDPos", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_7", HFILL }}, + { &hf_nrppa_pRS_Resource_IDPos, + { "pRS-Resource-IDPos", "nrppa.pRS_Resource_IDPos", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_63", HFILL }}, + { &hf_nrppa_pRSResourceSet_List, + { "pRSResourceSet-List", "nrppa.pRSResourceSet_List", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_sixty_four, + { "sixty-four", "nrppa.sixty_four", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_64", HFILL }}, + { &hf_nrppa_one_hundred_and_twenty_eight, + { "one-hundred-and-twenty-eight", "nrppa.one_hundred_and_twenty_eight", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_128", HFILL }}, + { &hf_nrppa_two_hundred_and_fifty_six, + { "two-hundred-and-fifty-six", "nrppa.two_hundred_and_fifty_six", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_256", HFILL }}, + { &hf_nrppa_five_hundred_and_twelve, + { "five-hundred-and-twelve", "nrppa.five_hundred_and_twelve", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_512", HFILL }}, + { &hf_nrppa_one_thousand_and_twenty_four, + { "one-thousand-and-twenty-four", "nrppa.one_thousand_and_twenty_four", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_1024", HFILL }}, + { &hf_nrppa_noOfFreqHoppingBands, + { "noOfFreqHoppingBands", "nrppa.noOfFreqHoppingBands", + FT_UINT32, BASE_DEC, VALS(nrppa_NumberOfFrequencyHoppingBands_vals), 0, + "NumberOfFrequencyHoppingBands", HFILL }}, + { &hf_nrppa_bandPositions, + { "bandPositions", "nrppa.bandPositions", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxnoFreqHoppingBandsMinusOne_OF_NarrowBandIndex", HFILL }}, + { &hf_nrppa_bandPositions_item, + { "NarrowBandIndex", "nrppa.NarrowBandIndex", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_PRS_Measurements_Info_List_item, + { "PRS-Measurements-Info-List-Item", "nrppa.PRS_Measurements_Info_List_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_measPRSPeriodicity, + { "measPRSPeriodicity", "nrppa.measPRSPeriodicity", + FT_UINT32, BASE_DEC, VALS(nrppa_T_measPRSPeriodicity_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_measPRSOffset, + { "measPRSOffset", "nrppa.measPRSOffset", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_159_", HFILL }}, + { &hf_nrppa_measurementPRSLength, + { "measurementPRSLength", "nrppa.measurementPRSLength", + FT_UINT32, BASE_DEC, VALS(nrppa_T_measurementPRSLength_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_pRSMutingOption1, + { "pRSMutingOption1", "nrppa.pRSMutingOption1_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_pRSMutingOption2, + { "pRSMutingOption2", "nrppa.pRSMutingOption2_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_mutingPattern, + { "mutingPattern", "nrppa.mutingPattern", + FT_UINT32, BASE_DEC, VALS(nrppa_DL_PRSMutingPattern_vals), 0, + "DL_PRSMutingPattern", HFILL }}, + { &hf_nrppa_mutingBitRepetitionFactor, + { "mutingBitRepetitionFactor", "nrppa.mutingBitRepetitionFactor", + FT_UINT32, BASE_DEC, VALS(nrppa_T_mutingBitRepetitionFactor_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_PRSResource_List_item, + { "PRSResource-Item", "nrppa.PRSResource_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_pRSResourceID, + { "pRSResourceID", "nrppa.pRSResourceID", + FT_UINT32, BASE_DEC, NULL, 0, + "PRS_Resource_ID", HFILL }}, + { &hf_nrppa_sequenceID, + { "sequenceID", "nrppa.sequenceID", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_4095", HFILL }}, + { &hf_nrppa_rEOffset, + { "rEOffset", "nrppa.rEOffset", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_11_", HFILL }}, + { &hf_nrppa_resourceSlotOffset, + { "resourceSlotOffset", "nrppa.resourceSlotOffset", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_511", HFILL }}, + { &hf_nrppa_resourceSymbolOffset, + { "resourceSymbolOffset", "nrppa.resourceSymbolOffset", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_12", HFILL }}, + { &hf_nrppa_qCLInfo, + { "qCLInfo", "nrppa.qCLInfo", + FT_UINT32, BASE_DEC, VALS(nrppa_PRSResource_QCLInfo_vals), 0, + "PRSResource_QCLInfo", HFILL }}, + { &hf_nrppa_qCLSourceSSB, + { "qCLSourceSSB", "nrppa.qCLSourceSSB_element", + FT_NONE, BASE_NONE, NULL, 0, + "PRSResource_QCLSourceSSB", HFILL }}, + { &hf_nrppa_qCLSourcePRS, + { "qCLSourcePRS", "nrppa.qCLSourcePRS_element", + FT_NONE, BASE_NONE, NULL, 0, + "PRSResource_QCLSourcePRS", HFILL }}, + { &hf_nrppa_pCI_NR, + { "pCI-NR", "nrppa.pCI_NR", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1007", HFILL }}, + { &hf_nrppa_qCLSourcePRSResourceSetID, + { "qCLSourcePRSResourceSetID", "nrppa.qCLSourcePRSResourceSetID", + FT_UINT32, BASE_DEC, NULL, 0, + "PRS_Resource_Set_ID", HFILL }}, + { &hf_nrppa_qCLSourcePRSResourceID, + { "qCLSourcePRSResourceID", "nrppa.qCLSourcePRSResourceID", + FT_UINT32, BASE_DEC, NULL, 0, + "PRS_Resource_ID", HFILL }}, + { &hf_nrppa_PRSResourceSet_List_item, + { "PRSResourceSet-Item", "nrppa.PRSResourceSet_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_pRSResourceSetID, + { "pRSResourceSetID", "nrppa.pRSResourceSetID", + FT_UINT32, BASE_DEC, NULL, 0, + "PRS_Resource_Set_ID", HFILL }}, + { &hf_nrppa_subcarrierSpacing_01, + { "subcarrierSpacing", "nrppa.subcarrierSpacing", + FT_UINT32, BASE_DEC, VALS(nrppa_T_subcarrierSpacing_01_vals), 0, + "T_subcarrierSpacing_01", HFILL }}, + { &hf_nrppa_pRSbandwidth, + { "pRSbandwidth", "nrppa.pRSbandwidth", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_63", HFILL }}, + { &hf_nrppa_startPRB, + { "startPRB", "nrppa.startPRB", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_2176", HFILL }}, + { &hf_nrppa_combSize, + { "combSize", "nrppa.combSize", + FT_UINT32, BASE_DEC, VALS(nrppa_T_combSize_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_cPType, + { "cPType", "nrppa.cPType", + FT_UINT32, BASE_DEC, VALS(nrppa_T_cPType_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_resourceSetPeriodicity, + { "resourceSetPeriodicity", "nrppa.resourceSetPeriodicity", + FT_UINT32, BASE_DEC, VALS(nrppa_T_resourceSetPeriodicity_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_resourceSetSlotOffset, + { "resourceSetSlotOffset", "nrppa.resourceSetSlotOffset", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_81919_", HFILL }}, + { &hf_nrppa_resourceRepetitionFactor, + { "resourceRepetitionFactor", "nrppa.resourceRepetitionFactor", + FT_UINT32, BASE_DEC, VALS(nrppa_T_resourceRepetitionFactor_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_resourceTimeGap, + { "resourceTimeGap", "nrppa.resourceTimeGap", + FT_UINT32, BASE_DEC, VALS(nrppa_T_resourceTimeGap_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_resourceNumberofSymbols, + { "resourceNumberofSymbols", "nrppa.resourceNumberofSymbols", + FT_UINT32, BASE_DEC, VALS(nrppa_T_resourceNumberofSymbols_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_pRSMuting, + { "pRSMuting", "nrppa.pRSMuting_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_pRSResourceTransmitPower, + { "pRSResourceTransmitPower", "nrppa.pRSResourceTransmitPower", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M60_50", HFILL }}, + { &hf_nrppa_pRSResource_List, + { "pRSResource-List", "nrppa.pRSResource_List", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_pRSTransmissionOffPerTRP, + { "pRSTransmissionOffPerTRP", "nrppa.pRSTransmissionOffPerTRP_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_pRSTransmissionOffPerResourceSet, + { "pRSTransmissionOffPerResourceSet", "nrppa.pRSTransmissionOffPerResourceSet", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_pRSTransmissionOffPerResource, + { "pRSTransmissionOffPerResource", "nrppa.pRSTransmissionOffPerResource", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_PRSTransmissionOffPerResource_item, + { "PRSTransmissionOffPerResource-Item", "nrppa.PRSTransmissionOffPerResource_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_pRSTransmissionOffIndicationPerResourceList, + { "pRSTransmissionOffIndicationPerResourceList", "nrppa.pRSTransmissionOffIndicationPerResourceList", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxnoofPRSresource_OF_PRSTransmissionOffIndicationPerResource_Item", HFILL }}, + { &hf_nrppa_pRSTransmissionOffIndicationPerResourceList_item, + { "PRSTransmissionOffIndicationPerResource-Item", "nrppa.PRSTransmissionOffIndicationPerResource_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_pRSTransmissionOffIndication, + { "pRSTransmissionOffIndication", "nrppa.pRSTransmissionOffIndication", + FT_UINT32, BASE_DEC, VALS(nrppa_PRSTransmissionOffIndication_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_PRSTransmissionOffPerResourceSet_item, + { "PRSTransmissionOffPerResourceSet-Item", "nrppa.PRSTransmissionOffPerResourceSet_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_PRSTRPList_item, + { "PRSTRPItem", "nrppa.PRSTRPItem_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_tRP_ID, + { "tRP-ID", "nrppa.tRP_ID", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_requestedDLPRSTransmissionCharacteristics, + { "requestedDLPRSTransmissionCharacteristics", "nrppa.requestedDLPRSTransmissionCharacteristics_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_pRSTransmissionOffInformation, + { "pRSTransmissionOffInformation", "nrppa.pRSTransmissionOffInformation_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_PRSTransmissionTRPList_item, + { "PRSTransmissionTRPItem", "nrppa.PRSTransmissionTRPItem_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_pRSConfiguration, + { "pRSConfiguration", "nrppa.pRSConfiguration_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_nZP_CSI_RS, + { "nZP-CSI-RS", "nrppa.nZP_CSI_RS", + FT_UINT32, BASE_DEC, NULL, 0, + "NZP_CSI_RS_ResourceID", HFILL }}, + { &hf_nrppa_sSB, + { "sSB", "nrppa.sSB_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_sRS, + { "sRS", "nrppa.sRS", + FT_UINT32, BASE_DEC, NULL, 0, + "SRSResourceID", HFILL }}, + { &hf_nrppa_positioningSRS, + { "positioningSRS", "nrppa.positioningSRS", + FT_UINT32, BASE_DEC, NULL, 0, + "SRSPosResourceID", HFILL }}, + { &hf_nrppa_dL_PRS, + { "dL-PRS", "nrppa.dL_PRS_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_relativeCoordinateID, + { "relativeCoordinateID", "nrppa.relativeCoordinateID", + FT_UINT32, BASE_DEC, NULL, 0, + "CoordinateID", HFILL }}, + { &hf_nrppa_referencePointCoordinate, + { "referencePointCoordinate", "nrppa.referencePointCoordinate_element", + FT_NONE, BASE_NONE, NULL, 0, + "NG_RANAccessPointPosition", HFILL }}, + { &hf_nrppa_referencePointCoordinateHA, + { "referencePointCoordinateHA", "nrppa.referencePointCoordinateHA_element", + FT_NONE, BASE_NONE, NULL, 0, + "NGRANHighAccuracyAccessPointPosition", HFILL }}, + { &hf_nrppa_milli_Arc_SecondUnits, + { "milli-Arc-SecondUnits", "nrppa.milli_Arc_SecondUnits", + FT_UINT32, BASE_DEC, VALS(nrppa_T_milli_Arc_SecondUnits_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_heightUnits, + { "heightUnits", "nrppa.heightUnits", + FT_UINT32, BASE_DEC, VALS(nrppa_T_heightUnits_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_deltaLatitude, + { "deltaLatitude", "nrppa.deltaLatitude", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M1024_1023", HFILL }}, + { &hf_nrppa_deltaLongitude, + { "deltaLongitude", "nrppa.deltaLongitude", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M1024_1023", HFILL }}, + { &hf_nrppa_deltaHeight, + { "deltaHeight", "nrppa.deltaHeight", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M1024_1023", HFILL }}, + { &hf_nrppa_locationUncertainty, + { "locationUncertainty", "nrppa.locationUncertainty_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_xYZunit, + { "xYZunit", "nrppa.xYZunit", + FT_UINT32, BASE_DEC, VALS(nrppa_T_xYZunit_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_xvalue, + { "xvalue", "nrppa.xvalue", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M65536_65535", HFILL }}, + { &hf_nrppa_yvalue, + { "yvalue", "nrppa.yvalue", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M65536_65535", HFILL }}, + { &hf_nrppa_zvalue, + { "zvalue", "nrppa.zvalue", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M32768_32767", HFILL }}, + { &hf_nrppa_k0_01, + { "k0", "nrppa.k0", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_16351", HFILL }}, + { &hf_nrppa_k1_01, + { "k1", "nrppa.k1", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_8176", HFILL }}, + { &hf_nrppa_k2_01, + { "k2", "nrppa.k2", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_4088", HFILL }}, + { &hf_nrppa_k3_01, + { "k3", "nrppa.k3", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_2044", HFILL }}, + { &hf_nrppa_k4_01, + { "k4", "nrppa.k4", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1022", HFILL }}, + { &hf_nrppa_k5_01, + { "k5", "nrppa.k5", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_511", HFILL }}, + { &hf_nrppa_requestedDLPRSResourceSet_List, + { "requestedDLPRSResourceSet-List", "nrppa.requestedDLPRSResourceSet_List", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_numberofFrequencyLayers, + { "numberofFrequencyLayers", "nrppa.numberofFrequencyLayers", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_4", HFILL }}, + { &hf_nrppa_startTimeAndDuration, + { "startTimeAndDuration", "nrppa.startTimeAndDuration_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_RequestedDLPRSResourceSet_List_item, + { "RequestedDLPRSResourceSet-Item", "nrppa.RequestedDLPRSResourceSet_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_combSize_01, + { "combSize", "nrppa.combSize", + FT_UINT32, BASE_DEC, VALS(nrppa_T_combSize_01_vals), 0, + "T_combSize_01", HFILL }}, + { &hf_nrppa_resourceSetPeriodicity_01, + { "resourceSetPeriodicity", "nrppa.resourceSetPeriodicity", + FT_UINT32, BASE_DEC, VALS(nrppa_T_resourceSetPeriodicity_01_vals), 0, + "T_resourceSetPeriodicity_01", HFILL }}, + { &hf_nrppa_resourceRepetitionFactor_01, + { "resourceRepetitionFactor", "nrppa.resourceRepetitionFactor", + FT_UINT32, BASE_DEC, VALS(nrppa_T_resourceRepetitionFactor_01_vals), 0, + "T_resourceRepetitionFactor_01", HFILL }}, + { &hf_nrppa_resourceNumberofSymbols_01, + { "resourceNumberofSymbols", "nrppa.resourceNumberofSymbols", + FT_UINT32, BASE_DEC, VALS(nrppa_T_resourceNumberofSymbols_01_vals), 0, + "T_resourceNumberofSymbols_01", HFILL }}, + { &hf_nrppa_requestedDLPRSResource_List, + { "requestedDLPRSResource-List", "nrppa.requestedDLPRSResource_List", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_resourceSetStartTimeAndDuration, + { "resourceSetStartTimeAndDuration", "nrppa.resourceSetStartTimeAndDuration_element", + FT_NONE, BASE_NONE, NULL, 0, + "StartTimeAndDuration", HFILL }}, + { &hf_nrppa_RequestedDLPRSResource_List_item, + { "RequestedDLPRSResource-Item", "nrppa.RequestedDLPRSResource_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_numberOfTransmissions, + { "numberOfTransmissions", "nrppa.numberOfTransmissions", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_500_", HFILL }}, + { &hf_nrppa_resourceType, + { "resourceType", "nrppa.resourceType", + FT_UINT32, BASE_DEC, VALS(nrppa_T_resourceType_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_bandwidth, + { "bandwidth", "nrppa.bandwidth", + FT_UINT32, BASE_DEC, VALS(nrppa_BandwidthSRS_vals), 0, + "BandwidthSRS", HFILL }}, + { &hf_nrppa_listOfSRSResourceSet, + { "listOfSRSResourceSet", "nrppa.listOfSRSResourceSet", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxnoSRS_ResourceSets_OF_SRSResourceSet_Item", HFILL }}, + { &hf_nrppa_listOfSRSResourceSet_item, + { "SRSResourceSet-Item", "nrppa.SRSResourceSet_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_sSBInformation, + { "sSBInformation", "nrppa.sSBInformation_element", + FT_NONE, BASE_NONE, NULL, 0, + "SSBInfo", HFILL }}, + { &hf_nrppa_numberOfSRSResourcePerSet, + { "numberOfSRSResourcePerSet", "nrppa.numberOfSRSResourcePerSet", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_16_", HFILL }}, + { &hf_nrppa_periodicityList, + { "periodicityList", "nrppa.periodicityList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_spatialRelationInformation, + { "spatialRelationInformation", "nrppa.spatialRelationInformation_element", + FT_NONE, BASE_NONE, NULL, 0, + "SpatialRelationInfo", HFILL }}, + { &hf_nrppa_pathlossReferenceInformation, + { "pathlossReferenceInformation", "nrppa.pathlossReferenceInformation_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_periodic_01, + { "periodic", "nrppa.periodic_element", + FT_NONE, BASE_NONE, NULL, 0, + "ResourceSetTypePeriodic", HFILL }}, + { &hf_nrppa_semi_persistent_01, + { "semi-persistent", "nrppa.semi_persistent_element", + FT_NONE, BASE_NONE, NULL, 0, + "ResourceSetTypeSemi_persistent", HFILL }}, + { &hf_nrppa_aperiodic_01, + { "aperiodic", "nrppa.aperiodic_element", + FT_NONE, BASE_NONE, NULL, 0, + "ResourceSetTypeAperiodic", HFILL }}, + { &hf_nrppa_periodicSet, + { "periodicSet", "nrppa.periodicSet", + FT_UINT32, BASE_DEC, VALS(nrppa_T_periodicSet_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_semi_persistentSet, + { "semi-persistentSet", "nrppa.semi_persistentSet", + FT_UINT32, BASE_DEC, VALS(nrppa_T_semi_persistentSet_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_slotoffset, + { "slotoffset", "nrppa.slotoffset", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_32", HFILL }}, + { &hf_nrppa_periodic_02, + { "periodic", "nrppa.periodic_element", + FT_NONE, BASE_NONE, NULL, 0, + "ResourceTypePeriodic", HFILL }}, + { &hf_nrppa_semi_persistent_02, + { "semi-persistent", "nrppa.semi_persistent_element", + FT_NONE, BASE_NONE, NULL, 0, + "ResourceTypeSemi_persistent", HFILL }}, + { &hf_nrppa_aperiodic_02, + { "aperiodic", "nrppa.aperiodic_element", + FT_NONE, BASE_NONE, NULL, 0, + "ResourceTypeAperiodic", HFILL }}, + { &hf_nrppa_periodicity, + { "periodicity", "nrppa.periodicity", + FT_UINT32, BASE_DEC, VALS(nrppa_T_periodicity_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_offset, + { "offset", "nrppa.offset", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_2559_", HFILL }}, + { &hf_nrppa_periodicity_01, + { "periodicity", "nrppa.periodicity", + FT_UINT32, BASE_DEC, VALS(nrppa_T_periodicity_01_vals), 0, + "T_periodicity_01", HFILL }}, + { &hf_nrppa_aperiodicResourceType, + { "aperiodicResourceType", "nrppa.aperiodicResourceType", + FT_UINT32, BASE_DEC, VALS(nrppa_T_aperiodicResourceType_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_periodic_03, + { "periodic", "nrppa.periodic_element", + FT_NONE, BASE_NONE, NULL, 0, + "ResourceTypePeriodicPos", HFILL }}, + { &hf_nrppa_semi_persistent_03, + { "semi-persistent", "nrppa.semi_persistent_element", + FT_NONE, BASE_NONE, NULL, 0, + "ResourceTypeSemi_persistentPos", HFILL }}, + { &hf_nrppa_aperiodic_03, + { "aperiodic", "nrppa.aperiodic_element", + FT_NONE, BASE_NONE, NULL, 0, + "ResourceTypeAperiodicPos", HFILL }}, + { &hf_nrppa_periodicity_02, + { "periodicity", "nrppa.periodicity", + FT_UINT32, BASE_DEC, VALS(nrppa_T_periodicity_02_vals), 0, + "T_periodicity_02", HFILL }}, + { &hf_nrppa_offset_01, + { "offset", "nrppa.offset", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_81919_", HFILL }}, + { &hf_nrppa_periodicity_03, + { "periodicity", "nrppa.periodicity", + FT_UINT32, BASE_DEC, VALS(nrppa_T_periodicity_03_vals), 0, + "T_periodicity_03", HFILL }}, + { &hf_nrppa_slotOffset, + { "slotOffset", "nrppa.slotOffset", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_32", HFILL }}, + { &hf_nrppa_time, + { "time", "nrppa.time", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_128_", HFILL }}, + { &hf_nrppa_timeUnit, + { "timeUnit", "nrppa.timeUnit", + FT_UINT32, BASE_DEC, VALS(nrppa_T_timeUnit_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_ResultCSI_RSRP_item, + { "ResultCSI-RSRP-Item", "nrppa.ResultCSI_RSRP_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_nR_PCI, + { "nR-PCI", "nrppa.nR_PCI", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_nR_ARFCN, + { "nR-ARFCN", "nrppa.nR_ARFCN", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_cGI_NR, + { "cGI-NR", "nrppa.cGI_NR_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_valueCSI_RSRP_Cell, + { "valueCSI-RSRP-Cell", "nrppa.valueCSI_RSRP_Cell", + FT_UINT32, BASE_DEC, NULL, 0, + "ValueRSRP_NR", HFILL }}, + { &hf_nrppa_cSI_RSRP_PerCSI_RS, + { "cSI-RSRP-PerCSI-RS", "nrppa.cSI_RSRP_PerCSI_RS", + FT_UINT32, BASE_DEC, NULL, 0, + "ResultCSI_RSRP_PerCSI_RS", HFILL }}, + { &hf_nrppa_ResultCSI_RSRP_PerCSI_RS_item, + { "ResultCSI-RSRP-PerCSI-RS-Item", "nrppa.ResultCSI_RSRP_PerCSI_RS_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_cSI_RS_Index, + { "cSI-RS-Index", "nrppa.cSI_RS_Index", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_95", HFILL }}, + { &hf_nrppa_valueCSI_RSRP, + { "valueCSI-RSRP", "nrppa.valueCSI_RSRP", + FT_UINT32, BASE_DEC, NULL, 0, + "ValueRSRP_NR", HFILL }}, + { &hf_nrppa_ResultCSI_RSRQ_item, + { "ResultCSI-RSRQ-Item", "nrppa.ResultCSI_RSRQ_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_valueCSI_RSRQ_Cell, + { "valueCSI-RSRQ-Cell", "nrppa.valueCSI_RSRQ_Cell", + FT_UINT32, BASE_DEC, NULL, 0, + "ValueRSRQ_NR", HFILL }}, + { &hf_nrppa_cSI_RSRQ_PerCSI_RS, + { "cSI-RSRQ-PerCSI-RS", "nrppa.cSI_RSRQ_PerCSI_RS", + FT_UINT32, BASE_DEC, NULL, 0, + "ResultCSI_RSRQ_PerCSI_RS", HFILL }}, + { &hf_nrppa_ResultCSI_RSRQ_PerCSI_RS_item, + { "ResultCSI-RSRQ-PerCSI-RS-Item", "nrppa.ResultCSI_RSRQ_PerCSI_RS_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_valueCSI_RSRQ, + { "valueCSI-RSRQ", "nrppa.valueCSI_RSRQ", + FT_UINT32, BASE_DEC, NULL, 0, + "ValueRSRQ_NR", HFILL }}, + { &hf_nrppa_ResultEUTRA_item, + { "ResultEUTRA-Item", "nrppa.ResultEUTRA_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_valueRSRP_EUTRA, + { "valueRSRP-EUTRA", "nrppa.valueRSRP_EUTRA", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_valueRSRQ_EUTRA, + { "valueRSRQ-EUTRA", "nrppa.valueRSRQ_EUTRA", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_ResultRSRP_EUTRA_item, + { "ResultRSRP-EUTRA-Item", "nrppa.ResultRSRP_EUTRA_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_ResultRSRQ_EUTRA_item, + { "ResultRSRQ-EUTRA-Item", "nrppa.ResultRSRQ_EUTRA_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_cGI_UTRA, + { "cGI-UTRA", "nrppa.cGI_UTRA_element", + FT_NONE, BASE_NONE, NULL, 0, + "CGI_EUTRA", HFILL }}, + { &hf_nrppa_ResultSS_RSRP_item, + { "ResultSS-RSRP-Item", "nrppa.ResultSS_RSRP_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_valueSS_RSRP_Cell, + { "valueSS-RSRP-Cell", "nrppa.valueSS_RSRP_Cell", + FT_UINT32, BASE_DEC, NULL, 0, + "ValueRSRP_NR", HFILL }}, + { &hf_nrppa_sS_RSRP_PerSSB, + { "sS-RSRP-PerSSB", "nrppa.sS_RSRP_PerSSB", + FT_UINT32, BASE_DEC, NULL, 0, + "ResultSS_RSRP_PerSSB", HFILL }}, + { &hf_nrppa_ResultSS_RSRP_PerSSB_item, + { "ResultSS-RSRP-PerSSB-Item", "nrppa.ResultSS_RSRP_PerSSB_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_valueSS_RSRP, + { "valueSS-RSRP", "nrppa.valueSS_RSRP", + FT_UINT32, BASE_DEC, NULL, 0, + "ValueRSRP_NR", HFILL }}, + { &hf_nrppa_ResultSS_RSRQ_item, + { "ResultSS-RSRQ-Item", "nrppa.ResultSS_RSRQ_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_valueSS_RSRQ_Cell, + { "valueSS-RSRQ-Cell", "nrppa.valueSS_RSRQ_Cell", + FT_UINT32, BASE_DEC, NULL, 0, + "ValueRSRQ_NR", HFILL }}, + { &hf_nrppa_sS_RSRQ_PerSSB, + { "sS-RSRQ-PerSSB", "nrppa.sS_RSRQ_PerSSB", + FT_UINT32, BASE_DEC, NULL, 0, + "ResultSS_RSRQ_PerSSB", HFILL }}, + { &hf_nrppa_ResultSS_RSRQ_PerSSB_item, + { "ResultSS-RSRQ-PerSSB-Item", "nrppa.ResultSS_RSRQ_PerSSB_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_valueSS_RSRQ, + { "valueSS-RSRQ", "nrppa.valueSS_RSRQ", + FT_UINT32, BASE_DEC, NULL, 0, + "ValueRSRQ_NR", HFILL }}, + { &hf_nrppa_ResultGERAN_item, + { "ResultGERAN-Item", "nrppa.ResultGERAN_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_bCCH, + { "bCCH", "nrppa.bCCH", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_physCellIDGERAN, + { "physCellIDGERAN", "nrppa.physCellIDGERAN", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_rSSI, + { "rSSI", "nrppa.rSSI", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_ResultNR_item, + { "ResultNR-Item", "nrppa.ResultNR_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_ResultUTRAN_item, + { "ResultUTRAN-Item", "nrppa.ResultUTRAN_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_uARFCN, + { "uARFCN", "nrppa.uARFCN", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_physCellIDUTRAN, + { "physCellIDUTRAN", "nrppa.physCellIDUTRAN", + FT_UINT32, BASE_DEC, VALS(nrppa_T_physCellIDUTRAN_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_physCellIDUTRA_FDD, + { "physCellIDUTRA-FDD", "nrppa.physCellIDUTRA_FDD", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_physCellIDUTRA_TDD, + { "physCellIDUTRA-TDD", "nrppa.physCellIDUTRA_TDD", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_uTRA_RSCP, + { "uTRA-RSCP", "nrppa.uTRA_RSCP", + FT_INT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_uTRA_EcN0, + { "uTRA-EcN0", "nrppa.uTRA_EcN0", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_subcarrierSpacing_02, + { "subcarrierSpacing", "nrppa.subcarrierSpacing", + FT_UINT32, BASE_DEC, VALS(nrppa_T_subcarrierSpacing_02_vals), 0, + "T_subcarrierSpacing_02", HFILL }}, + { &hf_nrppa_carrierBandwidth, + { "carrierBandwidth", "nrppa.carrierBandwidth", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_275_", HFILL }}, + { &hf_nrppa_expectedPropagationDelay, + { "expectedPropagationDelay", "nrppa.expectedPropagationDelay", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M3841_3841_", HFILL }}, + { &hf_nrppa_delayUncertainty, + { "delayUncertainty", "nrppa.delayUncertainty", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_246_", HFILL }}, + { &hf_nrppa_nR_PRS_Beam_Information, + { "nR-PRS-Beam-Information", "nrppa.nR_PRS_Beam_Information_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_spatialRelationforResourceID, + { "spatialRelationforResourceID", "nrppa.spatialRelationforResourceID", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_SpatialRelationforResourceID_item, + { "SpatialRelationforResourceIDItem", "nrppa.SpatialRelationforResourceIDItem_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_referenceSignal, + { "referenceSignal", "nrppa.referenceSignal", + FT_UINT32, BASE_DEC, VALS(nrppa_ReferenceSignal_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_spatialRelationPerSRSResource_List, + { "spatialRelationPerSRSResource-List", "nrppa.spatialRelationPerSRSResource_List", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_SpatialRelationPerSRSResource_List_item, + { "SpatialRelationPerSRSResourceItem", "nrppa.SpatialRelationPerSRSResourceItem_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_sSBPos, + { "sSBPos", "nrppa.sSBPos_element", + FT_NONE, BASE_NONE, NULL, 0, + "SSB", HFILL }}, + { &hf_nrppa_pRSInformationPos, + { "pRSInformationPos", "nrppa.pRSInformationPos_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_sRSResource_List, + { "sRSResource-List", "nrppa.sRSResource_List", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_posSRSResource_List, + { "posSRSResource-List", "nrppa.posSRSResource_List", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_sRSResourceSet_List, + { "sRSResourceSet-List", "nrppa.sRSResourceSet_List", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_posSRSResourceSet_List, + { "posSRSResourceSet-List", "nrppa.posSRSResourceSet_List", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_SRSCarrier_List_item, + { "SRSCarrier-List-Item", "nrppa.SRSCarrier_List_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_uplinkChannelBW_PerSCS_List, + { "uplinkChannelBW-PerSCS-List", "nrppa.uplinkChannelBW_PerSCS_List", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_activeULBWP, + { "activeULBWP", "nrppa.activeULBWP_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_sRSCarrier_List, + { "sRSCarrier-List", "nrppa.sRSCarrier_List", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_sRSResourceID, + { "sRSResourceID", "nrppa.sRSResourceID", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_nrofSRS_Ports, + { "nrofSRS-Ports", "nrppa.nrofSRS_Ports", + FT_UINT32, BASE_DEC, VALS(nrppa_T_nrofSRS_Ports_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_transmissionComb, + { "transmissionComb", "nrppa.transmissionComb", + FT_UINT32, BASE_DEC, VALS(nrppa_TransmissionComb_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_nrofSymbols_01, + { "nrofSymbols", "nrppa.nrofSymbols", + FT_UINT32, BASE_DEC, VALS(nrppa_T_nrofSymbols_01_vals), 0, + "T_nrofSymbols_01", HFILL }}, + { &hf_nrppa_repetitionFactor, + { "repetitionFactor", "nrppa.repetitionFactor", + FT_UINT32, BASE_DEC, VALS(nrppa_T_repetitionFactor_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_freqDomainPosition, + { "freqDomainPosition", "nrppa.freqDomainPosition", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_67", HFILL }}, + { &hf_nrppa_b_SRS, + { "b-SRS", "nrppa.b_SRS", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_3", HFILL }}, + { &hf_nrppa_b_hop, + { "b-hop", "nrppa.b_hop", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_3", HFILL }}, + { &hf_nrppa_groupOrSequenceHopping_01, + { "groupOrSequenceHopping", "nrppa.groupOrSequenceHopping", + FT_UINT32, BASE_DEC, VALS(nrppa_T_groupOrSequenceHopping_01_vals), 0, + "T_groupOrSequenceHopping_01", HFILL }}, + { &hf_nrppa_resourceType_01, + { "resourceType", "nrppa.resourceType", + FT_UINT32, BASE_DEC, VALS(nrppa_ResourceType_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_sequenceId_01, + { "sequenceId", "nrppa.sequenceId", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1023", HFILL }}, + { &hf_nrppa_SRSResource_List_item, + { "SRSResource", "nrppa.SRSResource_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_SRSResourceSet_List_item, + { "SRSResourceSet", "nrppa.SRSResourceSet_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_SRSResourceID_List_item, + { "SRSResourceID", "nrppa.SRSResourceID", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_sRSResourceSetID, + { "sRSResourceSetID", "nrppa.sRSResourceSetID", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_15", HFILL }}, + { &hf_nrppa_sRSResourceID_List, + { "sRSResourceID-List", "nrppa.sRSResourceID_List", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_resourceSetType, + { "resourceSetType", "nrppa.resourceSetType", + FT_UINT32, BASE_DEC, VALS(nrppa_ResourceSetType_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_aperiodicSRSResourceTriggerList, + { "aperiodicSRSResourceTriggerList", "nrppa.aperiodicSRSResourceTriggerList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_sRSResourceTypeChoice, + { "sRSResourceTypeChoice", "nrppa.sRSResourceTypeChoice", + FT_UINT32, BASE_DEC, VALS(nrppa_SRSResourceTypeChoice_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_sRSResourceInfo, + { "sRSResourceInfo", "nrppa.sRSResourceInfo_element", + FT_NONE, BASE_NONE, NULL, 0, + "SRSInfo", HFILL }}, + { &hf_nrppa_posSRSResourceInfo, + { "posSRSResourceInfo", "nrppa.posSRSResourceInfo_element", + FT_NONE, BASE_NONE, NULL, 0, + "PosSRSInfo", HFILL }}, + { &hf_nrppa_sRSResource, + { "sRSResource", "nrppa.sRSResource", + FT_UINT32, BASE_DEC, NULL, 0, + "SRSResourceID", HFILL }}, + { &hf_nrppa_posSRSResourceID, + { "posSRSResourceID", "nrppa.posSRSResourceID", + FT_UINT32, BASE_DEC, NULL, 0, + "SRSPosResourceID", HFILL }}, + { &hf_nrppa_listOfSSBInfo, + { "listOfSSBInfo", "nrppa.listOfSSBInfo", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxNoSSBs_OF_SSBInfoItem", HFILL }}, + { &hf_nrppa_listOfSSBInfo_item, + { "SSBInfoItem", "nrppa.SSBInfoItem_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_sSB_Configuration, + { "sSB-Configuration", "nrppa.sSB_Configuration_element", + FT_NONE, BASE_NONE, NULL, 0, + "TF_Configuration", HFILL }}, + { &hf_nrppa_ssb_index, + { "ssb-index", "nrppa.ssb_index", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_shortBitmap, + { "shortBitmap", "nrppa.shortBitmap", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_4", HFILL }}, + { &hf_nrppa_mediumBitmap, + { "mediumBitmap", "nrppa.mediumBitmap", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_8", HFILL }}, + { &hf_nrppa_longBitmap, + { "longBitmap", "nrppa.longBitmap", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_64", HFILL }}, + { &hf_nrppa_startTime, + { "startTime", "nrppa.startTime", + FT_BYTES, BASE_NONE, NULL, 0, + "RelativeTime1900", HFILL }}, + { &hf_nrppa_duration, + { "duration", "nrppa.duration", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_90060_", HFILL }}, + { &hf_nrppa_SystemInformation_item, + { "SystemInformation item", "nrppa.SystemInformation_item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_broadcastPeriodicity, + { "broadcastPeriodicity", "nrppa.broadcastPeriodicity", + FT_UINT32, BASE_DEC, VALS(nrppa_BroadcastPeriodicity_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_posSIBs, + { "posSIBs", "nrppa.posSIBs", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_subframeAssignment, + { "subframeAssignment", "nrppa.subframeAssignment", + FT_UINT32, BASE_DEC, VALS(nrppa_T_subframeAssignment_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_rxTx_TEG, + { "rxTx-TEG", "nrppa.rxTx_TEG_element", + FT_NONE, BASE_NONE, NULL, 0, + "RxTxTEG", HFILL }}, + { &hf_nrppa_rx_TEG, + { "rx-TEG", "nrppa.rx_TEG_element", + FT_NONE, BASE_NONE, NULL, 0, + "RxTEG", HFILL }}, + { &hf_nrppa_tRP_RxTx_TEGInformation, + { "tRP-RxTx-TEGInformation", "nrppa.tRP_RxTx_TEGInformation_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_tRP_Tx_TEGInformation, + { "tRP-Tx-TEGInformation", "nrppa.tRP_Tx_TEGInformation_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_tRP_Rx_TEGInformation, + { "tRP-Rx-TEGInformation", "nrppa.tRP_Rx_TEGInformation_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_sSB_frequency, + { "sSB-frequency", "nrppa.sSB_frequency", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_3279165", HFILL }}, + { &hf_nrppa_sSB_subcarrier_spacing, + { "sSB-subcarrier-spacing", "nrppa.sSB_subcarrier_spacing", + FT_UINT32, BASE_DEC, VALS(nrppa_T_sSB_subcarrier_spacing_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_sSB_Transmit_power, + { "sSB-Transmit-power", "nrppa.sSB_Transmit_power", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M60_50", HFILL }}, + { &hf_nrppa_sSB_periodicity, + { "sSB-periodicity", "nrppa.sSB_periodicity", + FT_UINT32, BASE_DEC, VALS(nrppa_T_sSB_periodicity_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_sSB_half_frame_offset, + { "sSB-half-frame-offset", "nrppa.sSB_half_frame_offset", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1", HFILL }}, + { &hf_nrppa_sSB_SFN_offset, + { "sSB-SFN-offset", "nrppa.sSB_SFN_offset", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_15", HFILL }}, + { &hf_nrppa_sSB_BurstPosition, + { "sSB-BurstPosition", "nrppa.sSB_BurstPosition", + FT_UINT32, BASE_DEC, VALS(nrppa_SSBBurstPosition_vals), 0, + "SSBBurstPosition", HFILL }}, + { &hf_nrppa_sFN_initialisation_time, + { "sFN-initialisation-time", "nrppa.sFN_initialisation_time", + FT_BYTES, BASE_NONE, NULL, 0, + "RelativeTime1900", HFILL }}, + { &hf_nrppa_systemFrameNumber, + { "systemFrameNumber", "nrppa.systemFrameNumber", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_slotIndex, + { "slotIndex", "nrppa.slotIndex", + FT_UINT32, BASE_DEC, VALS(nrppa_TimeStampSlotIndex_vals), 0, + "TimeStampSlotIndex", HFILL }}, + { &hf_nrppa_measurementTime, + { "measurementTime", "nrppa.measurementTime", + FT_BYTES, BASE_NONE, NULL, 0, + "RelativeTime1900", HFILL }}, + { &hf_nrppa_iE_Extension, + { "iE-Extension", "nrppa.iE_Extension", + FT_UINT32, BASE_DEC, NULL, 0, + "ProtocolExtensionContainer", HFILL }}, + { &hf_nrppa_sCS_15, + { "sCS-15", "nrppa.sCS_15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_9", HFILL }}, + { &hf_nrppa_sCS_30, + { "sCS-30", "nrppa.sCS_30", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_19", HFILL }}, + { &hf_nrppa_sCS_60, + { "sCS-60", "nrppa.sCS_60", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_39", HFILL }}, + { &hf_nrppa_sCS_120, + { "sCS-120", "nrppa.sCS_120", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_79", HFILL }}, + { &hf_nrppa_n2, + { "n2", "nrppa.n2_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_combOffset_n2, + { "combOffset-n2", "nrppa.combOffset_n2", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1", HFILL }}, + { &hf_nrppa_cyclicShift_n2, + { "cyclicShift-n2", "nrppa.cyclicShift_n2", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_7", HFILL }}, + { &hf_nrppa_n4, + { "n4", "nrppa.n4_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_combOffset_n4, + { "combOffset-n4", "nrppa.combOffset_n4", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_3", HFILL }}, + { &hf_nrppa_cyclicShift_n4, + { "cyclicShift-n4", "nrppa.cyclicShift_n4", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_11", HFILL }}, + { &hf_nrppa_n2_01, + { "n2", "nrppa.n2_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_n2_01", HFILL }}, + { &hf_nrppa_n4_01, + { "n4", "nrppa.n4_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_n4_01", HFILL }}, + { &hf_nrppa_n8, + { "n8", "nrppa.n8_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_combOffset_n8, + { "combOffset-n8", "nrppa.combOffset_n8", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_7", HFILL }}, + { &hf_nrppa_cyclicShift_n8, + { "cyclicShift-n8", "nrppa.cyclicShift_n8", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_5", HFILL }}, + { &hf_nrppa_choice_TRP_Beam_Antenna_Info_Item, + { "choice-TRP-Beam-Antenna-Info-Item", "nrppa.choice_TRP_Beam_Antenna_Info_Item", + FT_UINT32, BASE_DEC, VALS(nrppa_Choice_TRP_Beam_Antenna_Info_Item_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_reference, + { "reference", "nrppa.reference", + FT_UINT32, BASE_DEC, NULL, 0, + "TRP_ID", HFILL }}, + { &hf_nrppa_explicit, + { "explicit", "nrppa.explicit_element", + FT_NONE, BASE_NONE, NULL, 0, + "TRP_BeamAntennaExplicitInformation", HFILL }}, + { &hf_nrppa_noChange, + { "noChange", "nrppa.noChange_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_trp_BeamAntennaAngles, + { "trp-BeamAntennaAngles", "nrppa.trp_BeamAntennaAngles", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_lcs_to_gcs_translation, + { "lcs-to-gcs-translation", "nrppa.lcs_to_gcs_translation_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_TRP_BeamAntennaAngles_item, + { "TRP-BeamAntennaAnglesList-Item", "nrppa.TRP_BeamAntennaAnglesList_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_trp_azimuth_angle, + { "trp-azimuth-angle", "nrppa.trp_azimuth_angle", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_359", HFILL }}, + { &hf_nrppa_trp_azimuth_angle_fine, + { "trp-azimuth-angle-fine", "nrppa.trp_azimuth_angle_fine", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_9", HFILL }}, + { &hf_nrppa_trp_elevation_angle_list, + { "trp-elevation-angle-list", "nrppa.trp_elevation_angle_list", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxnoElevationAngles_OF_TRP_ElevationAngleList_Item", HFILL }}, + { &hf_nrppa_trp_elevation_angle_list_item, + { "TRP-ElevationAngleList-Item", "nrppa.TRP_ElevationAngleList_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_trp_elevation_angle, + { "trp-elevation-angle", "nrppa.trp_elevation_angle", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_180", HFILL }}, + { &hf_nrppa_trp_elevation_angle_fine, + { "trp-elevation-angle-fine", "nrppa.trp_elevation_angle_fine", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_9", HFILL }}, + { &hf_nrppa_trp_beam_power_list, + { "trp-beam-power-list", "nrppa.trp_beam_power_list", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_2_maxNumResourcesPerAngle_OF_TRP_Beam_Power_Item", HFILL }}, + { &hf_nrppa_trp_beam_power_list_item, + { "TRP-Beam-Power-Item", "nrppa.TRP_Beam_Power_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_relativePower, + { "relativePower", "nrppa.relativePower", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_30", HFILL }}, + { &hf_nrppa_relativePowerFine, + { "relativePowerFine", "nrppa.relativePowerFine", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_9", HFILL }}, + { &hf_nrppa_TRPMeasurementQuantities_item, + { "TRPMeasurementQuantitiesList-Item", "nrppa.TRPMeasurementQuantitiesList_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_tRPMeasurementQuantities_Item, + { "tRPMeasurementQuantities-Item", "nrppa.tRPMeasurementQuantities_Item", + FT_UINT32, BASE_DEC, VALS(nrppa_TRPMeasurementQuantities_Item_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_timingReportingGranularityFactor, + { "timingReportingGranularityFactor", "nrppa.timingReportingGranularityFactor", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_5", HFILL }}, + { &hf_nrppa_TrpMeasurementResult_item, + { "TrpMeasurementResultItem", "nrppa.TrpMeasurementResultItem_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_measuredResultsValue, + { "measuredResultsValue", "nrppa.measuredResultsValue", + FT_UINT32, BASE_DEC, VALS(nrppa_TrpMeasuredResultsValue_vals), 0, + "TrpMeasuredResultsValue", HFILL }}, + { &hf_nrppa_timeStamp, + { "timeStamp", "nrppa.timeStamp_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_measurementQuality, + { "measurementQuality", "nrppa.measurementQuality", + FT_UINT32, BASE_DEC, VALS(nrppa_TrpMeasurementQuality_vals), 0, + "TrpMeasurementQuality", HFILL }}, + { &hf_nrppa_measurementBeamInfo, + { "measurementBeamInfo", "nrppa.measurementBeamInfo_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_uL_AngleOfArrival, + { "uL-AngleOfArrival", "nrppa.uL_AngleOfArrival_element", + FT_NONE, BASE_NONE, NULL, 0, + "UL_AoA", HFILL }}, + { &hf_nrppa_uL_SRS_RSRP, + { "uL-SRS-RSRP", "nrppa.uL_SRS_RSRP", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_uL_RTOA, + { "uL-RTOA", "nrppa.uL_RTOA_element", + FT_NONE, BASE_NONE, NULL, 0, + "UL_RTOAMeasurement", HFILL }}, + { &hf_nrppa_gNB_RxTxTimeDiff, + { "gNB-RxTxTimeDiff", "nrppa.gNB_RxTxTimeDiff_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_timingMeasQuality, + { "timingMeasQuality", "nrppa.timingMeasQuality_element", + FT_NONE, BASE_NONE, NULL, 0, + "TrpMeasurementTimingQuality", HFILL }}, + { &hf_nrppa_angleMeasQuality, + { "angleMeasQuality", "nrppa.angleMeasQuality_element", + FT_NONE, BASE_NONE, NULL, 0, + "TrpMeasurementAngleQuality", HFILL }}, + { &hf_nrppa_measurementQuality_01, + { "measurementQuality", "nrppa.measurementQuality", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_31", HFILL }}, + { &hf_nrppa_resolution, + { "resolution", "nrppa.resolution", + FT_UINT32, BASE_DEC, VALS(nrppa_T_resolution_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_azimuthQuality, + { "azimuthQuality", "nrppa.azimuthQuality", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_nrppa_zenithQuality, + { "zenithQuality", "nrppa.zenithQuality", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_nrppa_resolution_01, + { "resolution", "nrppa.resolution", + FT_UINT32, BASE_DEC, VALS(nrppa_T_resolution_01_vals), 0, + "T_resolution_01", HFILL }}, + { &hf_nrppa_TRP_MeasurementRequestList_item, + { "TRP-MeasurementRequestItem", "nrppa.TRP_MeasurementRequestItem_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_search_window_information, + { "search-window-information", "nrppa.search_window_information_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_TRP_MeasurementResponseList_item, + { "TRP-MeasurementResponseItem", "nrppa.TRP_MeasurementResponseItem_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_measurementResult, + { "measurementResult", "nrppa.measurementResult", + FT_UINT32, BASE_DEC, NULL, 0, + "TrpMeasurementResult", HFILL }}, + { &hf_nrppa_TRP_MeasurementUpdateList_item, + { "TRP-MeasurementUpdateItem", "nrppa.TRP_MeasurementUpdateItem_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_aoA_window_information, + { "aoA-window-information", "nrppa.aoA_window_information_element", + FT_NONE, BASE_NONE, NULL, 0, + "AoA_AssistanceInfo", HFILL }}, + { &hf_nrppa_TRPInformationListTRPResp_item, + { "TRPInformationListTRPResp item", "nrppa.TRPInformationListTRPResp_item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_tRPInformation, + { "tRPInformation", "nrppa.tRPInformation_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_tRPInformationTypeResponseList, + { "tRPInformationTypeResponseList", "nrppa.tRPInformationTypeResponseList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_TRPInformationTypeResponseList_item, + { "TRPInformationTypeResponseItem", "nrppa.TRPInformationTypeResponseItem", + FT_UINT32, BASE_DEC, VALS(nrppa_TRPInformationTypeResponseItem_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_aRFCN, + { "aRFCN", "nrppa.aRFCN", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_3279165", HFILL }}, + { &hf_nrppa_sSBinformation, + { "sSBinformation", "nrppa.sSBinformation_element", + FT_NONE, BASE_NONE, NULL, 0, + "SSBInfo", HFILL }}, + { &hf_nrppa_sFNInitialisationTime, + { "sFNInitialisationTime", "nrppa.sFNInitialisationTime", + FT_BYTES, BASE_NONE, NULL, 0, + "RelativeTime1900", HFILL }}, + { &hf_nrppa_spatialDirectionInformation, + { "spatialDirectionInformation", "nrppa.spatialDirectionInformation_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_geographicalCoordinates, + { "geographicalCoordinates", "nrppa.geographicalCoordinates_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_TRPInformationTypeListTRPReq_item, + { "ProtocolIE-Single-Container", "nrppa.ProtocolIE_Single_Container_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_TRPList_item, + { "TRPItem", "nrppa.TRPItem_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_direct, + { "direct", "nrppa.direct_element", + FT_NONE, BASE_NONE, NULL, 0, + "TRPPositionDirect", HFILL }}, + { &hf_nrppa_referenced, + { "referenced", "nrppa.referenced_element", + FT_NONE, BASE_NONE, NULL, 0, + "TRPPositionReferenced", HFILL }}, + { &hf_nrppa_accuracy, + { "accuracy", "nrppa.accuracy", + FT_UINT32, BASE_DEC, VALS(nrppa_TRPPositionDirectAccuracy_vals), 0, + "TRPPositionDirectAccuracy", HFILL }}, + { &hf_nrppa_tRPPosition, + { "tRPPosition", "nrppa.tRPPosition_element", + FT_NONE, BASE_NONE, NULL, 0, + "NG_RANAccessPointPosition", HFILL }}, + { &hf_nrppa_tRPHAposition, + { "tRPHAposition", "nrppa.tRPHAposition_element", + FT_NONE, BASE_NONE, NULL, 0, + "NGRANHighAccuracyAccessPointPosition", HFILL }}, + { &hf_nrppa_referencePoint, + { "referencePoint", "nrppa.referencePoint", + FT_UINT32, BASE_DEC, VALS(nrppa_ReferencePoint_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_referencePointType, + { "referencePointType", "nrppa.referencePointType", + FT_UINT32, BASE_DEC, VALS(nrppa_TRPReferencePointType_vals), 0, + "TRPReferencePointType", HFILL }}, + { &hf_nrppa_TRP_PRS_Information_List_item, + { "TRP-PRS-Information-List-Item", "nrppa.TRP_PRS_Information_List_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_tRPPositionRelativeGeodetic, + { "tRPPositionRelativeGeodetic", "nrppa.tRPPositionRelativeGeodetic_element", + FT_NONE, BASE_NONE, NULL, 0, + "RelativeGeodeticLocation", HFILL }}, + { &hf_nrppa_tRPPositionRelativeCartesian, + { "tRPPositionRelativeCartesian", "nrppa.tRPPositionRelativeCartesian_element", + FT_NONE, BASE_NONE, NULL, 0, + "RelativeCartesianLocation", HFILL }}, + { &hf_nrppa_tRP_Rx_TEGID, + { "tRP-Rx-TEGID", "nrppa.tRP_Rx_TEGID", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_31", HFILL }}, + { &hf_nrppa_tRP_Rx_TimingErrorMargin, + { "tRP-Rx-TimingErrorMargin", "nrppa.tRP_Rx_TimingErrorMargin", + FT_UINT32, BASE_DEC, VALS(nrppa_TimingErrorMargin_vals), 0, + "TimingErrorMargin", HFILL }}, + { &hf_nrppa_tRP_RxTx_TEGID, + { "tRP-RxTx-TEGID", "nrppa.tRP_RxTx_TEGID", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_nrppa_tRP_RxTx_TimingErrorMargin, + { "tRP-RxTx-TimingErrorMargin", "nrppa.tRP_RxTx_TimingErrorMargin", + FT_UINT32, BASE_DEC, VALS(nrppa_RxTxTimingErrorMargin_vals), 0, + "RxTxTimingErrorMargin", HFILL }}, + { &hf_nrppa_tRP_Tx_TEGID, + { "tRP-Tx-TEGID", "nrppa.tRP_Tx_TEGID", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_7", HFILL }}, + { &hf_nrppa_tRP_Tx_TimingErrorMargin, + { "tRP-Tx-TimingErrorMargin", "nrppa.tRP_Tx_TimingErrorMargin", + FT_UINT32, BASE_DEC, VALS(nrppa_TimingErrorMargin_vals), 0, + "TimingErrorMargin", HFILL }}, + { &hf_nrppa_TRPTxTEGAssociation_item, + { "TRPTEGItem", "nrppa.TRPTEGItem_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_dl_PRSResourceID_List, + { "dl-PRSResourceID-List", "nrppa.dl_PRSResourceID_List", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxPRS_ResourcesPerSet_OF_DLPRSResourceID_Item", HFILL }}, + { &hf_nrppa_dl_PRSResourceID_List_item, + { "DLPRSResourceID-Item", "nrppa.DLPRSResourceID_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_reportingAmount, + { "reportingAmount", "nrppa.reportingAmount", + FT_UINT32, BASE_DEC, VALS(nrppa_T_reportingAmount_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_reportingInterval, + { "reportingInterval", "nrppa.reportingInterval", + FT_UINT32, BASE_DEC, VALS(nrppa_T_reportingInterval_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_UETxTEGAssociationList_item, + { "UETxTEGAssociationItem", "nrppa.UETxTEGAssociationItem_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_uE_Tx_TEG_ID, + { "uE-Tx-TEG-ID", "nrppa.uE_Tx_TEG_ID", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_7", HFILL }}, + { &hf_nrppa_posSRSResourceID_List, + { "posSRSResourceID-List", "nrppa.posSRSResourceID_List", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_carrierFreq, + { "carrierFreq", "nrppa.carrierFreq_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_azimuthAoA, + { "azimuthAoA", "nrppa.azimuthAoA", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_3599", HFILL }}, + { &hf_nrppa_zenithAoA, + { "zenithAoA", "nrppa.zenithAoA", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1799", HFILL }}, + { &hf_nrppa_uLRTOAmeas, + { "uLRTOAmeas", "nrppa.uLRTOAmeas", + FT_UINT32, BASE_DEC, VALS(nrppa_ULRTOAMeas_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_firstPathRSRPP, + { "firstPathRSRPP", "nrppa.firstPathRSRPP", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_126", HFILL }}, + { &hf_nrppa_UplinkChannelBW_PerSCS_List_item, + { "SCS-SpecificCarrier", "nrppa.SCS_SpecificCarrier_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_WLANMeasurementQuantities_item, + { "ProtocolIE-Single-Container", "nrppa.ProtocolIE_Single_Container_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_wLANMeasurementQuantitiesValue, + { "wLANMeasurementQuantitiesValue", "nrppa.wLANMeasurementQuantitiesValue", + FT_UINT32, BASE_DEC, VALS(nrppa_WLANMeasurementQuantitiesValue_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_WLANMeasurementResult_item, + { "WLANMeasurementResult-Item", "nrppa.WLANMeasurementResult_Item_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_wLAN_RSSI, + { "wLAN-RSSI", "nrppa.wLAN_RSSI", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_sSID, + { "sSID", "nrppa.sSID", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_bSSID, + { "bSSID", "nrppa.bSSID", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_hESSID, + { "hESSID", "nrppa.hESSID", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_operatingClass, + { "operatingClass", "nrppa.operatingClass", + FT_UINT32, BASE_DEC, NULL, 0, + "WLANOperatingClass", HFILL }}, + { &hf_nrppa_countryCode, + { "countryCode", "nrppa.countryCode", + FT_UINT32, BASE_DEC, VALS(nrppa_WLANCountryCode_vals), 0, + "WLANCountryCode", HFILL }}, + { &hf_nrppa_wLANChannelList, + { "wLANChannelList", "nrppa.wLANChannelList", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_wLANBand, + { "wLANBand", "nrppa.wLANBand", + FT_UINT32, BASE_DEC, VALS(nrppa_WLANBand_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_WLANChannelList_item, + { "WLANChannel", "nrppa.WLANChannel", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_protocolIEs, + { "protocolIEs", "nrppa.protocolIEs", + FT_UINT32, BASE_DEC, NULL, 0, + "ProtocolIE_Container", HFILL }}, + { &hf_nrppa_OTDOA_Information_Type_item, + { "ProtocolIE-Single-Container", "nrppa.ProtocolIE_Single_Container_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_oTDOA_Information_Item, + { "oTDOA-Information-Item", "nrppa.oTDOA_Information_Item", + FT_UINT32, BASE_DEC, VALS(nrppa_OTDOA_Information_Item_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_privateIEs, + { "privateIEs", "nrppa.privateIEs", + FT_UINT32, BASE_DEC, NULL, 0, + "PrivateIE_Container", HFILL }}, + { &hf_nrppa_semipersistentSRS, + { "semipersistentSRS", "nrppa.semipersistentSRS_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_aperiodicSRS, + { "aperiodicSRS", "nrppa.aperiodicSRS_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_sRSResourceSetID_01, + { "sRSResourceSetID", "nrppa.sRSResourceSetID", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_nrppa_aperiodic_04, + { "aperiodic", "nrppa.aperiodic", + FT_UINT32, BASE_DEC, VALS(nrppa_T_aperiodic_vals), 0, + NULL, HFILL }}, + { &hf_nrppa_sRSResourceTrigger_01, + { "sRSResourceTrigger", "nrppa.sRSResourceTrigger_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + }; + + /* List of subtrees */ + static gint *ett[] = { + &ett_nrppa, + &ett_nrppa_PrivateIE_ID, + &ett_nrppa_ProtocolIE_Container, + &ett_nrppa_ProtocolIE_Field, + &ett_nrppa_ProtocolExtensionContainer, + &ett_nrppa_ProtocolExtensionField, + &ett_nrppa_PrivateIE_Container, + &ett_nrppa_PrivateIE_Field, + &ett_nrppa_NRPPA_PDU, + &ett_nrppa_InitiatingMessage, + &ett_nrppa_SuccessfulOutcome, + &ett_nrppa_UnsuccessfulOutcome, + &ett_nrppa_AbortTransmission, + &ett_nrppa_ActiveULBWP, + &ett_nrppa_AdditionalPathList, + &ett_nrppa_AdditionalPathListItem, + &ett_nrppa_ExtendedAdditionalPathList, + &ett_nrppa_ExtendedAdditionalPathList_Item, + &ett_nrppa_AoA_AssistanceInfo, + &ett_nrppa_AperiodicSRSResourceTriggerList, + &ett_nrppa_AngleMeasurementType, + &ett_nrppa_Expected_UL_AoA, + &ett_nrppa_Expected_ZoA_only, + &ett_nrppa_Expected_Azimuth_AoA, + &ett_nrppa_Expected_Zenith_AoA, + &ett_nrppa_ARPLocationInformation, + &ett_nrppa_ARPLocationInformation_Item, + &ett_nrppa_ARPLocationType, + &ett_nrppa_Assistance_Information, + &ett_nrppa_AssistanceInformationFailureList, + &ett_nrppa_AssistanceInformationFailureList_item, + &ett_nrppa_AssistanceInformationMetaData, + &ett_nrppa_BandwidthSRS, + &ett_nrppa_PositioningBroadcastCells, + &ett_nrppa_CarrierFreq, + &ett_nrppa_Cause, + &ett_nrppa_CGI_EUTRA, + &ett_nrppa_CGI_NR, + &ett_nrppa_CriticalityDiagnostics, + &ett_nrppa_CriticalityDiagnostics_IE_List, + &ett_nrppa_CriticalityDiagnostics_IE_List_item, + &ett_nrppa_DL_PRS, + &ett_nrppa_DL_PRSMutingPattern, + &ett_nrppa_DLPRSResourceCoordinates, + &ett_nrppa_SEQUENCE_SIZE_1_maxPRS_ResourceSets_OF_DLPRSResourceSetARP, + &ett_nrppa_DLPRSResourceSetARP, + &ett_nrppa_SEQUENCE_SIZE_1_maxPRS_ResourcesPerSet_OF_DLPRSResourceARP, + &ett_nrppa_DL_PRSResourceSetARPLocation, + &ett_nrppa_DLPRSResourceARP, + &ett_nrppa_DL_PRSResourceARPLocation, + &ett_nrppa_E_CID_MeasurementResult, + &ett_nrppa_GeographicalCoordinates, + &ett_nrppa_GNB_RxTxTimeDiff, + &ett_nrppa_GNBRxTxTimeDiffMeas, + &ett_nrppa_LCS_to_GCS_Translation, + &ett_nrppa_LCS_to_GCS_TranslationItem, + &ett_nrppa_LocationUncertainty, + &ett_nrppa_LoS_NLoSInformation, + &ett_nrppa_MeasurementBeamInfo, + &ett_nrppa_MeasurementQuantities, + &ett_nrppa_MeasurementQuantities_Item, + &ett_nrppa_MeasuredResults, + &ett_nrppa_MeasuredResultsValue, + &ett_nrppa_MultipleULAoA, + &ett_nrppa_MultipleULAoA_List, + &ett_nrppa_MultipleULAoA_Item, + &ett_nrppa_NG_RANAccessPointPosition, + &ett_nrppa_NGRANHighAccuracyAccessPointPosition, + &ett_nrppa_NG_RAN_CGI, + &ett_nrppa_NG_RANCell, + &ett_nrppa_NR_PRS_Beam_Information, + &ett_nrppa_SEQUENCE_SIZE_1_maxPRS_ResourceSets_OF_NR_PRS_Beam_InformationItem, + &ett_nrppa_SEQUENCE_SIZE_1_maxnolcs_gcs_translation_OF_LCS_to_GCS_TranslationItem, + &ett_nrppa_NR_PRS_Beam_InformationItem, + &ett_nrppa_SEQUENCE_SIZE_1_maxPRS_ResourcesPerSet_OF_PRSAngleItem, + &ett_nrppa_OnDemandPRS_Info, + &ett_nrppa_OTDOACells, + &ett_nrppa_OTDOACells_item, + &ett_nrppa_OTDOACell_Information, + &ett_nrppa_OTDOACell_Information_Item, + &ett_nrppa_OtherRATMeasurementQuantities, + &ett_nrppa_OtherRATMeasurementQuantities_Item, + &ett_nrppa_OtherRATMeasurementResult, + &ett_nrppa_OtherRATMeasuredResultsValue, + &ett_nrppa_PathlossReferenceInformation, + &ett_nrppa_PathlossReferenceSignal, + &ett_nrppa_PeriodicityList, + &ett_nrppa_PosSIBs, + &ett_nrppa_PosSIBs_item, + &ett_nrppa_PosSIB_Segments, + &ett_nrppa_PosSIB_Segments_item, + &ett_nrppa_PosSRSResource_List, + &ett_nrppa_PosSRSResource_Item, + &ett_nrppa_PosSRSResourceID_List, + &ett_nrppa_PosSRSResourceSet_List, + &ett_nrppa_PosSRSResourceIDPerSet_List, + &ett_nrppa_PosSRSResourceSet_Item, + &ett_nrppa_PosResourceSetType, + &ett_nrppa_PosResourceSetTypePeriodic, + &ett_nrppa_PosResourceSetTypeSemi_persistent, + &ett_nrppa_PosResourceSetTypeAperiodic, + &ett_nrppa_PRSAngleItem, + &ett_nrppa_PRSInformationPos, + &ett_nrppa_PRSConfiguration, + &ett_nrppa_PRSMutingConfiguration_EUTRA, + &ett_nrppa_PRSFrequencyHoppingConfiguration_EUTRA, + &ett_nrppa_SEQUENCE_SIZE_1_maxnoFreqHoppingBandsMinusOne_OF_NarrowBandIndex, + &ett_nrppa_PRS_Measurements_Info_List, + &ett_nrppa_PRS_Measurements_Info_List_Item, + &ett_nrppa_PRSMuting, + &ett_nrppa_PRSMutingOption1, + &ett_nrppa_PRSMutingOption2, + &ett_nrppa_PRSResource_List, + &ett_nrppa_PRSResource_Item, + &ett_nrppa_PRSResource_QCLInfo, + &ett_nrppa_PRSResource_QCLSourceSSB, + &ett_nrppa_PRSResource_QCLSourcePRS, + &ett_nrppa_PRSResourceSet_List, + &ett_nrppa_PRSResourceSet_Item, + &ett_nrppa_PRSTransmissionOffIndication, + &ett_nrppa_PRSTransmissionOffPerResource, + &ett_nrppa_PRSTransmissionOffPerResource_Item, + &ett_nrppa_SEQUENCE_SIZE_1_maxnoofPRSresource_OF_PRSTransmissionOffIndicationPerResource_Item, + &ett_nrppa_PRSTransmissionOffIndicationPerResource_Item, + &ett_nrppa_PRSTransmissionOffInformation, + &ett_nrppa_PRSTransmissionOffPerResourceSet, + &ett_nrppa_PRSTransmissionOffPerResourceSet_Item, + &ett_nrppa_PRSTRPList, + &ett_nrppa_PRSTRPItem, + &ett_nrppa_PRSTransmissionTRPList, + &ett_nrppa_PRSTransmissionTRPItem, + &ett_nrppa_ReferenceSignal, + &ett_nrppa_ReferencePoint, + &ett_nrppa_RelativeGeodeticLocation, + &ett_nrppa_RelativeCartesianLocation, + &ett_nrppa_RelativePathDelay, + &ett_nrppa_RequestedDLPRSTransmissionCharacteristics, + &ett_nrppa_RequestedDLPRSResourceSet_List, + &ett_nrppa_RequestedDLPRSResourceSet_Item, + &ett_nrppa_RequestedDLPRSResource_List, + &ett_nrppa_RequestedDLPRSResource_Item, + &ett_nrppa_RequestedSRSTransmissionCharacteristics, + &ett_nrppa_SEQUENCE_SIZE_1_maxnoSRS_ResourceSets_OF_SRSResourceSet_Item, + &ett_nrppa_SRSResourceSet_Item, + &ett_nrppa_ResourceSetType, + &ett_nrppa_ResourceSetTypePeriodic, + &ett_nrppa_ResourceSetTypeSemi_persistent, + &ett_nrppa_ResourceSetTypeAperiodic, + &ett_nrppa_ResourceType, + &ett_nrppa_ResourceTypePeriodic, + &ett_nrppa_ResourceTypeSemi_persistent, + &ett_nrppa_ResourceTypeAperiodic, + &ett_nrppa_ResourceTypePos, + &ett_nrppa_ResourceTypePeriodicPos, + &ett_nrppa_ResourceTypeSemi_persistentPos, + &ett_nrppa_ResourceTypeAperiodicPos, + &ett_nrppa_ResponseTime, + &ett_nrppa_ResultCSI_RSRP, + &ett_nrppa_ResultCSI_RSRP_Item, + &ett_nrppa_ResultCSI_RSRP_PerCSI_RS, + &ett_nrppa_ResultCSI_RSRP_PerCSI_RS_Item, + &ett_nrppa_ResultCSI_RSRQ, + &ett_nrppa_ResultCSI_RSRQ_Item, + &ett_nrppa_ResultCSI_RSRQ_PerCSI_RS, + &ett_nrppa_ResultCSI_RSRQ_PerCSI_RS_Item, + &ett_nrppa_ResultEUTRA, + &ett_nrppa_ResultEUTRA_Item, + &ett_nrppa_ResultRSRP_EUTRA, + &ett_nrppa_ResultRSRP_EUTRA_Item, + &ett_nrppa_ResultRSRQ_EUTRA, + &ett_nrppa_ResultRSRQ_EUTRA_Item, + &ett_nrppa_ResultSS_RSRP, + &ett_nrppa_ResultSS_RSRP_Item, + &ett_nrppa_ResultSS_RSRP_PerSSB, + &ett_nrppa_ResultSS_RSRP_PerSSB_Item, + &ett_nrppa_ResultSS_RSRQ, + &ett_nrppa_ResultSS_RSRQ_Item, + &ett_nrppa_ResultSS_RSRQ_PerSSB, + &ett_nrppa_ResultSS_RSRQ_PerSSB_Item, + &ett_nrppa_ResultGERAN, + &ett_nrppa_ResultGERAN_Item, + &ett_nrppa_ResultNR, + &ett_nrppa_ResultNR_Item, + &ett_nrppa_ResultUTRAN, + &ett_nrppa_ResultUTRAN_Item, + &ett_nrppa_T_physCellIDUTRAN, + &ett_nrppa_SCS_SpecificCarrier, + &ett_nrppa_Search_window_information, + &ett_nrppa_SpatialDirectionInformation, + &ett_nrppa_SpatialRelationInfo, + &ett_nrppa_SpatialRelationforResourceID, + &ett_nrppa_SpatialRelationforResourceIDItem, + &ett_nrppa_SpatialRelationPerSRSResource, + &ett_nrppa_SpatialRelationPerSRSResource_List, + &ett_nrppa_SpatialRelationPerSRSResourceItem, + &ett_nrppa_SpatialRelationPos, + &ett_nrppa_SRSConfig, + &ett_nrppa_SRSCarrier_List, + &ett_nrppa_SRSCarrier_List_Item, + &ett_nrppa_SRSConfiguration, + &ett_nrppa_SRSResource, + &ett_nrppa_SRSResource_List, + &ett_nrppa_SRSResourceSet_List, + &ett_nrppa_SRSResourceID_List, + &ett_nrppa_SRSResourceSet, + &ett_nrppa_SRSResourceTrigger, + &ett_nrppa_SRSResourcetype, + &ett_nrppa_SRSResourceTypeChoice, + &ett_nrppa_SRSInfo, + &ett_nrppa_PosSRSInfo, + &ett_nrppa_SSBInfo, + &ett_nrppa_SEQUENCE_SIZE_1_maxNoSSBs_OF_SSBInfoItem, + &ett_nrppa_SSBInfoItem, + &ett_nrppa_SSB, + &ett_nrppa_SSBBurstPosition, + &ett_nrppa_StartTimeAndDuration, + &ett_nrppa_SystemInformation, + &ett_nrppa_SystemInformation_item, + &ett_nrppa_TDD_Config_EUTRA_Item, + &ett_nrppa_TRPTEGInformation, + &ett_nrppa_RxTxTEG, + &ett_nrppa_RxTEG, + &ett_nrppa_TF_Configuration, + &ett_nrppa_TimeStamp, + &ett_nrppa_TimeStampSlotIndex, + &ett_nrppa_TransmissionComb, + &ett_nrppa_T_n2, + &ett_nrppa_T_n4, + &ett_nrppa_TransmissionCombPos, + &ett_nrppa_T_n2_01, + &ett_nrppa_T_n4_01, + &ett_nrppa_T_n8, + &ett_nrppa_TRPBeamAntennaInformation, + &ett_nrppa_Choice_TRP_Beam_Antenna_Info_Item, + &ett_nrppa_TRP_BeamAntennaExplicitInformation, + &ett_nrppa_TRP_BeamAntennaAngles, + &ett_nrppa_TRP_BeamAntennaAnglesList_Item, + &ett_nrppa_SEQUENCE_SIZE_1_maxnoElevationAngles_OF_TRP_ElevationAngleList_Item, + &ett_nrppa_TRP_ElevationAngleList_Item, + &ett_nrppa_SEQUENCE_SIZE_2_maxNumResourcesPerAngle_OF_TRP_Beam_Power_Item, + &ett_nrppa_TRP_Beam_Power_Item, + &ett_nrppa_TRPMeasurementQuantities, + &ett_nrppa_TRPMeasurementQuantitiesList_Item, + &ett_nrppa_TrpMeasurementResult, + &ett_nrppa_TrpMeasurementResultItem, + &ett_nrppa_TrpMeasuredResultsValue, + &ett_nrppa_TrpMeasurementQuality, + &ett_nrppa_TrpMeasurementTimingQuality, + &ett_nrppa_TrpMeasurementAngleQuality, + &ett_nrppa_TRP_MeasurementRequestList, + &ett_nrppa_TRP_MeasurementRequestItem, + &ett_nrppa_TRP_MeasurementResponseList, + &ett_nrppa_TRP_MeasurementResponseItem, + &ett_nrppa_TRP_MeasurementUpdateList, + &ett_nrppa_TRP_MeasurementUpdateItem, + &ett_nrppa_TRPInformationListTRPResp, + &ett_nrppa_TRPInformationListTRPResp_item, + &ett_nrppa_TRPInformation, + &ett_nrppa_TRPInformationTypeResponseList, + &ett_nrppa_TRPInformationTypeResponseItem, + &ett_nrppa_TRPInformationTypeListTRPReq, + &ett_nrppa_TRPList, + &ett_nrppa_TRPItem, + &ett_nrppa_TRPPositionDefinitionType, + &ett_nrppa_TRPPositionDirect, + &ett_nrppa_TRPPositionDirectAccuracy, + &ett_nrppa_TRPPositionReferenced, + &ett_nrppa_TRP_PRS_Information_List, + &ett_nrppa_TRP_PRS_Information_List_Item, + &ett_nrppa_TRPReferencePointType, + &ett_nrppa_TRP_Rx_TEGInformation, + &ett_nrppa_TRP_RxTx_TEGInformation, + &ett_nrppa_TRP_Tx_TEGInformation, + &ett_nrppa_TRPTxTEGAssociation, + &ett_nrppa_TRPTEGItem, + &ett_nrppa_SEQUENCE_SIZE_1_maxPRS_ResourcesPerSet_OF_DLPRSResourceID_Item, + &ett_nrppa_DLPRSResourceID_Item, + &ett_nrppa_UEReportingInformation, + &ett_nrppa_UETxTEGAssociationList, + &ett_nrppa_UETxTEGAssociationItem, + &ett_nrppa_UL_AoA, + &ett_nrppa_UL_RTOAMeasurement, + &ett_nrppa_ULRTOAMeas, + &ett_nrppa_UL_SRS_RSRPP, + &ett_nrppa_UplinkChannelBW_PerSCS_List, + &ett_nrppa_WLANMeasurementQuantities, + &ett_nrppa_WLANMeasurementQuantities_Item, + &ett_nrppa_WLANMeasurementResult, + &ett_nrppa_WLANMeasurementResult_Item, + &ett_nrppa_WLANChannelList, + &ett_nrppa_ZoA, + &ett_nrppa_E_CIDMeasurementInitiationRequest, + &ett_nrppa_E_CIDMeasurementInitiationResponse, + &ett_nrppa_E_CIDMeasurementInitiationFailure, + &ett_nrppa_E_CIDMeasurementFailureIndication, + &ett_nrppa_E_CIDMeasurementReport, + &ett_nrppa_E_CIDMeasurementTerminationCommand, + &ett_nrppa_OTDOAInformationRequest, + &ett_nrppa_OTDOA_Information_Type, + &ett_nrppa_OTDOA_Information_Type_Item, + &ett_nrppa_OTDOAInformationResponse, + &ett_nrppa_OTDOAInformationFailure, + &ett_nrppa_AssistanceInformationControl, + &ett_nrppa_AssistanceInformationFeedback, + &ett_nrppa_ErrorIndication, + &ett_nrppa_PrivateMessage, + &ett_nrppa_PositioningInformationRequest, + &ett_nrppa_PositioningInformationResponse, + &ett_nrppa_PositioningInformationFailure, + &ett_nrppa_PositioningInformationUpdate, + &ett_nrppa_MeasurementRequest, + &ett_nrppa_MeasurementResponse, + &ett_nrppa_MeasurementFailure, + &ett_nrppa_MeasurementReport, + &ett_nrppa_MeasurementUpdate, + &ett_nrppa_MeasurementAbort, + &ett_nrppa_MeasurementFailureIndication, + &ett_nrppa_TRPInformationRequest, + &ett_nrppa_TRPInformationResponse, + &ett_nrppa_TRPInformationFailure, + &ett_nrppa_PositioningActivationRequest, + &ett_nrppa_SRSType, + &ett_nrppa_SemipersistentSRS, + &ett_nrppa_AperiodicSRS, + &ett_nrppa_PositioningActivationResponse, + &ett_nrppa_PositioningActivationFailure, + &ett_nrppa_PositioningDeactivation, + &ett_nrppa_PRSConfigurationRequest, + &ett_nrppa_PRSConfigurationResponse, + &ett_nrppa_PRSConfigurationFailure, + &ett_nrppa_MeasurementPreconfigurationRequired, + &ett_nrppa_MeasurementPreconfigurationConfirm, + &ett_nrppa_MeasurementPreconfigurationRefuse, + &ett_nrppa_MeasurementActivation, + }; + + /* Register protocol */ + proto_nrppa = proto_register_protocol(PNAME, PSNAME, PFNAME); + register_dissector("nrppa", dissect_NRPPA_PDU_PDU, proto_nrppa); + + /* Register fields and subtrees */ + proto_register_field_array(proto_nrppa, hf, array_length(hf)); + proto_register_subtree_array(ett, array_length(ett)); + + /* Register dissector tables */ + nrppa_ies_dissector_table = register_dissector_table("nrppa.ies", "NRPPA-PROTOCOL-IES", proto_nrppa, FT_UINT32, BASE_DEC); + nrppa_extension_dissector_table = register_dissector_table("nrppa.extension", "NRPPA-PROTOCOL-EXTENSION", proto_nrppa, FT_UINT32, BASE_DEC); + nrppa_proc_imsg_dissector_table = register_dissector_table("nrppa.proc.imsg", "NRPPA-ELEMENTARY-PROCEDURE InitiatingMessage", proto_nrppa, FT_UINT32, BASE_DEC); + nrppa_proc_sout_dissector_table = register_dissector_table("nrppa.proc.sout", "NRPPA-ELEMENTARY-PROCEDURE SuccessfulOutcome", proto_nrppa, FT_UINT32, BASE_DEC); + nrppa_proc_uout_dissector_table = register_dissector_table("nrppa.proc.uout", "NRPPA-ELEMENTARY-PROCEDURE UnsuccessfulOutcome", proto_nrppa, FT_UINT32, BASE_DEC); +} + +/*--- proto_reg_handoff_nrppa ---------------------------------------*/ +void +proto_reg_handoff_nrppa(void) +{ + dissector_add_uint("nrppa.ies", id_Cause, create_dissector_handle(dissect_Cause_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_CriticalityDiagnostics, create_dissector_handle(dissect_CriticalityDiagnostics_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_LMF_UE_Measurement_ID, create_dissector_handle(dissect_UE_Measurement_ID_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_ReportCharacteristics, create_dissector_handle(dissect_ReportCharacteristics_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_MeasurementPeriodicity, create_dissector_handle(dissect_MeasurementPeriodicity_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_MeasurementQuantities, create_dissector_handle(dissect_MeasurementQuantities_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_RAN_UE_Measurement_ID, create_dissector_handle(dissect_UE_Measurement_ID_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_E_CID_MeasurementResult, create_dissector_handle(dissect_E_CID_MeasurementResult_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_OTDOACells, create_dissector_handle(dissect_OTDOACells_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_OTDOA_Information_Type_Group, create_dissector_handle(dissect_OTDOA_Information_Type_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_OTDOA_Information_Type_Item, create_dissector_handle(dissect_OTDOA_Information_Type_Item_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_MeasurementQuantities_Item, create_dissector_handle(dissect_MeasurementQuantities_Item_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_RequestedSRSTransmissionCharacteristics, create_dissector_handle(dissect_RequestedSRSTransmissionCharacteristics_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_Cell_Portion_ID, create_dissector_handle(dissect_Cell_Portion_ID_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_OtherRATMeasurementQuantities, create_dissector_handle(dissect_OtherRATMeasurementQuantities_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_OtherRATMeasurementQuantities_Item, create_dissector_handle(dissect_OtherRATMeasurementQuantities_Item_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_OtherRATMeasurementResult, create_dissector_handle(dissect_OtherRATMeasurementResult_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_WLANMeasurementQuantities, create_dissector_handle(dissect_WLANMeasurementQuantities_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_WLANMeasurementQuantities_Item, create_dissector_handle(dissect_WLANMeasurementQuantities_Item_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_WLANMeasurementResult, create_dissector_handle(dissect_WLANMeasurementResult_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_TDD_Config_EUTRA_Item, create_dissector_handle(dissect_TDD_Config_EUTRA_Item_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_Assistance_Information, create_dissector_handle(dissect_nrppa_Assistance_Information_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_Broadcast, create_dissector_handle(dissect_Broadcast_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_AssistanceInformationFailureList, create_dissector_handle(dissect_AssistanceInformationFailureList_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_SRSConfiguration, create_dissector_handle(dissect_SRSConfiguration_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_TRPInformationTypeListTRPReq, create_dissector_handle(dissect_TRPInformationTypeListTRPReq_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_TRPInformationListTRPResp, create_dissector_handle(dissect_TRPInformationListTRPResp_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_MeasurementBeamInfoRequest, create_dissector_handle(dissect_MeasurementBeamInfoRequest_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_ResultSS_RSRP, create_dissector_handle(dissect_ResultSS_RSRP_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_ResultSS_RSRQ, create_dissector_handle(dissect_ResultSS_RSRQ_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_ResultCSI_RSRP, create_dissector_handle(dissect_ResultCSI_RSRP_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_ResultCSI_RSRQ, create_dissector_handle(dissect_ResultCSI_RSRQ_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_AngleOfArrivalNR, create_dissector_handle(dissect_UL_AoA_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_PositioningBroadcastCells, create_dissector_handle(dissect_PositioningBroadcastCells_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_LMF_Measurement_ID, create_dissector_handle(dissect_Measurement_ID_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_RAN_Measurement_ID, create_dissector_handle(dissect_Measurement_ID_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_TRP_MeasurementRequestList, create_dissector_handle(dissect_TRP_MeasurementRequestList_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_TRP_MeasurementResponseList, create_dissector_handle(dissect_TRP_MeasurementResponseList_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_SRSType, create_dissector_handle(dissect_SRSType_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_ActivationTime, create_dissector_handle(dissect_RelativeTime1900_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_TRPList, create_dissector_handle(dissect_TRPList_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_SystemFrameNumber, create_dissector_handle(dissect_SystemFrameNumber_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_SlotNumber, create_dissector_handle(dissect_SlotNumber_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_TRPMeasurementQuantities, create_dissector_handle(dissect_TRPMeasurementQuantities_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_AbortTransmission, create_dissector_handle(dissect_AbortTransmission_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_SFNInitialisationTime, create_dissector_handle(dissect_RelativeTime1900_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_ResultNR, create_dissector_handle(dissect_ResultNR_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_ResultEUTRA, create_dissector_handle(dissect_ResultEUTRA_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_TRPInformationTypeItem, create_dissector_handle(dissect_TRPInformationTypeItem_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_CGI_NR, create_dissector_handle(dissect_CGI_NR_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_SFNInitialisationTime_NR, create_dissector_handle(dissect_SFNInitialisationTime_EUTRA_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_Cell_ID, create_dissector_handle(dissect_CGI_NR_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_SrsFrequency, create_dissector_handle(dissect_SrsFrequency_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_TRPType, create_dissector_handle(dissect_TRPType_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_MeasurementPeriodicityExtended, create_dissector_handle(dissect_MeasurementPeriodicityExtended_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_PRSTRPList, create_dissector_handle(dissect_PRSTRPList_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_PRSTransmissionTRPList, create_dissector_handle(dissect_PRSTransmissionTRPList_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_OnDemandPRS, create_dissector_handle(dissect_OnDemandPRS_Info_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_TRP_MeasurementUpdateList, create_dissector_handle(dissect_TRP_MeasurementUpdateList_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_ZoA, create_dissector_handle(dissect_ZoA_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_ResponseTime, create_dissector_handle(dissect_ResponseTime_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_UEReportingInformation, create_dissector_handle(dissect_UEReportingInformation_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_MultipleULAoA, create_dissector_handle(dissect_MultipleULAoA_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_UL_SRS_RSRPP, create_dissector_handle(dissect_UL_SRS_RSRPP_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_UETxTEGAssociationList, create_dissector_handle(dissect_UETxTEGAssociationList_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_TRPTxTEGAssociation, create_dissector_handle(dissect_TRPTxTEGAssociation_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_TRP_PRS_Information_List, create_dissector_handle(dissect_TRP_PRS_Information_List_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_PRS_Measurements_Info_List, create_dissector_handle(dissect_PRS_Measurements_Info_List_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_PRSConfigRequestType, create_dissector_handle(dissect_PRSConfigRequestType_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_UE_TEG_Info_Request, create_dissector_handle(dissect_UE_TEG_Info_Request_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_MeasurementTimeOccasion, create_dissector_handle(dissect_MeasurementTimeOccasion_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_MeasurementCharacteristicsRequestIndicator, create_dissector_handle(dissect_MeasurementCharacteristicsRequestIndicator_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_TRPBeamAntennaInformation, create_dissector_handle(dissect_TRPBeamAntennaInformation_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_NR_TADV, create_dissector_handle(dissect_NR_TADV_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_MeasurementAmount, create_dissector_handle(dissect_MeasurementAmount_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_PreconfigurationResult, create_dissector_handle(dissect_PreconfigurationResult_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_RequestType, create_dissector_handle(dissect_RequestType_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_UE_TEG_ReportingPeriodicity, create_dissector_handle(dissect_UE_TEG_ReportingPeriodicity_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_MeasurementPeriodicityNR_AoA, create_dissector_handle(dissect_MeasurementPeriodicityNR_AoA_PDU, proto_nrppa)); + dissector_add_uint("nrppa.ies", id_SRSTransmissionStatus, create_dissector_handle(dissect_SRSTransmissionStatus_PDU, proto_nrppa)); + dissector_add_uint("nrppa.extension", id_GeographicalCoordinates, create_dissector_handle(dissect_GeographicalCoordinates_PDU, proto_nrppa)); + dissector_add_uint("nrppa.extension", id_SRSSpatialRelation, create_dissector_handle(dissect_SpatialRelationInfo_PDU, proto_nrppa)); + dissector_add_uint("nrppa.extension", id_SRSSpatialRelationPerSRSResource, create_dissector_handle(dissect_SpatialRelationPerSRSResource_PDU, proto_nrppa)); + dissector_add_uint("nrppa.extension", id_PRS_Resource_ID, create_dissector_handle(dissect_PRS_Resource_ID_PDU, proto_nrppa)); + dissector_add_uint("nrppa.extension", id_AoA_SearchWindow, create_dissector_handle(dissect_AoA_AssistanceInfo_PDU, proto_nrppa)); + dissector_add_uint("nrppa.extension", id_MultipleULAoA, create_dissector_handle(dissect_MultipleULAoA_PDU, proto_nrppa)); + dissector_add_uint("nrppa.extension", id_SRSResourcetype, create_dissector_handle(dissect_SRSResourcetype_PDU, proto_nrppa)); + dissector_add_uint("nrppa.extension", id_ExtendedAdditionalPathList, create_dissector_handle(dissect_ExtendedAdditionalPathList_PDU, proto_nrppa)); + dissector_add_uint("nrppa.extension", id_ARPLocationInfo, create_dissector_handle(dissect_ARPLocationInformation_PDU, proto_nrppa)); + dissector_add_uint("nrppa.extension", id_ARP_ID, create_dissector_handle(dissect_ARP_ID_PDU, proto_nrppa)); + dissector_add_uint("nrppa.extension", id_LoS_NLoSInformation, create_dissector_handle(dissect_LoS_NLoSInformation_PDU, proto_nrppa)); + dissector_add_uint("nrppa.extension", id_NumberOfTRPRxTEG, create_dissector_handle(dissect_NumberOfTRPRxTEG_PDU, proto_nrppa)); + dissector_add_uint("nrppa.extension", id_NumberOfTRPRxTxTEG, create_dissector_handle(dissect_NumberOfTRPRxTxTEG_PDU, proto_nrppa)); + dissector_add_uint("nrppa.extension", id_TRPTEGInformation, create_dissector_handle(dissect_TRPTEGInformation_PDU, proto_nrppa)); + dissector_add_uint("nrppa.extension", id_TRP_Rx_TEGInformation, create_dissector_handle(dissect_TRP_Rx_TEGInformation_PDU, proto_nrppa)); + dissector_add_uint("nrppa.extension", id_pathPower, create_dissector_handle(dissect_UL_SRS_RSRPP_PDU, proto_nrppa)); + dissector_add_uint("nrppa.extension", id_SRSPortIndex, create_dissector_handle(dissect_SRSPortIndex_PDU, proto_nrppa)); + dissector_add_uint("nrppa.extension", id_UETxTimingErrorMargin, create_dissector_handle(dissect_TimingErrorMargin_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.imsg", id_errorIndication, create_dissector_handle(dissect_ErrorIndication_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.imsg", id_privateMessage, create_dissector_handle(dissect_PrivateMessage_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.imsg", id_e_CIDMeasurementInitiation, create_dissector_handle(dissect_E_CIDMeasurementInitiationRequest_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.sout", id_e_CIDMeasurementInitiation, create_dissector_handle(dissect_E_CIDMeasurementInitiationResponse_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.uout", id_e_CIDMeasurementInitiation, create_dissector_handle(dissect_E_CIDMeasurementInitiationFailure_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.imsg", id_e_CIDMeasurementFailureIndication, create_dissector_handle(dissect_E_CIDMeasurementFailureIndication_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.imsg", id_e_CIDMeasurementReport, create_dissector_handle(dissect_E_CIDMeasurementReport_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.imsg", id_e_CIDMeasurementTermination, create_dissector_handle(dissect_E_CIDMeasurementTerminationCommand_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.imsg", id_oTDOAInformationExchange, create_dissector_handle(dissect_OTDOAInformationRequest_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.sout", id_oTDOAInformationExchange, create_dissector_handle(dissect_OTDOAInformationResponse_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.uout", id_oTDOAInformationExchange, create_dissector_handle(dissect_OTDOAInformationFailure_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.imsg", id_assistanceInformationControl, create_dissector_handle(dissect_AssistanceInformationControl_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.imsg", id_assistanceInformationFeedback, create_dissector_handle(dissect_AssistanceInformationFeedback_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.imsg", id_positioningInformationExchange, create_dissector_handle(dissect_PositioningInformationRequest_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.sout", id_positioningInformationExchange, create_dissector_handle(dissect_PositioningInformationResponse_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.uout", id_positioningInformationExchange, create_dissector_handle(dissect_PositioningInformationFailure_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.imsg", id_positioningInformationUpdate, create_dissector_handle(dissect_PositioningInformationUpdate_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.imsg", id_Measurement, create_dissector_handle(dissect_MeasurementRequest_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.sout", id_Measurement, create_dissector_handle(dissect_MeasurementResponse_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.uout", id_Measurement, create_dissector_handle(dissect_MeasurementFailure_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.imsg", id_MeasurementReport, create_dissector_handle(dissect_MeasurementReport_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.imsg", id_MeasurementUpdate, create_dissector_handle(dissect_MeasurementUpdate_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.imsg", id_MeasurementAbort, create_dissector_handle(dissect_MeasurementAbort_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.imsg", id_MeasurementFailureIndication, create_dissector_handle(dissect_MeasurementFailureIndication_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.imsg", id_tRPInformationExchange, create_dissector_handle(dissect_TRPInformationRequest_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.sout", id_tRPInformationExchange, create_dissector_handle(dissect_TRPInformationResponse_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.uout", id_tRPInformationExchange, create_dissector_handle(dissect_TRPInformationFailure_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.imsg", id_positioningActivation, create_dissector_handle(dissect_PositioningActivationRequest_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.sout", id_positioningActivation, create_dissector_handle(dissect_PositioningActivationResponse_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.uout", id_positioningActivation, create_dissector_handle(dissect_PositioningActivationFailure_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.imsg", id_positioningDeactivation, create_dissector_handle(dissect_PositioningDeactivation_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.imsg", id_pRSConfigurationExchange, create_dissector_handle(dissect_PRSConfigurationRequest_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.sout", id_pRSConfigurationExchange, create_dissector_handle(dissect_PRSConfigurationResponse_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.uout", id_pRSConfigurationExchange, create_dissector_handle(dissect_PRSConfigurationFailure_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.imsg", id_measurementPreconfiguration, create_dissector_handle(dissect_MeasurementPreconfigurationRequired_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.sout", id_measurementPreconfiguration, create_dissector_handle(dissect_MeasurementPreconfigurationConfirm_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.uout", id_measurementPreconfiguration, create_dissector_handle(dissect_MeasurementPreconfigurationRefuse_PDU, proto_nrppa)); + dissector_add_uint("nrppa.proc.imsg", id_measurementActivation, create_dissector_handle(dissect_MeasurementActivation_PDU, proto_nrppa)); + +} |