fdb91e422f131c8be6cf0b1fb9e9ce76e5595899
[metze/wireshark/wip.git] / epan / dissectors / packet-nr-rrc.c
1 /* Do not modify this file. Changes will be overwritten.                      */
2 /* Generated automatically by the ASN.1 to Wireshark dissector compiler       */
3 /* packet-nr-rrc.c                                                            */
4 /* asn2wrs.py -L -p nr-rrc -c ./nr-rrc.cnf -s ./packet-nr-rrc-template -D . -O ../.. NR-InterNodeDefinitions.asn NR-RRC-Definitions.asn NR-UE-Variables.asn */
5
6 /* Input file: packet-nr-rrc-template.c */
7
8 #line 1 "./asn1/nr-rrc/packet-nr-rrc-template.c"
9 /* packet-nr-rrc-template.c
10  * NR;
11  * Radio Resource Control (RRC) protocol specification
12  * (3GPP TS 38.331 V15.3.0 Release 15) packet dissection
13  * Copyright 2018, Pascal Quantin
14  *
15  * Wireshark - Network traffic analyzer
16  * By Gerald Combs <gerald@wireshark.org>
17  * Copyright 1998 Gerald Combs
18  *
19  * SPDX-License-Identifier: GPL-2.0-or-later
20  */
21
22 #include "config.h"
23
24 #include <stdlib.h>
25
26 #include <epan/packet.h>
27 #include <epan/asn1.h>
28 #include <epan/expert.h>
29 #include <epan/reassemble.h>
30 #include <epan/exceptions.h>
31 #include <epan/show_exception.h>
32
33 #include <wsutil/str_util.h>
34
35 #include "packet-per.h"
36 #include "packet-gsm_map.h"
37 #include "packet-cell_broadcast.h"
38 #include "packet-lte-rrc.h"
39 #include "packet-nr-rrc.h"
40
41 #define PNAME  "NR Radio Resource Control (RRC) protocol"
42 #define PSNAME "NR RRC"
43 #define PFNAME "nr-rrc"
44
45 void proto_register_nr_rrc(void);
46 void proto_reg_handoff_nr_rrc(void);
47
48 static dissector_handle_t nas_5gs_handle = NULL;
49 static dissector_handle_t lte_rrc_conn_reconf_handle = NULL;
50
51 static wmem_map_t *nr_rrc_etws_cmas_dcs_hash = NULL;
52
53 static reassembly_table nr_rrc_sib7_reassembly_table;
54 static reassembly_table nr_rrc_sib8_reassembly_table;
55
56 /* Include constants */
57
58 /*--- Included file: packet-nr-rrc-val.h ---*/
59 #line 1 "./asn1/nr-rrc/packet-nr-rrc-val.h"
60 #define maxMeasFreqsMN                 32
61 #define maxMeasFreqsSN                 32
62 #define maxMeasIdentitiesMN            62
63 #define maxCellPrep                    32
64 #define maxBandComb                    65536
65 #define maxCellBlack                   16
66 #define maxCellInter                   16
67 #define maxCellIntra                   16
68 #define maxCellMeasEUTRA               32
69 #define maxEARFCN                      262143
70 #define maxEUTRA_CellBlack             16
71 #define maxEUTRA_NS_Pmax               8
72 #define maxMultiBands                  8
73 #define maxNARFCN                      3279165
74 #define maxNR_NS_Pmax                  8
75 #define maxNrofServingCells            32
76 #define maxNrofServingCells_1          31
77 #define maxNrofAggregatedCellsPerCellGroup 16
78 #define maxNrofSCells                  31
79 #define maxNrofCellMeas                32
80 #define maxNrofSS_BlocksToAverage      16
81 #define maxNrofCSI_RS_ResourcesToAverage 16
82 #define maxNrofDL_Allocations          16
83 #define maxNrofSR_ConfigPerCellGroup   8
84 #define maxLCG_ID                      7
85 #define maxLC_ID                       32
86 #define maxNrofTAGs                    4
87 #define maxNrofTAGs_1                  3
88 #define maxNrofBWPs                    4
89 #define maxNrofCombIDC                 128
90 #define maxNrofSymbols_1               13
91 #define maxNrofSlots                   320
92 #define maxNrofSlots_1                 319
93 #define maxNrofPhysicalResourceBlocks  275
94 #define maxNrofPhysicalResourceBlocks_1 274
95 #define maxNrofPhysicalResourceBlocksPlus1 276
96 #define maxNrofControlResourceSets_1   11
97 #define maxCoReSetDuration             3
98 #define maxNrofSearchSpaces_1          39
99 #define maxSFI_DCI_PayloadSize         128
100 #define maxSFI_DCI_PayloadSize_1       127
101 #define maxINT_DCI_PayloadSize         126
102 #define maxINT_DCI_PayloadSize_1       125
103 #define maxNrofRateMatchPatterns       4
104 #define maxNrofRateMatchPatterns_1     3
105 #define maxNrofRateMatchPatternsPerGroup 8
106 #define maxNrofCSI_ReportConfigurations 48
107 #define maxNrofCSI_ReportConfigurations_1 47
108 #define maxNrofCSI_ResourceConfigurations 112
109 #define maxNrofCSI_ResourceConfigurations_1 111
110 #define maxNrofAP_CSI_RS_ResourcesPerSet 16
111 #define maxNrOfCSI_AperiodicTriggers   128
112 #define maxNrofReportConfigPerAperiodicTrigger 16
113 #define maxNrofNZP_CSI_RS_Resources    192
114 #define maxNrofNZP_CSI_RS_Resources_1  191
115 #define maxNrofNZP_CSI_RS_ResourcesPerSet 64
116 #define maxNrofNZP_CSI_RS_ResourceSets 64
117 #define maxNrofNZP_CSI_RS_ResourceSets_1 63
118 #define maxNrofNZP_CSI_RS_ResourceSetsPerConfig 16
119 #define maxNrofNZP_CSI_RS_ResourcesPerConfig 128
120 #define maxNrofZP_CSI_RS_Resources     32
121 #define maxNrofZP_CSI_RS_Resources_1   31
122 #define maxNrofZP_CSI_RS_ResourceSets_1 15
123 #define maxNrofZP_CSI_RS_ResourcesPerSet 16
124 #define maxNrofZP_CSI_RS_ResourceSets  16
125 #define maxNrofCSI_IM_Resources        32
126 #define maxNrofCSI_IM_Resources_1      31
127 #define maxNrofCSI_IM_ResourcesPerSet  8
128 #define maxNrofCSI_IM_ResourceSets     64
129 #define maxNrofCSI_IM_ResourceSets_1   63
130 #define maxNrofCSI_IM_ResourceSetsPerConfig 16
131 #define maxNrofCSI_SSB_ResourcePerSet  64
132 #define maxNrofCSI_SSB_ResourceSets    64
133 #define maxNrofCSI_SSB_ResourceSets_1  63
134 #define maxNrofCSI_SSB_ResourceSetsPerConfig 1
135 #define maxNrofFailureDetectionResources 10
136 #define maxNrofFailureDetectionResources_1 9
137 #define maxNrofObjectId                64
138 #define maxNrofPageRec                 32
139 #define maxNrofPCI_Ranges              8
140 #define maxPLMN                        12
141 #define maxNrofCSI_RS_ResourcesRRM     96
142 #define maxNrofCSI_RS_ResourcesRRM_1   95
143 #define maxNrofMeasId                  64
144 #define maxNrofQuantityConfig          2
145 #define maxNrofCSI_RS_CellsRRM         96
146 #define maxNrofSRS_ResourceSets        16
147 #define maxNrofSRS_ResourceSets_1      15
148 #define maxNrofSRS_Resources           64
149 #define maxNrofSRS_Resources_1         63
150 #define maxNrofSRS_ResourcesPerSet     16
151 #define maxNrofSRS_TriggerStates_1     3
152 #define maxNrofSRS_TriggerStates_2     2
153 #define maxRAT_CapabilityContainers    8
154 #define maxSimultaneousBands           32
155 #define maxNrofSlotFormatCombinationsPerSet 512
156 #define maxNrofSlotFormatCombinationsPerSet_1 511
157 #define maxNrofPUCCH_Resources         128
158 #define maxNrofPUCCH_Resources_1       127
159 #define maxNrofPUCCH_ResourceSets      4
160 #define maxNrofPUCCH_ResourceSets_1    3
161 #define maxNrofPUCCH_ResourcesPerSet   32
162 #define maxNrofPUCCH_P0_PerSet         8
163 #define maxNrofPUCCH_PathlossReferenceRSs 4
164 #define maxNrofPUCCH_PathlossReferenceRSs_1 3
165 #define maxNrofP0_PUSCH_AlphaSets      30
166 #define maxNrofP0_PUSCH_AlphaSets_1    29
167 #define maxNrofPUSCH_PathlossReferenceRSs 4
168 #define maxNrofPUSCH_PathlossReferenceRSs_1 3
169 #define maxNrofNAICS_Entries           8
170 #define maxBands                       1024
171 #define maxBandsMRDC                   1280
172 #define maxBandsEUTRA                  256
173 #define maxCellReport                  8
174 #define maxDRB                         29
175 #define maxFreq                        8
176 #define maxFreqIDC_MRDC                32
177 #define maxNrofCSI_RS                  64
178 #define maxNrofCandidateBeams          16
179 #define maxNrofPCIsPerSMTC             64
180 #define maxNrofQFIs                    64
181 #define maxNrOfSemiPersistentPUSCH_Triggers 64
182 #define maxNrofSR_Resources            8
183 #define maxNrofSlotFormatsPerCombination 256
184 #define maxNrofSpatialRelationInfos    8
185 #define maxNrofIndexesToReport         32
186 #define maxNrofIndexesToReport2        64
187 #define maxNrofSSBs                    64
188 #define maxNrofSSBs_1                  63
189 #define maxNrofS_NSSAI                 8
190 #define maxNrofTCI_StatesPDCCH         64
191 #define maxNrofTCI_States              128
192 #define maxNrofTCI_States_1            127
193 #define maxNrofUL_Allocations          16
194 #define maxQFI                         63
195 #define maxRA_CSIRS_Resources          96
196 #define maxRA_OccasionsPerCSIRS        64
197 #define maxRA_Occasions_1              511
198 #define maxRA_SSB_Resources            64
199 #define maxSCSs                        5
200 #define maxSecondaryCellGroups         3
201 #define maxNrofServingCellsEUTRA       32
202 #define maxMBSFN_Allocations           8
203 #define maxNrofMultiBands              8
204 #define maxCellSFTD                    3
205 #define maxReportConfigId              64
206 #define maxNrofCodebooks               16
207 #define maxNrofSRI_PUSCH_Mappings      16
208 #define maxNrofSRI_PUSCH_Mappings_1    15
209 #define maxSIB                         32
210 #define maxSIB_1                       31
211 #define maxSI_Message                  32
212 #define maxAccessCat_1                 63
213 #define maxBarringInfoSet              8
214 #define maxCellEUTRA                   8
215 #define maxEUTRA_Carrier               8
216 #define maxPLMNIdentities              8
217 #define maxDownlinkFeatureSets         1024
218 #define maxUplinkFeatureSets           1024
219 #define maxEUTRA_DL_FeatureSets        256
220 #define maxEUTRA_UL_FeatureSets        256
221 #define maxFeatureSetsPerBand          128
222 #define maxPerCC_FeatureSets           1024
223 #define maxFeatureSetCombinations      1024
224 #define maxInterRAT_RSTD_Freq          3
225
226 typedef enum _RAT_Type_enum {
227   RAT_Type_nr  =   0,
228   RAT_Type_eutra_nr =   1,
229   RAT_Type_eutra =   2,
230   RAT_Type_spare1 =   3
231 } RAT_Type_enum;
232
233 typedef enum _T_targetRAT_Type_enum {
234   T_targetRAT_Type_eutra =   0,
235   T_targetRAT_Type_spare3 =   1,
236   T_targetRAT_Type_spare2 =   2,
237   T_targetRAT_Type_spare1 =   3
238 } T_targetRAT_Type_enum;
239
240 /*--- End of included file: packet-nr-rrc-val.h ---*/
241 #line 50 "./asn1/nr-rrc/packet-nr-rrc-template.c"
242
243 /* Initialize the protocol and registered fields */
244 static int proto_nr_rrc = -1;
245
246 /*--- Included file: packet-nr-rrc-hf.c ---*/
247 #line 1 "./asn1/nr-rrc/packet-nr-rrc-hf.c"
248 static int hf_nr_rrc_nr_rrc_HandoverCommand_PDU = -1;  /* HandoverCommand */
249 static int hf_nr_rrc_nr_rrc_HandoverPreparationInformation_PDU = -1;  /* HandoverPreparationInformation */
250 static int hf_nr_rrc_nr_rrc_CG_Config_PDU = -1;   /* CG_Config */
251 static int hf_nr_rrc_nr_rrc_CG_ConfigInfo_PDU = -1;  /* CG_ConfigInfo */
252 static int hf_nr_rrc_nr_rrc_ConfigRestrictInfoSCG_PDU = -1;  /* ConfigRestrictInfoSCG */
253 static int hf_nr_rrc_nr_rrc_MeasurementTimingConfiguration_PDU = -1;  /* MeasurementTimingConfiguration */
254 static int hf_nr_rrc_UERadioPagingInformation_PDU = -1;  /* UERadioPagingInformation */
255 static int hf_nr_rrc_UERadioAccessCapabilityInformation_PDU = -1;  /* UERadioAccessCapabilityInformation */
256 static int hf_nr_rrc_BCCH_BCH_Message_PDU = -1;   /* BCCH_BCH_Message */
257 static int hf_nr_rrc_BCCH_DL_SCH_Message_PDU = -1;  /* BCCH_DL_SCH_Message */
258 static int hf_nr_rrc_DL_CCCH_Message_PDU = -1;    /* DL_CCCH_Message */
259 static int hf_nr_rrc_DL_DCCH_Message_PDU = -1;    /* DL_DCCH_Message */
260 static int hf_nr_rrc_PCCH_Message_PDU = -1;       /* PCCH_Message */
261 static int hf_nr_rrc_UL_CCCH_Message_PDU = -1;    /* UL_CCCH_Message */
262 static int hf_nr_rrc_UL_CCCH1_Message_PDU = -1;   /* UL_CCCH1_Message */
263 static int hf_nr_rrc_nr_rrc_UL_DCCH_Message_PDU = -1;  /* UL_DCCH_Message */
264 static int hf_nr_rrc_nr_rrc_MIB_PDU = -1;         /* MIB */
265 static int hf_nr_rrc_nr_rrc_RRCReconfiguration_PDU = -1;  /* RRCReconfiguration */
266 static int hf_nr_rrc_nr_rrc_RRCReconfigurationComplete_PDU = -1;  /* RRCReconfigurationComplete */
267 static int hf_nr_rrc_nr_rrc_SIB1_PDU = -1;        /* SIB1 */
268 static int hf_nr_rrc_nr_rrc_CellGroupConfig_PDU = -1;  /* CellGroupConfig */
269 static int hf_nr_rrc_nr_rrc_MeasConfig_PDU = -1;  /* MeasConfig */
270 static int hf_nr_rrc_nr_rrc_MeasGapConfig_PDU = -1;  /* MeasGapConfig */
271 static int hf_nr_rrc_nr_rrc_MeasResults_PDU = -1;  /* MeasResults */
272 static int hf_nr_rrc_nr_rrc_P_Max_PDU = -1;       /* P_Max */
273 static int hf_nr_rrc_nr_rrc_RadioBearerConfig_PDU = -1;  /* RadioBearerConfig */
274 static int hf_nr_rrc_nr_rrc_FreqBandList_PDU = -1;  /* FreqBandList */
275 static int hf_nr_rrc_nr_rrc_UE_CapabilityRAT_ContainerList_PDU = -1;  /* UE_CapabilityRAT_ContainerList */
276 static int hf_nr_rrc_UE_CapabilityRequestFilterNR_PDU = -1;  /* UE_CapabilityRequestFilterNR */
277 static int hf_nr_rrc_nr_rrc_UE_MRDC_Capability_PDU = -1;  /* UE_MRDC_Capability */
278 static int hf_nr_rrc_nr_rrc_UE_NR_Capability_PDU = -1;  /* UE_NR_Capability */
279 static int hf_nr_rrc_MeasResultList2NR_PDU = -1;  /* MeasResultList2NR */
280 static int hf_nr_rrc_MeasResultSCG_Failure_PDU = -1;  /* MeasResultSCG_Failure */
281 static int hf_nr_rrc_SystemInformation_PDU = -1;  /* SystemInformation */
282 static int hf_nr_rrc_criticalExtensions = -1;     /* T_criticalExtensions */
283 static int hf_nr_rrc_c1 = -1;                     /* T_c1 */
284 static int hf_nr_rrc_handoverCommand = -1;        /* HandoverCommand_IEs */
285 static int hf_nr_rrc_spare3 = -1;                 /* NULL */
286 static int hf_nr_rrc_spare2 = -1;                 /* NULL */
287 static int hf_nr_rrc_spare1 = -1;                 /* NULL */
288 static int hf_nr_rrc_criticalExtensionsFuture = -1;  /* T_criticalExtensionsFuture */
289 static int hf_nr_rrc_handoverCommandMessage = -1;  /* T_handoverCommandMessage */
290 static int hf_nr_rrc_nonCriticalExtension = -1;   /* T_nonCriticalExtension */
291 static int hf_nr_rrc_criticalExtensions_01 = -1;  /* T_criticalExtensions_01 */
292 static int hf_nr_rrc_c1_01 = -1;                  /* T_c1_01 */
293 static int hf_nr_rrc_handoverPreparationInformation = -1;  /* HandoverPreparationInformation_IEs */
294 static int hf_nr_rrc_criticalExtensionsFuture_01 = -1;  /* T_criticalExtensionsFuture_01 */
295 static int hf_nr_rrc_ue_CapabilityRAT_List = -1;  /* UE_CapabilityRAT_ContainerList */
296 static int hf_nr_rrc_sourceConfig = -1;           /* AS_Config */
297 static int hf_nr_rrc_rrm_Config = -1;             /* RRM_Config */
298 static int hf_nr_rrc_as_Context = -1;             /* AS_Context */
299 static int hf_nr_rrc_nonCriticalExtension_01 = -1;  /* T_nonCriticalExtension_01 */
300 static int hf_nr_rrc_rrcReconfiguration = -1;     /* T_rrcReconfiguration */
301 static int hf_nr_rrc_reestablishmentInfo = -1;    /* ReestablishmentInfo */
302 static int hf_nr_rrc_configRestrictInfo = -1;     /* ConfigRestrictInfoSCG */
303 static int hf_nr_rrc_ran_NotificationAreaInfo = -1;  /* RAN_NotificationAreaInfo */
304 static int hf_nr_rrc_sourcePhysCellId = -1;       /* PhysCellId */
305 static int hf_nr_rrc_targetCellShortMAC_I = -1;   /* ShortMAC_I */
306 static int hf_nr_rrc_additionalReestabInfoList = -1;  /* ReestabNCellInfoList */
307 static int hf_nr_rrc_ReestabNCellInfoList_item = -1;  /* ReestabNCellInfo */
308 static int hf_nr_rrc_cellIdentity = -1;           /* CellIdentity */
309 static int hf_nr_rrc_key_gNodeB_Star = -1;        /* BIT_STRING_SIZE_256 */
310 static int hf_nr_rrc_shortMAC_I = -1;             /* ShortMAC_I */
311 static int hf_nr_rrc_ue_InactiveTime = -1;        /* T_ue_InactiveTime */
312 static int hf_nr_rrc_candidateCellInfoList = -1;  /* MeasResultList2NR */
313 static int hf_nr_rrc_criticalExtensions_02 = -1;  /* T_criticalExtensions_02 */
314 static int hf_nr_rrc_c1_02 = -1;                  /* T_c1_02 */
315 static int hf_nr_rrc_cg_Config = -1;              /* CG_Config_IEs */
316 static int hf_nr_rrc_criticalExtensionsFuture_02 = -1;  /* T_criticalExtensionsFuture_02 */
317 static int hf_nr_rrc_scg_CellGroupConfig = -1;    /* T_scg_CellGroupConfig */
318 static int hf_nr_rrc_scg_RB_Config = -1;          /* T_scg_RB_Config */
319 static int hf_nr_rrc_configRestrictModReq = -1;   /* ConfigRestrictModReqSCG */
320 static int hf_nr_rrc_drx_InfoSCG = -1;            /* DRX_Info */
321 static int hf_nr_rrc_candidateCellInfoListSN = -1;  /* T_candidateCellInfoListSN */
322 static int hf_nr_rrc_measConfigSN = -1;           /* MeasConfigSN */
323 static int hf_nr_rrc_selectedBandCombinationNR = -1;  /* BandCombinationInfoSN */
324 static int hf_nr_rrc_fr_InfoListSCG = -1;         /* FR_InfoList */
325 static int hf_nr_rrc_candidateServingFreqListNR = -1;  /* CandidateServingFreqListNR */
326 static int hf_nr_rrc_nonCriticalExtension_02 = -1;  /* T_nonCriticalExtension_02 */
327 static int hf_nr_rrc_measuredFrequenciesSN = -1;  /* SEQUENCE_SIZE_1_maxMeasFreqsSN_OF_NR_FreqInfo */
328 static int hf_nr_rrc_measuredFrequenciesSN_item = -1;  /* NR_FreqInfo */
329 static int hf_nr_rrc_measuredFrequency = -1;      /* ARFCN_ValueNR */
330 static int hf_nr_rrc_requestedBC_MRDC = -1;       /* BandCombinationInfoSN */
331 static int hf_nr_rrc_requestedP_MaxFR1 = -1;      /* P_Max */
332 static int hf_nr_rrc_bandCombinationIndex = -1;   /* BandCombinationIndex */
333 static int hf_nr_rrc_requestedFeatureSets = -1;   /* FeatureSetEntryIndex */
334 static int hf_nr_rrc_FR_InfoList_item = -1;       /* FR_Info */
335 static int hf_nr_rrc_servCellIndex = -1;          /* ServCellIndex */
336 static int hf_nr_rrc_fr_Type = -1;                /* T_fr_Type */
337 static int hf_nr_rrc_CandidateServingFreqListNR_item = -1;  /* ARFCN_ValueNR */
338 static int hf_nr_rrc_criticalExtensions_03 = -1;  /* T_criticalExtensions_03 */
339 static int hf_nr_rrc_c1_03 = -1;                  /* T_c1_03 */
340 static int hf_nr_rrc_cg_ConfigInfo = -1;          /* CG_ConfigInfo_IEs */
341 static int hf_nr_rrc_criticalExtensionsFuture_03 = -1;  /* T_criticalExtensionsFuture_03 */
342 static int hf_nr_rrc_ue_CapabilityInfo = -1;      /* T_ue_CapabilityInfo */
343 static int hf_nr_rrc_candidateCellInfoListMN = -1;  /* MeasResultList2NR */
344 static int hf_nr_rrc_candidateCellInfoListSN_01 = -1;  /* T_candidateCellInfoListSN_01 */
345 static int hf_nr_rrc_measResultCellListSFTD = -1;  /* MeasResultCellListSFTD */
346 static int hf_nr_rrc_scgFailureInfo = -1;         /* T_scgFailureInfo */
347 static int hf_nr_rrc_failureType = -1;            /* T_failureType */
348 static int hf_nr_rrc_measResultSCG = -1;          /* T_measResultSCG */
349 static int hf_nr_rrc_drx_InfoMCG = -1;            /* DRX_Info */
350 static int hf_nr_rrc_measConfigMN = -1;           /* MeasConfigMN */
351 static int hf_nr_rrc_sourceConfigSCG = -1;        /* T_sourceConfigSCG */
352 static int hf_nr_rrc_scg_RB_Config_01 = -1;       /* T_scg_RB_Config_01 */
353 static int hf_nr_rrc_mcg_RB_Config = -1;          /* T_mcg_RB_Config */
354 static int hf_nr_rrc_mrdc_AssistanceInfo = -1;    /* MRDC_AssistanceInfo */
355 static int hf_nr_rrc_nonCriticalExtension_03 = -1;  /* T_nonCriticalExtension_03 */
356 static int hf_nr_rrc_allowedBC_ListMRDC = -1;     /* BandCombinationInfoList */
357 static int hf_nr_rrc_powerCoordination_FR1 = -1;  /* T_powerCoordination_FR1 */
358 static int hf_nr_rrc_p_maxNR_FR1 = -1;            /* P_Max */
359 static int hf_nr_rrc_p_maxEUTRA = -1;             /* P_Max */
360 static int hf_nr_rrc_p_maxUE_FR1 = -1;            /* P_Max */
361 static int hf_nr_rrc_servCellIndexRangeSCG = -1;  /* T_servCellIndexRangeSCG */
362 static int hf_nr_rrc_lowBound = -1;               /* ServCellIndex */
363 static int hf_nr_rrc_upBound = -1;                /* ServCellIndex */
364 static int hf_nr_rrc_maxMeasFreqsSCG_NR = -1;     /* INTEGER_1_maxMeasFreqsMN */
365 static int hf_nr_rrc_maxMeasIdentitiesSCG_NR = -1;  /* INTEGER_1_maxMeasIdentitiesMN */
366 static int hf_nr_rrc_BandCombinationInfoList_item = -1;  /* BandCombinationInfo */
367 static int hf_nr_rrc_allowedFeatureSetsList = -1;  /* SEQUENCE_SIZE_1_maxFeatureSetsPerBand_OF_FeatureSetEntryIndex */
368 static int hf_nr_rrc_allowedFeatureSetsList_item = -1;  /* FeatureSetEntryIndex */
369 static int hf_nr_rrc_drx_LongCycleStartOffset = -1;  /* T_drx_LongCycleStartOffset */
370 static int hf_nr_rrc_ms10 = -1;                   /* INTEGER_0_9 */
371 static int hf_nr_rrc_ms20 = -1;                   /* INTEGER_0_19 */
372 static int hf_nr_rrc_ms32 = -1;                   /* INTEGER_0_31 */
373 static int hf_nr_rrc_ms40 = -1;                   /* INTEGER_0_39 */
374 static int hf_nr_rrc_ms60 = -1;                   /* INTEGER_0_59 */
375 static int hf_nr_rrc_ms64 = -1;                   /* INTEGER_0_63 */
376 static int hf_nr_rrc_ms70 = -1;                   /* INTEGER_0_69 */
377 static int hf_nr_rrc_ms80 = -1;                   /* INTEGER_0_79 */
378 static int hf_nr_rrc_ms128 = -1;                  /* INTEGER_0_127 */
379 static int hf_nr_rrc_ms160 = -1;                  /* INTEGER_0_159 */
380 static int hf_nr_rrc_ms256 = -1;                  /* INTEGER_0_255 */
381 static int hf_nr_rrc_ms320 = -1;                  /* INTEGER_0_319 */
382 static int hf_nr_rrc_ms512 = -1;                  /* INTEGER_0_511 */
383 static int hf_nr_rrc_ms640 = -1;                  /* INTEGER_0_639 */
384 static int hf_nr_rrc_ms1024 = -1;                 /* INTEGER_0_1023 */
385 static int hf_nr_rrc_ms1280 = -1;                 /* INTEGER_0_1279 */
386 static int hf_nr_rrc_ms2048 = -1;                 /* INTEGER_0_2047 */
387 static int hf_nr_rrc_ms2560 = -1;                 /* INTEGER_0_2559 */
388 static int hf_nr_rrc_ms5120 = -1;                 /* INTEGER_0_5119 */
389 static int hf_nr_rrc_ms10240 = -1;                /* INTEGER_0_10239 */
390 static int hf_nr_rrc_shortDRX = -1;               /* T_shortDRX */
391 static int hf_nr_rrc_drx_ShortCycle = -1;         /* T_drx_ShortCycle */
392 static int hf_nr_rrc_drx_ShortCycleTimer = -1;    /* INTEGER_1_16 */
393 static int hf_nr_rrc_measuredFrequenciesMN = -1;  /* SEQUENCE_SIZE_1_maxMeasFreqsMN_OF_NR_FreqInfo */
394 static int hf_nr_rrc_measuredFrequenciesMN_item = -1;  /* NR_FreqInfo */
395 static int hf_nr_rrc_measGapConfig = -1;          /* T_measGapConfig */
396 static int hf_nr_rrc_release = -1;                /* NULL */
397 static int hf_nr_rrc_setup = -1;                  /* GapConfig */
398 static int hf_nr_rrc_gapPurpose = -1;             /* T_gapPurpose */
399 static int hf_nr_rrc_affectedCarrierFreqCombInfoListMRDC = -1;  /* SEQUENCE_SIZE_1_maxNrofCombIDC_OF_AffectedCarrierFreqCombInfoMRDC */
400 static int hf_nr_rrc_affectedCarrierFreqCombInfoListMRDC_item = -1;  /* AffectedCarrierFreqCombInfoMRDC */
401 static int hf_nr_rrc_victimSystemType = -1;       /* VictimSystemType */
402 static int hf_nr_rrc_interferenceDirectionMRDC = -1;  /* T_interferenceDirectionMRDC */
403 static int hf_nr_rrc_affectedCarrierFreqCombMRDC = -1;  /* T_affectedCarrierFreqCombMRDC */
404 static int hf_nr_rrc_affectedCarrierFreqCombEUTRA = -1;  /* AffectedCarrierFreqCombEUTRA */
405 static int hf_nr_rrc_affectedCarrierFreqCombNR = -1;  /* AffectedCarrierFreqCombNR */
406 static int hf_nr_rrc_gps = -1;                    /* T_gps */
407 static int hf_nr_rrc_glonass = -1;                /* T_glonass */
408 static int hf_nr_rrc_bds = -1;                    /* T_bds */
409 static int hf_nr_rrc_galileo = -1;                /* T_galileo */
410 static int hf_nr_rrc_wlan = -1;                   /* T_wlan */
411 static int hf_nr_rrc_bluetooth = -1;              /* T_bluetooth */
412 static int hf_nr_rrc_AffectedCarrierFreqCombEUTRA_item = -1;  /* ARFCN_ValueEUTRA */
413 static int hf_nr_rrc_AffectedCarrierFreqCombNR_item = -1;  /* ARFCN_ValueNR */
414 static int hf_nr_rrc_criticalExtensions_04 = -1;  /* T_criticalExtensions_04 */
415 static int hf_nr_rrc_c1_04 = -1;                  /* T_c1_04 */
416 static int hf_nr_rrc_measTimingConf = -1;         /* MeasurementTimingConfiguration_IEs */
417 static int hf_nr_rrc_criticalExtensionsFuture_04 = -1;  /* T_criticalExtensionsFuture_04 */
418 static int hf_nr_rrc_measTiming = -1;             /* MeasTimingList */
419 static int hf_nr_rrc_nonCriticalExtension_04 = -1;  /* T_nonCriticalExtension_04 */
420 static int hf_nr_rrc_MeasTimingList_item = -1;    /* MeasTiming */
421 static int hf_nr_rrc_frequencyAndTiming = -1;     /* T_frequencyAndTiming */
422 static int hf_nr_rrc_carrierFreq = -1;            /* ARFCN_ValueNR */
423 static int hf_nr_rrc_ssbSubcarrierSpacing = -1;   /* SubcarrierSpacing */
424 static int hf_nr_rrc_ssb_MeasurementTimingConfiguration = -1;  /* SSB_MTC */
425 static int hf_nr_rrc_ss_RSSI_Measurement = -1;    /* SS_RSSI_Measurement */
426 static int hf_nr_rrc_criticalExtensions_05 = -1;  /* T_criticalExtensions_05 */
427 static int hf_nr_rrc_c1_05 = -1;                  /* T_c1_05 */
428 static int hf_nr_rrc_ueRadioPagingInformation = -1;  /* UERadioPagingInformation_IEs */
429 static int hf_nr_rrc_spare7 = -1;                 /* NULL */
430 static int hf_nr_rrc_spare6 = -1;                 /* NULL */
431 static int hf_nr_rrc_spare5 = -1;                 /* NULL */
432 static int hf_nr_rrc_spare4 = -1;                 /* NULL */
433 static int hf_nr_rrc_criticalExtensionsFuture_05 = -1;  /* T_criticalExtensionsFuture_05 */
434 static int hf_nr_rrc_supportedBandListNRForPaging = -1;  /* SEQUENCE_SIZE_1_maxBands_OF_FreqBandIndicatorNR */
435 static int hf_nr_rrc_supportedBandListNRForPaging_item = -1;  /* FreqBandIndicatorNR */
436 static int hf_nr_rrc_nonCriticalExtension_05 = -1;  /* T_nonCriticalExtension_05 */
437 static int hf_nr_rrc_criticalExtensions_06 = -1;  /* T_criticalExtensions_06 */
438 static int hf_nr_rrc_c1_06 = -1;                  /* T_c1_06 */
439 static int hf_nr_rrc_ueRadioAccessCapabilityInformation = -1;  /* UERadioAccessCapabilityInformation_IEs */
440 static int hf_nr_rrc_criticalExtensionsFuture_06 = -1;  /* T_criticalExtensionsFuture_06 */
441 static int hf_nr_rrc_ue_RadioAccessCapabilityInfo = -1;  /* T_ue_RadioAccessCapabilityInfo */
442 static int hf_nr_rrc_nonCriticalExtension_06 = -1;  /* T_nonCriticalExtension_06 */
443 static int hf_nr_rrc_message = -1;                /* BCCH_BCH_MessageType */
444 static int hf_nr_rrc_mib = -1;                    /* MIB */
445 static int hf_nr_rrc_messageClassExtension = -1;  /* T_messageClassExtension */
446 static int hf_nr_rrc_message_01 = -1;             /* BCCH_DL_SCH_MessageType */
447 static int hf_nr_rrc_c1_07 = -1;                  /* T_c1_07 */
448 static int hf_nr_rrc_systemInformation = -1;      /* SystemInformation */
449 static int hf_nr_rrc_systemInformationBlockType1 = -1;  /* SIB1 */
450 static int hf_nr_rrc_messageClassExtension_01 = -1;  /* T_messageClassExtension_01 */
451 static int hf_nr_rrc_message_02 = -1;             /* DL_CCCH_MessageType */
452 static int hf_nr_rrc_c1_08 = -1;                  /* T_c1_08 */
453 static int hf_nr_rrc_rrcReject = -1;              /* RRCReject */
454 static int hf_nr_rrc_rrcSetup = -1;               /* RRCSetup */
455 static int hf_nr_rrc_messageClassExtension_02 = -1;  /* T_messageClassExtension_02 */
456 static int hf_nr_rrc_message_03 = -1;             /* DL_DCCH_MessageType */
457 static int hf_nr_rrc_c1_09 = -1;                  /* T_c1_09 */
458 static int hf_nr_rrc_rrcReconfiguration_01 = -1;  /* RRCReconfiguration */
459 static int hf_nr_rrc_rrcResume = -1;              /* RRCResume */
460 static int hf_nr_rrc_rrcRelease = -1;             /* RRCRelease */
461 static int hf_nr_rrc_rrcReestablishment = -1;     /* RRCReestablishment */
462 static int hf_nr_rrc_securityModeCommand = -1;    /* SecurityModeCommand */
463 static int hf_nr_rrc_dlInformationTransfer = -1;  /* DLInformationTransfer */
464 static int hf_nr_rrc_ueCapabilityEnquiry = -1;    /* UECapabilityEnquiry */
465 static int hf_nr_rrc_counterCheck = -1;           /* CounterCheck */
466 static int hf_nr_rrc_mobilityFromNRCommand = -1;  /* MobilityFromNRCommand */
467 static int hf_nr_rrc_messageClassExtension_03 = -1;  /* T_messageClassExtension_03 */
468 static int hf_nr_rrc_message_04 = -1;             /* PCCH_MessageType */
469 static int hf_nr_rrc_c1_10 = -1;                  /* T_c1_10 */
470 static int hf_nr_rrc_paging = -1;                 /* Paging */
471 static int hf_nr_rrc_messageClassExtension_04 = -1;  /* T_messageClassExtension_04 */
472 static int hf_nr_rrc_message_05 = -1;             /* UL_CCCH_MessageType */
473 static int hf_nr_rrc_c1_11 = -1;                  /* T_c1_11 */
474 static int hf_nr_rrc_rrcSetupRequest = -1;        /* RRCSetupRequest */
475 static int hf_nr_rrc_rrcResumeRequest = -1;       /* RRCResumeRequest */
476 static int hf_nr_rrc_rrcReestablishmentRequest = -1;  /* RRCReestablishmentRequest */
477 static int hf_nr_rrc_rrcSystemInfoRequest = -1;   /* RRCSystemInfoRequest */
478 static int hf_nr_rrc_messageClassExtension_05 = -1;  /* T_messageClassExtension_05 */
479 static int hf_nr_rrc_message_06 = -1;             /* UL_CCCH1_MessageType */
480 static int hf_nr_rrc_c1_12 = -1;                  /* T_c1_12 */
481 static int hf_nr_rrc_rrcResumeRequest1 = -1;      /* RRCResumeRequest1 */
482 static int hf_nr_rrc_messageClassExtension_06 = -1;  /* T_messageClassExtension_06 */
483 static int hf_nr_rrc_message_07 = -1;             /* UL_DCCH_MessageType */
484 static int hf_nr_rrc_c1_13 = -1;                  /* T_c1_13 */
485 static int hf_nr_rrc_measurementReport = -1;      /* MeasurementReport */
486 static int hf_nr_rrc_rrcReconfigurationComplete = -1;  /* RRCReconfigurationComplete */
487 static int hf_nr_rrc_rrcSetupComplete = -1;       /* RRCSetupComplete */
488 static int hf_nr_rrc_rrcReestablishmentComplete = -1;  /* RRCReestablishmentComplete */
489 static int hf_nr_rrc_rrcResumeComplete = -1;      /* RRCResumeComplete */
490 static int hf_nr_rrc_securityModeComplete = -1;   /* SecurityModeComplete */
491 static int hf_nr_rrc_securityModeFailure = -1;    /* SecurityModeFailure */
492 static int hf_nr_rrc_ulInformationTransfer = -1;  /* ULInformationTransfer */
493 static int hf_nr_rrc_locationMeasurementIndication = -1;  /* LocationMeasurementIndication */
494 static int hf_nr_rrc_ueCapabilityInformation = -1;  /* UECapabilityInformation */
495 static int hf_nr_rrc_counterCheckResponse = -1;   /* CounterCheckResponse */
496 static int hf_nr_rrc_ueAssistanceInformation = -1;  /* UEAssistanceInformation */
497 static int hf_nr_rrc_messageClassExtension_07 = -1;  /* T_messageClassExtension_07 */
498 static int hf_nr_rrc_rrc_TransactionIdentifier = -1;  /* RRC_TransactionIdentifier */
499 static int hf_nr_rrc_criticalExtensions_07 = -1;  /* T_criticalExtensions_07 */
500 static int hf_nr_rrc_counterCheck_01 = -1;        /* CounterCheck_IEs */
501 static int hf_nr_rrc_criticalExtensionsFuture_07 = -1;  /* T_criticalExtensionsFuture_07 */
502 static int hf_nr_rrc_drb_CountMSB_InfoList = -1;  /* DRB_CountMSB_InfoList */
503 static int hf_nr_rrc_lateNonCriticalExtension = -1;  /* OCTET_STRING */
504 static int hf_nr_rrc_nonCriticalExtension_07 = -1;  /* T_nonCriticalExtension_07 */
505 static int hf_nr_rrc_DRB_CountMSB_InfoList_item = -1;  /* DRB_CountMSB_Info */
506 static int hf_nr_rrc_drb_Identity = -1;           /* DRB_Identity */
507 static int hf_nr_rrc_countMSB_Uplink = -1;        /* INTEGER_0_33554431 */
508 static int hf_nr_rrc_countMSB_Downlink = -1;      /* INTEGER_0_33554431 */
509 static int hf_nr_rrc_criticalExtensions_08 = -1;  /* T_criticalExtensions_08 */
510 static int hf_nr_rrc_counterCheckResponse_01 = -1;  /* CounterCheckResponse_IEs */
511 static int hf_nr_rrc_criticalExtensionsFuture_08 = -1;  /* T_criticalExtensionsFuture_08 */
512 static int hf_nr_rrc_drb_CountInfoList = -1;      /* DRB_CountInfoList */
513 static int hf_nr_rrc_nonCriticalExtension_08 = -1;  /* T_nonCriticalExtension_08 */
514 static int hf_nr_rrc_DRB_CountInfoList_item = -1;  /* DRB_CountInfo */
515 static int hf_nr_rrc_count_Uplink = -1;           /* INTEGER_0_4294967295 */
516 static int hf_nr_rrc_count_Downlink = -1;         /* INTEGER_0_4294967295 */
517 static int hf_nr_rrc_criticalExtensions_09 = -1;  /* T_criticalExtensions_09 */
518 static int hf_nr_rrc_dlInformationTransfer_01 = -1;  /* DLInformationTransfer_IEs */
519 static int hf_nr_rrc_criticalExtensionsFuture_09 = -1;  /* T_criticalExtensionsFuture_09 */
520 static int hf_nr_rrc_dedicatedNAS_Message = -1;   /* DedicatedNAS_Message */
521 static int hf_nr_rrc_nonCriticalExtension_09 = -1;  /* T_nonCriticalExtension_09 */
522 static int hf_nr_rrc_criticalExtensions_10 = -1;  /* T_criticalExtensions_10 */
523 static int hf_nr_rrc_locationMeasurementIndication_01 = -1;  /* LocationMeasurementIndication_IEs */
524 static int hf_nr_rrc_criticalExtensionsFuture_10 = -1;  /* T_criticalExtensionsFuture_10 */
525 static int hf_nr_rrc_measurementIndication = -1;  /* T_measurementIndication */
526 static int hf_nr_rrc_setup_01 = -1;               /* LocationMeasurementInfo */
527 static int hf_nr_rrc_nonCriticalExtension_10 = -1;  /* T_nonCriticalExtension_10 */
528 static int hf_nr_rrc_systemFrameNumber = -1;      /* BIT_STRING_SIZE_6 */
529 static int hf_nr_rrc_subCarrierSpacingCommon = -1;  /* T_subCarrierSpacingCommon */
530 static int hf_nr_rrc_ssb_SubcarrierOffset = -1;   /* INTEGER_0_15 */
531 static int hf_nr_rrc_dmrs_TypeA_Position = -1;    /* T_dmrs_TypeA_Position */
532 static int hf_nr_rrc_pdcch_ConfigSIB1 = -1;       /* PDCCH_ConfigSIB1 */
533 static int hf_nr_rrc_cellBarred = -1;             /* T_cellBarred */
534 static int hf_nr_rrc_intraFreqReselection = -1;   /* T_intraFreqReselection */
535 static int hf_nr_rrc_spare = -1;                  /* BIT_STRING_SIZE_1 */
536 static int hf_nr_rrc_criticalExtensions_11 = -1;  /* T_criticalExtensions_11 */
537 static int hf_nr_rrc_measurementReport_01 = -1;   /* MeasurementReport_IEs */
538 static int hf_nr_rrc_criticalExtensionsFuture_11 = -1;  /* T_criticalExtensionsFuture_11 */
539 static int hf_nr_rrc_measResults = -1;            /* MeasResults */
540 static int hf_nr_rrc_nonCriticalExtension_11 = -1;  /* T_nonCriticalExtension_11 */
541 static int hf_nr_rrc_criticalExtensions_12 = -1;  /* T_criticalExtensions_12 */
542 static int hf_nr_rrc_mobilityFromNRCommand_01 = -1;  /* MobilityFromNRCommand_IEs */
543 static int hf_nr_rrc_criticalExtensionsFuture_12 = -1;  /* T_criticalExtensionsFuture_12 */
544 static int hf_nr_rrc_targetRAT_Type = -1;         /* T_targetRAT_Type */
545 static int hf_nr_rrc_targetRAT_MessageContainer = -1;  /* T_targetRAT_MessageContainer */
546 static int hf_nr_rrc_nas_SecurityParamFromNR = -1;  /* OCTET_STRING */
547 static int hf_nr_rrc_nonCriticalExtension_12 = -1;  /* T_nonCriticalExtension_12 */
548 static int hf_nr_rrc_pagingRecordList = -1;       /* PagingRecordList */
549 static int hf_nr_rrc_nonCriticalExtension_13 = -1;  /* T_nonCriticalExtension_13 */
550 static int hf_nr_rrc_PagingRecordList_item = -1;  /* PagingRecord */
551 static int hf_nr_rrc_ue_Identity = -1;            /* PagingUE_Identity */
552 static int hf_nr_rrc_accessType = -1;             /* T_accessType */
553 static int hf_nr_rrc_ng_5G_S_TMSI = -1;           /* NG_5G_S_TMSI */
554 static int hf_nr_rrc_i_RNTI = -1;                 /* I_RNTI_Value */
555 static int hf_nr_rrc_criticalExtensions_13 = -1;  /* T_criticalExtensions_13 */
556 static int hf_nr_rrc_rrcReestablishment_01 = -1;  /* RRCReestablishment_IEs */
557 static int hf_nr_rrc_criticalExtensionsFuture_13 = -1;  /* T_criticalExtensionsFuture_13 */
558 static int hf_nr_rrc_nextHopChainingCount = -1;   /* NextHopChainingCount */
559 static int hf_nr_rrc_nonCriticalExtension_14 = -1;  /* T_nonCriticalExtension_14 */
560 static int hf_nr_rrc_criticalExtensions_14 = -1;  /* T_criticalExtensions_14 */
561 static int hf_nr_rrc_rrcReestablishmentComplete_01 = -1;  /* RRCReestablishmentComplete_IEs */
562 static int hf_nr_rrc_criticalExtensionsFuture_14 = -1;  /* T_criticalExtensionsFuture_14 */
563 static int hf_nr_rrc_nonCriticalExtension_15 = -1;  /* T_nonCriticalExtension_15 */
564 static int hf_nr_rrc_rrcReestablishmentRequest_01 = -1;  /* RRCReestablishmentRequest_IEs */
565 static int hf_nr_rrc_ue_Identity_01 = -1;         /* ReestabUE_Identity */
566 static int hf_nr_rrc_reestablishmentCause = -1;   /* ReestablishmentCause */
567 static int hf_nr_rrc_c_RNTI = -1;                 /* RNTI_Value */
568 static int hf_nr_rrc_physCellId = -1;             /* PhysCellId */
569 static int hf_nr_rrc_criticalExtensions_15 = -1;  /* T_criticalExtensions_15 */
570 static int hf_nr_rrc_rrcReconfiguration_02 = -1;  /* RRCReconfiguration_IEs */
571 static int hf_nr_rrc_criticalExtensionsFuture_15 = -1;  /* T_criticalExtensionsFuture_15 */
572 static int hf_nr_rrc_radioBearerConfig = -1;      /* RadioBearerConfig */
573 static int hf_nr_rrc_secondaryCellGroup = -1;     /* T_secondaryCellGroup */
574 static int hf_nr_rrc_measConfig = -1;             /* MeasConfig */
575 static int hf_nr_rrc_nonCriticalExtension_16 = -1;  /* RRCReconfiguration_v1530_IEs */
576 static int hf_nr_rrc_masterCellGroup = -1;        /* T_masterCellGroup */
577 static int hf_nr_rrc_fullConfig = -1;             /* T_fullConfig */
578 static int hf_nr_rrc_dedicatedNAS_MessageList = -1;  /* SEQUENCE_SIZE_1_maxDRB_OF_DedicatedNAS_Message */
579 static int hf_nr_rrc_dedicatedNAS_MessageList_item = -1;  /* DedicatedNAS_Message */
580 static int hf_nr_rrc_masterKeyUpdate = -1;        /* MasterKeyUpdate */
581 static int hf_nr_rrc_dedicatedSIB1_Delivery = -1;  /* T_dedicatedSIB1_Delivery */
582 static int hf_nr_rrc_dedicatedSystemInformationDelivery = -1;  /* T_dedicatedSystemInformationDelivery */
583 static int hf_nr_rrc_otherConfig = -1;            /* OtherConfig */
584 static int hf_nr_rrc_nonCriticalExtension_17 = -1;  /* T_nonCriticalExtension_16 */
585 static int hf_nr_rrc_keySetChangeIndicator = -1;  /* BOOLEAN */
586 static int hf_nr_rrc_nas_Container = -1;          /* T_nas_Container */
587 static int hf_nr_rrc_criticalExtensions_16 = -1;  /* T_criticalExtensions_16 */
588 static int hf_nr_rrc_rrcReconfigurationComplete_01 = -1;  /* RRCReconfigurationComplete_IEs */
589 static int hf_nr_rrc_criticalExtensionsFuture_16 = -1;  /* T_criticalExtensionsFuture_16 */
590 static int hf_nr_rrc_nonCriticalExtension_18 = -1;  /* RRCReconfigurationComplete_v1530_IEs */
591 static int hf_nr_rrc_uplinkTxDirectCurrentList = -1;  /* UplinkTxDirectCurrentList */
592 static int hf_nr_rrc_nonCriticalExtension_19 = -1;  /* T_nonCriticalExtension_17 */
593 static int hf_nr_rrc_criticalExtensions_17 = -1;  /* T_criticalExtensions_17 */
594 static int hf_nr_rrc_rrcReject_01 = -1;           /* RRCReject_IEs */
595 static int hf_nr_rrc_criticalExtensionsFuture_17 = -1;  /* T_criticalExtensionsFuture_17 */
596 static int hf_nr_rrc_waitTime = -1;               /* RejectWaitTime */
597 static int hf_nr_rrc_nonCriticalExtension_20 = -1;  /* T_nonCriticalExtension_18 */
598 static int hf_nr_rrc_criticalExtensions_18 = -1;  /* T_criticalExtensions_18 */
599 static int hf_nr_rrc_rrcRelease_01 = -1;          /* RRCRelease_IEs */
600 static int hf_nr_rrc_criticalExtensionsFuture_18 = -1;  /* T_criticalExtensionsFuture_18 */
601 static int hf_nr_rrc_redirectedCarrierInfo = -1;  /* RedirectedCarrierInfo */
602 static int hf_nr_rrc_cellReselectionPriorities = -1;  /* CellReselectionPriorities */
603 static int hf_nr_rrc_suspendConfig = -1;          /* SuspendConfig */
604 static int hf_nr_rrc_deprioritisationReq = -1;    /* T_deprioritisationReq */
605 static int hf_nr_rrc_deprioritisationType = -1;   /* T_deprioritisationType */
606 static int hf_nr_rrc_deprioritisationTimer = -1;  /* T_deprioritisationTimer */
607 static int hf_nr_rrc_nonCriticalExtension_21 = -1;  /* T_nonCriticalExtension_19 */
608 static int hf_nr_rrc_nr = -1;                     /* CarrierInfoNR */
609 static int hf_nr_rrc_eutra = -1;                  /* RedirectedCarrierInfo_EUTRA */
610 static int hf_nr_rrc_eutraFrequency = -1;         /* ARFCN_ValueEUTRA */
611 static int hf_nr_rrc_cnType_r15 = -1;             /* T_cnType_r15 */
612 static int hf_nr_rrc_smtc = -1;                   /* SSB_MTC */
613 static int hf_nr_rrc_fullI_RNTI = -1;             /* I_RNTI_Value */
614 static int hf_nr_rrc_shortI_RNTI = -1;            /* ShortI_RNTI_Value */
615 static int hf_nr_rrc_ran_PagingCycle = -1;        /* PagingCycle */
616 static int hf_nr_rrc_t380 = -1;                   /* PeriodicRNAU_TimerValue */
617 static int hf_nr_rrc_freqPriorityListEUTRA = -1;  /* FreqPriorityListEUTRA */
618 static int hf_nr_rrc_freqPriorityListNR = -1;     /* FreqPriorityListNR */
619 static int hf_nr_rrc_t320 = -1;                   /* T_t320 */
620 static int hf_nr_rrc_FreqPriorityListEUTRA_item = -1;  /* FreqPriorityEUTRA */
621 static int hf_nr_rrc_FreqPriorityListNR_item = -1;  /* FreqPriorityNR */
622 static int hf_nr_rrc_carrierFreq_01 = -1;         /* ARFCN_ValueEUTRA */
623 static int hf_nr_rrc_cellReselectionPriority = -1;  /* CellReselectionPriority */
624 static int hf_nr_rrc_cellReselectionSubPriority = -1;  /* CellReselectionSubPriority */
625 static int hf_nr_rrc_cellList = -1;               /* PLMN_RAN_AreaCellList */
626 static int hf_nr_rrc_ran_AreaConfigList = -1;     /* PLMN_RAN_AreaConfigList */
627 static int hf_nr_rrc_PLMN_RAN_AreaCellList_item = -1;  /* PLMN_RAN_AreaCell */
628 static int hf_nr_rrc_plmn_Identity = -1;          /* PLMN_Identity */
629 static int hf_nr_rrc_ran_AreaCells = -1;          /* SEQUENCE_SIZE_1_32_OF_CellIdentity */
630 static int hf_nr_rrc_ran_AreaCells_item = -1;     /* CellIdentity */
631 static int hf_nr_rrc_PLMN_RAN_AreaConfigList_item = -1;  /* PLMN_RAN_AreaConfig */
632 static int hf_nr_rrc_ran_Area = -1;               /* SEQUENCE_SIZE_1_16_OF_RAN_AreaConfig */
633 static int hf_nr_rrc_ran_Area_item = -1;          /* RAN_AreaConfig */
634 static int hf_nr_rrc_trackingAreaCode = -1;       /* TrackingAreaCode */
635 static int hf_nr_rrc_ran_AreaCodeList = -1;       /* SEQUENCE_SIZE_1_32_OF_RAN_AreaCode */
636 static int hf_nr_rrc_ran_AreaCodeList_item = -1;  /* RAN_AreaCode */
637 static int hf_nr_rrc_criticalExtensions_19 = -1;  /* T_criticalExtensions_19 */
638 static int hf_nr_rrc_rrcResume_01 = -1;           /* RRCResume_IEs */
639 static int hf_nr_rrc_criticalExtensionsFuture_19 = -1;  /* T_criticalExtensionsFuture_19 */
640 static int hf_nr_rrc_masterCellGroup_01 = -1;     /* T_masterCellGroup_01 */
641 static int hf_nr_rrc_fullConfig_01 = -1;          /* T_fullConfig_01 */
642 static int hf_nr_rrc_nonCriticalExtension_22 = -1;  /* T_nonCriticalExtension_20 */
643 static int hf_nr_rrc_criticalExtensions_20 = -1;  /* T_criticalExtensions_20 */
644 static int hf_nr_rrc_rrcResumeComplete_01 = -1;   /* RRCResumeComplete_IEs */
645 static int hf_nr_rrc_criticalExtensionsFuture_20 = -1;  /* T_criticalExtensionsFuture_20 */
646 static int hf_nr_rrc_selectedPLMN_Identity = -1;  /* INTEGER_1_maxPLMN */
647 static int hf_nr_rrc_nonCriticalExtension_23 = -1;  /* T_nonCriticalExtension_21 */
648 static int hf_nr_rrc_rrcResumeRequest_01 = -1;    /* RRCResumeRequest_IEs */
649 static int hf_nr_rrc_resumeIdentity = -1;         /* ShortI_RNTI_Value */
650 static int hf_nr_rrc_resumeMAC_I = -1;            /* BIT_STRING_SIZE_16 */
651 static int hf_nr_rrc_resumeCause = -1;            /* ResumeCause */
652 static int hf_nr_rrc_rrcResumeRequest1_01 = -1;   /* RRCResumeRequest1_IEs */
653 static int hf_nr_rrc_resumeIdentity_01 = -1;      /* I_RNTI_Value */
654 static int hf_nr_rrc_criticalExtensions_21 = -1;  /* T_criticalExtensions_21 */
655 static int hf_nr_rrc_rrcSetup_01 = -1;            /* RRCSetup_IEs */
656 static int hf_nr_rrc_criticalExtensionsFuture_21 = -1;  /* T_criticalExtensionsFuture_21 */
657 static int hf_nr_rrc_masterCellGroup_02 = -1;     /* T_masterCellGroup_02 */
658 static int hf_nr_rrc_nonCriticalExtension_24 = -1;  /* T_nonCriticalExtension_22 */
659 static int hf_nr_rrc_criticalExtensions_22 = -1;  /* T_criticalExtensions_22 */
660 static int hf_nr_rrc_rrcSetupComplete_01 = -1;    /* RRCSetupComplete_IEs */
661 static int hf_nr_rrc_criticalExtensionsFuture_22 = -1;  /* T_criticalExtensionsFuture_22 */
662 static int hf_nr_rrc_registeredAMF = -1;          /* RegisteredAMF */
663 static int hf_nr_rrc_guami_Type = -1;             /* T_guami_Type */
664 static int hf_nr_rrc_s_nssai_List = -1;           /* SEQUENCE_SIZE_1_maxNrofS_NSSAI_OF_S_NSSAI */
665 static int hf_nr_rrc_s_nssai_List_item = -1;      /* S_NSSAI */
666 static int hf_nr_rrc_ng_5G_S_TMSI_Value = -1;     /* T_ng_5G_S_TMSI_Value */
667 static int hf_nr_rrc_ng_5G_S_TMSI_Part2 = -1;     /* BIT_STRING_SIZE_9 */
668 static int hf_nr_rrc_nonCriticalExtension_25 = -1;  /* T_nonCriticalExtension_23 */
669 static int hf_nr_rrc_amf_Identifier = -1;         /* AMF_Identifier */
670 static int hf_nr_rrc_rrcSetupRequest_01 = -1;     /* RRCSetupRequest_IEs */
671 static int hf_nr_rrc_ue_Identity_02 = -1;         /* InitialUE_Identity */
672 static int hf_nr_rrc_establishmentCause = -1;     /* EstablishmentCause */
673 static int hf_nr_rrc_ng_5G_S_TMSI_Part1 = -1;     /* BIT_STRING_SIZE_39 */
674 static int hf_nr_rrc_randomValue = -1;            /* BIT_STRING_SIZE_39 */
675 static int hf_nr_rrc_criticalExtensions_23 = -1;  /* T_criticalExtensions_23 */
676 static int hf_nr_rrc_rrcSystemInfoRequest_r15 = -1;  /* RRCSystemInfoRequest_r15_IEs */
677 static int hf_nr_rrc_criticalExtensionsFuture_23 = -1;  /* T_criticalExtensionsFuture_23 */
678 static int hf_nr_rrc_requested_SI_List = -1;      /* BIT_STRING_SIZE_maxSI_Message */
679 static int hf_nr_rrc_spare_01 = -1;               /* BIT_STRING_SIZE_12 */
680 static int hf_nr_rrc_criticalExtensions_24 = -1;  /* T_criticalExtensions_24 */
681 static int hf_nr_rrc_securityModeCommand_01 = -1;  /* SecurityModeCommand_IEs */
682 static int hf_nr_rrc_criticalExtensionsFuture_24 = -1;  /* T_criticalExtensionsFuture_24 */
683 static int hf_nr_rrc_securityConfigSMC = -1;      /* SecurityConfigSMC */
684 static int hf_nr_rrc_nonCriticalExtension_26 = -1;  /* T_nonCriticalExtension_24 */
685 static int hf_nr_rrc_securityAlgorithmConfig = -1;  /* SecurityAlgorithmConfig */
686 static int hf_nr_rrc_criticalExtensions_25 = -1;  /* T_criticalExtensions_25 */
687 static int hf_nr_rrc_securityModeComplete_01 = -1;  /* SecurityModeComplete_IEs */
688 static int hf_nr_rrc_criticalExtensionsFuture_25 = -1;  /* T_criticalExtensionsFuture_25 */
689 static int hf_nr_rrc_nonCriticalExtension_27 = -1;  /* T_nonCriticalExtension_25 */
690 static int hf_nr_rrc_criticalExtensions_26 = -1;  /* T_criticalExtensions_26 */
691 static int hf_nr_rrc_securityModeFailure_01 = -1;  /* SecurityModeFailure_IEs */
692 static int hf_nr_rrc_criticalExtensionsFuture_26 = -1;  /* T_criticalExtensionsFuture_26 */
693 static int hf_nr_rrc_nonCriticalExtension_28 = -1;  /* T_nonCriticalExtension_26 */
694 static int hf_nr_rrc_cellSelectionInfo = -1;      /* T_cellSelectionInfo */
695 static int hf_nr_rrc_q_RxLevMin = -1;             /* Q_RxLevMin */
696 static int hf_nr_rrc_q_RxLevMinOffset = -1;       /* INTEGER_1_8 */
697 static int hf_nr_rrc_q_RxLevMinSUL = -1;          /* Q_RxLevMin */
698 static int hf_nr_rrc_q_QualMin = -1;              /* Q_QualMin */
699 static int hf_nr_rrc_q_QualMinOffset = -1;        /* INTEGER_1_8 */
700 static int hf_nr_rrc_cellAccessRelatedInfo = -1;  /* CellAccessRelatedInfo */
701 static int hf_nr_rrc_connEstFailureControl = -1;  /* ConnEstFailureControl */
702 static int hf_nr_rrc_si_SchedulingInfo = -1;      /* SI_SchedulingInfo */
703 static int hf_nr_rrc_servingCellConfigCommon = -1;  /* ServingCellConfigCommonSIB */
704 static int hf_nr_rrc_ims_EmergencySupport = -1;   /* T_ims_EmergencySupport */
705 static int hf_nr_rrc_eCallOverIMS_Support = -1;   /* T_eCallOverIMS_Support */
706 static int hf_nr_rrc_ue_TimersAndConstants = -1;  /* UE_TimersAndConstants */
707 static int hf_nr_rrc_uac_BarringInfo = -1;        /* T_uac_BarringInfo */
708 static int hf_nr_rrc_uac_BarringForCommon = -1;   /* UAC_BarringPerCatList */
709 static int hf_nr_rrc_uac_BarringPerPLMN_List = -1;  /* UAC_BarringPerPLMN_List */
710 static int hf_nr_rrc_uac_BarringInfoSetList = -1;  /* UAC_BarringInfoSetList */
711 static int hf_nr_rrc_uac_AccessCategory1_SelectionAssistanceInfo = -1;  /* T_uac_AccessCategory1_SelectionAssistanceInfo */
712 static int hf_nr_rrc_plmnCommon = -1;             /* UAC_AccessCategory1_SelectionAssistanceInfo */
713 static int hf_nr_rrc_individualPLMNList = -1;     /* SEQUENCE_SIZE_2_maxPLMN_OF_UAC_AccessCategory1_SelectionAssistanceInfo */
714 static int hf_nr_rrc_individualPLMNList_item = -1;  /* UAC_AccessCategory1_SelectionAssistanceInfo */
715 static int hf_nr_rrc_useFullResumeID = -1;        /* T_useFullResumeID */
716 static int hf_nr_rrc_nonCriticalExtension_29 = -1;  /* T_nonCriticalExtension_27 */
717 static int hf_nr_rrc_criticalExtensions_27 = -1;  /* T_criticalExtensions_27 */
718 static int hf_nr_rrc_systemInformation_r15 = -1;  /* SystemInformation_IEs */
719 static int hf_nr_rrc_criticalExtensionsFuture_27 = -1;  /* T_criticalExtensionsFuture_27 */
720 static int hf_nr_rrc_sib_TypeAndInfo = -1;        /* T_sib_TypeAndInfo */
721 static int hf_nr_rrc_sib_TypeAndInfo_item = -1;   /* T_sib_TypeAndInfo_item */
722 static int hf_nr_rrc_sib2 = -1;                   /* SIB2 */
723 static int hf_nr_rrc_sib3 = -1;                   /* SIB3 */
724 static int hf_nr_rrc_sib4 = -1;                   /* SIB4 */
725 static int hf_nr_rrc_sib5 = -1;                   /* SIB5 */
726 static int hf_nr_rrc_sib6 = -1;                   /* SIB6 */
727 static int hf_nr_rrc_sib7 = -1;                   /* SIB7 */
728 static int hf_nr_rrc_sib8 = -1;                   /* SIB8 */
729 static int hf_nr_rrc_sib9 = -1;                   /* SIB9 */
730 static int hf_nr_rrc_nonCriticalExtension_30 = -1;  /* T_nonCriticalExtension_28 */
731 static int hf_nr_rrc_criticalExtensions_28 = -1;  /* T_criticalExtensions_28 */
732 static int hf_nr_rrc_ueAssistanceInformation_01 = -1;  /* UEAssistanceInformation_IEs */
733 static int hf_nr_rrc_criticalExtensionsFuture_28 = -1;  /* T_criticalExtensionsFuture_28 */
734 static int hf_nr_rrc_delayBudgetReport = -1;      /* DelayBudgetReport */
735 static int hf_nr_rrc_nonCriticalExtension_31 = -1;  /* T_nonCriticalExtension_29 */
736 static int hf_nr_rrc_type1 = -1;                  /* T_type1 */
737 static int hf_nr_rrc_criticalExtensions_29 = -1;  /* T_criticalExtensions_29 */
738 static int hf_nr_rrc_ueCapabilityEnquiry_01 = -1;  /* UECapabilityEnquiry_IEs */
739 static int hf_nr_rrc_criticalExtensionsFuture_29 = -1;  /* T_criticalExtensionsFuture_29 */
740 static int hf_nr_rrc_ue_CapabilityRAT_RequestList = -1;  /* UE_CapabilityRAT_RequestList */
741 static int hf_nr_rrc_nonCriticalExtension_32 = -1;  /* T_nonCriticalExtension_30 */
742 static int hf_nr_rrc_criticalExtensions_30 = -1;  /* T_criticalExtensions_30 */
743 static int hf_nr_rrc_ueCapabilityInformation_01 = -1;  /* UECapabilityInformation_IEs */
744 static int hf_nr_rrc_criticalExtensionsFuture_30 = -1;  /* T_criticalExtensionsFuture_30 */
745 static int hf_nr_rrc_ue_CapabilityRAT_ContainerList = -1;  /* UE_CapabilityRAT_ContainerList */
746 static int hf_nr_rrc_nonCriticalExtension_33 = -1;  /* T_nonCriticalExtension_31 */
747 static int hf_nr_rrc_criticalExtensions_31 = -1;  /* T_criticalExtensions_31 */
748 static int hf_nr_rrc_ulInformationTransfer_01 = -1;  /* ULInformationTransfer_IEs */
749 static int hf_nr_rrc_criticalExtensionsFuture_31 = -1;  /* T_criticalExtensionsFuture_31 */
750 static int hf_nr_rrc_nonCriticalExtension_34 = -1;  /* T_nonCriticalExtension_32 */
751 static int hf_nr_rrc_cellReselectionInfoCommon = -1;  /* T_cellReselectionInfoCommon */
752 static int hf_nr_rrc_nrofSS_BlocksToAverage = -1;  /* INTEGER_2_maxNrofSS_BlocksToAverage */
753 static int hf_nr_rrc_absThreshSS_BlocksConsolidation = -1;  /* ThresholdNR */
754 static int hf_nr_rrc_rangeToBestCell = -1;        /* RangeToBestCell */
755 static int hf_nr_rrc_q_Hyst = -1;                 /* T_q_Hyst */
756 static int hf_nr_rrc_speedStateReselectionPars = -1;  /* T_speedStateReselectionPars */
757 static int hf_nr_rrc_mobilityStateParameters = -1;  /* MobilityStateParameters */
758 static int hf_nr_rrc_q_HystSF = -1;               /* T_q_HystSF */
759 static int hf_nr_rrc_sf_Medium = -1;              /* T_sf_Medium */
760 static int hf_nr_rrc_sf_High = -1;                /* T_sf_High */
761 static int hf_nr_rrc_cellReselectionServingFreqInfo = -1;  /* T_cellReselectionServingFreqInfo */
762 static int hf_nr_rrc_s_NonIntraSearchP = -1;      /* ReselectionThreshold */
763 static int hf_nr_rrc_s_NonIntraSearchQ = -1;      /* ReselectionThresholdQ */
764 static int hf_nr_rrc_threshServingLowP = -1;      /* ReselectionThreshold */
765 static int hf_nr_rrc_threshServingLowQ = -1;      /* ReselectionThresholdQ */
766 static int hf_nr_rrc_intraFreqCellReselectionInfo = -1;  /* T_intraFreqCellReselectionInfo */
767 static int hf_nr_rrc_s_IntraSearchP = -1;         /* ReselectionThreshold */
768 static int hf_nr_rrc_s_IntraSearchQ = -1;         /* ReselectionThresholdQ */
769 static int hf_nr_rrc_t_ReselectionNR = -1;        /* T_Reselection */
770 static int hf_nr_rrc_frequencyBandList = -1;      /* MultiFrequencyBandListNR_SIB */
771 static int hf_nr_rrc_frequencyBandListSUL = -1;   /* MultiFrequencyBandListNR_SIB */
772 static int hf_nr_rrc_p_Max = -1;                  /* P_Max */
773 static int hf_nr_rrc_ssb_ToMeasure = -1;          /* SSB_ToMeasure */
774 static int hf_nr_rrc_deriveSSB_IndexFromCell = -1;  /* BOOLEAN */
775 static int hf_nr_rrc_intraFreqNeighCellList = -1;  /* IntraFreqNeighCellList */
776 static int hf_nr_rrc_intraFreqBlackCellList = -1;  /* IntraFreqBlackCellList */
777 static int hf_nr_rrc_IntraFreqNeighCellList_item = -1;  /* IntraFreqNeighCellInfo */
778 static int hf_nr_rrc_q_OffsetCell = -1;           /* Q_OffsetRange */
779 static int hf_nr_rrc_q_RxLevMinOffsetCell = -1;   /* INTEGER_1_8 */
780 static int hf_nr_rrc_q_RxLevMinOffsetCellSUL = -1;  /* INTEGER_1_8 */
781 static int hf_nr_rrc_q_QualMinOffsetCell = -1;    /* INTEGER_1_8 */
782 static int hf_nr_rrc_IntraFreqBlackCellList_item = -1;  /* PCI_Range */
783 static int hf_nr_rrc_interFreqCarrierFreqList = -1;  /* InterFreqCarrierFreqList */
784 static int hf_nr_rrc_InterFreqCarrierFreqList_item = -1;  /* InterFreqCarrierFreqInfo */
785 static int hf_nr_rrc_dl_CarrierFreq = -1;         /* ARFCN_ValueNR */
786 static int hf_nr_rrc_t_ReselectionNR_SF = -1;     /* SpeedStateScaleFactors */
787 static int hf_nr_rrc_threshX_HighP = -1;          /* ReselectionThreshold */
788 static int hf_nr_rrc_threshX_LowP = -1;           /* ReselectionThreshold */
789 static int hf_nr_rrc_threshX_Q = -1;              /* T_threshX_Q */
790 static int hf_nr_rrc_threshX_HighQ = -1;          /* ReselectionThresholdQ */
791 static int hf_nr_rrc_threshX_LowQ = -1;           /* ReselectionThresholdQ */
792 static int hf_nr_rrc_q_OffsetFreq = -1;           /* Q_OffsetRange */
793 static int hf_nr_rrc_interFreqNeighCellList = -1;  /* InterFreqNeighCellList */
794 static int hf_nr_rrc_interFreqBlackCellList = -1;  /* InterFreqBlackCellList */
795 static int hf_nr_rrc_InterFreqNeighCellList_item = -1;  /* InterFreqNeighCellInfo */
796 static int hf_nr_rrc_InterFreqBlackCellList_item = -1;  /* PCI_Range */
797 static int hf_nr_rrc_carrierFreqListEUTRA = -1;   /* CarrierFreqListEUTRA */
798 static int hf_nr_rrc_t_ReselectionEUTRA = -1;     /* T_Reselection */
799 static int hf_nr_rrc_t_ReselectionEUTRA_SF = -1;  /* SpeedStateScaleFactors */
800 static int hf_nr_rrc_CarrierFreqListEUTRA_item = -1;  /* CarrierFreqEUTRA */
801 static int hf_nr_rrc_eutra_multiBandInfoList = -1;  /* EUTRA_MultiBandInfoList */
802 static int hf_nr_rrc_eutra_FreqNeighCellList = -1;  /* EUTRA_FreqNeighCellList */
803 static int hf_nr_rrc_eutra_BlackCellList = -1;    /* EUTRA_FreqBlackCellList */
804 static int hf_nr_rrc_allowedMeasBandwidth = -1;   /* EUTRA_AllowedMeasBandwidth */
805 static int hf_nr_rrc_presenceAntennaPort1 = -1;   /* EUTRA_PresenceAntennaPort1 */
806 static int hf_nr_rrc_threshX_High = -1;           /* ReselectionThreshold */
807 static int hf_nr_rrc_threshX_Low = -1;            /* ReselectionThreshold */
808 static int hf_nr_rrc_q_RxLevMin_01 = -1;          /* INTEGER_M70_M22 */
809 static int hf_nr_rrc_q_QualMin_01 = -1;           /* INTEGER_M34_M3 */
810 static int hf_nr_rrc_p_MaxEUTRA = -1;             /* INTEGER_M30_33 */
811 static int hf_nr_rrc_threshX_Q_01 = -1;           /* T_threshX_Q_01 */
812 static int hf_nr_rrc_EUTRA_FreqBlackCellList_item = -1;  /* EUTRA_PhysCellIdRange */
813 static int hf_nr_rrc_EUTRA_FreqNeighCellList_item = -1;  /* EUTRA_FreqNeighCellInfo */
814 static int hf_nr_rrc_physCellId_01 = -1;          /* EUTRA_PhysCellId */
815 static int hf_nr_rrc_q_OffsetCell_01 = -1;        /* EUTRA_Q_OffsetRange */
816 static int hf_nr_rrc_messageIdentifier = -1;      /* T_messageIdentifier */
817 static int hf_nr_rrc_serialNumber = -1;           /* T_serialNumber */
818 static int hf_nr_rrc_warningType = -1;            /* T_warningType */
819 static int hf_nr_rrc_messageIdentifier_01 = -1;   /* T_messageIdentifier_01 */
820 static int hf_nr_rrc_serialNumber_01 = -1;        /* T_serialNumber_01 */
821 static int hf_nr_rrc_warningMessageSegmentType = -1;  /* T_warningMessageSegmentType */
822 static int hf_nr_rrc_warningMessageSegmentNumber = -1;  /* T_warningMessageSegmentNumber */
823 static int hf_nr_rrc_warningMessageSegment = -1;  /* T_warningMessageSegment */
824 static int hf_nr_rrc_dataCodingScheme = -1;       /* T_dataCodingScheme */
825 static int hf_nr_rrc_messageIdentifier_02 = -1;   /* T_messageIdentifier_02 */
826 static int hf_nr_rrc_serialNumber_02 = -1;        /* T_serialNumber_02 */
827 static int hf_nr_rrc_warningMessageSegmentType_01 = -1;  /* T_warningMessageSegmentType_01 */
828 static int hf_nr_rrc_warningMessageSegmentNumber_01 = -1;  /* T_warningMessageSegmentNumber_01 */
829 static int hf_nr_rrc_warningMessageSegment_01 = -1;  /* T_warningMessageSegment_01 */
830 static int hf_nr_rrc_dataCodingScheme_01 = -1;    /* T_dataCodingScheme_01 */
831 static int hf_nr_rrc_warningAreaCoordinatesSegment = -1;  /* OCTET_STRING */
832 static int hf_nr_rrc_timeInfo = -1;               /* T_timeInfo */
833 static int hf_nr_rrc_timeInfoUTC = -1;            /* T_timeInfoUTC */
834 static int hf_nr_rrc_dayLightSavingTime = -1;     /* T_dayLightSavingTime */
835 static int hf_nr_rrc_leapSeconds = -1;            /* INTEGER_M127_128 */
836 static int hf_nr_rrc_localTimeOffset = -1;        /* INTEGER_M63_64 */
837 static int hf_nr_rrc_rootSequenceIndex_BFR = -1;  /* INTEGER_0_137 */
838 static int hf_nr_rrc_rach_ConfigBFR = -1;         /* RACH_ConfigGeneric */
839 static int hf_nr_rrc_rsrp_ThresholdSSB = -1;      /* RSRP_Range */
840 static int hf_nr_rrc_candidateBeamRSList = -1;    /* SEQUENCE_SIZE_1_maxNrofCandidateBeams_OF_PRACH_ResourceDedicatedBFR */
841 static int hf_nr_rrc_candidateBeamRSList_item = -1;  /* PRACH_ResourceDedicatedBFR */
842 static int hf_nr_rrc_ssb_perRACH_Occasion = -1;   /* T_ssb_perRACH_Occasion */
843 static int hf_nr_rrc_ra_ssb_OccasionMaskIndex = -1;  /* INTEGER_0_15 */
844 static int hf_nr_rrc_recoverySearchSpaceId = -1;  /* SearchSpaceId */
845 static int hf_nr_rrc_ra_Prioritization = -1;      /* RA_Prioritization */
846 static int hf_nr_rrc_beamFailureRecoveryTimer = -1;  /* T_beamFailureRecoveryTimer */
847 static int hf_nr_rrc_msg1_SubcarrierSpacing_v1530 = -1;  /* SubcarrierSpacing */
848 static int hf_nr_rrc_ssb = -1;                    /* BFR_SSB_Resource */
849 static int hf_nr_rrc_csi_RS = -1;                 /* BFR_CSIRS_Resource */
850 static int hf_nr_rrc_ssb_01 = -1;                 /* SSB_Index */
851 static int hf_nr_rrc_ra_PreambleIndex = -1;       /* INTEGER_0_63 */
852 static int hf_nr_rrc_csi_RS_01 = -1;              /* NZP_CSI_RS_ResourceId */
853 static int hf_nr_rrc_ra_OccasionList = -1;        /* T_ra_OccasionList */
854 static int hf_nr_rrc_ra_OccasionList_item = -1;   /* INTEGER_0_maxRA_Occasions_1 */
855 static int hf_nr_rrc_periodicBSR_Timer = -1;      /* T_periodicBSR_Timer */
856 static int hf_nr_rrc_retxBSR_Timer = -1;          /* T_retxBSR_Timer */
857 static int hf_nr_rrc_logicalChannelSR_DelayTimer = -1;  /* T_logicalChannelSR_DelayTimer */
858 static int hf_nr_rrc_locationAndBandwidth = -1;   /* INTEGER_0_37949 */
859 static int hf_nr_rrc_subcarrierSpacing = -1;      /* SubcarrierSpacing */
860 static int hf_nr_rrc_cyclicPrefix = -1;           /* T_cyclicPrefix */
861 static int hf_nr_rrc_bwp_Id = -1;                 /* BWP_Id */
862 static int hf_nr_rrc_bwp_Common = -1;             /* BWP_DownlinkCommon */
863 static int hf_nr_rrc_bwp_Dedicated = -1;          /* BWP_DownlinkDedicated */
864 static int hf_nr_rrc_genericParameters = -1;      /* BWP */
865 static int hf_nr_rrc_pdcch_ConfigCommon = -1;     /* T_pdcch_ConfigCommon */
866 static int hf_nr_rrc_setup_02 = -1;               /* PDCCH_ConfigCommon */
867 static int hf_nr_rrc_pdsch_ConfigCommon = -1;     /* T_pdsch_ConfigCommon */
868 static int hf_nr_rrc_setup_03 = -1;               /* PDSCH_ConfigCommon */
869 static int hf_nr_rrc_pdcch_Config = -1;           /* T_pdcch_Config */
870 static int hf_nr_rrc_setup_04 = -1;               /* PDCCH_Config */
871 static int hf_nr_rrc_pdsch_Config = -1;           /* T_pdsch_Config */
872 static int hf_nr_rrc_setup_05 = -1;               /* PDSCH_Config */
873 static int hf_nr_rrc_sps_Config = -1;             /* T_sps_Config */
874 static int hf_nr_rrc_setup_06 = -1;               /* SPS_Config */
875 static int hf_nr_rrc_radioLinkMonitoringConfig = -1;  /* T_radioLinkMonitoringConfig */
876 static int hf_nr_rrc_setup_07 = -1;               /* RadioLinkMonitoringConfig */
877 static int hf_nr_rrc_bwp_Common_01 = -1;          /* BWP_UplinkCommon */
878 static int hf_nr_rrc_bwp_Dedicated_01 = -1;       /* BWP_UplinkDedicated */
879 static int hf_nr_rrc_rach_ConfigCommon = -1;      /* T_rach_ConfigCommon */
880 static int hf_nr_rrc_setup_08 = -1;               /* RACH_ConfigCommon */
881 static int hf_nr_rrc_pusch_ConfigCommon = -1;     /* T_pusch_ConfigCommon */
882 static int hf_nr_rrc_setup_09 = -1;               /* PUSCH_ConfigCommon */
883 static int hf_nr_rrc_pucch_ConfigCommon = -1;     /* T_pucch_ConfigCommon */
884 static int hf_nr_rrc_setup_10 = -1;               /* PUCCH_ConfigCommon */
885 static int hf_nr_rrc_pucch_Config = -1;           /* T_pucch_Config */
886 static int hf_nr_rrc_setup_11 = -1;               /* PUCCH_Config */
887 static int hf_nr_rrc_pusch_Config = -1;           /* T_pusch_Config */
888 static int hf_nr_rrc_setup_12 = -1;               /* PUSCH_Config */
889 static int hf_nr_rrc_configuredGrantConfig = -1;  /* T_configuredGrantConfig */
890 static int hf_nr_rrc_setup_13 = -1;               /* ConfiguredGrantConfig */
891 static int hf_nr_rrc_srs_Config = -1;             /* T_srs_Config */
892 static int hf_nr_rrc_setup_14 = -1;               /* SRS_Config */
893 static int hf_nr_rrc_beamFailureRecoveryConfig = -1;  /* T_beamFailureRecoveryConfig */
894 static int hf_nr_rrc_setup_15 = -1;               /* BeamFailureRecoveryConfig */
895 static int hf_nr_rrc_plmn_IdentityList = -1;      /* PLMN_IdentityInfoList */
896 static int hf_nr_rrc_cellReservedForOtherUse = -1;  /* T_cellReservedForOtherUse */
897 static int hf_nr_rrc_plmn_IdentityList_eutra_5gc = -1;  /* PLMN_IdentityList_EUTRA_5GC */
898 static int hf_nr_rrc_trackingAreaCode_eutra_5gc = -1;  /* TrackingAreaCode */
899 static int hf_nr_rrc_ranac_5gc = -1;              /* RAN_AreaCode */
900 static int hf_nr_rrc_cellIdentity_eutra_5gc = -1;  /* CellIdentity_EUTRA_5GC */
901 static int hf_nr_rrc_PLMN_IdentityList_EUTRA_5GC_item = -1;  /* PLMN_Identity_EUTRA_5GC */
902 static int hf_nr_rrc_plmn_Identity_EUTRA_5GC = -1;  /* PLMN_Identity */
903 static int hf_nr_rrc_plmn_index = -1;             /* INTEGER_1_maxPLMN */
904 static int hf_nr_rrc_cellIdentity_EUTRA = -1;     /* BIT_STRING_SIZE_28 */
905 static int hf_nr_rrc_cellId_index = -1;           /* INTEGER_1_maxPLMN */
906 static int hf_nr_rrc_plmn_IdentityList_eutra_epc = -1;  /* PLMN_IdentityList_EUTRA_EPC */
907 static int hf_nr_rrc_trackingAreaCode_eutra_epc = -1;  /* BIT_STRING_SIZE_16 */
908 static int hf_nr_rrc_cellIdentity_eutra_epc = -1;  /* BIT_STRING_SIZE_28 */
909 static int hf_nr_rrc_PLMN_IdentityList_EUTRA_EPC_item = -1;  /* PLMN_Identity */
910 static int hf_nr_rrc_cellGroupId = -1;            /* CellGroupId */
911 static int hf_nr_rrc_rlc_BearerToAddModList = -1;  /* SEQUENCE_SIZE_1_maxLC_ID_OF_RLC_BearerConfig */
912 static int hf_nr_rrc_rlc_BearerToAddModList_item = -1;  /* RLC_BearerConfig */
913 static int hf_nr_rrc_rlc_BearerToReleaseList = -1;  /* SEQUENCE_SIZE_1_maxLC_ID_OF_LogicalChannelIdentity */
914 static int hf_nr_rrc_rlc_BearerToReleaseList_item = -1;  /* LogicalChannelIdentity */
915 static int hf_nr_rrc_mac_CellGroupConfig = -1;    /* MAC_CellGroupConfig */
916 static int hf_nr_rrc_physicalCellGroupConfig = -1;  /* PhysicalCellGroupConfig */
917 static int hf_nr_rrc_spCellConfig = -1;           /* SpCellConfig */
918 static int hf_nr_rrc_sCellToAddModList = -1;      /* SEQUENCE_SIZE_1_maxNrofSCells_OF_SCellConfig */
919 static int hf_nr_rrc_sCellToAddModList_item = -1;  /* SCellConfig */
920 static int hf_nr_rrc_sCellToReleaseList = -1;     /* SEQUENCE_SIZE_1_maxNrofSCells_OF_SCellIndex */
921 static int hf_nr_rrc_sCellToReleaseList_item = -1;  /* SCellIndex */
922 static int hf_nr_rrc_reportUplinkTxDirectCurrent_v1530 = -1;  /* T_reportUplinkTxDirectCurrent_v1530 */
923 static int hf_nr_rrc_reconfigurationWithSync = -1;  /* ReconfigurationWithSync */
924 static int hf_nr_rrc_rlf_TimersAndConstants = -1;  /* T_rlf_TimersAndConstants */
925 static int hf_nr_rrc_setup_16 = -1;               /* RLF_TimersAndConstants */
926 static int hf_nr_rrc_rlmInSyncOutOfSyncThreshold = -1;  /* T_rlmInSyncOutOfSyncThreshold */
927 static int hf_nr_rrc_spCellConfigDedicated = -1;  /* ServingCellConfig */
928 static int hf_nr_rrc_spCellConfigCommon = -1;     /* ServingCellConfigCommon */
929 static int hf_nr_rrc_newUE_Identity = -1;         /* RNTI_Value */
930 static int hf_nr_rrc_t304 = -1;                   /* T_t304 */
931 static int hf_nr_rrc_rach_ConfigDedicated = -1;   /* T_rach_ConfigDedicated */
932 static int hf_nr_rrc_uplink = -1;                 /* RACH_ConfigDedicated */
933 static int hf_nr_rrc_supplementaryUplink = -1;    /* RACH_ConfigDedicated */
934 static int hf_nr_rrc_sCellIndex = -1;             /* SCellIndex */
935 static int hf_nr_rrc_sCellConfigCommon = -1;      /* ServingCellConfigCommon */
936 static int hf_nr_rrc_sCellConfigDedicated = -1;   /* ServingCellConfig */
937 static int hf_nr_rrc_plmn_IdentityInfoList = -1;  /* PLMN_IdentityInfoList */
938 static int hf_nr_rrc_frequencyBandList_01 = -1;   /* MultiFrequencyBandListNR */
939 static int hf_nr_rrc_noSIB1 = -1;                 /* T_noSIB1 */
940 static int hf_nr_rrc_codebookType = -1;           /* T_codebookType */
941 static int hf_nr_rrc_type1_01 = -1;               /* T_type1_01 */
942 static int hf_nr_rrc_subType = -1;                /* T_subType */
943 static int hf_nr_rrc_typeI_SinglePanel = -1;      /* T_typeI_SinglePanel */
944 static int hf_nr_rrc_nrOfAntennaPorts = -1;       /* T_nrOfAntennaPorts */
945 static int hf_nr_rrc_two = -1;                    /* T_two */
946 static int hf_nr_rrc_twoTX_CodebookSubsetRestriction = -1;  /* BIT_STRING_SIZE_6 */
947 static int hf_nr_rrc_moreThanTwo = -1;            /* T_moreThanTwo */
948 static int hf_nr_rrc_n1_n2 = -1;                  /* T_n1_n2 */
949 static int hf_nr_rrc_two_one_TypeI_SinglePanel_Restriction = -1;  /* BIT_STRING_SIZE_8 */
950 static int hf_nr_rrc_two_two_TypeI_SinglePanel_Restriction = -1;  /* BIT_STRING_SIZE_64 */
951 static int hf_nr_rrc_four_one_TypeI_SinglePanel_Restriction = -1;  /* BIT_STRING_SIZE_16 */
952 static int hf_nr_rrc_three_two_TypeI_SinglePanel_Restriction = -1;  /* BIT_STRING_SIZE_96 */
953 static int hf_nr_rrc_six_one_TypeI_SinglePanel_Restriction = -1;  /* BIT_STRING_SIZE_24 */
954 static int hf_nr_rrc_four_two_TypeI_SinglePanel_Restriction = -1;  /* BIT_STRING_SIZE_128 */
955 static int hf_nr_rrc_eight_one_TypeI_SinglePanel_Restriction = -1;  /* BIT_STRING_SIZE_32 */
956 static int hf_nr_rrc_four_three_TypeI_SinglePanel_Restriction = -1;  /* BIT_STRING_SIZE_192 */
957 static int hf_nr_rrc_six_two_TypeI_SinglePanel_Restriction = -1;  /* BIT_STRING_SIZE_192 */
958 static int hf_nr_rrc_twelve_one_TypeI_SinglePanel_Restriction = -1;  /* BIT_STRING_SIZE_48 */
959 static int hf_nr_rrc_four_four_TypeI_SinglePanel_Restriction = -1;  /* BIT_STRING_SIZE_256 */
960 static int hf_nr_rrc_eight_two_TypeI_SinglePanel_Restriction = -1;  /* BIT_STRING_SIZE_256 */
961 static int hf_nr_rrc_sixteen_one_TypeI_SinglePanel_Restriction = -1;  /* BIT_STRING_SIZE_64 */
962 static int hf_nr_rrc_typeI_SinglePanel_codebookSubsetRestriction_i2 = -1;  /* BIT_STRING_SIZE_16 */
963 static int hf_nr_rrc_typeI_SinglePanel_ri_Restriction = -1;  /* BIT_STRING_SIZE_8 */
964 static int hf_nr_rrc_typeI_MultiPanel = -1;       /* T_typeI_MultiPanel */
965 static int hf_nr_rrc_ng_n1_n2 = -1;               /* T_ng_n1_n2 */
966 static int hf_nr_rrc_two_two_one_TypeI_MultiPanel_Restriction = -1;  /* BIT_STRING_SIZE_8 */
967 static int hf_nr_rrc_two_four_one_TypeI_MultiPanel_Restriction = -1;  /* BIT_STRING_SIZE_16 */
968 static int hf_nr_rrc_four_two_one_TypeI_MultiPanel_Restriction = -1;  /* BIT_STRING_SIZE_8 */
969 static int hf_nr_rrc_two_two_two_TypeI_MultiPanel_Restriction = -1;  /* BIT_STRING_SIZE_64 */
970 static int hf_nr_rrc_two_eight_one_TypeI_MultiPanel_Restriction = -1;  /* BIT_STRING_SIZE_32 */
971 static int hf_nr_rrc_four_four_one_TypeI_MultiPanel_Restriction = -1;  /* BIT_STRING_SIZE_16 */
972 static int hf_nr_rrc_two_four_two_TypeI_MultiPanel_Restriction = -1;  /* BIT_STRING_SIZE_128 */
973 static int hf_nr_rrc_four_two_two_TypeI_MultiPanel_Restriction = -1;  /* BIT_STRING_SIZE_64 */
974 static int hf_nr_rrc_ri_Restriction = -1;         /* BIT_STRING_SIZE_4 */
975 static int hf_nr_rrc_codebookMode = -1;           /* INTEGER_1_2 */
976 static int hf_nr_rrc_type2 = -1;                  /* T_type2 */
977 static int hf_nr_rrc_subType_01 = -1;             /* T_subType_01 */
978 static int hf_nr_rrc_typeII = -1;                 /* T_typeII */
979 static int hf_nr_rrc_n1_n2_codebookSubsetRestriction = -1;  /* T_n1_n2_codebookSubsetRestriction */
980 static int hf_nr_rrc_two_one = -1;                /* BIT_STRING_SIZE_16 */
981 static int hf_nr_rrc_two_two = -1;                /* BIT_STRING_SIZE_43 */
982 static int hf_nr_rrc_four_one = -1;               /* BIT_STRING_SIZE_32 */
983 static int hf_nr_rrc_three_two = -1;              /* BIT_STRING_SIZE_59 */
984 static int hf_nr_rrc_six_one = -1;                /* BIT_STRING_SIZE_48 */
985 static int hf_nr_rrc_four_two = -1;               /* BIT_STRING_SIZE_75 */
986 static int hf_nr_rrc_eight_one = -1;              /* BIT_STRING_SIZE_64 */
987 static int hf_nr_rrc_four_three = -1;             /* BIT_STRING_SIZE_107 */
988 static int hf_nr_rrc_six_two = -1;                /* BIT_STRING_SIZE_107 */
989 static int hf_nr_rrc_twelve_one = -1;             /* BIT_STRING_SIZE_96 */
990 static int hf_nr_rrc_four_four = -1;              /* BIT_STRING_SIZE_139 */
991 static int hf_nr_rrc_eight_two = -1;              /* BIT_STRING_SIZE_139 */
992 static int hf_nr_rrc_sixteen_one = -1;            /* BIT_STRING_SIZE_128 */
993 static int hf_nr_rrc_typeII_RI_Restriction = -1;  /* BIT_STRING_SIZE_2 */
994 static int hf_nr_rrc_typeII_PortSelection = -1;   /* T_typeII_PortSelection */
995 static int hf_nr_rrc_portSelectionSamplingSize = -1;  /* T_portSelectionSamplingSize */
996 static int hf_nr_rrc_typeII_PortSelectionRI_Restriction = -1;  /* BIT_STRING_SIZE_2 */
997 static int hf_nr_rrc_phaseAlphabetSize = -1;      /* T_phaseAlphabetSize */
998 static int hf_nr_rrc_subbandAmplitude = -1;       /* BOOLEAN */
999 static int hf_nr_rrc_numberOfBeams = -1;          /* T_numberOfBeams */
1000 static int hf_nr_rrc_frequencyHopping = -1;       /* T_frequencyHopping */
1001 static int hf_nr_rrc_cg_DMRS_Configuration = -1;  /* DMRS_UplinkConfig */
1002 static int hf_nr_rrc_mcs_Table = -1;              /* T_mcs_Table */
1003 static int hf_nr_rrc_mcs_TableTransformPrecoder = -1;  /* T_mcs_TableTransformPrecoder */
1004 static int hf_nr_rrc_uci_OnPUSCH = -1;            /* T_uci_OnPUSCH */
1005 static int hf_nr_rrc_setup_17 = -1;               /* CG_UCI_OnPUSCH */
1006 static int hf_nr_rrc_resourceAllocation = -1;     /* T_resourceAllocation */
1007 static int hf_nr_rrc_rbg_Size = -1;               /* T_rbg_Size */
1008 static int hf_nr_rrc_powerControlLoopToUse = -1;  /* T_powerControlLoopToUse */
1009 static int hf_nr_rrc_p0_PUSCH_Alpha = -1;         /* P0_PUSCH_AlphaSetId */
1010 static int hf_nr_rrc_transformPrecoder = -1;      /* T_transformPrecoder */
1011 static int hf_nr_rrc_nrofHARQ_Processes = -1;     /* INTEGER_1_16 */
1012 static int hf_nr_rrc_repK = -1;                   /* T_repK */
1013 static int hf_nr_rrc_repK_RV = -1;                /* T_repK_RV */
1014 static int hf_nr_rrc_periodicity = -1;            /* T_periodicity */
1015 static int hf_nr_rrc_configuredGrantTimer = -1;   /* INTEGER_1_64 */
1016 static int hf_nr_rrc_rrc_ConfiguredUplinkGrant = -1;  /* T_rrc_ConfiguredUplinkGrant */
1017 static int hf_nr_rrc_timeDomainOffset = -1;       /* INTEGER_0_5119 */
1018 static int hf_nr_rrc_timeDomainAllocation = -1;   /* INTEGER_0_15 */
1019 static int hf_nr_rrc_frequencyDomainAllocation = -1;  /* BIT_STRING_SIZE_18 */
1020 static int hf_nr_rrc_antennaPort = -1;            /* INTEGER_0_31 */
1021 static int hf_nr_rrc_dmrs_SeqInitialization = -1;  /* INTEGER_0_1 */
1022 static int hf_nr_rrc_precodingAndNumberOfLayers = -1;  /* INTEGER_0_63 */
1023 static int hf_nr_rrc_srs_ResourceIndicator = -1;  /* INTEGER_0_15 */
1024 static int hf_nr_rrc_mcsAndTBS = -1;              /* INTEGER_0_31 */
1025 static int hf_nr_rrc_frequencyHoppingOffset = -1;  /* INTEGER_1_maxNrofPhysicalResourceBlocks_1 */
1026 static int hf_nr_rrc_pathlossReferenceIndex = -1;  /* INTEGER_0_maxNrofPUSCH_PathlossReferenceRSs_1 */
1027 static int hf_nr_rrc_dynamic = -1;                /* SEQUENCE_SIZE_1_4_OF_BetaOffsets */
1028 static int hf_nr_rrc_dynamic_item = -1;           /* BetaOffsets */
1029 static int hf_nr_rrc_semiStatic = -1;             /* BetaOffsets */
1030 static int hf_nr_rrc_connEstFailCount = -1;       /* T_connEstFailCount */
1031 static int hf_nr_rrc_connEstFailOffsetValidity = -1;  /* T_connEstFailOffsetValidity */
1032 static int hf_nr_rrc_connEstFailOffset = -1;      /* INTEGER_0_15 */
1033 static int hf_nr_rrc_controlResourceSetId = -1;   /* ControlResourceSetId */
1034 static int hf_nr_rrc_frequencyDomainResources = -1;  /* BIT_STRING_SIZE_45 */
1035 static int hf_nr_rrc_duration = -1;               /* INTEGER_1_maxCoReSetDuration */
1036 static int hf_nr_rrc_cce_REG_MappingType = -1;    /* T_cce_REG_MappingType */
1037 static int hf_nr_rrc_interleaved = -1;            /* T_interleaved */
1038 static int hf_nr_rrc_reg_BundleSize = -1;         /* T_reg_BundleSize */
1039 static int hf_nr_rrc_interleaverSize = -1;        /* T_interleaverSize */
1040 static int hf_nr_rrc_shiftIndex = -1;             /* INTEGER_0_maxNrofPhysicalResourceBlocks_1 */
1041 static int hf_nr_rrc_nonInterleaved = -1;         /* NULL */
1042 static int hf_nr_rrc_precoderGranularity = -1;    /* T_precoderGranularity */
1043 static int hf_nr_rrc_tci_StatesPDCCH_ToAddList = -1;  /* SEQUENCE_SIZE_1_maxNrofTCI_StatesPDCCH_OF_TCI_StateId */
1044 static int hf_nr_rrc_tci_StatesPDCCH_ToAddList_item = -1;  /* TCI_StateId */
1045 static int hf_nr_rrc_tci_StatesPDCCH_ToReleaseList = -1;  /* SEQUENCE_SIZE_1_maxNrofTCI_StatesPDCCH_OF_TCI_StateId */
1046 static int hf_nr_rrc_tci_StatesPDCCH_ToReleaseList_item = -1;  /* TCI_StateId */
1047 static int hf_nr_rrc_tci_PresentInDCI = -1;       /* T_tci_PresentInDCI */
1048 static int hf_nr_rrc_pdcch_DMRS_ScramblingID = -1;  /* INTEGER_0_65535 */
1049 static int hf_nr_rrc_schedulingCellInfo = -1;     /* T_schedulingCellInfo */
1050 static int hf_nr_rrc_own = -1;                    /* T_own */
1051 static int hf_nr_rrc_cif_Presence = -1;           /* BOOLEAN */
1052 static int hf_nr_rrc_other = -1;                  /* T_other */
1053 static int hf_nr_rrc_schedulingCellId = -1;       /* ServCellIndex */
1054 static int hf_nr_rrc_cif_InSchedulingCell = -1;   /* INTEGER_1_7 */
1055 static int hf_nr_rrc_CSI_AperiodicTriggerStateList_item = -1;  /* CSI_AperiodicTriggerState */
1056 static int hf_nr_rrc_associatedReportConfigInfoList = -1;  /* SEQUENCE_SIZE_1_maxNrofReportConfigPerAperiodicTrigger_OF_CSI_AssociatedReportConfigInfo */
1057 static int hf_nr_rrc_associatedReportConfigInfoList_item = -1;  /* CSI_AssociatedReportConfigInfo */
1058 static int hf_nr_rrc_reportConfigId = -1;         /* CSI_ReportConfigId */
1059 static int hf_nr_rrc_resourcesForChannel = -1;    /* T_resourcesForChannel */
1060 static int hf_nr_rrc_nzp_CSI_RS = -1;             /* T_nzp_CSI_RS */
1061 static int hf_nr_rrc_resourceSet = -1;            /* INTEGER_1_maxNrofNZP_CSI_RS_ResourceSetsPerConfig */
1062 static int hf_nr_rrc_qcl_info = -1;               /* SEQUENCE_SIZE_1_maxNrofAP_CSI_RS_ResourcesPerSet_OF_TCI_StateId */
1063 static int hf_nr_rrc_qcl_info_item = -1;          /* TCI_StateId */
1064 static int hf_nr_rrc_csi_SSB_ResourceSet = -1;    /* INTEGER_1_maxNrofCSI_SSB_ResourceSetsPerConfig */
1065 static int hf_nr_rrc_csi_IM_ResourcesForInterference = -1;  /* INTEGER_1_maxNrofCSI_IM_ResourceSetsPerConfig */
1066 static int hf_nr_rrc_nzp_CSI_RS_ResourcesForInterference = -1;  /* INTEGER_1_maxNrofNZP_CSI_RS_ResourceSetsPerConfig */
1067 static int hf_nr_rrc_startingRB = -1;             /* INTEGER_0_maxNrofPhysicalResourceBlocks_1 */
1068 static int hf_nr_rrc_nrofRBs = -1;                /* INTEGER_24_maxNrofPhysicalResourceBlocksPlus1 */
1069 static int hf_nr_rrc_csi_IM_ResourceId = -1;      /* CSI_IM_ResourceId */
1070 static int hf_nr_rrc_csi_IM_ResourceElementPattern = -1;  /* T_csi_IM_ResourceElementPattern */
1071 static int hf_nr_rrc_pattern0 = -1;               /* T_pattern0 */
1072 static int hf_nr_rrc_subcarrierLocation_p0 = -1;  /* T_subcarrierLocation_p0 */
1073 static int hf_nr_rrc_symbolLocation_p0 = -1;      /* INTEGER_0_12 */
1074 static int hf_nr_rrc_pattern1 = -1;               /* T_pattern1 */
1075 static int hf_nr_rrc_subcarrierLocation_p1 = -1;  /* T_subcarrierLocation_p1 */
1076 static int hf_nr_rrc_symbolLocation_p1 = -1;      /* INTEGER_0_13 */
1077 static int hf_nr_rrc_freqBand = -1;               /* CSI_FrequencyOccupation */
1078 static int hf_nr_rrc_periodicityAndOffset = -1;   /* CSI_ResourcePeriodicityAndOffset */
1079 static int hf_nr_rrc_csi_IM_ResourceSetId = -1;   /* CSI_IM_ResourceSetId */
1080 static int hf_nr_rrc_csi_IM_Resources = -1;       /* SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourcesPerSet_OF_CSI_IM_ResourceId */
1081 static int hf_nr_rrc_csi_IM_Resources_item = -1;  /* CSI_IM_ResourceId */
1082 static int hf_nr_rrc_nzp_CSI_RS_ResourceToAddModList = -1;  /* SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_Resources_OF_NZP_CSI_RS_Resource */
1083 static int hf_nr_rrc_nzp_CSI_RS_ResourceToAddModList_item = -1;  /* NZP_CSI_RS_Resource */
1084 static int hf_nr_rrc_nzp_CSI_RS_ResourceToReleaseList = -1;  /* SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_Resources_OF_NZP_CSI_RS_ResourceId */
1085 static int hf_nr_rrc_nzp_CSI_RS_ResourceToReleaseList_item = -1;  /* NZP_CSI_RS_ResourceId */
1086 static int hf_nr_rrc_nzp_CSI_RS_ResourceSetToAddModList = -1;  /* SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourceSets_OF_NZP_CSI_RS_ResourceSet */
1087 static int hf_nr_rrc_nzp_CSI_RS_ResourceSetToAddModList_item = -1;  /* NZP_CSI_RS_ResourceSet */
1088 static int hf_nr_rrc_nzp_CSI_RS_ResourceSetToReleaseList = -1;  /* SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourceSets_OF_NZP_CSI_RS_ResourceSetId */
1089 static int hf_nr_rrc_nzp_CSI_RS_ResourceSetToReleaseList_item = -1;  /* NZP_CSI_RS_ResourceSetId */
1090 static int hf_nr_rrc_csi_IM_ResourceToAddModList = -1;  /* SEQUENCE_SIZE_1_maxNrofCSI_IM_Resources_OF_CSI_IM_Resource */
1091 static int hf_nr_rrc_csi_IM_ResourceToAddModList_item = -1;  /* CSI_IM_Resource */
1092 static int hf_nr_rrc_csi_IM_ResourceToReleaseList = -1;  /* SEQUENCE_SIZE_1_maxNrofCSI_IM_Resources_OF_CSI_IM_ResourceId */
1093 static int hf_nr_rrc_csi_IM_ResourceToReleaseList_item = -1;  /* CSI_IM_ResourceId */
1094 static int hf_nr_rrc_csi_IM_ResourceSetToAddModList = -1;  /* SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourceSets_OF_CSI_IM_ResourceSet */
1095 static int hf_nr_rrc_csi_IM_ResourceSetToAddModList_item = -1;  /* CSI_IM_ResourceSet */
1096 static int hf_nr_rrc_csi_IM_ResourceSetToReleaseList = -1;  /* SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourceSets_OF_CSI_IM_ResourceSetId */
1097 static int hf_nr_rrc_csi_IM_ResourceSetToReleaseList_item = -1;  /* CSI_IM_ResourceSetId */
1098 static int hf_nr_rrc_csi_SSB_ResourceSetToAddModList = -1;  /* SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourceSets_OF_CSI_SSB_ResourceSet */
1099 static int hf_nr_rrc_csi_SSB_ResourceSetToAddModList_item = -1;  /* CSI_SSB_ResourceSet */
1100 static int hf_nr_rrc_csi_SSB_ResourceSetToAddReleaseList = -1;  /* SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourceSets_OF_CSI_SSB_ResourceSetId */
1101 static int hf_nr_rrc_csi_SSB_ResourceSetToAddReleaseList_item = -1;  /* CSI_SSB_ResourceSetId */
1102 static int hf_nr_rrc_csi_ResourceConfigToAddModList = -1;  /* SEQUENCE_SIZE_1_maxNrofCSI_ResourceConfigurations_OF_CSI_ResourceConfig */
1103 static int hf_nr_rrc_csi_ResourceConfigToAddModList_item = -1;  /* CSI_ResourceConfig */
1104 static int hf_nr_rrc_csi_ResourceConfigToReleaseList = -1;  /* SEQUENCE_SIZE_1_maxNrofCSI_ResourceConfigurations_OF_CSI_ResourceConfigId */
1105 static int hf_nr_rrc_csi_ResourceConfigToReleaseList_item = -1;  /* CSI_ResourceConfigId */
1106 static int hf_nr_rrc_csi_ReportConfigToAddModList = -1;  /* SEQUENCE_SIZE_1_maxNrofCSI_ReportConfigurations_OF_CSI_ReportConfig */
1107 static int hf_nr_rrc_csi_ReportConfigToAddModList_item = -1;  /* CSI_ReportConfig */
1108 static int hf_nr_rrc_csi_ReportConfigToReleaseList = -1;  /* SEQUENCE_SIZE_1_maxNrofCSI_ReportConfigurations_OF_CSI_ReportConfigId */
1109 static int hf_nr_rrc_csi_ReportConfigToReleaseList_item = -1;  /* CSI_ReportConfigId */
1110 static int hf_nr_rrc_reportTriggerSize = -1;      /* INTEGER_0_6 */
1111 static int hf_nr_rrc_aperiodicTriggerStateList = -1;  /* T_aperiodicTriggerStateList */
1112 static int hf_nr_rrc_setup_18 = -1;               /* CSI_AperiodicTriggerStateList */
1113 static int hf_nr_rrc_semiPersistentOnPUSCH_TriggerStateList = -1;  /* T_semiPersistentOnPUSCH_TriggerStateList */
1114 static int hf_nr_rrc_setup_19 = -1;               /* CSI_SemiPersistentOnPUSCH_TriggerStateList */
1115 static int hf_nr_rrc_carrier = -1;                /* ServCellIndex */
1116 static int hf_nr_rrc_resourcesForChannelMeasurement = -1;  /* CSI_ResourceConfigId */
1117 static int hf_nr_rrc_csi_IM_ResourcesForInterference_01 = -1;  /* CSI_ResourceConfigId */
1118 static int hf_nr_rrc_nzp_CSI_RS_ResourcesForInterference_01 = -1;  /* CSI_ResourceConfigId */
1119 static int hf_nr_rrc_reportConfigType = -1;       /* T_reportConfigType */
1120 static int hf_nr_rrc_periodic = -1;               /* T_periodic */
1121 static int hf_nr_rrc_reportSlotConfig = -1;       /* CSI_ReportPeriodicityAndOffset */
1122 static int hf_nr_rrc_pucch_CSI_ResourceList = -1;  /* SEQUENCE_SIZE_1_maxNrofBWPs_OF_PUCCH_CSI_Resource */
1123 static int hf_nr_rrc_pucch_CSI_ResourceList_item = -1;  /* PUCCH_CSI_Resource */
1124 static int hf_nr_rrc_semiPersistentOnPUCCH = -1;  /* T_semiPersistentOnPUCCH */
1125 static int hf_nr_rrc_semiPersistentOnPUSCH = -1;  /* T_semiPersistentOnPUSCH */
1126 static int hf_nr_rrc_reportSlotConfig_01 = -1;    /* T_reportSlotConfig */
1127 static int hf_nr_rrc_reportSlotOffsetList = -1;   /* T_reportSlotOffsetList */
1128 static int hf_nr_rrc_reportSlotOffsetList_item = -1;  /* INTEGER_0_32 */
1129 static int hf_nr_rrc_p0alpha = -1;                /* P0_PUSCH_AlphaSetId */
1130 static int hf_nr_rrc_aperiodic = -1;              /* T_aperiodic */
1131 static int hf_nr_rrc_reportSlotOffsetList_01 = -1;  /* T_reportSlotOffsetList_01 */
1132 static int hf_nr_rrc_reportQuantity = -1;         /* T_reportQuantity */
1133 static int hf_nr_rrc_none = -1;                   /* NULL */
1134 static int hf_nr_rrc_cri_RI_PMI_CQI = -1;         /* NULL */
1135 static int hf_nr_rrc_cri_RI_i1 = -1;              /* NULL */
1136 static int hf_nr_rrc_cri_RI_i1_CQI = -1;          /* T_cri_RI_i1_CQI */
1137 static int hf_nr_rrc_pdsch_BundleSizeForCSI = -1;  /* T_pdsch_BundleSizeForCSI */
1138 static int hf_nr_rrc_cri_RI_CQI = -1;             /* NULL */
1139 static int hf_nr_rrc_cri_RSRP = -1;               /* NULL */
1140 static int hf_nr_rrc_ssb_Index_RSRP = -1;         /* NULL */
1141 static int hf_nr_rrc_cri_RI_LI_PMI_CQI = -1;      /* NULL */
1142 static int hf_nr_rrc_reportFreqConfiguration = -1;  /* T_reportFreqConfiguration */
1143 static int hf_nr_rrc_cqi_FormatIndicator = -1;    /* T_cqi_FormatIndicator */
1144 static int hf_nr_rrc_pmi_FormatIndicator = -1;    /* T_pmi_FormatIndicator */
1145 static int hf_nr_rrc_csi_ReportingBand = -1;      /* T_csi_ReportingBand */
1146 static int hf_nr_rrc_subbands3 = -1;              /* BIT_STRING_SIZE_3 */
1147 static int hf_nr_rrc_subbands4 = -1;              /* BIT_STRING_SIZE_4 */
1148 static int hf_nr_rrc_subbands5 = -1;              /* BIT_STRING_SIZE_5 */
1149 static int hf_nr_rrc_subbands6 = -1;              /* BIT_STRING_SIZE_6 */
1150 static int hf_nr_rrc_subbands7 = -1;              /* BIT_STRING_SIZE_7 */
1151 static int hf_nr_rrc_subbands8 = -1;              /* BIT_STRING_SIZE_8 */
1152 static int hf_nr_rrc_subbands9 = -1;              /* BIT_STRING_SIZE_9 */
1153 static int hf_nr_rrc_subbands10 = -1;             /* BIT_STRING_SIZE_10 */
1154 static int hf_nr_rrc_subbands11 = -1;             /* BIT_STRING_SIZE_11 */
1155 static int hf_nr_rrc_subbands12 = -1;             /* BIT_STRING_SIZE_12 */
1156 static int hf_nr_rrc_subbands13 = -1;             /* BIT_STRING_SIZE_13 */
1157 static int hf_nr_rrc_subbands14 = -1;             /* BIT_STRING_SIZE_14 */
1158 static int hf_nr_rrc_subbands15 = -1;             /* BIT_STRING_SIZE_15 */
1159 static int hf_nr_rrc_subbands16 = -1;             /* BIT_STRING_SIZE_16 */
1160 static int hf_nr_rrc_subbands17 = -1;             /* BIT_STRING_SIZE_17 */
1161 static int hf_nr_rrc_subbands18 = -1;             /* BIT_STRING_SIZE_18 */
1162 static int hf_nr_rrc_subbands19_v1530 = -1;       /* BIT_STRING_SIZE_19 */
1163 static int hf_nr_rrc_timeRestrictionForChannelMeasurements = -1;  /* T_timeRestrictionForChannelMeasurements */
1164 static int hf_nr_rrc_timeRestrictionForInterferenceMeasurements = -1;  /* T_timeRestrictionForInterferenceMeasurements */
1165 static int hf_nr_rrc_codebookConfig = -1;         /* CodebookConfig */
1166 static int hf_nr_rrc_nrofCQIsPerReport = -1;      /* T_nrofCQIsPerReport */
1167 static int hf_nr_rrc_groupBasedBeamReporting = -1;  /* T_groupBasedBeamReporting */
1168 static int hf_nr_rrc_enabled = -1;                /* NULL */
1169 static int hf_nr_rrc_disabled = -1;               /* T_disabled */
1170 static int hf_nr_rrc_nrofReportedRS = -1;         /* T_nrofReportedRS */
1171 static int hf_nr_rrc_cqi_Table = -1;              /* T_cqi_Table */
1172 static int hf_nr_rrc_subbandSize = -1;            /* T_subbandSize */
1173 static int hf_nr_rrc_non_PMI_PortIndication = -1;  /* SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourcesPerConfig_OF_PortIndexFor8Ranks */
1174 static int hf_nr_rrc_non_PMI_PortIndication_item = -1;  /* PortIndexFor8Ranks */
1175 static int hf_nr_rrc_semiPersistentOnPUSCH_v1530 = -1;  /* T_semiPersistentOnPUSCH_v1530 */
1176 static int hf_nr_rrc_reportSlotConfig_v1530 = -1;  /* T_reportSlotConfig_v1530 */
1177 static int hf_nr_rrc_slots4 = -1;                 /* INTEGER_0_3 */
1178 static int hf_nr_rrc_slots5 = -1;                 /* INTEGER_0_4 */
1179 static int hf_nr_rrc_slots8 = -1;                 /* INTEGER_0_7 */
1180 static int hf_nr_rrc_slots10 = -1;                /* INTEGER_0_9 */
1181 static int hf_nr_rrc_slots16 = -1;                /* INTEGER_0_15 */
1182 static int hf_nr_rrc_slots20 = -1;                /* INTEGER_0_19 */
1183 static int hf_nr_rrc_slots40 = -1;                /* INTEGER_0_39 */
1184 static int hf_nr_rrc_slots80 = -1;                /* INTEGER_0_79 */
1185 static int hf_nr_rrc_slots160 = -1;               /* INTEGER_0_159 */
1186 static int hf_nr_rrc_slots320 = -1;               /* INTEGER_0_319 */
1187 static int hf_nr_rrc_uplinkBandwidthPartId = -1;  /* BWP_Id */
1188 static int hf_nr_rrc_pucch_Resource = -1;         /* PUCCH_ResourceId */
1189 static int hf_nr_rrc_portIndex8 = -1;             /* T_portIndex8 */
1190 static int hf_nr_rrc_rank1_8 = -1;                /* PortIndex8 */
1191 static int hf_nr_rrc_rank2_8 = -1;                /* SEQUENCE_SIZE_2_OF_PortIndex8 */
1192 static int hf_nr_rrc_rank2_8_item = -1;           /* PortIndex8 */
1193 static int hf_nr_rrc_rank3_8 = -1;                /* SEQUENCE_SIZE_3_OF_PortIndex8 */
1194 static int hf_nr_rrc_rank3_8_item = -1;           /* PortIndex8 */
1195 static int hf_nr_rrc_rank4_8 = -1;                /* SEQUENCE_SIZE_4_OF_PortIndex8 */
1196 static int hf_nr_rrc_rank4_8_item = -1;           /* PortIndex8 */
1197 static int hf_nr_rrc_rank5_8 = -1;                /* SEQUENCE_SIZE_5_OF_PortIndex8 */
1198 static int hf_nr_rrc_rank5_8_item = -1;           /* PortIndex8 */
1199 static int hf_nr_rrc_rank6_8 = -1;                /* SEQUENCE_SIZE_6_OF_PortIndex8 */
1200 static int hf_nr_rrc_rank6_8_item = -1;           /* PortIndex8 */
1201 static int hf_nr_rrc_rank7_8 = -1;                /* SEQUENCE_SIZE_7_OF_PortIndex8 */
1202 static int hf_nr_rrc_rank7_8_item = -1;           /* PortIndex8 */
1203 static int hf_nr_rrc_rank8_8 = -1;                /* SEQUENCE_SIZE_8_OF_PortIndex8 */
1204 static int hf_nr_rrc_rank8_8_item = -1;           /* PortIndex8 */
1205 static int hf_nr_rrc_portIndex4 = -1;             /* T_portIndex4 */
1206 static int hf_nr_rrc_rank1_4 = -1;                /* PortIndex4 */
1207 static int hf_nr_rrc_rank2_4 = -1;                /* SEQUENCE_SIZE_2_OF_PortIndex4 */
1208 static int hf_nr_rrc_rank2_4_item = -1;           /* PortIndex4 */
1209 static int hf_nr_rrc_rank3_4 = -1;                /* SEQUENCE_SIZE_3_OF_PortIndex4 */
1210 static int hf_nr_rrc_rank3_4_item = -1;           /* PortIndex4 */
1211 static int hf_nr_rrc_rank4_4 = -1;                /* SEQUENCE_SIZE_4_OF_PortIndex4 */
1212 static int hf_nr_rrc_rank4_4_item = -1;           /* PortIndex4 */
1213 static int hf_nr_rrc_portIndex2 = -1;             /* T_portIndex2 */
1214 static int hf_nr_rrc_rank1_2 = -1;                /* PortIndex2 */
1215 static int hf_nr_rrc_rank2_2 = -1;                /* SEQUENCE_SIZE_2_OF_PortIndex2 */
1216 static int hf_nr_rrc_rank2_2_item = -1;           /* PortIndex2 */
1217 static int hf_nr_rrc_portIndex1 = -1;             /* NULL */
1218 static int hf_nr_rrc_csi_ResourceConfigId = -1;   /* CSI_ResourceConfigId */
1219 static int hf_nr_rrc_csi_RS_ResourceSetList = -1;  /* T_csi_RS_ResourceSetList */
1220 static int hf_nr_rrc_nzp_CSI_RS_SSB = -1;         /* T_nzp_CSI_RS_SSB */
1221 static int hf_nr_rrc_nzp_CSI_RS_ResourceSetList = -1;  /* SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourceSetsPerConfig_OF_NZP_CSI_RS_ResourceSetId */
1222 static int hf_nr_rrc_nzp_CSI_RS_ResourceSetList_item = -1;  /* NZP_CSI_RS_ResourceSetId */
1223 static int hf_nr_rrc_csi_SSB_ResourceSetList = -1;  /* SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourceSetsPerConfig_OF_CSI_SSB_ResourceSetId */
1224 static int hf_nr_rrc_csi_SSB_ResourceSetList_item = -1;  /* CSI_SSB_ResourceSetId */
1225 static int hf_nr_rrc_csi_IM_ResourceSetList = -1;  /* SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourceSetsPerConfig_OF_CSI_IM_ResourceSetId */
1226 static int hf_nr_rrc_csi_IM_ResourceSetList_item = -1;  /* CSI_IM_ResourceSetId */
1227 static int hf_nr_rrc_resourceType = -1;           /* T_resourceType */
1228 static int hf_nr_rrc_slots32 = -1;                /* INTEGER_0_31 */
1229 static int hf_nr_rrc_slots64 = -1;                /* INTEGER_0_63 */
1230 static int hf_nr_rrc_slots640 = -1;               /* INTEGER_0_639 */
1231 static int hf_nr_rrc_csi_RS_CellList_Mobility = -1;  /* SEQUENCE_SIZE_1_maxNrofCSI_RS_CellsRRM_OF_CSI_RS_CellMobility */
1232 static int hf_nr_rrc_csi_RS_CellList_Mobility_item = -1;  /* CSI_RS_CellMobility */
1233 static int hf_nr_rrc_refServCellIndex_v1530 = -1;  /* ServCellIndex */
1234 static int hf_nr_rrc_cellId = -1;                 /* PhysCellId */
1235 static int hf_nr_rrc_csi_rs_MeasurementBW = -1;   /* T_csi_rs_MeasurementBW */
1236 static int hf_nr_rrc_nrofPRBs = -1;               /* T_nrofPRBs */
1237 static int hf_nr_rrc_startPRB = -1;               /* INTEGER_0_2169 */
1238 static int hf_nr_rrc_density = -1;                /* T_density */
1239 static int hf_nr_rrc_csi_rs_ResourceList_Mobility = -1;  /* SEQUENCE_SIZE_1_maxNrofCSI_RS_ResourcesRRM_OF_CSI_RS_Resource_Mobility */
1240 static int hf_nr_rrc_csi_rs_ResourceList_Mobility_item = -1;  /* CSI_RS_Resource_Mobility */
1241 static int hf_nr_rrc_csi_RS_Index = -1;           /* CSI_RS_Index */
1242 static int hf_nr_rrc_slotConfig = -1;             /* T_slotConfig */
1243 static int hf_nr_rrc_ms4 = -1;                    /* INTEGER_0_31 */
1244 static int hf_nr_rrc_ms5 = -1;                    /* INTEGER_0_39 */
1245 static int hf_nr_rrc_ms10_01 = -1;                /* INTEGER_0_79 */
1246 static int hf_nr_rrc_ms20_01 = -1;                /* INTEGER_0_159 */
1247 static int hf_nr_rrc_ms40_01 = -1;                /* INTEGER_0_319 */
1248 static int hf_nr_rrc_associatedSSB = -1;          /* T_associatedSSB */
1249 static int hf_nr_rrc_ssb_Index = -1;              /* SSB_Index */
1250 static int hf_nr_rrc_isQuasiColocated = -1;       /* BOOLEAN */
1251 static int hf_nr_rrc_frequencyDomainAllocation_01 = -1;  /* T_frequencyDomainAllocation */
1252 static int hf_nr_rrc_row1 = -1;                   /* BIT_STRING_SIZE_4 */
1253 static int hf_nr_rrc_row2 = -1;                   /* BIT_STRING_SIZE_12 */
1254 static int hf_nr_rrc_firstOFDMSymbolInTimeDomain = -1;  /* INTEGER_0_13 */
1255 static int hf_nr_rrc_sequenceGenerationConfig = -1;  /* INTEGER_0_1023 */
1256 static int hf_nr_rrc_frequencyDomainAllocation_02 = -1;  /* T_frequencyDomainAllocation_01 */
1257 static int hf_nr_rrc_row4 = -1;                   /* BIT_STRING_SIZE_3 */
1258 static int hf_nr_rrc_other_01 = -1;               /* BIT_STRING_SIZE_6 */
1259 static int hf_nr_rrc_nrofPorts = -1;              /* T_nrofPorts */
1260 static int hf_nr_rrc_firstOFDMSymbolInTimeDomain2 = -1;  /* INTEGER_2_12 */
1261 static int hf_nr_rrc_cdm_Type = -1;               /* T_cdm_Type */
1262 static int hf_nr_rrc_density_01 = -1;             /* T_density_01 */
1263 static int hf_nr_rrc_dot5 = -1;                   /* T_dot5 */
1264 static int hf_nr_rrc_one = -1;                    /* NULL */
1265 static int hf_nr_rrc_three = -1;                  /* NULL */
1266 static int hf_nr_rrc_spare_02 = -1;               /* NULL */
1267 static int hf_nr_rrc_CSI_SemiPersistentOnPUSCH_TriggerStateList_item = -1;  /* CSI_SemiPersistentOnPUSCH_TriggerState */
1268 static int hf_nr_rrc_associatedReportConfigInfo = -1;  /* CSI_ReportConfigId */
1269 static int hf_nr_rrc_csi_SSB_ResourceSetId = -1;  /* CSI_SSB_ResourceSetId */
1270 static int hf_nr_rrc_csi_SSB_ResourceList = -1;   /* SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourcePerSet_OF_SSB_Index */
1271 static int hf_nr_rrc_csi_SSB_ResourceList_item = -1;  /* SSB_Index */
1272 static int hf_nr_rrc_dmrs_Type = -1;              /* T_dmrs_Type */
1273 static int hf_nr_rrc_dmrs_AdditionalPosition = -1;  /* T_dmrs_AdditionalPosition */
1274 static int hf_nr_rrc_maxLength = -1;              /* T_maxLength */
1275 static int hf_nr_rrc_scramblingID0 = -1;          /* INTEGER_0_65535 */
1276 static int hf_nr_rrc_scramblingID1 = -1;          /* INTEGER_0_65535 */
1277 static int hf_nr_rrc_phaseTrackingRS = -1;        /* T_phaseTrackingRS */
1278 static int hf_nr_rrc_setup_20 = -1;               /* PTRS_DownlinkConfig */
1279 static int hf_nr_rrc_dmrs_Type_01 = -1;           /* T_dmrs_Type_01 */
1280 static int hf_nr_rrc_dmrs_AdditionalPosition_01 = -1;  /* T_dmrs_AdditionalPosition_01 */
1281 static int hf_nr_rrc_phaseTrackingRS_01 = -1;     /* T_phaseTrackingRS_01 */
1282 static int hf_nr_rrc_setup_21 = -1;               /* PTRS_UplinkConfig */
1283 static int hf_nr_rrc_maxLength_01 = -1;           /* T_maxLength_01 */
1284 static int hf_nr_rrc_transformPrecodingDisabled = -1;  /* T_transformPrecodingDisabled */
1285 static int hf_nr_rrc_transformPrecodingEnabled = -1;  /* T_transformPrecodingEnabled */
1286 static int hf_nr_rrc_nPUSCH_Identity = -1;        /* INTEGER_0_1007 */
1287 static int hf_nr_rrc_sequenceGroupHopping = -1;   /* T_sequenceGroupHopping */
1288 static int hf_nr_rrc_sequenceHopping = -1;        /* T_sequenceHopping */
1289 static int hf_nr_rrc_frequencyInfoDL = -1;        /* FrequencyInfoDL */
1290 static int hf_nr_rrc_initialDownlinkBWP = -1;     /* BWP_DownlinkCommon */
1291 static int hf_nr_rrc_frequencyInfoDL_01 = -1;     /* FrequencyInfoDL_SIB */
1292 static int hf_nr_rrc_bcch_Config = -1;            /* BCCH_Config */
1293 static int hf_nr_rrc_pcch_Config = -1;            /* PCCH_Config */
1294 static int hf_nr_rrc_modificationPeriodCoeff = -1;  /* T_modificationPeriodCoeff */
1295 static int hf_nr_rrc_defaultPagingCycle = -1;     /* PagingCycle */
1296 static int hf_nr_rrc_nAndPagingFrameOffset = -1;  /* T_nAndPagingFrameOffset */
1297 static int hf_nr_rrc_oneT = -1;                   /* NULL */
1298 static int hf_nr_rrc_halfT = -1;                  /* INTEGER_0_1 */
1299 static int hf_nr_rrc_quarterT = -1;               /* INTEGER_0_3 */
1300 static int hf_nr_rrc_oneEighthT = -1;             /* INTEGER_0_7 */
1301 static int hf_nr_rrc_oneSixteenthT = -1;          /* INTEGER_0_15 */
1302 static int hf_nr_rrc_ns = -1;                     /* T_ns */
1303 static int hf_nr_rrc_firstPDCCH_MonitoringOccasionOfPO = -1;  /* T_firstPDCCH_MonitoringOccasionOfPO */
1304 static int hf_nr_rrc_sCS15KHZoneT = -1;           /* T_sCS15KHZoneT */
1305 static int hf_nr_rrc_sCS15KHZoneT_item = -1;      /* INTEGER_0_139 */
1306 static int hf_nr_rrc_sCS30KHZoneT_SCS15KHZhalfT = -1;  /* T_sCS30KHZoneT_SCS15KHZhalfT */
1307 static int hf_nr_rrc_sCS30KHZoneT_SCS15KHZhalfT_item = -1;  /* INTEGER_0_279 */
1308 static int hf_nr_rrc_sCS60KHZoneT_SCS30KHZhalfT_SCS15KHZquarterT = -1;  /* T_sCS60KHZoneT_SCS30KHZhalfT_SCS15KHZquarterT */
1309 static int hf_nr_rrc_sCS60KHZoneT_SCS30KHZhalfT_SCS15KHZquarterT_item = -1;  /* INTEGER_0_559 */
1310 static int hf_nr_rrc_sCS120KHZoneT_SCS60KHZhalfT_SCS30KHZquarterT_SCS15KHZoneEighthT = -1;  /* T_sCS120KHZoneT_SCS60KHZhalfT_SCS30KHZquarterT_SCS15KHZoneEighthT */
1311 static int hf_nr_rrc_sCS120KHZoneT_SCS60KHZhalfT_SCS30KHZquarterT_SCS15KHZoneEighthT_item = -1;  /* INTEGER_0_1119 */
1312 static int hf_nr_rrc_sCS120KHZhalfT_SCS60KHZquarterT_SCS30KHZoneEighthT_SCS15KHZoneSixteenthT = -1;  /* T_sCS120KHZhalfT_SCS60KHZquarterT_SCS30KHZoneEighthT_SCS15KHZoneSixteenthT */
1313 static int hf_nr_rrc_sCS120KHZhalfT_SCS60KHZquarterT_SCS30KHZoneEighthT_SCS15KHZoneSixteenthT_item = -1;  /* INTEGER_0_2239 */
1314 static int hf_nr_rrc_sCS120KHZquarterT_SCS60KHZoneEighthT_SCS30KHZoneSixteenthT = -1;  /* T_sCS120KHZquarterT_SCS60KHZoneEighthT_SCS30KHZoneSixteenthT */
1315 static int hf_nr_rrc_sCS120KHZquarterT_SCS60KHZoneEighthT_SCS30KHZoneSixteenthT_item = -1;  /* INTEGER_0_4479 */
1316 static int hf_nr_rrc_sCS120KHZoneEighthT_SCS60KHZoneSixteenthT = -1;  /* T_sCS120KHZoneEighthT_SCS60KHZoneSixteenthT */
1317 static int hf_nr_rrc_sCS120KHZoneEighthT_SCS60KHZoneSixteenthT_item = -1;  /* INTEGER_0_8959 */
1318 static int hf_nr_rrc_sCS120KHZoneSixteenthT = -1;  /* T_sCS120KHZoneSixteenthT */
1319 static int hf_nr_rrc_sCS120KHZoneSixteenthT_item = -1;  /* INTEGER_0_17919 */
1320 static int hf_nr_rrc_int_RNTI = -1;               /* RNTI_Value */
1321 static int hf_nr_rrc_timeFrequencySet = -1;       /* T_timeFrequencySet */
1322 static int hf_nr_rrc_dci_PayloadSize = -1;        /* INTEGER_0_maxINT_DCI_PayloadSize */
1323 static int hf_nr_rrc_int_ConfigurationPerServingCell = -1;  /* SEQUENCE_SIZE_1_maxNrofServingCells_OF_INT_ConfigurationPerServingCell */
1324 static int hf_nr_rrc_int_ConfigurationPerServingCell_item = -1;  /* INT_ConfigurationPerServingCell */
1325 static int hf_nr_rrc_servingCellId = -1;          /* ServCellIndex */
1326 static int hf_nr_rrc_positionInDCI = -1;          /* INTEGER_0_maxINT_DCI_PayloadSize_1 */
1327 static int hf_nr_rrc_drx_onDurationTimer = -1;    /* T_drx_onDurationTimer */
1328 static int hf_nr_rrc_subMilliSeconds = -1;        /* INTEGER_1_31 */
1329 static int hf_nr_rrc_milliSeconds = -1;           /* T_milliSeconds */
1330 static int hf_nr_rrc_drx_InactivityTimer = -1;    /* T_drx_InactivityTimer */
1331 static int hf_nr_rrc_drx_HARQ_RTT_TimerDL = -1;   /* INTEGER_0_56 */
1332 static int hf_nr_rrc_drx_HARQ_RTT_TimerUL = -1;   /* INTEGER_0_56 */
1333 static int hf_nr_rrc_drx_RetransmissionTimerDL = -1;  /* T_drx_RetransmissionTimerDL */
1334 static int hf_nr_rrc_drx_RetransmissionTimerUL = -1;  /* T_drx_RetransmissionTimerUL */
1335 static int hf_nr_rrc_drx_LongCycleStartOffset_01 = -1;  /* T_drx_LongCycleStartOffset_01 */
1336 static int hf_nr_rrc_shortDRX_01 = -1;            /* T_shortDRX_01 */
1337 static int hf_nr_rrc_drx_ShortCycle_01 = -1;      /* T_drx_ShortCycle_01 */
1338 static int hf_nr_rrc_drx_SlotOffset = -1;         /* INTEGER_0_31 */
1339 static int hf_nr_rrc_absoluteFrequencySSB = -1;   /* ARFCN_ValueNR */
1340 static int hf_nr_rrc_absoluteFrequencyPointA = -1;  /* ARFCN_ValueNR */
1341 static int hf_nr_rrc_scs_SpecificCarrierList = -1;  /* SEQUENCE_SIZE_1_maxSCSs_OF_SCS_SpecificCarrier */
1342 static int hf_nr_rrc_scs_SpecificCarrierList_item = -1;  /* SCS_SpecificCarrier */
1343 static int hf_nr_rrc_offsetToPointA = -1;         /* INTEGER_0_2199 */
1344 static int hf_nr_rrc_additionalSpectrumEmission = -1;  /* AdditionalSpectrumEmission */
1345 static int hf_nr_rrc_frequencyShift7p5khz = -1;   /* T_frequencyShift7p5khz */
1346 static int hf_nr_rrc_frequencyShift7p5khz_01 = -1;  /* T_frequencyShift7p5khz_01 */
1347 static int hf_nr_rrc_eutra_RSTD = -1;             /* EUTRA_RSTD_InfoList */
1348 static int hf_nr_rrc_EUTRA_RSTD_InfoList_item = -1;  /* EUTRA_RSTD_Info */
1349 static int hf_nr_rrc_measPRS_Offset = -1;         /* INTEGER_0_39 */
1350 static int hf_nr_rrc_ul_SpecificParameters = -1;  /* T_ul_SpecificParameters */
1351 static int hf_nr_rrc_priority = -1;               /* INTEGER_1_16 */
1352 static int hf_nr_rrc_prioritisedBitRate = -1;     /* T_prioritisedBitRate */
1353 static int hf_nr_rrc_bucketSizeDuration = -1;     /* T_bucketSizeDuration */
1354 static int hf_nr_rrc_allowedServingCells = -1;    /* SEQUENCE_SIZE_1_maxNrofServingCells_1_OF_ServCellIndex */
1355 static int hf_nr_rrc_allowedServingCells_item = -1;  /* ServCellIndex */
1356 static int hf_nr_rrc_allowedSCS_List = -1;        /* SEQUENCE_SIZE_1_maxSCSs_OF_SubcarrierSpacing */
1357 static int hf_nr_rrc_allowedSCS_List_item = -1;   /* SubcarrierSpacing */
1358 static int hf_nr_rrc_maxPUSCH_Duration = -1;      /* T_maxPUSCH_Duration */
1359 static int hf_nr_rrc_configuredGrantType1Allowed = -1;  /* T_configuredGrantType1Allowed */
1360 static int hf_nr_rrc_logicalChannelGroup = -1;    /* INTEGER_0_maxLCG_ID */
1361 static int hf_nr_rrc_schedulingRequestID = -1;    /* SchedulingRequestId */
1362 static int hf_nr_rrc_logicalChannelSR_Mask = -1;  /* BOOLEAN */
1363 static int hf_nr_rrc_logicalChannelSR_DelayTimerApplied = -1;  /* BOOLEAN */
1364 static int hf_nr_rrc_bitRateQueryProhibitTimer = -1;  /* T_bitRateQueryProhibitTimer */
1365 static int hf_nr_rrc_drx_Config = -1;             /* T_drx_Config */
1366 static int hf_nr_rrc_setup_22 = -1;               /* DRX_Config */
1367 static int hf_nr_rrc_schedulingRequestConfig = -1;  /* SchedulingRequestConfig */
1368 static int hf_nr_rrc_bsr_Config = -1;             /* BSR_Config */
1369 static int hf_nr_rrc_tag_Config = -1;             /* TAG_Config */
1370 static int hf_nr_rrc_phr_Config = -1;             /* T_phr_Config */
1371 static int hf_nr_rrc_setup_23 = -1;               /* PHR_Config */
1372 static int hf_nr_rrc_skipUplinkTxDynamic = -1;    /* BOOLEAN */
1373 static int hf_nr_rrc_csi_Mask_v1530 = -1;         /* BOOLEAN */
1374 static int hf_nr_rrc_dataInactivityTimer_v1530 = -1;  /* T_dataInactivityTimer_v1530 */
1375 static int hf_nr_rrc_setup_24 = -1;               /* DataInactivityTimer */
1376 static int hf_nr_rrc_measObjectToRemoveList = -1;  /* MeasObjectToRemoveList */
1377 static int hf_nr_rrc_measObjectToAddModList = -1;  /* MeasObjectToAddModList */
1378 static int hf_nr_rrc_reportConfigToRemoveList = -1;  /* ReportConfigToRemoveList */
1379 static int hf_nr_rrc_reportConfigToAddModList = -1;  /* ReportConfigToAddModList */
1380 static int hf_nr_rrc_measIdToRemoveList = -1;     /* MeasIdToRemoveList */
1381 static int hf_nr_rrc_measIdToAddModList = -1;     /* MeasIdToAddModList */
1382 static int hf_nr_rrc_s_MeasureConfig = -1;        /* T_s_MeasureConfig */
1383 static int hf_nr_rrc_ssb_RSRP = -1;               /* RSRP_Range */
1384 static int hf_nr_rrc_csi_RSRP = -1;               /* RSRP_Range */
1385 static int hf_nr_rrc_quantityConfig = -1;         /* QuantityConfig */
1386 static int hf_nr_rrc_measGapConfig_01 = -1;       /* MeasGapConfig */
1387 static int hf_nr_rrc_measGapSharingConfig = -1;   /* MeasGapSharingConfig */
1388 static int hf_nr_rrc_MeasObjectToRemoveList_item = -1;  /* MeasObjectId */
1389 static int hf_nr_rrc_MeasIdToRemoveList_item = -1;  /* MeasId */
1390 static int hf_nr_rrc_ReportConfigToRemoveList_item = -1;  /* ReportConfigId */
1391 static int hf_nr_rrc_gapFR2 = -1;                 /* T_gapFR2 */
1392 static int hf_nr_rrc_gapFR1 = -1;                 /* T_gapFR1 */
1393 static int hf_nr_rrc_gapUE = -1;                  /* T_gapUE */
1394 static int hf_nr_rrc_gapOffset = -1;              /* INTEGER_0_159 */
1395 static int hf_nr_rrc_mgl = -1;                    /* T_mgl */
1396 static int hf_nr_rrc_mgrp = -1;                   /* T_mgrp */
1397 static int hf_nr_rrc_mgta = -1;                   /* T_mgta */
1398 static int hf_nr_rrc_gapSharingFR2 = -1;          /* T_gapSharingFR2 */
1399 static int hf_nr_rrc_setup_25 = -1;               /* MeasGapSharingScheme */
1400 static int hf_nr_rrc_gapSharingFR1 = -1;          /* T_gapSharingFR1 */
1401 static int hf_nr_rrc_gapSharingUE = -1;           /* T_gapSharingUE */
1402 static int hf_nr_rrc_MeasIdToAddModList_item = -1;  /* MeasIdToAddMod */
1403 static int hf_nr_rrc_measId = -1;                 /* MeasId */
1404 static int hf_nr_rrc_measObjectId = -1;           /* MeasObjectId */
1405 static int hf_nr_rrc_reportConfigId_01 = -1;      /* ReportConfigId */
1406 static int hf_nr_rrc_cellsToRemoveListEUTRAN = -1;  /* EUTRA_CellIndexList */
1407 static int hf_nr_rrc_cellsToAddModListEUTRAN = -1;  /* SEQUENCE_SIZE_1_maxCellMeasEUTRA_OF_EUTRA_Cell */
1408 static int hf_nr_rrc_cellsToAddModListEUTRAN_item = -1;  /* EUTRA_Cell */
1409 static int hf_nr_rrc_blackCellsToRemoveListEUTRAN = -1;  /* EUTRA_CellIndexList */
1410 static int hf_nr_rrc_blackCellsToAddModListEUTRAN = -1;  /* SEQUENCE_SIZE_1_maxCellMeasEUTRA_OF_EUTRA_BlackCell */
1411 static int hf_nr_rrc_blackCellsToAddModListEUTRAN_item = -1;  /* EUTRA_BlackCell */
1412 static int hf_nr_rrc_eutra_PresenceAntennaPort1 = -1;  /* EUTRA_PresenceAntennaPort1 */
1413 static int hf_nr_rrc_eutra_Q_OffsetRange = -1;    /* EUTRA_Q_OffsetRange */
1414 static int hf_nr_rrc_widebandRSRQ_Meas = -1;      /* BOOLEAN */
1415 static int hf_nr_rrc_EUTRA_CellIndexList_item = -1;  /* EUTRA_CellIndex */
1416 static int hf_nr_rrc_cellIndexEUTRA = -1;         /* EUTRA_CellIndex */
1417 static int hf_nr_rrc_cellIndividualOffset = -1;   /* EUTRA_Q_OffsetRange */
1418 static int hf_nr_rrc_physCellIdRange = -1;        /* EUTRA_PhysCellIdRange */
1419 static int hf_nr_rrc_ssbFrequency = -1;           /* ARFCN_ValueNR */
1420 static int hf_nr_rrc_smtc1 = -1;                  /* SSB_MTC */
1421 static int hf_nr_rrc_smtc2 = -1;                  /* SSB_MTC2 */
1422 static int hf_nr_rrc_refFreqCSI_RS = -1;          /* ARFCN_ValueNR */
1423 static int hf_nr_rrc_referenceSignalConfig = -1;  /* ReferenceSignalConfig */
1424 static int hf_nr_rrc_absThreshCSI_RS_Consolidation = -1;  /* ThresholdNR */
1425 static int hf_nr_rrc_nrofCSI_RS_ResourcesToAverage = -1;  /* INTEGER_2_maxNrofCSI_RS_ResourcesToAverage */
1426 static int hf_nr_rrc_quantityConfigIndex = -1;    /* INTEGER_1_maxNrofQuantityConfig */
1427 static int hf_nr_rrc_offsetMO = -1;               /* Q_OffsetRangeList */
1428 static int hf_nr_rrc_cellsToRemoveList = -1;      /* PCI_List */
1429 static int hf_nr_rrc_cellsToAddModList = -1;      /* CellsToAddModList */
1430 static int hf_nr_rrc_blackCellsToRemoveList = -1;  /* PCI_RangeIndexList */
1431 static int hf_nr_rrc_blackCellsToAddModList = -1;  /* SEQUENCE_SIZE_1_maxNrofPCI_Ranges_OF_PCI_RangeElement */
1432 static int hf_nr_rrc_blackCellsToAddModList_item = -1;  /* PCI_RangeElement */
1433 static int hf_nr_rrc_whiteCellsToRemoveList = -1;  /* PCI_RangeIndexList */
1434 static int hf_nr_rrc_whiteCellsToAddModList = -1;  /* SEQUENCE_SIZE_1_maxNrofPCI_Ranges_OF_PCI_RangeElement */
1435 static int hf_nr_rrc_whiteCellsToAddModList_item = -1;  /* PCI_RangeElement */
1436 static int hf_nr_rrc_freqBandIndicatorNR_v1530 = -1;  /* FreqBandIndicatorNR */
1437 static int hf_nr_rrc_measCycleSCell_v1530 = -1;   /* T_measCycleSCell_v1530 */
1438 static int hf_nr_rrc_ssb_ConfigMobility = -1;     /* SSB_ConfigMobility */
1439 static int hf_nr_rrc_csi_rs_ResourceConfigMobility = -1;  /* T_csi_rs_ResourceConfigMobility */
1440 static int hf_nr_rrc_setup_26 = -1;               /* CSI_RS_ResourceConfigMobility */
1441 static int hf_nr_rrc_ssb_ToMeasure_01 = -1;       /* T_ssb_ToMeasure */
1442 static int hf_nr_rrc_setup_27 = -1;               /* SSB_ToMeasure */
1443 static int hf_nr_rrc_rsrpOffsetSSB = -1;          /* Q_OffsetRange */
1444 static int hf_nr_rrc_rsrqOffsetSSB = -1;          /* Q_OffsetRange */
1445 static int hf_nr_rrc_sinrOffsetSSB = -1;          /* Q_OffsetRange */
1446 static int hf_nr_rrc_rsrpOffsetCSI_RS = -1;       /* Q_OffsetRange */
1447 static int hf_nr_rrc_rsrqOffsetCSI_RS = -1;       /* Q_OffsetRange */
1448 static int hf_nr_rrc_sinrOffsetCSI_RS = -1;       /* Q_OffsetRange */
1449 static int hf_nr_rrc_thresholdRSRP = -1;          /* RSRP_Range */
1450 static int hf_nr_rrc_thresholdRSRQ = -1;          /* RSRQ_Range */
1451 static int hf_nr_rrc_thresholdSINR = -1;          /* SINR_Range */
1452 static int hf_nr_rrc_CellsToAddModList_item = -1;  /* CellsToAddMod */
1453 static int hf_nr_rrc_cellIndividualOffset_01 = -1;  /* Q_OffsetRangeList */
1454 static int hf_nr_rrc_MeasObjectToAddModList_item = -1;  /* MeasObjectToAddMod */
1455 static int hf_nr_rrc_measObject = -1;             /* T_measObject */
1456 static int hf_nr_rrc_measObjectNR = -1;           /* MeasObjectNR */
1457 static int hf_nr_rrc_measObjectEUTRA = -1;        /* MeasObjectEUTRA */
1458 static int hf_nr_rrc_MeasResultCellListSFTD_item = -1;  /* MeasResultCellSFTD */
1459 static int hf_nr_rrc_sfn_OffsetResult = -1;       /* INTEGER_0_1023 */
1460 static int hf_nr_rrc_frameBoundaryOffsetResult = -1;  /* INTEGER_M30720_30719 */
1461 static int hf_nr_rrc_rsrp_Result = -1;            /* RSRP_Range */
1462 static int hf_nr_rrc_measResultServingMOList = -1;  /* MeasResultServMOList */
1463 static int hf_nr_rrc_measResultNeighCells = -1;   /* T_measResultNeighCells */
1464 static int hf_nr_rrc_measResultListNR = -1;       /* MeasResultListNR */
1465 static int hf_nr_rrc_measResultListEUTRA = -1;    /* MeasResultListEUTRA */
1466 static int hf_nr_rrc_MeasResultServMOList_item = -1;  /* MeasResultServMO */
1467 static int hf_nr_rrc_servCellId = -1;             /* ServCellIndex */
1468 static int hf_nr_rrc_measResultServingCell = -1;  /* MeasResultNR */
1469 static int hf_nr_rrc_measResultBestNeighCell = -1;  /* MeasResultNR */
1470 static int hf_nr_rrc_MeasResultListNR_item = -1;  /* MeasResultNR */
1471 static int hf_nr_rrc_measResult = -1;             /* T_measResult */
1472 static int hf_nr_rrc_cellResults = -1;            /* T_cellResults */
1473 static int hf_nr_rrc_resultsSSB_Cell = -1;        /* MeasQuantityResults */
1474 static int hf_nr_rrc_resultsCSI_RS_Cell = -1;     /* MeasQuantityResults */
1475 static int hf_nr_rrc_rsIndexResults = -1;         /* T_rsIndexResults */
1476 static int hf_nr_rrc_resultsSSB_Indexes = -1;     /* ResultsPerSSB_IndexList */
1477 static int hf_nr_rrc_resultsCSI_RS_Indexes = -1;  /* ResultsPerCSI_RS_IndexList */
1478 static int hf_nr_rrc_cgi_Info = -1;               /* CGI_Info */
1479 static int hf_nr_rrc_MeasResultListEUTRA_item = -1;  /* MeasResultEUTRA */
1480 static int hf_nr_rrc_measResult_01 = -1;          /* MeasQuantityResultsEUTRA */
1481 static int hf_nr_rrc_cgi_Info_01 = -1;            /* T_cgi_Info */
1482 static int hf_nr_rrc_cgi_info_EPC = -1;           /* T_cgi_info_EPC */
1483 static int hf_nr_rrc_cgi_info_EPC_legacy = -1;    /* CellAccessRelatedInfo_EUTRA_EPC */
1484 static int hf_nr_rrc_cgi_info_EPC_list = -1;      /* SEQUENCE_SIZE_1_maxPLMN_OF_CellAccessRelatedInfo_EUTRA_EPC */
1485 static int hf_nr_rrc_cgi_info_EPC_list_item = -1;  /* CellAccessRelatedInfo_EUTRA_EPC */
1486 static int hf_nr_rrc_cgi_info_5GC = -1;           /* SEQUENCE_SIZE_1_maxPLMN_OF_CellAccessRelatedInfo_EUTRA_5GC */
1487 static int hf_nr_rrc_cgi_info_5GC_item = -1;      /* CellAccessRelatedInfo_EUTRA_5GC */
1488 static int hf_nr_rrc_freqBandIndicator = -1;      /* FreqBandIndicatorEUTRA */
1489 static int hf_nr_rrc_multiBandInfoList = -1;      /* MultiBandInfoListEUTRA */
1490 static int hf_nr_rrc_freqBandIndicatorPriority = -1;  /* T_freqBandIndicatorPriority */
1491 static int hf_nr_rrc_MultiBandInfoListEUTRA_item = -1;  /* FreqBandIndicatorEUTRA */
1492 static int hf_nr_rrc_rsrp = -1;                   /* RSRP_Range */
1493 static int hf_nr_rrc_rsrq = -1;                   /* RSRQ_Range */
1494 static int hf_nr_rrc_sinr = -1;                   /* SINR_Range */
1495 static int hf_nr_rrc_rsrp_01 = -1;                /* RSRP_RangeEUTRA */
1496 static int hf_nr_rrc_rsrq_01 = -1;                /* RSRQ_RangeEUTRA */
1497 static int hf_nr_rrc_sinr_01 = -1;                /* SINR_RangeEUTRA */
1498 static int hf_nr_rrc_ResultsPerSSB_IndexList_item = -1;  /* ResultsPerSSB_Index */
1499 static int hf_nr_rrc_ssb_Results = -1;            /* MeasQuantityResults */
1500 static int hf_nr_rrc_ResultsPerCSI_RS_IndexList_item = -1;  /* ResultsPerCSI_RS_Index */
1501 static int hf_nr_rrc_csi_RS_Results = -1;         /* MeasQuantityResults */
1502 static int hf_nr_rrc_measResultPerMOList = -1;    /* MeasResultList2NR */
1503 static int hf_nr_rrc_MeasResultList2NR_item = -1;  /* MeasResult2NR */
1504 static int hf_nr_rrc_measResultNeighCellListNR = -1;  /* MeasResultListNR */
1505 static int hf_nr_rrc_t_Evaluation = -1;           /* T_t_Evaluation */
1506 static int hf_nr_rrc_t_HystNormal = -1;           /* T_t_HystNormal */
1507 static int hf_nr_rrc_n_CellChangeMedium = -1;     /* INTEGER_1_16 */
1508 static int hf_nr_rrc_n_CellChangeHigh = -1;       /* INTEGER_1_16 */
1509 static int hf_nr_rrc_MultiFrequencyBandListNR_item = -1;  /* FreqBandIndicatorNR */
1510 static int hf_nr_rrc_nzp_CSI_RS_ResourceId = -1;  /* NZP_CSI_RS_ResourceId */
1511 static int hf_nr_rrc_resourceMapping = -1;        /* CSI_RS_ResourceMapping */
1512 static int hf_nr_rrc_powerControlOffset = -1;     /* INTEGER_M8_15 */
1513 static int hf_nr_rrc_powerControlOffsetSS = -1;   /* T_powerControlOffsetSS */
1514 static int hf_nr_rrc_scramblingID = -1;           /* ScramblingId */
1515 static int hf_nr_rrc_qcl_InfoPeriodicCSI_RS = -1;  /* TCI_StateId */
1516 static int hf_nr_rrc_nzp_CSI_ResourceSetId = -1;  /* NZP_CSI_RS_ResourceSetId */
1517 static int hf_nr_rrc_nzp_CSI_RS_Resources = -1;   /* SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourcesPerSet_OF_NZP_CSI_RS_ResourceId */
1518 static int hf_nr_rrc_nzp_CSI_RS_Resources_item = -1;  /* NZP_CSI_RS_ResourceId */
1519 static int hf_nr_rrc_repetition = -1;             /* T_repetition */
1520 static int hf_nr_rrc_aperiodicTriggeringOffset = -1;  /* INTEGER_0_4 */
1521 static int hf_nr_rrc_trs_Info = -1;               /* T_trs_Info */
1522 static int hf_nr_rrc_PCI_List_item = -1;          /* PhysCellId */
1523 static int hf_nr_rrc_start = -1;                  /* PhysCellId */
1524 static int hf_nr_rrc_range = -1;                  /* T_range */
1525 static int hf_nr_rrc_pci_RangeIndex = -1;         /* PCI_RangeIndex */
1526 static int hf_nr_rrc_pci_Range = -1;              /* PCI_Range */
1527 static int hf_nr_rrc_PCI_RangeIndexList_item = -1;  /* PCI_RangeIndex */
1528 static int hf_nr_rrc_controlResourceSetToAddModList = -1;  /* SEQUENCE_SIZE_1_3_OF_ControlResourceSet */
1529 static int hf_nr_rrc_controlResourceSetToAddModList_item = -1;  /* ControlResourceSet */
1530 static int hf_nr_rrc_controlResourceSetToReleaseList = -1;  /* SEQUENCE_SIZE_1_3_OF_ControlResourceSetId */
1531 static int hf_nr_rrc_controlResourceSetToReleaseList_item = -1;  /* ControlResourceSetId */
1532 static int hf_nr_rrc_searchSpacesToAddModList = -1;  /* SEQUENCE_SIZE_1_10_OF_SearchSpace */
1533 static int hf_nr_rrc_searchSpacesToAddModList_item = -1;  /* SearchSpace */
1534 static int hf_nr_rrc_searchSpacesToReleaseList = -1;  /* SEQUENCE_SIZE_1_10_OF_SearchSpaceId */
1535 static int hf_nr_rrc_searchSpacesToReleaseList_item = -1;  /* SearchSpaceId */
1536 static int hf_nr_rrc_downlinkPreemption = -1;     /* T_downlinkPreemption */
1537 static int hf_nr_rrc_setup_28 = -1;               /* DownlinkPreemption */
1538 static int hf_nr_rrc_tpc_PUSCH = -1;              /* T_tpc_PUSCH */
1539 static int hf_nr_rrc_setup_29 = -1;               /* PUSCH_TPC_CommandConfig */
1540 static int hf_nr_rrc_tpc_PUCCH = -1;              /* T_tpc_PUCCH */
1541 static int hf_nr_rrc_setup_30 = -1;               /* PUCCH_TPC_CommandConfig */
1542 static int hf_nr_rrc_tpc_SRS = -1;                /* T_tpc_SRS */
1543 static int hf_nr_rrc_setup_31 = -1;               /* SRS_TPC_CommandConfig */
1544 static int hf_nr_rrc_controlResourceSetZero = -1;  /* ControlResourceSetZero */
1545 static int hf_nr_rrc_commonControlResourceSet = -1;  /* ControlResourceSet */
1546 static int hf_nr_rrc_searchSpaceZero = -1;        /* SearchSpaceZero */
1547 static int hf_nr_rrc_commonSearchSpaceList = -1;  /* SEQUENCE_SIZE_1_4_OF_SearchSpace */
1548 static int hf_nr_rrc_commonSearchSpaceList_item = -1;  /* SearchSpace */
1549 static int hf_nr_rrc_searchSpaceSIB1 = -1;        /* SearchSpaceId */
1550 static int hf_nr_rrc_searchSpaceOtherSystemInformation = -1;  /* SearchSpaceId */
1551 static int hf_nr_rrc_pagingSearchSpace = -1;      /* SearchSpaceId */
1552 static int hf_nr_rrc_ra_SearchSpace = -1;         /* SearchSpaceId */
1553 static int hf_nr_rrc_slotFormatIndicator = -1;    /* T_slotFormatIndicator */
1554 static int hf_nr_rrc_setup_32 = -1;               /* SlotFormatIndicator */
1555 static int hf_nr_rrc_drb = -1;                    /* T_drb */
1556 static int hf_nr_rrc_discardTimer = -1;           /* T_discardTimer */
1557 static int hf_nr_rrc_pdcp_SN_SizeUL = -1;         /* T_pdcp_SN_SizeUL */
1558 static int hf_nr_rrc_pdcp_SN_SizeDL = -1;         /* T_pdcp_SN_SizeDL */
1559 static int hf_nr_rrc_headerCompression = -1;      /* T_headerCompression */
1560 static int hf_nr_rrc_notUsed = -1;                /* NULL */
1561 static int hf_nr_rrc_rohc = -1;                   /* T_rohc */
1562 static int hf_nr_rrc_maxCID = -1;                 /* INTEGER_1_16383 */
1563 static int hf_nr_rrc_profiles = -1;               /* T_profiles */
1564 static int hf_nr_rrc_profile0x0001 = -1;          /* BOOLEAN */
1565 static int hf_nr_rrc_profile0x0002 = -1;          /* BOOLEAN */
1566 static int hf_nr_rrc_profile0x0003 = -1;          /* BOOLEAN */
1567 static int hf_nr_rrc_profile0x0004 = -1;          /* BOOLEAN */
1568 static int hf_nr_rrc_profile0x0006 = -1;          /* BOOLEAN */
1569 static int hf_nr_rrc_profile0x0101 = -1;          /* BOOLEAN */
1570 static int hf_nr_rrc_profile0x0102 = -1;          /* BOOLEAN */
1571 static int hf_nr_rrc_profile0x0103 = -1;          /* BOOLEAN */
1572 static int hf_nr_rrc_profile0x0104 = -1;          /* BOOLEAN */
1573 static int hf_nr_rrc_drb_ContinueROHC = -1;       /* T_drb_ContinueROHC */
1574 static int hf_nr_rrc_uplinkOnlyROHC = -1;         /* T_uplinkOnlyROHC */
1575 static int hf_nr_rrc_profiles_01 = -1;            /* T_profiles_01 */
1576 static int hf_nr_rrc_drb_ContinueROHC_01 = -1;    /* T_drb_ContinueROHC_01 */
1577 static int hf_nr_rrc_integrityProtection = -1;    /* T_integrityProtection */
1578 static int hf_nr_rrc_statusReportRequired = -1;   /* T_statusReportRequired */
1579 static int hf_nr_rrc_outOfOrderDelivery = -1;     /* T_outOfOrderDelivery */
1580 static int hf_nr_rrc_moreThanOneRLC = -1;         /* T_moreThanOneRLC */
1581 static int hf_nr_rrc_primaryPath = -1;            /* T_primaryPath */
1582 static int hf_nr_rrc_cellGroup = -1;              /* CellGroupId */
1583 static int hf_nr_rrc_logicalChannel = -1;         /* LogicalChannelIdentity */
1584 static int hf_nr_rrc_ul_DataSplitThreshold = -1;  /* UL_DataSplitThreshold */
1585 static int hf_nr_rrc_pdcp_Duplication = -1;       /* BOOLEAN */
1586 static int hf_nr_rrc_t_Reordering = -1;           /* T_t_Reordering */
1587 static int hf_nr_rrc_cipheringDisabled = -1;      /* T_cipheringDisabled */
1588 static int hf_nr_rrc_dataScramblingIdentityPDSCH = -1;  /* INTEGER_0_1023 */
1589 static int hf_nr_rrc_dmrs_DownlinkForPDSCH_MappingTypeA = -1;  /* T_dmrs_DownlinkForPDSCH_MappingTypeA */
1590 static int hf_nr_rrc_setup_33 = -1;               /* DMRS_DownlinkConfig */
1591 static int hf_nr_rrc_dmrs_DownlinkForPDSCH_MappingTypeB = -1;  /* T_dmrs_DownlinkForPDSCH_MappingTypeB */
1592 static int hf_nr_rrc_tci_StatesToAddModList = -1;  /* SEQUENCE_SIZE_1_maxNrofTCI_States_OF_TCI_State */
1593 static int hf_nr_rrc_tci_StatesToAddModList_item = -1;  /* TCI_State */
1594 static int hf_nr_rrc_tci_StatesToReleaseList = -1;  /* SEQUENCE_SIZE_1_maxNrofTCI_States_OF_TCI_StateId */
1595 static int hf_nr_rrc_tci_StatesToReleaseList_item = -1;  /* TCI_StateId */
1596 static int hf_nr_rrc_vrb_ToPRB_Interleaver = -1;  /* T_vrb_ToPRB_Interleaver */
1597 static int hf_nr_rrc_resourceAllocation_01 = -1;  /* T_resourceAllocation_01 */
1598 static int hf_nr_rrc_pdsch_TimeDomainAllocationList = -1;  /* T_pdsch_TimeDomainAllocationList */
1599 static int hf_nr_rrc_setup_34 = -1;               /* PDSCH_TimeDomainResourceAllocationList */
1600 static int hf_nr_rrc_pdsch_AggregationFactor = -1;  /* T_pdsch_AggregationFactor */
1601 static int hf_nr_rrc_rateMatchPatternToAddModList = -1;  /* SEQUENCE_SIZE_1_maxNrofRateMatchPatterns_OF_RateMatchPattern */
1602 static int hf_nr_rrc_rateMatchPatternToAddModList_item = -1;  /* RateMatchPattern */
1603 static int hf_nr_rrc_rateMatchPatternToReleaseList = -1;  /* SEQUENCE_SIZE_1_maxNrofRateMatchPatterns_OF_RateMatchPatternId */
1604 static int hf_nr_rrc_rateMatchPatternToReleaseList_item = -1;  /* RateMatchPatternId */
1605 static int hf_nr_rrc_rateMatchPatternGroup1 = -1;  /* RateMatchPatternGroup */
1606 static int hf_nr_rrc_rateMatchPatternGroup2 = -1;  /* RateMatchPatternGroup */
1607 static int hf_nr_rrc_rbg_Size_01 = -1;            /* T_rbg_Size_01 */
1608 static int hf_nr_rrc_mcs_Table_01 = -1;           /* T_mcs_Table_01 */
1609 static int hf_nr_rrc_maxNrofCodeWordsScheduledByDCI = -1;  /* T_maxNrofCodeWordsScheduledByDCI */
1610 static int hf_nr_rrc_prb_BundlingType = -1;       /* T_prb_BundlingType */
1611 static int hf_nr_rrc_staticBundling = -1;         /* T_staticBundling */
1612 static int hf_nr_rrc_bundleSize = -1;             /* T_bundleSize */
1613 static int hf_nr_rrc_dynamicBundling = -1;        /* T_dynamicBundling */
1614 static int hf_nr_rrc_bundleSizeSet1 = -1;         /* T_bundleSizeSet1 */
1615 static int hf_nr_rrc_bundleSizeSet2 = -1;         /* T_bundleSizeSet2 */
1616 static int hf_nr_rrc_zp_CSI_RS_ResourceToAddModList = -1;  /* SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_Resources_OF_ZP_CSI_RS_Resource */
1617 static int hf_nr_rrc_zp_CSI_RS_ResourceToAddModList_item = -1;  /* ZP_CSI_RS_Resource */
1618 static int hf_nr_rrc_zp_CSI_RS_ResourceToReleaseList = -1;  /* SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_Resources_OF_ZP_CSI_RS_ResourceId */
1619 static int hf_nr_rrc_zp_CSI_RS_ResourceToReleaseList_item = -1;  /* ZP_CSI_RS_ResourceId */
1620 static int hf_nr_rrc_aperiodic_ZP_CSI_RS_ResourceSetsToAddModList = -1;  /* SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourceSets_OF_ZP_CSI_RS_ResourceSet */
1621 static int hf_nr_rrc_aperiodic_ZP_CSI_RS_ResourceSetsToAddModList_item = -1;  /* ZP_CSI_RS_ResourceSet */
1622 static int hf_nr_rrc_aperiodic_ZP_CSI_RS_ResourceSetsToReleaseList = -1;  /* SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourceSets_OF_ZP_CSI_RS_ResourceSetId */
1623 static int hf_nr_rrc_aperiodic_ZP_CSI_RS_ResourceSetsToReleaseList_item = -1;  /* ZP_CSI_RS_ResourceSetId */
1624 static int hf_nr_rrc_sp_ZP_CSI_RS_ResourceSetsToAddModList = -1;  /* SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourceSets_OF_ZP_CSI_RS_ResourceSet */
1625 static int hf_nr_rrc_sp_ZP_CSI_RS_ResourceSetsToAddModList_item = -1;  /* ZP_CSI_RS_ResourceSet */
1626 static int hf_nr_rrc_sp_ZP_CSI_RS_ResourceSetsToReleaseList = -1;  /* SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourceSets_OF_ZP_CSI_RS_ResourceSetId */
1627 static int hf_nr_rrc_sp_ZP_CSI_RS_ResourceSetsToReleaseList_item = -1;  /* ZP_CSI_RS_ResourceSetId */
1628 static int hf_nr_rrc_p_ZP_CSI_RS_ResourceSet = -1;  /* T_p_ZP_CSI_RS_ResourceSet */
1629 static int hf_nr_rrc_setup_35 = -1;               /* ZP_CSI_RS_ResourceSet */
1630 static int hf_nr_rrc_RateMatchPatternGroup_item = -1;  /* RateMatchPatternGroup_item */
1631 static int hf_nr_rrc_cellLevel = -1;              /* RateMatchPatternId */
1632 static int hf_nr_rrc_bwpLevel = -1;               /* RateMatchPatternId */
1633 static int hf_nr_rrc_pdsch_TimeDomainAllocationList_01 = -1;  /* PDSCH_TimeDomainResourceAllocationList */
1634 static int hf_nr_rrc_codeBlockGroupTransmission = -1;  /* T_codeBlockGroupTransmission */
1635 static int hf_nr_rrc_setup_36 = -1;               /* PDSCH_CodeBlockGroupTransmission */
1636 static int hf_nr_rrc_xOverhead = -1;              /* T_xOverhead */
1637 static int hf_nr_rrc_nrofHARQ_ProcessesForPDSCH = -1;  /* T_nrofHARQ_ProcessesForPDSCH */
1638 static int hf_nr_rrc_pucch_Cell = -1;             /* ServCellIndex */
1639 static int hf_nr_rrc_maxCodeBlockGroupsPerTransportBlock = -1;  /* T_maxCodeBlockGroupsPerTransportBlock */
1640 static int hf_nr_rrc_codeBlockGroupFlushIndicator = -1;  /* BOOLEAN */
1641 static int hf_nr_rrc_PDSCH_TimeDomainResourceAllocationList_item = -1;  /* PDSCH_TimeDomainResourceAllocation */
1642 static int hf_nr_rrc_k0 = -1;                     /* INTEGER_0_32 */
1643 static int hf_nr_rrc_mappingType = -1;            /* T_mappingType */
1644 static int hf_nr_rrc_startSymbolAndLength = -1;   /* INTEGER_0_127 */
1645 static int hf_nr_rrc_phr_PeriodicTimer = -1;      /* T_phr_PeriodicTimer */
1646 static int hf_nr_rrc_phr_ProhibitTimer = -1;      /* T_phr_ProhibitTimer */
1647 static int hf_nr_rrc_phr_Tx_PowerFactorChange = -1;  /* T_phr_Tx_PowerFactorChange */
1648 static int hf_nr_rrc_multiplePHR = -1;            /* BOOLEAN */
1649 static int hf_nr_rrc_dummy = -1;                  /* BOOLEAN */
1650 static int hf_nr_rrc_phr_Type2OtherCell = -1;     /* BOOLEAN */
1651 static int hf_nr_rrc_phr_ModeOtherCG = -1;        /* T_phr_ModeOtherCG */
1652 static int hf_nr_rrc_harq_ACK_SpatialBundlingPUCCH = -1;  /* T_harq_ACK_SpatialBundlingPUCCH */
1653 static int hf_nr_rrc_harq_ACK_SpatialBundlingPUSCH = -1;  /* T_harq_ACK_SpatialBundlingPUSCH */
1654 static int hf_nr_rrc_p_NR_FR1 = -1;               /* P_Max */
1655 static int hf_nr_rrc_pdsch_HARQ_ACK_Codebook = -1;  /* T_pdsch_HARQ_ACK_Codebook */
1656 static int hf_nr_rrc_tpc_SRS_RNTI = -1;           /* RNTI_Value */
1657 static int hf_nr_rrc_tpc_PUCCH_RNTI = -1;         /* RNTI_Value */
1658 static int hf_nr_rrc_tpc_PUSCH_RNTI = -1;         /* RNTI_Value */
1659 static int hf_nr_rrc_sp_CSI_RNTI = -1;            /* RNTI_Value */
1660 static int hf_nr_rrc_cs_RNTI = -1;                /* T_cs_RNTI */
1661 static int hf_nr_rrc_setup_37 = -1;               /* RNTI_Value */
1662 static int hf_nr_rrc_mcs_C_RNTI = -1;             /* RNTI_Value */
1663 static int hf_nr_rrc_p_UE_FR1 = -1;               /* P_Max */
1664 static int hf_nr_rrc_mcc = -1;                    /* MCC */
1665 static int hf_nr_rrc_mnc = -1;                    /* MNC */
1666 static int hf_nr_rrc_MCC_item = -1;               /* MCC_MNC_Digit */
1667 static int hf_nr_rrc_MNC_item = -1;               /* MCC_MNC_Digit */
1668 static int hf_nr_rrc_PLMN_IdentityInfoList_item = -1;  /* PLMN_IdentityInfo */
1669 static int hf_nr_rrc_plmn_IdentityList_01 = -1;   /* SEQUENCE_SIZE_1_maxPLMN_OF_PLMN_Identity */
1670 static int hf_nr_rrc_plmn_IdentityList_item = -1;  /* PLMN_Identity */
1671 static int hf_nr_rrc_ranac = -1;                  /* RAN_AreaCode */
1672 static int hf_nr_rrc_cellReservedForOperatorUse = -1;  /* T_cellReservedForOperatorUse */
1673 static int hf_nr_rrc_frequencyDensity = -1;       /* T_frequencyDensity */
1674 static int hf_nr_rrc_frequencyDensity_item = -1;  /* INTEGER_1_276 */
1675 static int hf_nr_rrc_timeDensity = -1;            /* T_timeDensity */
1676 static int hf_nr_rrc_timeDensity_item = -1;       /* INTEGER_0_29 */
1677 static int hf_nr_rrc_epre_Ratio = -1;             /* INTEGER_0_3 */
1678 static int hf_nr_rrc_resourceElementOffset = -1;  /* T_resourceElementOffset */
1679 static int hf_nr_rrc_transformPrecoderDisabled = -1;  /* T_transformPrecoderDisabled */
1680 static int hf_nr_rrc_frequencyDensity_01 = -1;    /* T_frequencyDensity_01 */
1681 static int hf_nr_rrc_timeDensity_01 = -1;         /* T_timeDensity_01 */
1682 static int hf_nr_rrc_maxNrofPorts = -1;           /* T_maxNrofPorts */
1683 static int hf_nr_rrc_resourceElementOffset_01 = -1;  /* T_resourceElementOffset_01 */
1684 static int hf_nr_rrc_ptrs_Power = -1;             /* T_ptrs_Power */
1685 static int hf_nr_rrc_transformPrecoderEnabled = -1;  /* T_transformPrecoderEnabled */
1686 static int hf_nr_rrc_sampleDensity = -1;          /* T_sampleDensity */
1687 static int hf_nr_rrc_sampleDensity_item = -1;     /* INTEGER_1_276 */
1688 static int hf_nr_rrc_timeDensityTransformPrecoding = -1;  /* T_timeDensityTransformPrecoding */
1689 static int hf_nr_rrc_resourceSetToAddModList = -1;  /* SEQUENCE_SIZE_1_maxNrofPUCCH_ResourceSets_OF_PUCCH_ResourceSet */
1690 static int hf_nr_rrc_resourceSetToAddModList_item = -1;  /* PUCCH_ResourceSet */
1691 static int hf_nr_rrc_resourceSetToReleaseList = -1;  /* SEQUENCE_SIZE_1_maxNrofPUCCH_ResourceSets_OF_PUCCH_ResourceSetId */
1692 static int hf_nr_rrc_resourceSetToReleaseList_item = -1;  /* PUCCH_ResourceSetId */
1693 static int hf_nr_rrc_resourceToAddModList = -1;   /* SEQUENCE_SIZE_1_maxNrofPUCCH_Resources_OF_PUCCH_Resource */
1694 static int hf_nr_rrc_resourceToAddModList_item = -1;  /* PUCCH_Resource */
1695 static int hf_nr_rrc_resourceToReleaseList = -1;  /* SEQUENCE_SIZE_1_maxNrofPUCCH_Resources_OF_PUCCH_ResourceId */
1696 static int hf_nr_rrc_resourceToReleaseList_item = -1;  /* PUCCH_ResourceId */
1697 static int hf_nr_rrc_format1 = -1;                /* T_format1 */
1698 static int hf_nr_rrc_setup_38 = -1;               /* PUCCH_FormatConfig */
1699 static int hf_nr_rrc_format2 = -1;                /* T_format2 */
1700 static int hf_nr_rrc_format3 = -1;                /* T_format3 */
1701 static int hf_nr_rrc_format4 = -1;                /* T_format4 */
1702 static int hf_nr_rrc_schedulingRequestResourceToAddModList = -1;  /* SEQUENCE_SIZE_1_maxNrofSR_Resources_OF_SchedulingRequestResourceConfig */
1703 static int hf_nr_rrc_schedulingRequestResourceToAddModList_item = -1;  /* SchedulingRequestResourceConfig */
1704 static int hf_nr_rrc_schedulingRequestResourceToReleaseList = -1;  /* SEQUENCE_SIZE_1_maxNrofSR_Resources_OF_SchedulingRequestResourceId */
1705 static int hf_nr_rrc_schedulingRequestResourceToReleaseList_item = -1;  /* SchedulingRequestResourceId */
1706 static int hf_nr_rrc_multi_CSI_PUCCH_ResourceList = -1;  /* SEQUENCE_SIZE_1_2_OF_PUCCH_ResourceId */
1707 static int hf_nr_rrc_multi_CSI_PUCCH_ResourceList_item = -1;  /* PUCCH_ResourceId */
1708 static int hf_nr_rrc_dl_DataToUL_ACK = -1;        /* T_dl_DataToUL_ACK */
1709 static int hf_nr_rrc_dl_DataToUL_ACK_item = -1;   /* INTEGER_0_15 */
1710 static int hf_nr_rrc_spatialRelationInfoToAddModList = -1;  /* SEQUENCE_SIZE_1_maxNrofSpatialRelationInfos_OF_PUCCH_SpatialRelationInfo */
1711 static int hf_nr_rrc_spatialRelationInfoToAddModList_item = -1;  /* PUCCH_SpatialRelationInfo */
1712 static int hf_nr_rrc_spatialRelationInfoToReleaseList = -1;  /* SEQUENCE_SIZE_1_maxNrofSpatialRelationInfos_OF_PUCCH_SpatialRelationInfoId */
1713 static int hf_nr_rrc_spatialRelationInfoToReleaseList_item = -1;  /* PUCCH_SpatialRelationInfoId */
1714 static int hf_nr_rrc_pucch_PowerControl = -1;     /* PUCCH_PowerControl */
1715 static int hf_nr_rrc_interslotFrequencyHopping = -1;  /* T_interslotFrequencyHopping */
1716 static int hf_nr_rrc_additionalDMRS = -1;         /* T_additionalDMRS */
1717 static int hf_nr_rrc_maxCodeRate = -1;            /* PUCCH_MaxCodeRate */
1718 static int hf_nr_rrc_nrofSlots = -1;              /* T_nrofSlots */
1719 static int hf_nr_rrc_pi2BPSK = -1;                /* T_pi2BPSK */
1720 static int hf_nr_rrc_simultaneousHARQ_ACK_CSI = -1;  /* T_simultaneousHARQ_ACK_CSI */
1721 static int hf_nr_rrc_pucch_ResourceSetId = -1;    /* PUCCH_ResourceSetId */
1722 static int hf_nr_rrc_resourceList = -1;           /* SEQUENCE_SIZE_1_maxNrofPUCCH_ResourcesPerSet_OF_PUCCH_ResourceId */
1723 static int hf_nr_rrc_resourceList_item = -1;      /* PUCCH_ResourceId */
1724 static int hf_nr_rrc_maxPayloadMinus1 = -1;       /* INTEGER_4_256 */
1725 static int hf_nr_rrc_pucch_ResourceId = -1;       /* PUCCH_ResourceId */
1726 static int hf_nr_rrc_startingPRB = -1;            /* PRB_Id */
1727 static int hf_nr_rrc_intraSlotFrequencyHopping = -1;  /* T_intraSlotFrequencyHopping */
1728 static int hf_nr_rrc_secondHopPRB = -1;           /* PRB_Id */
1729 static int hf_nr_rrc_format = -1;                 /* T_format */
1730 static int hf_nr_rrc_format0 = -1;                /* PUCCH_format0 */
1731 static int hf_nr_rrc_format1_01 = -1;             /* PUCCH_format1 */
1732 static int hf_nr_rrc_format2_01 = -1;             /* PUCCH_format2 */
1733 static int hf_nr_rrc_format3_01 = -1;             /* PUCCH_format3 */
1734 static int hf_nr_rrc_format4_01 = -1;             /* PUCCH_format4 */
1735 static int hf_nr_rrc_initialCyclicShift = -1;     /* INTEGER_0_11 */
1736 static int hf_nr_rrc_nrofSymbols = -1;            /* INTEGER_1_2 */
1737 static int hf_nr_rrc_startingSymbolIndex = -1;    /* INTEGER_0_13 */
1738 static int hf_nr_rrc_nrofSymbols_01 = -1;         /* INTEGER_4_14 */
1739 static int hf_nr_rrc_startingSymbolIndex_01 = -1;  /* INTEGER_0_10 */
1740 static int hf_nr_rrc_timeDomainOCC = -1;          /* INTEGER_0_6 */
1741 static int hf_nr_rrc_nrofPRBs_01 = -1;            /* INTEGER_1_16 */
1742 static int hf_nr_rrc_occ_Length = -1;             /* T_occ_Length */
1743 static int hf_nr_rrc_occ_Index = -1;              /* T_occ_Index */
1744 static int hf_nr_rrc_pucch_ResourceCommon = -1;   /* INTEGER_0_15 */
1745 static int hf_nr_rrc_pucch_GroupHopping = -1;     /* T_pucch_GroupHopping */
1746 static int hf_nr_rrc_hoppingId = -1;              /* INTEGER_0_1023 */
1747 static int hf_nr_rrc_p0_nominal = -1;             /* INTEGER_M202_24 */
1748 static int hf_nr_rrc_deltaF_PUCCH_f0 = -1;        /* INTEGER_M16_15 */
1749 static int hf_nr_rrc_deltaF_PUCCH_f1 = -1;        /* INTEGER_M16_15 */
1750 static int hf_nr_rrc_deltaF_PUCCH_f2 = -1;        /* INTEGER_M16_15 */
1751 static int hf_nr_rrc_deltaF_PUCCH_f3 = -1;        /* INTEGER_M16_15 */
1752 static int hf_nr_rrc_deltaF_PUCCH_f4 = -1;        /* INTEGER_M16_15 */
1753 static int hf_nr_rrc_p0_Set = -1;                 /* SEQUENCE_SIZE_1_maxNrofPUCCH_P0_PerSet_OF_P0_PUCCH */
1754 static int hf_nr_rrc_p0_Set_item = -1;            /* P0_PUCCH */
1755 static int hf_nr_rrc_pathlossReferenceRSs = -1;   /* SEQUENCE_SIZE_1_maxNrofPUCCH_PathlossReferenceRSs_OF_PUCCH_PathlossReferenceRS */
1756 static int hf_nr_rrc_pathlossReferenceRSs_item = -1;  /* PUCCH_PathlossReferenceRS */
1757 static int hf_nr_rrc_twoPUCCH_PC_AdjustmentStates = -1;  /* T_twoPUCCH_PC_AdjustmentStates */
1758 static int hf_nr_rrc_p0_PUCCH_Id = -1;            /* P0_PUCCH_Id */
1759 static int hf_nr_rrc_p0_PUCCH_Value = -1;         /* INTEGER_M16_15 */
1760 static int hf_nr_rrc_pucch_PathlossReferenceRS_Id = -1;  /* PUCCH_PathlossReferenceRS_Id */
1761 static int hf_nr_rrc_referenceSignal = -1;        /* T_referenceSignal */
1762 static int hf_nr_rrc_csi_RS_Index_01 = -1;        /* NZP_CSI_RS_ResourceId */
1763 static int hf_nr_rrc_pucch_SpatialRelationInfoId = -1;  /* PUCCH_SpatialRelationInfoId */
1764 static int hf_nr_rrc_referenceSignal_01 = -1;     /* T_referenceSignal_01 */
1765 static int hf_nr_rrc_srs = -1;                    /* T_srs */
1766 static int hf_nr_rrc_resource = -1;               /* SRS_ResourceId */
1767 static int hf_nr_rrc_uplinkBWP = -1;              /* BWP_Id */
1768 static int hf_nr_rrc_closedLoopIndex = -1;        /* T_closedLoopIndex */
1769 static int hf_nr_rrc_tpc_IndexPCell = -1;         /* INTEGER_1_15 */
1770 static int hf_nr_rrc_tpc_IndexPUCCH_SCell = -1;   /* INTEGER_1_15 */
1771 static int hf_nr_rrc_dataScramblingIdentityPUSCH = -1;  /* INTEGER_0_1023 */
1772 static int hf_nr_rrc_txConfig = -1;               /* T_txConfig */
1773 static int hf_nr_rrc_dmrs_UplinkForPUSCH_MappingTypeA = -1;  /* T_dmrs_UplinkForPUSCH_MappingTypeA */
1774 static int hf_nr_rrc_setup_39 = -1;               /* DMRS_UplinkConfig */
1775 static int hf_nr_rrc_dmrs_UplinkForPUSCH_MappingTypeB = -1;  /* T_dmrs_UplinkForPUSCH_MappingTypeB */
1776 static int hf_nr_rrc_pusch_PowerControl = -1;     /* PUSCH_PowerControl */
1777 static int hf_nr_rrc_frequencyHopping_01 = -1;    /* T_frequencyHopping_01 */
1778 static int hf_nr_rrc_frequencyHoppingOffsetLists = -1;  /* T_frequencyHoppingOffsetLists */
1779 static int hf_nr_rrc_frequencyHoppingOffsetLists_item = -1;  /* INTEGER_1_maxNrofPhysicalResourceBlocks_1 */
1780 static int hf_nr_rrc_resourceAllocation_02 = -1;  /* T_resourceAllocation_02 */
1781 static int hf_nr_rrc_pusch_TimeDomainAllocationList = -1;  /* T_pusch_TimeDomainAllocationList */
1782 static int hf_nr_rrc_setup_40 = -1;               /* PUSCH_TimeDomainResourceAllocationList */
1783 static int hf_nr_rrc_pusch_AggregationFactor = -1;  /* T_pusch_AggregationFactor */
1784 static int hf_nr_rrc_mcs_Table_02 = -1;           /* T_mcs_Table_02 */
1785 static int hf_nr_rrc_mcs_TableTransformPrecoder_01 = -1;  /* T_mcs_TableTransformPrecoder_01 */
1786 static int hf_nr_rrc_transformPrecoder_01 = -1;   /* T_transformPrecoder_01 */
1787 static int hf_nr_rrc_codebookSubset = -1;         /* T_codebookSubset */
1788 static int hf_nr_rrc_maxRank = -1;                /* INTEGER_1_4 */
1789 static int hf_nr_rrc_rbg_Size_02 = -1;            /* T_rbg_Size_02 */
1790 static int hf_nr_rrc_uci_OnPUSCH_01 = -1;         /* T_uci_OnPUSCH_01 */
1791 static int hf_nr_rrc_setup_41 = -1;               /* UCI_OnPUSCH */
1792 static int hf_nr_rrc_tp_pi2BPSK = -1;             /* T_tp_pi2BPSK */
1793 static int hf_nr_rrc_betaOffsets = -1;            /* T_betaOffsets */
1794 static int hf_nr_rrc_dynamic_01 = -1;             /* SEQUENCE_SIZE_4_OF_BetaOffsets */
1795 static int hf_nr_rrc_scaling = -1;                /* T_scaling */
1796 static int hf_nr_rrc_groupHoppingEnabledTransformPrecoding = -1;  /* T_groupHoppingEnabledTransformPrecoding */
1797 static int hf_nr_rrc_pusch_TimeDomainAllocationList_01 = -1;  /* PUSCH_TimeDomainResourceAllocationList */
1798 static int hf_nr_rrc_msg3_DeltaPreamble = -1;     /* INTEGER_M1_6 */
1799 static int hf_nr_rrc_p0_NominalWithGrant = -1;    /* INTEGER_M202_24 */
1800 static int hf_nr_rrc_tpc_Accumulation = -1;       /* T_tpc_Accumulation */
1801 static int hf_nr_rrc_msg3_Alpha = -1;             /* Alpha */
1802 static int hf_nr_rrc_p0_NominalWithoutGrant = -1;  /* INTEGER_M202_24 */
1803 static int hf_nr_rrc_p0_AlphaSets = -1;           /* SEQUENCE_SIZE_1_maxNrofP0_PUSCH_AlphaSets_OF_P0_PUSCH_AlphaSet */
1804 static int hf_nr_rrc_p0_AlphaSets_item = -1;      /* P0_PUSCH_AlphaSet */
1805 static int hf_nr_rrc_pathlossReferenceRSToAddModList = -1;  /* SEQUENCE_SIZE_1_maxNrofPUSCH_PathlossReferenceRSs_OF_PUSCH_PathlossReferenceRS */
1806 static int hf_nr_rrc_pathlossReferenceRSToAddModList_item = -1;  /* PUSCH_PathlossReferenceRS */
1807 static int hf_nr_rrc_pathlossReferenceRSToReleaseList = -1;  /* SEQUENCE_SIZE_1_maxNrofPUSCH_PathlossReferenceRSs_OF_PUSCH_PathlossReferenceRS_Id */
1808 static int hf_nr_rrc_pathlossReferenceRSToReleaseList_item = -1;  /* PUSCH_PathlossReferenceRS_Id */
1809 static int hf_nr_rrc_twoPUSCH_PC_AdjustmentStates = -1;  /* T_twoPUSCH_PC_AdjustmentStates */
1810 static int hf_nr_rrc_deltaMCS = -1;               /* T_deltaMCS */
1811 static int hf_nr_rrc_sri_PUSCH_MappingToAddModList = -1;  /* SEQUENCE_SIZE_1_maxNrofSRI_PUSCH_Mappings_OF_SRI_PUSCH_PowerControl */
1812 static int hf_nr_rrc_sri_PUSCH_MappingToAddModList_item = -1;  /* SRI_PUSCH_PowerControl */
1813 static int hf_nr_rrc_sri_PUSCH_MappingToReleaseList = -1;  /* SEQUENCE_SIZE_1_maxNrofSRI_PUSCH_Mappings_OF_SRI_PUSCH_PowerControlId */
1814 static int hf_nr_rrc_sri_PUSCH_MappingToReleaseList_item = -1;  /* SRI_PUSCH_PowerControlId */
1815 static int hf_nr_rrc_p0_PUSCH_AlphaSetId = -1;    /* P0_PUSCH_AlphaSetId */
1816 static int hf_nr_rrc_p0 = -1;                     /* INTEGER_M16_15 */
1817 static int hf_nr_rrc_alpha = -1;                  /* Alpha */
1818 static int hf_nr_rrc_pusch_PathlossReferenceRS_Id = -1;  /* PUSCH_PathlossReferenceRS_Id */
1819 static int hf_nr_rrc_referenceSignal_02 = -1;     /* T_referenceSignal_02 */
1820 static int hf_nr_rrc_sri_PUSCH_PowerControlId = -1;  /* SRI_PUSCH_PowerControlId */
1821 static int hf_nr_rrc_sri_PUSCH_PathlossReferenceRS_Id = -1;  /* PUSCH_PathlossReferenceRS_Id */
1822 static int hf_nr_rrc_sri_P0_PUSCH_AlphaSetId = -1;  /* P0_PUSCH_AlphaSetId */
1823 static int hf_nr_rrc_sri_PUSCH_ClosedLoopIndex = -1;  /* T_sri_PUSCH_ClosedLoopIndex */
1824 static int hf_nr_rrc_betaOffsetACK_Index1 = -1;   /* INTEGER_0_31 */
1825 static int hf_nr_rrc_betaOffsetACK_Index2 = -1;   /* INTEGER_0_31 */
1826 static int hf_nr_rrc_betaOffsetACK_Index3 = -1;   /* INTEGER_0_31 */
1827 static int hf_nr_rrc_betaOffsetCSI_Part1_Index1 = -1;  /* INTEGER_0_31 */
1828 static int hf_nr_rrc_betaOffsetCSI_Part1_Index2 = -1;  /* INTEGER_0_31 */
1829 static int hf_nr_rrc_betaOffsetCSI_Part2_Index1 = -1;  /* INTEGER_0_31 */
1830 static int hf_nr_rrc_betaOffsetCSI_Part2_Index2 = -1;  /* INTEGER_0_31 */
1831 static int hf_nr_rrc_codeBlockGroupTransmission_01 = -1;  /* T_codeBlockGroupTransmission_01 */
1832 static int hf_nr_rrc_setup_42 = -1;               /* PUSCH_CodeBlockGroupTransmission */
1833 static int hf_nr_rrc_rateMatching = -1;           /* T_rateMatching */
1834 static int hf_nr_rrc_xOverhead_01 = -1;           /* T_xOverhead_01 */
1835 static int hf_nr_rrc_maxCodeBlockGroupsPerTransportBlock_01 = -1;  /* T_maxCodeBlockGroupsPerTransportBlock_01 */
1836 static int hf_nr_rrc_PUSCH_TimeDomainResourceAllocationList_item = -1;  /* PUSCH_TimeDomainResourceAllocation */
1837 static int hf_nr_rrc_k2 = -1;                     /* INTEGER_0_32 */
1838 static int hf_nr_rrc_mappingType_01 = -1;         /* T_mappingType_01 */
1839 static int hf_nr_rrc_tpc_Index = -1;              /* INTEGER_1_15 */
1840 static int hf_nr_rrc_tpc_IndexSUL = -1;           /* INTEGER_1_15 */
1841 static int hf_nr_rrc_targetCell = -1;             /* ServCellIndex */
1842 static int hf_nr_rrc_quantityConfigNR_List = -1;  /* SEQUENCE_SIZE_1_maxNrofQuantityConfig_OF_QuantityConfigNR */
1843 static int hf_nr_rrc_quantityConfigNR_List_item = -1;  /* QuantityConfigNR */
1844 static int hf_nr_rrc_quantityConfigEUTRA = -1;    /* FilterConfig */
1845 static int hf_nr_rrc_quantityConfigCell = -1;     /* QuantityConfigRS */
1846 static int hf_nr_rrc_quantityConfigRS_Index = -1;  /* QuantityConfigRS */
1847 static int hf_nr_rrc_ssb_FilterConfig = -1;       /* FilterConfig */
1848 static int hf_nr_rrc_cs_RS_FilterConfig = -1;     /* FilterConfig */
1849 static int hf_nr_rrc_filterCoefficientRSRP = -1;  /* FilterCoefficient */
1850 static int hf_nr_rrc_filterCoefficientRSRQ = -1;  /* FilterCoefficient */
1851 static int hf_nr_rrc_filterCoefficientRS_SINR = -1;  /* FilterCoefficient */
1852 static int hf_nr_rrc_rach_ConfigGeneric = -1;     /* RACH_ConfigGeneric */
1853 static int hf_nr_rrc_totalNumberOfRA_Preambles = -1;  /* INTEGER_1_63 */
1854 static int hf_nr_rrc_ssb_perRACH_OccasionAndCB_PreamblesPerSSB = -1;  /* T_ssb_perRACH_OccasionAndCB_PreamblesPerSSB */
1855 static int hf_nr_rrc_oneEighth = -1;              /* T_oneEighth */
1856 static int hf_nr_rrc_oneFourth = -1;              /* T_oneFourth */
1857 static int hf_nr_rrc_oneHalf = -1;                /* T_oneHalf */
1858 static int hf_nr_rrc_one_01 = -1;                 /* T_one */
1859 static int hf_nr_rrc_two_01 = -1;                 /* T_two_01 */
1860 static int hf_nr_rrc_four = -1;                   /* INTEGER_1_16 */
1861 static int hf_nr_rrc_eight = -1;                  /* INTEGER_1_8 */
1862 static int hf_nr_rrc_sixteen = -1;                /* INTEGER_1_4 */
1863 static int hf_nr_rrc_groupBconfigured = -1;       /* T_groupBconfigured */
1864 static int hf_nr_rrc_ra_Msg3SizeGroupA = -1;      /* T_ra_Msg3SizeGroupA */
1865 static int hf_nr_rrc_messagePowerOffsetGroupB = -1;  /* T_messagePowerOffsetGroupB */
1866 static int hf_nr_rrc_numberOfRA_PreamblesGroupA = -1;  /* INTEGER_1_64 */
1867 static int hf_nr_rrc_ra_ContentionResolutionTimer = -1;  /* T_ra_ContentionResolutionTimer */
1868 static int hf_nr_rrc_rsrp_ThresholdSSB_SUL = -1;  /* RSRP_Range */
1869 static int hf_nr_rrc_prach_RootSequenceIndex = -1;  /* T_prach_RootSequenceIndex */
1870 static int hf_nr_rrc_l839 = -1;                   /* INTEGER_0_837 */
1871 static int hf_nr_rrc_l139 = -1;                   /* INTEGER_0_137 */
1872 static int hf_nr_rrc_msg1_SubcarrierSpacing = -1;  /* SubcarrierSpacing */
1873 static int hf_nr_rrc_restrictedSetConfig = -1;    /* T_restrictedSetConfig */
1874 static int hf_nr_rrc_msg3_transformPrecoder = -1;  /* T_msg3_transformPrecoder */
1875 static int hf_nr_rrc_cfra = -1;                   /* CFRA */
1876 static int hf_nr_rrc_occasions = -1;              /* T_occasions */
1877 static int hf_nr_rrc_ssb_perRACH_Occasion_01 = -1;  /* T_ssb_perRACH_Occasion_01 */
1878 static int hf_nr_rrc_resources = -1;              /* T_resources */
1879 static int hf_nr_rrc_ssb_02 = -1;                 /* T_ssb */
1880 static int hf_nr_rrc_ssb_ResourceList = -1;       /* SEQUENCE_SIZE_1_maxRA_SSB_Resources_OF_CFRA_SSB_Resource */
1881 static int hf_nr_rrc_ssb_ResourceList_item = -1;  /* CFRA_SSB_Resource */
1882 static int hf_nr_rrc_csirs = -1;                  /* T_csirs */
1883 static int hf_nr_rrc_csirs_ResourceList = -1;     /* SEQUENCE_SIZE_1_maxRA_CSIRS_Resources_OF_CFRA_CSIRS_Resource */
1884 static int hf_nr_rrc_csirs_ResourceList_item = -1;  /* CFRA_CSIRS_Resource */
1885 static int hf_nr_rrc_rsrp_ThresholdCSI_RS = -1;   /* RSRP_Range */
1886 static int hf_nr_rrc_totalNumberOfRA_Preambles_v1530 = -1;  /* INTEGER_1_63 */
1887 static int hf_nr_rrc_csi_RS_02 = -1;              /* CSI_RS_Index */
1888 static int hf_nr_rrc_ra_OccasionList_01 = -1;     /* T_ra_OccasionList_01 */
1889 static int hf_nr_rrc_prach_ConfigurationIndex = -1;  /* INTEGER_0_255 */
1890 static int hf_nr_rrc_msg1_FDM = -1;               /* T_msg1_FDM */
1891 static int hf_nr_rrc_msg1_FrequencyStart = -1;    /* INTEGER_0_maxNrofPhysicalResourceBlocks_1 */
1892 static int hf_nr_rrc_zeroCorrelationZoneConfig = -1;  /* INTEGER_0_15 */
1893 static int hf_nr_rrc_preambleReceivedTargetPower = -1;  /* INTEGER_M202_M60 */
1894 static int hf_nr_rrc_preambleTransMax = -1;       /* T_preambleTransMax */
1895 static int hf_nr_rrc_powerRampingStep = -1;       /* T_powerRampingStep */
1896 static int hf_nr_rrc_ra_ResponseWindow = -1;      /* T_ra_ResponseWindow */
1897 static int hf_nr_rrc_powerRampingStepHighPriority = -1;  /* T_powerRampingStepHighPriority */
1898 static int hf_nr_rrc_scalingFactorBI = -1;        /* T_scalingFactorBI */
1899 static int hf_nr_rrc_srb_ToAddModList = -1;       /* SRB_ToAddModList */
1900 static int hf_nr_rrc_srb3_ToRelease = -1;         /* T_srb3_ToRelease */
1901 static int hf_nr_rrc_drb_ToAddModList = -1;       /* DRB_ToAddModList */
1902 static int hf_nr_rrc_drb_ToReleaseList = -1;      /* DRB_ToReleaseList */
1903 static int hf_nr_rrc_securityConfig = -1;         /* SecurityConfig */
1904 static int hf_nr_rrc_SRB_ToAddModList_item = -1;  /* SRB_ToAddMod */
1905 static int hf_nr_rrc_srb_Identity = -1;           /* SRB_Identity */
1906 static int hf_nr_rrc_reestablishPDCP = -1;        /* T_reestablishPDCP */
1907 static int hf_nr_rrc_discardOnPDCP = -1;          /* T_discardOnPDCP */
1908 static int hf_nr_rrc_pdcp_Config = -1;            /* PDCP_Config */
1909 static int hf_nr_rrc_DRB_ToAddModList_item = -1;  /* DRB_ToAddMod */
1910 static int hf_nr_rrc_cnAssociation = -1;          /* T_cnAssociation */
1911 static int hf_nr_rrc_eps_BearerIdentity = -1;     /* INTEGER_0_15 */
1912 static int hf_nr_rrc_sdap_Config = -1;            /* SDAP_Config */
1913 static int hf_nr_rrc_reestablishPDCP_01 = -1;     /* T_reestablishPDCP_01 */
1914 static int hf_nr_rrc_recoverPDCP = -1;            /* T_recoverPDCP */
1915 static int hf_nr_rrc_DRB_ToReleaseList_item = -1;  /* DRB_Identity */
1916 static int hf_nr_rrc_keyToUse = -1;               /* T_keyToUse */
1917 static int hf_nr_rrc_failureDetectionResourcesToAddModList = -1;  /* SEQUENCE_SIZE_1_maxNrofFailureDetectionResources_OF_RadioLinkMonitoringRS */
1918 static int hf_nr_rrc_failureDetectionResourcesToAddModList_item = -1;  /* RadioLinkMonitoringRS */
1919 static int hf_nr_rrc_failureDetectionResourcesToReleaseList = -1;  /* SEQUENCE_SIZE_1_maxNrofFailureDetectionResources_OF_RadioLinkMonitoringRS_Id */
1920 static int hf_nr_rrc_failureDetectionResourcesToReleaseList_item = -1;  /* RadioLinkMonitoringRS_Id */
1921 static int hf_nr_rrc_beamFailureInstanceMaxCount = -1;  /* T_beamFailureInstanceMaxCount */
1922 static int hf_nr_rrc_beamFailureDetectionTimer = -1;  /* T_beamFailureDetectionTimer */
1923 static int hf_nr_rrc_radioLinkMonitoringRS_Id = -1;  /* RadioLinkMonitoringRS_Id */
1924 static int hf_nr_rrc_purpose = -1;                /* T_purpose */
1925 static int hf_nr_rrc_detectionResource = -1;      /* T_detectionResource */
1926 static int hf_nr_rrc_rateMatchPatternId = -1;     /* RateMatchPatternId */
1927 static int hf_nr_rrc_patternType = -1;            /* T_patternType */
1928 static int hf_nr_rrc_bitmaps = -1;                /* T_bitmaps */
1929 static int hf_nr_rrc_resourceBlocks = -1;         /* BIT_STRING_SIZE_275 */
1930 static int hf_nr_rrc_symbolsInResourceBlock = -1;  /* T_symbolsInResourceBlock */
1931 static int hf_nr_rrc_oneSlot = -1;                /* BIT_STRING_SIZE_14 */
1932 static int hf_nr_rrc_twoSlots = -1;               /* BIT_STRING_SIZE_28 */
1933 static int hf_nr_rrc_periodicityAndPattern = -1;  /* T_periodicityAndPattern */
1934 static int hf_nr_rrc_n2 = -1;                     /* BIT_STRING_SIZE_2 */
1935 static int hf_nr_rrc_n4 = -1;                     /* BIT_STRING_SIZE_4 */
1936 static int hf_nr_rrc_n5 = -1;                     /* BIT_STRING_SIZE_5 */
1937 static int hf_nr_rrc_n8 = -1;                     /* BIT_STRING_SIZE_8 */
1938 static int hf_nr_rrc_n10 = -1;                    /* BIT_STRING_SIZE_10 */
1939 static int hf_nr_rrc_n20 = -1;                    /* BIT_STRING_SIZE_20 */
1940 static int hf_nr_rrc_n40 = -1;                    /* BIT_STRING_SIZE_40 */
1941 static int hf_nr_rrc_controlResourceSet = -1;     /* ControlResourceSetId */
1942 static int hf_nr_rrc_dummy_01 = -1;               /* T_dummy */
1943 static int hf_nr_rrc_carrierFreqDL = -1;          /* INTEGER_0_16383 */
1944 static int hf_nr_rrc_carrierBandwidthDL = -1;     /* T_carrierBandwidthDL */
1945 static int hf_nr_rrc_mbsfn_SubframeConfigList = -1;  /* EUTRA_MBSFN_SubframeConfigList */
1946 static int hf_nr_rrc_nrofCRS_Ports = -1;          /* T_nrofCRS_Ports */
1947 static int hf_nr_rrc_v_Shift = -1;                /* T_v_Shift */
1948 static int hf_nr_rrc_reportType = -1;             /* T_reportType */
1949 static int hf_nr_rrc_periodical = -1;             /* PeriodicalReportConfigInterRAT */
1950 static int hf_nr_rrc_eventTriggered = -1;         /* EventTriggerConfigInterRAT */
1951 static int hf_nr_rrc_reportCGI = -1;              /* ReportCGI_EUTRA */
1952 static int hf_nr_rrc_cellForWhichToReportCGI = -1;  /* EUTRA_PhysCellId */
1953 static int hf_nr_rrc_eventId = -1;                /* T_eventId */
1954 static int hf_nr_rrc_eventB1 = -1;                /* T_eventB1 */
1955 static int hf_nr_rrc_b1_ThresholdEUTRA = -1;      /* MeasTriggerQuantityEUTRA */
1956 static int hf_nr_rrc_reportOnLeave = -1;          /* BOOLEAN */
1957 static int hf_nr_rrc_hysteresis = -1;             /* Hysteresis */
1958 static int hf_nr_rrc_timeToTrigger = -1;          /* TimeToTrigger */
1959 static int hf_nr_rrc_eventB2 = -1;                /* T_eventB2 */
1960 static int hf_nr_rrc_b2_Threshold1 = -1;          /* MeasTriggerQuantity */
1961 static int hf_nr_rrc_b2_Threshold2EUTRA = -1;     /* MeasTriggerQuantityEUTRA */
1962 static int hf_nr_rrc_rsType = -1;                 /* NR_RS_Type */
1963 static int hf_nr_rrc_reportInterval = -1;         /* ReportInterval */
1964 static int hf_nr_rrc_reportAmount = -1;           /* T_reportAmount */
1965 static int hf_nr_rrc_reportQuantity_01 = -1;      /* MeasReportQuantity */
1966 static int hf_nr_rrc_maxReportCells = -1;         /* INTEGER_1_maxCellReport */
1967 static int hf_nr_rrc_reportAmount_01 = -1;        /* T_reportAmount_01 */
1968 static int hf_nr_rrc_reportType_01 = -1;          /* T_reportType_01 */
1969 static int hf_nr_rrc_periodical_01 = -1;          /* PeriodicalReportConfig */
1970 static int hf_nr_rrc_eventTriggered_01 = -1;      /* EventTriggerConfig */
1971 static int hf_nr_rrc_reportCGI_01 = -1;           /* ReportCGI */
1972 static int hf_nr_rrc_cellForWhichToReportCGI_01 = -1;  /* PhysCellId */
1973 static int hf_nr_rrc_eventId_01 = -1;             /* T_eventId_01 */
1974 static int hf_nr_rrc_eventA1 = -1;                /* T_eventA1 */
1975 static int hf_nr_rrc_a1_Threshold = -1;           /* MeasTriggerQuantity */
1976 static int hf_nr_rrc_eventA2 = -1;                /* T_eventA2 */
1977 static int hf_nr_rrc_a2_Threshold = -1;           /* MeasTriggerQuantity */
1978 static int hf_nr_rrc_eventA3 = -1;                /* T_eventA3 */
1979 static int hf_nr_rrc_a3_Offset = -1;              /* MeasTriggerQuantityOffset */
1980 static int hf_nr_rrc_useWhiteCellList = -1;       /* BOOLEAN */
1981 static int hf_nr_rrc_eventA4 = -1;                /* T_eventA4 */
1982 static int hf_nr_rrc_a4_Threshold = -1;           /* MeasTriggerQuantity */
1983 static int hf_nr_rrc_eventA5 = -1;                /* T_eventA5 */
1984 static int hf_nr_rrc_a5_Threshold1 = -1;          /* MeasTriggerQuantity */
1985 static int hf_nr_rrc_a5_Threshold2 = -1;          /* MeasTriggerQuantity */
1986 static int hf_nr_rrc_eventA6 = -1;                /* T_eventA6 */
1987 static int hf_nr_rrc_a6_Offset = -1;              /* MeasTriggerQuantityOffset */
1988 static int hf_nr_rrc_reportAmount_02 = -1;        /* T_reportAmount_02 */
1989 static int hf_nr_rrc_reportQuantityCell = -1;     /* MeasReportQuantity */
1990 static int hf_nr_rrc_reportQuantityRsIndexes = -1;  /* MeasReportQuantity */
1991 static int hf_nr_rrc_maxNrofRSIndexesToReport = -1;  /* INTEGER_1_maxNrofIndexesToReport */
1992 static int hf_nr_rrc_includeBeamMeasurements = -1;  /* BOOLEAN */
1993 static int hf_nr_rrc_reportAddNeighMeas = -1;     /* T_reportAddNeighMeas */
1994 static int hf_nr_rrc_reportAmount_03 = -1;        /* T_reportAmount_03 */
1995 static int hf_nr_rrc_maxNrofRsIndexesToReport = -1;  /* INTEGER_1_maxNrofIndexesToReport */
1996 static int hf_nr_rrc_rsrp_02 = -1;                /* INTEGER_M30_30 */
1997 static int hf_nr_rrc_rsrq_02 = -1;                /* INTEGER_M30_30 */
1998 static int hf_nr_rrc_sinr_02 = -1;                /* INTEGER_M30_30 */
1999 static int hf_nr_rrc_rsrp_03 = -1;                /* BOOLEAN */
2000 static int hf_nr_rrc_rsrq_03 = -1;                /* BOOLEAN */
2001 static int hf_nr_rrc_sinr_03 = -1;                /* BOOLEAN */
2002 static int hf_nr_rrc_ReportConfigToAddModList_item = -1;  /* ReportConfigToAddMod */
2003 static int hf_nr_rrc_reportConfig = -1;           /* T_reportConfig */
2004 static int hf_nr_rrc_reportConfigNR = -1;         /* ReportConfigNR */
2005 static int hf_nr_rrc_reportConfigInterRAT = -1;   /* ReportConfigInterRAT */
2006 static int hf_nr_rrc_logicalChannelIdentity = -1;  /* LogicalChannelIdentity */
2007 static int hf_nr_rrc_servedRadioBearer = -1;      /* T_servedRadioBearer */
2008 static int hf_nr_rrc_reestablishRLC = -1;         /* T_reestablishRLC */
2009 static int hf_nr_rrc_rlc_Config = -1;             /* RLC_Config */
2010 static int hf_nr_rrc_mac_LogicalChannelConfig = -1;  /* LogicalChannelConfig */
2011 static int hf_nr_rrc_am = -1;                     /* T_am */
2012 static int hf_nr_rrc_ul_AM_RLC = -1;              /* UL_AM_RLC */
2013 static int hf_nr_rrc_dl_AM_RLC = -1;              /* DL_AM_RLC */
2014 static int hf_nr_rrc_um_Bi_Directional = -1;      /* T_um_Bi_Directional */
2015 static int hf_nr_rrc_ul_UM_RLC = -1;              /* UL_UM_RLC */
2016 static int hf_nr_rrc_dl_UM_RLC = -1;              /* DL_UM_RLC */
2017 static int hf_nr_rrc_um_Uni_Directional_UL = -1;  /* T_um_Uni_Directional_UL */
2018 static int hf_nr_rrc_um_Uni_Directional_DL = -1;  /* T_um_Uni_Directional_DL */
2019 static int hf_nr_rrc_sn_FieldLength = -1;         /* SN_FieldLengthAM */
2020 static int hf_nr_rrc_t_PollRetransmit = -1;       /* T_PollRetransmit */
2021 static int hf_nr_rrc_pollPDU = -1;                /* PollPDU */
2022 static int hf_nr_rrc_pollByte = -1;               /* PollByte */
2023 static int hf_nr_rrc_maxRetxThreshold = -1;       /* T_maxRetxThreshold */
2024 static int hf_nr_rrc_t_Reassembly = -1;           /* T_Reassembly */
2025 static int hf_nr_rrc_t_StatusProhibit = -1;       /* T_StatusProhibit */
2026 static int hf_nr_rrc_sn_FieldLength_01 = -1;      /* SN_FieldLengthUM */
2027 static int hf_nr_rrc_t310 = -1;                   /* T_t310 */
2028 static int hf_nr_rrc_n310 = -1;                   /* T_n310 */
2029 static int hf_nr_rrc_n311 = -1;                   /* T_n311 */
2030 static int hf_nr_rrc_t311_v1530 = -1;             /* T_t311_v1530 */
2031 static int hf_nr_rrc_schedulingRequestToAddModList = -1;  /* SEQUENCE_SIZE_1_maxNrofSR_ConfigPerCellGroup_OF_SchedulingRequestToAddMod */
2032 static int hf_nr_rrc_schedulingRequestToAddModList_item = -1;  /* SchedulingRequestToAddMod */
2033 static int hf_nr_rrc_schedulingRequestToReleaseList = -1;  /* SEQUENCE_SIZE_1_maxNrofSR_ConfigPerCellGroup_OF_SchedulingRequestId */
2034 static int hf_nr_rrc_schedulingRequestToReleaseList_item = -1;  /* SchedulingRequestId */
2035 static int hf_nr_rrc_schedulingRequestId = -1;    /* SchedulingRequestId */
2036 static int hf_nr_rrc_sr_ProhibitTimer = -1;       /* T_sr_ProhibitTimer */
2037 static int hf_nr_rrc_sr_TransMax = -1;            /* T_sr_TransMax */
2038 static int hf_nr_rrc_schedulingRequestResourceId = -1;  /* SchedulingRequestResourceId */
2039 static int hf_nr_rrc_periodicityAndOffset_01 = -1;  /* T_periodicityAndOffset */
2040 static int hf_nr_rrc_sym2 = -1;                   /* NULL */
2041 static int hf_nr_rrc_sym6or7 = -1;                /* NULL */
2042 static int hf_nr_rrc_sl1 = -1;                    /* NULL */
2043 static int hf_nr_rrc_sl2 = -1;                    /* INTEGER_0_1 */
2044 static int hf_nr_rrc_sl4 = -1;                    /* INTEGER_0_3 */
2045 static int hf_nr_rrc_sl5 = -1;                    /* INTEGER_0_4 */
2046 static int hf_nr_rrc_sl8 = -1;                    /* INTEGER_0_7 */
2047 static int hf_nr_rrc_sl10 = -1;                   /* INTEGER_0_9 */
2048 static int hf_nr_rrc_sl16 = -1;                   /* INTEGER_0_15 */
2049 static int hf_nr_rrc_sl20 = -1;                   /* INTEGER_0_19 */
2050 static int hf_nr_rrc_sl40 = -1;                   /* INTEGER_0_39 */
2051 static int hf_nr_rrc_sl80 = -1;                   /* INTEGER_0_79 */
2052 static int hf_nr_rrc_sl160 = -1;                  /* INTEGER_0_159 */
2053 static int hf_nr_rrc_sl320 = -1;                  /* INTEGER_0_319 */
2054 static int hf_nr_rrc_sl640 = -1;                  /* INTEGER_0_639 */
2055 static int hf_nr_rrc_resource_01 = -1;            /* PUCCH_ResourceId */
2056 static int hf_nr_rrc_offsetToCarrier = -1;        /* INTEGER_0_2199 */
2057 static int hf_nr_rrc_carrierBandwidth = -1;       /* INTEGER_1_maxNrofPhysicalResourceBlocks */
2058 static int hf_nr_rrc_txDirectCurrentLocation_v1530 = -1;  /* INTEGER_0_4095 */
2059 static int hf_nr_rrc_pdu_Session = -1;            /* PDU_SessionID */
2060 static int hf_nr_rrc_sdap_HeaderDL = -1;          /* T_sdap_HeaderDL */
2061 static int hf_nr_rrc_sdap_HeaderUL = -1;          /* T_sdap_HeaderUL */
2062 static int hf_nr_rrc_defaultDRB = -1;             /* BOOLEAN */
2063 static int hf_nr_rrc_mappedQoS_FlowsToAdd = -1;   /* SEQUENCE_SIZE_1_maxNrofQFIs_OF_QFI */
2064 static int hf_nr_rrc_mappedQoS_FlowsToAdd_item = -1;  /* QFI */
2065 static int hf_nr_rrc_mappedQoS_FlowsToRelease = -1;  /* SEQUENCE_SIZE_1_maxNrofQFIs_OF_QFI */
2066 static int hf_nr_rrc_mappedQoS_FlowsToRelease_item = -1;  /* QFI */
2067 static int hf_nr_rrc_searchSpaceId = -1;          /* SearchSpaceId */
2068 static int hf_nr_rrc_monitoringSlotPeriodicityAndOffset = -1;  /* T_monitoringSlotPeriodicityAndOffset */
2069 static int hf_nr_rrc_sl1280 = -1;                 /* INTEGER_0_1279 */
2070 static int hf_nr_rrc_sl2560 = -1;                 /* INTEGER_0_2559 */
2071 static int hf_nr_rrc_duration_01 = -1;            /* INTEGER_2_2559 */
2072 static int hf_nr_rrc_monitoringSymbolsWithinSlot = -1;  /* BIT_STRING_SIZE_14 */
2073 static int hf_nr_rrc_nrofCandidates = -1;         /* T_nrofCandidates */
2074 static int hf_nr_rrc_aggregationLevel1 = -1;      /* T_aggregationLevel1 */
2075 static int hf_nr_rrc_aggregationLevel2 = -1;      /* T_aggregationLevel2 */
2076 static int hf_nr_rrc_aggregationLevel4 = -1;      /* T_aggregationLevel4 */
2077 static int hf_nr_rrc_aggregationLevel8 = -1;      /* T_aggregationLevel8 */
2078 static int hf_nr_rrc_aggregationLevel16 = -1;     /* T_aggregationLevel16 */
2079 static int hf_nr_rrc_searchSpaceType = -1;        /* T_searchSpaceType */
2080 static int hf_nr_rrc_common = -1;                 /* T_common */
2081 static int hf_nr_rrc_dci_Format0_0_AndFormat1_0 = -1;  /* T_dci_Format0_0_AndFormat1_0 */
2082 static int hf_nr_rrc_dci_Format2_0 = -1;          /* T_dci_Format2_0 */
2083 static int hf_nr_rrc_nrofCandidates_SFI = -1;     /* T_nrofCandidates_SFI */
2084 static int hf_nr_rrc_aggregationLevel1_01 = -1;   /* T_aggregationLevel1_01 */
2085 static int hf_nr_rrc_aggregationLevel2_01 = -1;   /* T_aggregationLevel2_01 */
2086 static int hf_nr_rrc_aggregationLevel4_01 = -1;   /* T_aggregationLevel4_01 */
2087 static int hf_nr_rrc_aggregationLevel8_01 = -1;   /* T_aggregationLevel8_01 */
2088 static int hf_nr_rrc_aggregationLevel16_01 = -1;  /* T_aggregationLevel16_01 */
2089 static int hf_nr_rrc_dci_Format2_1 = -1;          /* T_dci_Format2_1 */
2090 static int hf_nr_rrc_dci_Format2_2 = -1;          /* T_dci_Format2_2 */
2091 static int hf_nr_rrc_dci_Format2_3 = -1;          /* T_dci_Format2_3 */
2092 static int hf_nr_rrc_dummy1 = -1;                 /* T_dummy1 */
2093 static int hf_nr_rrc_dummy2 = -1;                 /* T_dummy2 */
2094 static int hf_nr_rrc_ue_Specific = -1;            /* T_ue_Specific */
2095 static int hf_nr_rrc_dci_Formats = -1;            /* T_dci_Formats */
2096 static int hf_nr_rrc_cipheringAlgorithm = -1;     /* CipheringAlgorithm */
2097 static int hf_nr_rrc_integrityProtAlgorithm = -1;  /* IntegrityProtAlgorithm */
2098 static int hf_nr_rrc_tdd_UL_DL_ConfigurationDedicated = -1;  /* TDD_UL_DL_ConfigDedicated */
2099 static int hf_nr_rrc_initialDownlinkBWP_01 = -1;  /* BWP_DownlinkDedicated */
2100 static int hf_nr_rrc_downlinkBWP_ToReleaseList = -1;  /* SEQUENCE_SIZE_1_maxNrofBWPs_OF_BWP_Id */
2101 static int hf_nr_rrc_downlinkBWP_ToReleaseList_item = -1;  /* BWP_Id */
2102 static int hf_nr_rrc_downlinkBWP_ToAddModList = -1;  /* SEQUENCE_SIZE_1_maxNrofBWPs_OF_BWP_Downlink */
2103 static int hf_nr_rrc_downlinkBWP_ToAddModList_item = -1;  /* BWP_Downlink */
2104 static int hf_nr_rrc_firstActiveDownlinkBWP_Id = -1;  /* BWP_Id */
2105 static int hf_nr_rrc_bwp_InactivityTimer = -1;    /* T_bwp_InactivityTimer */
2106 static int hf_nr_rrc_defaultDownlinkBWP_Id = -1;  /* BWP_Id */
2107 static int hf_nr_rrc_uplinkConfig = -1;           /* UplinkConfig */
2108 static int hf_nr_rrc_supplementaryUplink_01 = -1;  /* UplinkConfig */
2109 static int hf_nr_rrc_pdcch_ServingCellConfig = -1;  /* T_pdcch_ServingCellConfig */
2110 static int hf_nr_rrc_setup_43 = -1;               /* PDCCH_ServingCellConfig */
2111 static int hf_nr_rrc_pdsch_ServingCellConfig = -1;  /* T_pdsch_ServingCellConfig */
2112 static int hf_nr_rrc_setup_44 = -1;               /* PDSCH_ServingCellConfig */
2113 static int hf_nr_rrc_csi_MeasConfig = -1;         /* T_csi_MeasConfig */
2114 static int hf_nr_rrc_setup_45 = -1;               /* CSI_MeasConfig */
2115 static int hf_nr_rrc_sCellDeactivationTimer = -1;  /* T_sCellDeactivationTimer */
2116 static int hf_nr_rrc_crossCarrierSchedulingConfig = -1;  /* CrossCarrierSchedulingConfig */
2117 static int hf_nr_rrc_tag_Id = -1;                 /* TAG_Id */
2118 static int hf_nr_rrc_ue_BeamLockFunction = -1;    /* T_ue_BeamLockFunction */
2119 static int hf_nr_rrc_pathlossReferenceLinking = -1;  /* T_pathlossReferenceLinking */
2120 static int hf_nr_rrc_servingCellMO = -1;          /* MeasObjectId */
2121 static int hf_nr_rrc_initialUplinkBWP = -1;       /* BWP_UplinkDedicated */
2122 static int hf_nr_rrc_uplinkBWP_ToReleaseList = -1;  /* SEQUENCE_SIZE_1_maxNrofBWPs_OF_BWP_Id */
2123 static int hf_nr_rrc_uplinkBWP_ToReleaseList_item = -1;  /* BWP_Id */
2124 static int hf_nr_rrc_uplinkBWP_ToAddModList = -1;  /* SEQUENCE_SIZE_1_maxNrofBWPs_OF_BWP_Uplink */
2125 static int hf_nr_rrc_uplinkBWP_ToAddModList_item = -1;  /* BWP_Uplink */
2126 static int hf_nr_rrc_firstActiveUplinkBWP_Id = -1;  /* BWP_Id */
2127 static int hf_nr_rrc_pusch_ServingCellConfig = -1;  /* T_pusch_ServingCellConfig */
2128 static int hf_nr_rrc_setup_46 = -1;               /* PUSCH_ServingCellConfig */
2129 static int hf_nr_rrc_carrierSwitching = -1;       /* T_carrierSwitching */
2130 static int hf_nr_rrc_setup_47 = -1;               /* SRS_CarrierSwitching */
2131 static int hf_nr_rrc_downlinkConfigCommon = -1;   /* DownlinkConfigCommon */
2132 static int hf_nr_rrc_uplinkConfigCommon = -1;     /* UplinkConfigCommon */
2133 static int hf_nr_rrc_supplementaryUplinkConfig = -1;  /* UplinkConfigCommon */
2134 static int hf_nr_rrc_n_TimingAdvanceOffset = -1;  /* T_n_TimingAdvanceOffset */
2135 static int hf_nr_rrc_ssb_PositionsInBurst = -1;   /* T_ssb_PositionsInBurst */
2136 static int hf_nr_rrc_shortBitmap = -1;            /* BIT_STRING_SIZE_4 */
2137 static int hf_nr_rrc_mediumBitmap = -1;           /* BIT_STRING_SIZE_8 */
2138 static int hf_nr_rrc_longBitmap = -1;             /* BIT_STRING_SIZE_64 */
2139 static int hf_nr_rrc_ssb_periodicityServingCell = -1;  /* T_ssb_periodicityServingCell */
2140 static int hf_nr_rrc_dmrs_TypeA_Position_01 = -1;  /* T_dmrs_TypeA_Position_01 */
2141 static int hf_nr_rrc_lte_CRS_ToMatchAround = -1;  /* T_lte_CRS_ToMatchAround */
2142 static int hf_nr_rrc_setup_48 = -1;               /* RateMatchPatternLTE_CRS */
2143 static int hf_nr_rrc_tdd_UL_DL_ConfigurationCommon = -1;  /* TDD_UL_DL_ConfigCommon */
2144 static int hf_nr_rrc_ss_PBCH_BlockPower = -1;     /* INTEGER_M60_50 */
2145 static int hf_nr_rrc_downlinkConfigCommon_01 = -1;  /* DownlinkConfigCommonSIB */
2146 static int hf_nr_rrc_uplinkConfigCommon_01 = -1;  /* UplinkConfigCommonSIB */
2147 static int hf_nr_rrc_supplementaryUplink_02 = -1;  /* UplinkConfigCommonSIB */
2148 static int hf_nr_rrc_n_TimingAdvanceOffset_01 = -1;  /* T_n_TimingAdvanceOffset_01 */
2149 static int hf_nr_rrc_ssb_PositionsInBurst_01 = -1;  /* T_ssb_PositionsInBurst_01 */
2150 static int hf_nr_rrc_inOneGroup = -1;             /* BIT_STRING_SIZE_8 */
2151 static int hf_nr_rrc_groupPresence = -1;          /* BIT_STRING_SIZE_8 */
2152 static int hf_nr_rrc_ssb_PeriodicityServingCell = -1;  /* T_ssb_PeriodicityServingCell */
2153 static int hf_nr_rrc_schedulingInfoList = -1;     /* SEQUENCE_SIZE_1_maxSI_Message_OF_SchedulingInfo */
2154 static int hf_nr_rrc_schedulingInfoList_item = -1;  /* SchedulingInfo */
2155 static int hf_nr_rrc_si_WindowLength = -1;        /* T_si_WindowLength */
2156 static int hf_nr_rrc_si_RequestConfig = -1;       /* SI_RequestConfig */
2157 static int hf_nr_rrc_si_RequestConfigSUL = -1;    /* SI_RequestConfig */
2158 static int hf_nr_rrc_systemInformationAreaID = -1;  /* BIT_STRING_SIZE_24 */
2159 static int hf_nr_rrc_si_BroadcastStatus = -1;     /* T_si_BroadcastStatus */
2160 static int hf_nr_rrc_si_Periodicity = -1;         /* T_si_Periodicity */
2161 static int hf_nr_rrc_sib_MappingInfo = -1;        /* SIB_Mapping */
2162 static int hf_nr_rrc_SIB_Mapping_item = -1;       /* SIB_TypeInfo */
2163 static int hf_nr_rrc_type = -1;                   /* T_type */
2164 static int hf_nr_rrc_valueTag = -1;               /* INTEGER_0_31 */
2165 static int hf_nr_rrc_areaScope = -1;              /* T_areaScope */
2166 static int hf_nr_rrc_rach_OccasionsSI = -1;       /* T_rach_OccasionsSI */
2167 static int hf_nr_rrc_rach_ConfigSI = -1;          /* RACH_ConfigGeneric */
2168 static int hf_nr_rrc_ssb_perRACH_Occasion_02 = -1;  /* T_ssb_perRACH_Occasion_02 */
2169 static int hf_nr_rrc_si_RequestPeriod = -1;       /* T_si_RequestPeriod */
2170 static int hf_nr_rrc_si_RequestResources = -1;    /* SEQUENCE_SIZE_1_maxSI_Message_OF_SI_RequestResources */
2171 static int hf_nr_rrc_si_RequestResources_item = -1;  /* SI_RequestResources */
2172 static int hf_nr_rrc_ra_PreambleStartIndex = -1;  /* INTEGER_0_63 */
2173 static int hf_nr_rrc_ra_AssociationPeriodIndex = -1;  /* INTEGER_0_15 */
2174 static int hf_nr_rrc_subcarrierSpacing2 = -1;     /* SubcarrierSpacing */
2175 static int hf_nr_rrc_slotFormatCombinations = -1;  /* SEQUENCE_SIZE_1_maxNrofSlotFormatCombinationsPerSet_OF_SlotFormatCombination */
2176 static int hf_nr_rrc_slotFormatCombinations_item = -1;  /* SlotFormatCombination */
2177 static int hf_nr_rrc_positionInDCI_01 = -1;       /* INTEGER_0_maxSFI_DCI_PayloadSize_1 */
2178 static int hf_nr_rrc_slotFormatCombinationId = -1;  /* SlotFormatCombinationId */
2179 static int hf_nr_rrc_slotFormats = -1;            /* T_slotFormats */
2180 static int hf_nr_rrc_slotFormats_item = -1;       /* INTEGER_0_255 */
2181 static int hf_nr_rrc_sfi_RNTI = -1;               /* RNTI_Value */
2182 static int hf_nr_rrc_dci_PayloadSize_01 = -1;     /* INTEGER_1_maxSFI_DCI_PayloadSize */
2183 static int hf_nr_rrc_slotFormatCombToAddModList = -1;  /* SEQUENCE_SIZE_1_maxNrofAggregatedCellsPerCellGroup_OF_SlotFormatCombinationsPerCell */
2184 static int hf_nr_rrc_slotFormatCombToAddModList_item = -1;  /* SlotFormatCombinationsPerCell */
2185 static int hf_nr_rrc_slotFormatCombToReleaseList = -1;  /* SEQUENCE_SIZE_1_maxNrofAggregatedCellsPerCellGroup_OF_ServCellIndex */
2186 static int hf_nr_rrc_slotFormatCombToReleaseList_item = -1;  /* ServCellIndex */
2187 static int hf_nr_rrc_sst = -1;                    /* BIT_STRING_SIZE_8 */
2188 static int hf_nr_rrc_sst_SD = -1;                 /* BIT_STRING_SIZE_32 */
2189 static int hf_nr_rrc_sf_Medium_01 = -1;           /* T_sf_Medium_01 */
2190 static int hf_nr_rrc_sf_High_01 = -1;             /* T_sf_High_01 */
2191 static int hf_nr_rrc_measurementSlots = -1;       /* BIT_STRING_SIZE_1_80 */
2192 static int hf_nr_rrc_endSymbol = -1;              /* INTEGER_0_3 */
2193 static int hf_nr_rrc_periodicity_01 = -1;         /* T_periodicity_01 */
2194 static int hf_nr_rrc_nrofHARQ_Processes_01 = -1;  /* INTEGER_1_8 */
2195 static int hf_nr_rrc_n1PUCCH_AN = -1;             /* PUCCH_ResourceId */
2196 static int hf_nr_rrc_mcs_Table_03 = -1;           /* T_mcs_Table_03 */
2197 static int hf_nr_rrc_srs_SwitchFromServCellIndex = -1;  /* INTEGER_0_31 */
2198 static int hf_nr_rrc_srs_SwitchFromCarrier = -1;  /* T_srs_SwitchFromCarrier */
2199 static int hf_nr_rrc_srs_TPC_PDCCH_Group = -1;    /* T_srs_TPC_PDCCH_Group */
2200 static int hf_nr_rrc_typeA = -1;                  /* SEQUENCE_SIZE_1_32_OF_SRS_TPC_PDCCH_Config */
2201 static int hf_nr_rrc_typeA_item = -1;             /* SRS_TPC_PDCCH_Config */
2202 static int hf_nr_rrc_typeB = -1;                  /* SRS_TPC_PDCCH_Config */
2203 static int hf_nr_rrc_monitoringCells = -1;        /* SEQUENCE_SIZE_1_maxNrofServingCells_OF_ServCellIndex */
2204 static int hf_nr_rrc_monitoringCells_item = -1;   /* ServCellIndex */
2205 static int hf_nr_rrc_srs_CC_SetIndexlist = -1;    /* SEQUENCE_SIZE_1_4_OF_SRS_CC_SetIndex */
2206 static int hf_nr_rrc_srs_CC_SetIndexlist_item = -1;  /* SRS_CC_SetIndex */
2207 static int hf_nr_rrc_cc_SetIndex = -1;            /* INTEGER_0_3 */
2208 static int hf_nr_rrc_cc_IndexInOneCC_Set = -1;    /* INTEGER_0_7 */
2209 static int hf_nr_rrc_srs_ResourceSetToReleaseList = -1;  /* SEQUENCE_SIZE_1_maxNrofSRS_ResourceSets_OF_SRS_ResourceSetId */
2210 static int hf_nr_rrc_srs_ResourceSetToReleaseList_item = -1;  /* SRS_ResourceSetId */
2211 static int hf_nr_rrc_srs_ResourceSetToAddModList = -1;  /* SEQUENCE_SIZE_1_maxNrofSRS_ResourceSets_OF_SRS_ResourceSet */
2212 static int hf_nr_rrc_srs_ResourceSetToAddModList_item = -1;  /* SRS_ResourceSet */
2213 static int hf_nr_rrc_srs_ResourceToReleaseList = -1;  /* SEQUENCE_SIZE_1_maxNrofSRS_Resources_OF_SRS_ResourceId */
2214 static int hf_nr_rrc_srs_ResourceToReleaseList_item = -1;  /* SRS_ResourceId */
2215 static int hf_nr_rrc_srs_ResourceToAddModList = -1;  /* SEQUENCE_SIZE_1_maxNrofSRS_Resources_OF_SRS_Resource */
2216 static int hf_nr_rrc_srs_ResourceToAddModList_item = -1;  /* SRS_Resource */
2217 static int hf_nr_rrc_tpc_Accumulation_01 = -1;    /* T_tpc_Accumulation_01 */
2218 static int hf_nr_rrc_srs_ResourceSetId = -1;      /* SRS_ResourceSetId */
2219 static int hf_nr_rrc_srs_ResourceIdList = -1;     /* SEQUENCE_SIZE_1_maxNrofSRS_ResourcesPerSet_OF_SRS_ResourceId */
2220 static int hf_nr_rrc_srs_ResourceIdList_item = -1;  /* SRS_ResourceId */
2221 static int hf_nr_rrc_resourceType_01 = -1;        /* T_resourceType_01 */
2222 static int hf_nr_rrc_aperiodic_01 = -1;           /* T_aperiodic_01 */
2223 static int hf_nr_rrc_aperiodicSRS_ResourceTrigger = -1;  /* INTEGER_1_maxNrofSRS_TriggerStates_1 */
2224 static int hf_nr_rrc_slotOffset = -1;             /* INTEGER_1_32 */
2225 static int hf_nr_rrc_aperiodicSRS_ResourceTriggerList_v1530 = -1;  /* T_aperiodicSRS_ResourceTriggerList_v1530 */
2226 static int hf_nr_rrc_aperiodicSRS_ResourceTriggerList_v1530_item = -1;  /* INTEGER_1_maxNrofSRS_TriggerStates_1 */
2227 static int hf_nr_rrc_semi_persistent = -1;        /* T_semi_persistent */
2228 static int hf_nr_rrc_associatedCSI_RS = -1;       /* NZP_CSI_RS_ResourceId */
2229 static int hf_nr_rrc_periodic_01 = -1;            /* T_periodic_01 */
2230 static int hf_nr_rrc_usage = -1;                  /* T_usage */
2231 static int hf_nr_rrc_p0_01 = -1;                  /* INTEGER_M202_24 */
2232 static int hf_nr_rrc_pathlossReferenceRS = -1;    /* T_pathlossReferenceRS */
2233 static int hf_nr_rrc_srs_PowerControlAdjustmentStates = -1;  /* T_srs_PowerControlAdjustmentStates */
2234 static int hf_nr_rrc_srs_ResourceId = -1;         /* SRS_ResourceId */
2235 static int hf_nr_rrc_nrofSRS_Ports = -1;          /* T_nrofSRS_Ports */
2236 static int hf_nr_rrc_ptrs_PortIndex = -1;         /* T_ptrs_PortIndex */
2237 static int hf_nr_rrc_transmissionComb = -1;       /* T_transmissionComb */
2238 static int hf_nr_rrc_n2_01 = -1;                  /* T_n2 */
2239 static int hf_nr_rrc_combOffset_n2 = -1;          /* INTEGER_0_1 */
2240 static int hf_nr_rrc_cyclicShift_n2 = -1;         /* INTEGER_0_7 */
2241 static int hf_nr_rrc_n4_01 = -1;                  /* T_n4 */
2242 static int hf_nr_rrc_combOffset_n4 = -1;          /* INTEGER_0_3 */
2243 static int hf_nr_rrc_cyclicShift_n4 = -1;         /* INTEGER_0_11 */
2244 static int hf_nr_rrc_resourceMapping_01 = -1;     /* T_resourceMapping */
2245 static int hf_nr_rrc_startPosition = -1;          /* INTEGER_0_5 */
2246 static int hf_nr_rrc_nrofSymbols_02 = -1;         /* T_nrofSymbols */
2247 static int hf_nr_rrc_repetitionFactor = -1;       /* T_repetitionFactor */
2248 static int hf_nr_rrc_freqDomainPosition = -1;     /* INTEGER_0_67 */
2249 static int hf_nr_rrc_freqDomainShift = -1;        /* INTEGER_0_268 */
2250 static int hf_nr_rrc_freqHopping = -1;            /* T_freqHopping */
2251 static int hf_nr_rrc_c_SRS = -1;                  /* INTEGER_0_63 */
2252 static int hf_nr_rrc_b_SRS = -1;                  /* INTEGER_0_3 */
2253 static int hf_nr_rrc_b_hop = -1;                  /* INTEGER_0_3 */
2254 static int hf_nr_rrc_groupOrSequenceHopping = -1;  /* T_groupOrSequenceHopping */
2255 static int hf_nr_rrc_resourceType_02 = -1;        /* T_resourceType_02 */
2256 static int hf_nr_rrc_aperiodic_02 = -1;           /* T_aperiodic_02 */
2257 static int hf_nr_rrc_semi_persistent_01 = -1;     /* T_semi_persistent_01 */
2258 static int hf_nr_rrc_periodicityAndOffset_sp = -1;  /* SRS_PeriodicityAndOffset */
2259 static int hf_nr_rrc_periodic_02 = -1;            /* T_periodic_02 */
2260 static int hf_nr_rrc_periodicityAndOffset_p = -1;  /* SRS_PeriodicityAndOffset */
2261 static int hf_nr_rrc_sequenceId = -1;             /* INTEGER_0_1023 */
2262 static int hf_nr_rrc_spatialRelationInfo = -1;    /* SRS_SpatialRelationInfo */
2263 static int hf_nr_rrc_referenceSignal_03 = -1;     /* T_referenceSignal_03 */
2264 static int hf_nr_rrc_srs_01 = -1;                 /* T_srs_01 */
2265 static int hf_nr_rrc_resourceId = -1;             /* SRS_ResourceId */
2266 static int hf_nr_rrc_sl32 = -1;                   /* INTEGER_0_31 */
2267 static int hf_nr_rrc_sl64 = -1;                   /* INTEGER_0_63 */
2268 static int hf_nr_rrc_startingBitOfFormat2_3 = -1;  /* INTEGER_1_31 */
2269 static int hf_nr_rrc_fieldTypeFormat2_3 = -1;     /* INTEGER_0_1 */
2270 static int hf_nr_rrc_startingBitOfFormat2_3SUL_v1530 = -1;  /* INTEGER_1_31 */
2271 static int hf_nr_rrc_periodicityAndOffset_02 = -1;  /* T_periodicityAndOffset_01 */
2272 static int hf_nr_rrc_sf5 = -1;                    /* INTEGER_0_4 */
2273 static int hf_nr_rrc_sf10 = -1;                   /* INTEGER_0_9 */
2274 static int hf_nr_rrc_sf20 = -1;                   /* INTEGER_0_19 */
2275 static int hf_nr_rrc_sf40 = -1;                   /* INTEGER_0_39 */
2276 static int hf_nr_rrc_sf80 = -1;                   /* INTEGER_0_79 */
2277 static int hf_nr_rrc_sf160 = -1;                  /* INTEGER_0_159 */
2278 static int hf_nr_rrc_duration_02 = -1;            /* T_duration */
2279 static int hf_nr_rrc_pci_List = -1;               /* SEQUENCE_SIZE_1_maxNrofPCIsPerSMTC_OF_PhysCellId */
2280 static int hf_nr_rrc_pci_List_item = -1;          /* PhysCellId */
2281 static int hf_nr_rrc_periodicity_02 = -1;         /* T_periodicity_02 */
2282 static int hf_nr_rrc_tag_ToReleaseList = -1;      /* SEQUENCE_SIZE_1_maxNrofTAGs_OF_TAG_Id */
2283 static int hf_nr_rrc_tag_ToReleaseList_item = -1;  /* TAG_Id */
2284 static int hf_nr_rrc_tag_ToAddModList = -1;       /* SEQUENCE_SIZE_1_maxNrofTAGs_OF_TAG */
2285 static int hf_nr_rrc_tag_ToAddModList_item = -1;  /* TAG */
2286 static int hf_nr_rrc_timeAlignmentTimer = -1;     /* TimeAlignmentTimer */
2287 static int hf_nr_rrc_tci_StateId = -1;            /* TCI_StateId */
2288 static int hf_nr_rrc_qcl_Type1 = -1;              /* QCL_Info */
2289 static int hf_nr_rrc_qcl_Type2 = -1;              /* QCL_Info */
2290 static int hf_nr_rrc_cell = -1;                   /* ServCellIndex */
2291 static int hf_nr_rrc_referenceSignal_04 = -1;     /* T_referenceSignal_04 */
2292 static int hf_nr_rrc_csi_rs = -1;                 /* NZP_CSI_RS_ResourceId */
2293 static int hf_nr_rrc_qcl_Type = -1;               /* T_qcl_Type */
2294 static int hf_nr_rrc_referenceSubcarrierSpacing = -1;  /* SubcarrierSpacing */
2295 static int hf_nr_rrc_pattern1_01 = -1;            /* TDD_UL_DL_Pattern */
2296 static int hf_nr_rrc_pattern2 = -1;               /* TDD_UL_DL_Pattern */
2297 static int hf_nr_rrc_dl_UL_TransmissionPeriodicity = -1;  /* T_dl_UL_TransmissionPeriodicity */
2298 static int hf_nr_rrc_nrofDownlinkSlots = -1;      /* INTEGER_0_maxNrofSlots */
2299 static int hf_nr_rrc_nrofDownlinkSymbols = -1;    /* INTEGER_0_maxNrofSymbols_1 */
2300 static int hf_nr_rrc_nrofUplinkSlots = -1;        /* INTEGER_0_maxNrofSlots */
2301 static int hf_nr_rrc_nrofUplinkSymbols = -1;      /* INTEGER_0_maxNrofSymbols_1 */
2302 static int hf_nr_rrc_dl_UL_TransmissionPeriodicity_v1530 = -1;  /* T_dl_UL_TransmissionPeriodicity_v1530 */
2303 static int hf_nr_rrc_slotSpecificConfigurationsToAddModList = -1;  /* SEQUENCE_SIZE_1_maxNrofSlots_OF_TDD_UL_DL_SlotConfig */
2304 static int hf_nr_rrc_slotSpecificConfigurationsToAddModList_item = -1;  /* TDD_UL_DL_SlotConfig */
2305 static int hf_nr_rrc_slotSpecificConfigurationsToreleaseList = -1;  /* SEQUENCE_SIZE_1_maxNrofSlots_OF_TDD_UL_DL_SlotIndex */
2306 static int hf_nr_rrc_slotSpecificConfigurationsToreleaseList_item = -1;  /* TDD_UL_DL_SlotIndex */
2307 static int hf_nr_rrc_slotIndex = -1;              /* TDD_UL_DL_SlotIndex */
2308 static int hf_nr_rrc_symbols = -1;                /* T_symbols */
2309 static int hf_nr_rrc_allDownlink = -1;            /* NULL */
2310 static int hf_nr_rrc_allUplink = -1;              /* NULL */
2311 static int hf_nr_rrc_explicit = -1;               /* T_explicit */
2312 static int hf_nr_rrc_nrofDownlinkSymbols_01 = -1;  /* INTEGER_1_maxNrofSymbols_1 */
2313 static int hf_nr_rrc_nrofUplinkSymbols_01 = -1;   /* INTEGER_1_maxNrofSymbols_1 */
2314 static int hf_nr_rrc_UAC_BarringInfoSetList_item = -1;  /* UAC_BarringInfoSet */
2315 static int hf_nr_rrc_uac_BarringFactor = -1;      /* T_uac_BarringFactor */
2316 static int hf_nr_rrc_uac_BarringTime = -1;        /* T_uac_BarringTime */
2317 static int hf_nr_rrc_uac_BarringForAccessIdentity = -1;  /* BIT_STRING_SIZE_7 */
2318 static int hf_nr_rrc_UAC_BarringPerCatList_item = -1;  /* UAC_BarringPerCat */
2319 static int hf_nr_rrc_accessCategory = -1;         /* INTEGER_1_maxAccessCat_1 */
2320 static int hf_nr_rrc_uac_barringInfoSetIndex = -1;  /* UAC_BarringInfoSetIndex */
2321 static int hf_nr_rrc_UAC_BarringPerPLMN_List_item = -1;  /* UAC_BarringPerPLMN */
2322 static int hf_nr_rrc_plmn_IdentityIndex = -1;     /* INTEGER_1_maxPLMN */
2323 static int hf_nr_rrc_uac_ACBarringListType = -1;  /* T_uac_ACBarringListType */
2324 static int hf_nr_rrc_uac_ImplicitACBarringList = -1;  /* SEQUENCE_SIZE_maxAccessCat_1_OF_UAC_BarringInfoSetIndex */
2325 static int hf_nr_rrc_uac_ImplicitACBarringList_item = -1;  /* UAC_BarringInfoSetIndex */
2326 static int hf_nr_rrc_uac_ExplicitACBarringList = -1;  /* UAC_BarringPerCatList */
2327 static int hf_nr_rrc_t300 = -1;                   /* T_t300 */
2328 static int hf_nr_rrc_t301 = -1;                   /* T_t301 */
2329 static int hf_nr_rrc_t310_01 = -1;                /* T_t310_01 */
2330 static int hf_nr_rrc_n310_01 = -1;                /* T_n310_01 */
2331 static int hf_nr_rrc_t311 = -1;                   /* T_t311 */
2332 static int hf_nr_rrc_n311_01 = -1;                /* T_n311_01 */
2333 static int hf_nr_rrc_t319 = -1;                   /* T_t319 */
2334 static int hf_nr_rrc_frequencyInfoUL = -1;        /* FrequencyInfoUL */
2335 static int hf_nr_rrc_initialUplinkBWP_01 = -1;    /* BWP_UplinkCommon */
2336 static int hf_nr_rrc_dummy_02 = -1;               /* TimeAlignmentTimer */
2337 static int hf_nr_rrc_frequencyInfoUL_01 = -1;     /* FrequencyInfoUL_SIB */
2338 static int hf_nr_rrc_timeAlignmentTimerCommon = -1;  /* TimeAlignmentTimer */
2339 static int hf_nr_rrc_UplinkTxDirectCurrentList_item = -1;  /* UplinkTxDirectCurrentCell */
2340 static int hf_nr_rrc_uplinkDirectCurrentBWP = -1;  /* SEQUENCE_SIZE_1_maxNrofBWPs_OF_UplinkTxDirectCurrentBWP */
2341 static int hf_nr_rrc_uplinkDirectCurrentBWP_item = -1;  /* UplinkTxDirectCurrentBWP */
2342 static int hf_nr_rrc_shift7dot5kHz = -1;          /* BOOLEAN */
2343 static int hf_nr_rrc_txDirectCurrentLocation = -1;  /* INTEGER_0_3301 */
2344 static int hf_nr_rrc_zp_CSI_RS_ResourceId = -1;   /* ZP_CSI_RS_ResourceId */
2345 static int hf_nr_rrc_zp_CSI_RS_ResourceSetId = -1;  /* ZP_CSI_RS_ResourceSetId */
2346 static int hf_nr_rrc_zp_CSI_RS_ResourceIdList = -1;  /* SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourcesPerSet_OF_ZP_CSI_RS_ResourceId */
2347 static int hf_nr_rrc_zp_CSI_RS_ResourceIdList_item = -1;  /* ZP_CSI_RS_ResourceId */
2348 static int hf_nr_rrc_BandCombinationList_item = -1;  /* BandCombination */
2349 static int hf_nr_rrc_bandList = -1;               /* SEQUENCE_SIZE_1_maxSimultaneousBands_OF_BandParameters */
2350 static int hf_nr_rrc_bandList_item = -1;          /* BandParameters */
2351 static int hf_nr_rrc_featureSetCombination = -1;  /* FeatureSetCombinationId */
2352 static int hf_nr_rrc_ca_ParametersEUTRA = -1;     /* CA_ParametersEUTRA */
2353 static int hf_nr_rrc_ca_ParametersNR = -1;        /* CA_ParametersNR */
2354 static int hf_nr_rrc_mrdc_Parameters = -1;        /* MRDC_Parameters */
2355 static int hf_nr_rrc_supportedBandwidthCombinationSet = -1;  /* BIT_STRING_SIZE_1_32 */
2356 static int hf_nr_rrc_powerClass_v1530 = -1;       /* T_powerClass_v1530 */
2357 static int hf_nr_rrc_eutra_01 = -1;               /* T_eutra */
2358 static int hf_nr_rrc_bandEUTRA = -1;              /* FreqBandIndicatorEUTRA */
2359 static int hf_nr_rrc_ca_BandwidthClassDL_EUTRA = -1;  /* CA_BandwidthClassEUTRA */
2360 static int hf_nr_rrc_ca_BandwidthClassUL_EUTRA = -1;  /* CA_BandwidthClassEUTRA */
2361 static int hf_nr_rrc_nr_01 = -1;                  /* T_nr */
2362 static int hf_nr_rrc_bandNR = -1;                 /* FreqBandIndicatorNR */
2363 static int hf_nr_rrc_ca_BandwidthClassDL_NR = -1;  /* CA_BandwidthClassNR */
2364 static int hf_nr_rrc_ca_BandwidthClassUL_NR = -1;  /* CA_BandwidthClassNR */
2365 static int hf_nr_rrc_multipleTimingAdvance = -1;  /* T_multipleTimingAdvance */
2366 static int hf_nr_rrc_simultaneousRx_Tx = -1;      /* T_simultaneousRx_Tx */
2367 static int hf_nr_rrc_supportedNAICS_2CRS_AP = -1;  /* BIT_STRING_SIZE_1_8 */
2368 static int hf_nr_rrc_additionalRx_Tx_PerformanceReq = -1;  /* T_additionalRx_Tx_PerformanceReq */
2369 static int hf_nr_rrc_ue_CA_PowerClass_N = -1;     /* T_ue_CA_PowerClass_N */
2370 static int hf_nr_rrc_supportedBandwidthCombinationSetEUTRA_v1530 = -1;  /* BIT_STRING_SIZE_1_32 */
2371 static int hf_nr_rrc_multipleTimingAdvances = -1;  /* T_multipleTimingAdvances */
2372 static int hf_nr_rrc_parallelTxSRS_PUCCH_PUSCH = -1;  /* T_parallelTxSRS_PUCCH_PUSCH */
2373 static int hf_nr_rrc_parallelTxPRACH_SRS_PUCCH_PUSCH = -1;  /* T_parallelTxPRACH_SRS_PUCCH_PUSCH */
2374 static int hf_nr_rrc_simultaneousRxTxInterBandCA = -1;  /* T_simultaneousRxTxInterBandCA */
2375 static int hf_nr_rrc_simultaneousRxTxSUL = -1;    /* T_simultaneousRxTxSUL */
2376 static int hf_nr_rrc_diffNumerologyAcrossPUCCH_Group = -1;  /* T_diffNumerologyAcrossPUCCH_Group */
2377 static int hf_nr_rrc_diffNumerologyWithinPUCCH_Group = -1;  /* T_diffNumerologyWithinPUCCH_Group */
2378 static int hf_nr_rrc_supportedNumberTAG = -1;     /* T_supportedNumberTAG */
2379 static int hf_nr_rrc_FeatureSetCombination_item = -1;  /* FeatureSetsPerBand */
2380 static int hf_nr_rrc_FeatureSetsPerBand_item = -1;  /* FeatureSet */
2381 static int hf_nr_rrc_eutra_02 = -1;               /* T_eutra_01 */
2382 static int hf_nr_rrc_downlinkSetEUTRA = -1;       /* FeatureSetEUTRA_DownlinkId */
2383 static int hf_nr_rrc_uplinkSetEUTRA = -1;         /* FeatureSetEUTRA_UplinkId */
2384 static int hf_nr_rrc_nr_02 = -1;                  /* T_nr_01 */
2385 static int hf_nr_rrc_downlinkSetNR = -1;          /* FeatureSetDownlinkId */
2386 static int hf_nr_rrc_uplinkSetNR = -1;            /* FeatureSetUplinkId */
2387 static int hf_nr_rrc_featureSetListPerDownlinkCC = -1;  /* SEQUENCE_SIZE_1_maxNrofServingCells_OF_FeatureSetDownlinkPerCC_Id */
2388 static int hf_nr_rrc_featureSetListPerDownlinkCC_item = -1;  /* FeatureSetDownlinkPerCC_Id */
2389 static int hf_nr_rrc_intraBandFreqSeparationDL = -1;  /* FreqSeparationClass */
2390 static int hf_nr_rrc_scalingFactor = -1;          /* T_scalingFactor */
2391 static int hf_nr_rrc_crossCarrierScheduling_OtherSCS = -1;  /* T_crossCarrierScheduling_OtherSCS */
2392 static int hf_nr_rrc_scellWithoutSSB = -1;        /* T_scellWithoutSSB */
2393 static int hf_nr_rrc_csi_RS_MeasSCellWithoutSSB = -1;  /* T_csi_RS_MeasSCellWithoutSSB */
2394 static int hf_nr_rrc_srs_AssocCSI_RS = -1;        /* T_srs_AssocCSI_RS */
2395 static int hf_nr_rrc_type1_3_CSS = -1;            /* T_type1_3_CSS */
2396 static int hf_nr_rrc_pdcch_MonitoringAnyOccasions = -1;  /* T_pdcch_MonitoringAnyOccasions */
2397 static int hf_nr_rrc_pdcch_MonitoringAnyOccasionsWithSpanGap = -1;  /* T_pdcch_MonitoringAnyOccasionsWithSpanGap */
2398 static int hf_nr_rrc_ue_SpecificUL_DL_Assignment = -1;  /* T_ue_SpecificUL_DL_Assignment */
2399 static int hf_nr_rrc_searchSpaceSharingCA_DL = -1;  /* T_searchSpaceSharingCA_DL */
2400 static int hf_nr_rrc_timeDurationForQCL = -1;     /* T_timeDurationForQCL */
2401 static int hf_nr_rrc_scs_60kHz = -1;              /* T_scs_60kHz */
2402 static int hf_nr_rrc_sch_120kHz = -1;             /* T_sch_120kHz */
2403 static int hf_nr_rrc_pdsch_DifferentTB_PerSlot = -1;  /* T_pdsch_DifferentTB_PerSlot */
2404 static int hf_nr_rrc_scs_15kHz = -1;              /* T_scs_15kHz */
2405 static int hf_nr_rrc_scs_30kHz = -1;              /* T_scs_30kHz */
2406 static int hf_nr_rrc_scs_60kHz_01 = -1;           /* T_scs_60kHz_01 */
2407 static int hf_nr_rrc_scs_120kHz = -1;             /* T_scs_120kHz */
2408 static int hf_nr_rrc_csi_RS_IM_ReceptionForFeedback = -1;  /* CSI_RS_IM_ReceptionForFeedback */
2409 static int hf_nr_rrc_typeI_SinglePanelCodebookList = -1;  /* SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeI_SinglePanelCodebook */
2410 static int hf_nr_rrc_typeI_SinglePanelCodebookList_item = -1;  /* TypeI_SinglePanelCodebook */
2411 static int hf_nr_rrc_typeI_MultiPanelCodebookList = -1;  /* SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeI_MultiPanelCodebook */
2412 static int hf_nr_rrc_typeI_MultiPanelCodebookList_item = -1;  /* TypeI_MultiPanelCodebook */
2413 static int hf_nr_rrc_typeII_CodebookList = -1;    /* SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeII_Codebook */
2414 static int hf_nr_rrc_typeII_CodebookList_item = -1;  /* TypeII_Codebook */
2415 static int hf_nr_rrc_typeII_CodebookPortSelectionList = -1;  /* SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeII_CodebookPortSelection */
2416 static int hf_nr_rrc_typeII_CodebookPortSelectionList_item = -1;  /* TypeII_CodebookPortSelection */
2417 static int hf_nr_rrc_maxNumberNZP_CSI_RS_PerCC = -1;  /* INTEGER_1_32 */
2418 static int hf_nr_rrc_maxNumberPortsAcrossNZP_CSI_RS_PerCC = -1;  /* T_maxNumberPortsAcrossNZP_CSI_RS_PerCC */
2419 static int hf_nr_rrc_maxNumberCS_IM_PerCC = -1;   /* T_maxNumberCS_IM_PerCC */
2420 static int hf_nr_rrc_maxNumberSimultaneousCSI_RS_ActBWP_AllCC = -1;  /* T_maxNumberSimultaneousCSI_RS_ActBWP_AllCC */
2421 static int hf_nr_rrc_totalNumberPortsSimultaneousCSI_RS_ActBWP_AllCC = -1;  /* T_totalNumberPortsSimultaneousCSI_RS_ActBWP_AllCC */
2422 static int hf_nr_rrc_maxNumberTxPortsPerResource = -1;  /* T_maxNumberTxPortsPerResource */
2423 static int hf_nr_rrc_maxNumberResources = -1;     /* INTEGER_1_64 */
2424 static int hf_nr_rrc_totalNumberTxPorts = -1;     /* INTEGER_2_256 */
2425 static int hf_nr_rrc_supportedCodebookMode = -1;  /* T_supportedCodebookMode */
2426 static int hf_nr_rrc_maxNumberCSI_RS_PerResourceSet = -1;  /* INTEGER_1_8 */
2427 static int hf_nr_rrc_maxNumberTxPortsPerResource_01 = -1;  /* T_maxNumberTxPortsPerResource_01 */
2428 static int hf_nr_rrc_supportedCodebookMode_01 = -1;  /* T_supportedCodebookMode_01 */
2429 static int hf_nr_rrc_supportedNumberPanels = -1;  /* T_supportedNumberPanels */
2430 static int hf_nr_rrc_maxNumberTxPortsPerResource_02 = -1;  /* T_maxNumberTxPortsPerResource_02 */
2431 static int hf_nr_rrc_parameterLx = -1;            /* INTEGER_2_4 */
2432 static int hf_nr_rrc_amplitudeScalingType = -1;   /* T_amplitudeScalingType */
2433 static int hf_nr_rrc_amplitudeSubsetRestriction = -1;  /* T_amplitudeSubsetRestriction */
2434 static int hf_nr_rrc_maxNumberTxPortsPerResource_03 = -1;  /* T_maxNumberTxPortsPerResource_03 */
2435 static int hf_nr_rrc_amplitudeScalingType_01 = -1;  /* T_amplitudeScalingType_01 */
2436 static int hf_nr_rrc_supportedSubcarrierSpacingDL = -1;  /* SubcarrierSpacing */
2437 static int hf_nr_rrc_supportedBandwidthDL = -1;   /* SupportedBandwidth */
2438 static int hf_nr_rrc_channelBW_90mhz = -1;        /* T_channelBW_90mhz */
2439 static int hf_nr_rrc_maxNumberMIMO_LayersPDSCH = -1;  /* MIMO_LayersDL */
2440 static int hf_nr_rrc_supportedModulationOrderDL = -1;  /* ModulationOrder */
2441 static int hf_nr_rrc_featureSetsDownlink = -1;    /* SEQUENCE_SIZE_1_maxDownlinkFeatureSets_OF_FeatureSetDownlink */
2442 static int hf_nr_rrc_featureSetsDownlink_item = -1;  /* FeatureSetDownlink */
2443 static int hf_nr_rrc_featureSetsDownlinkPerCC = -1;  /* SEQUENCE_SIZE_1_maxPerCC_FeatureSets_OF_FeatureSetDownlinkPerCC */
2444 static int hf_nr_rrc_featureSetsDownlinkPerCC_item = -1;  /* FeatureSetDownlinkPerCC */
2445 static int hf_nr_rrc_featureSetsUplink = -1;      /* SEQUENCE_SIZE_1_maxUplinkFeatureSets_OF_FeatureSetUplink */
2446 static int hf_nr_rrc_featureSetsUplink_item = -1;  /* FeatureSetUplink */
2447 static int hf_nr_rrc_featureSetsUplinkPerCC = -1;  /* SEQUENCE_SIZE_1_maxPerCC_FeatureSets_OF_FeatureSetUplinkPerCC */
2448 static int hf_nr_rrc_featureSetsUplinkPerCC_item = -1;  /* FeatureSetUplinkPerCC */
2449 static int hf_nr_rrc_featureSetListPerUplinkCC = -1;  /* SEQUENCE_SIZE_1_maxNrofServingCells_OF_FeatureSetUplinkPerCC_Id */
2450 static int hf_nr_rrc_featureSetListPerUplinkCC_item = -1;  /* FeatureSetUplinkPerCC_Id */
2451 static int hf_nr_rrc_scalingFactor_01 = -1;       /* T_scalingFactor_01 */
2452 static int hf_nr_rrc_crossCarrierScheduling_OtherSCS_01 = -1;  /* T_crossCarrierScheduling_OtherSCS_01 */
2453 static int hf_nr_rrc_intraBandFreqSeparationUL = -1;  /* FreqSeparationClass */
2454 static int hf_nr_rrc_searchSpaceSharingCA_UL = -1;  /* T_searchSpaceSharingCA_UL */
2455 static int hf_nr_rrc_srs_TxSwitch = -1;           /* SRS_TxSwitch */
2456 static int hf_nr_rrc_supportedSRS_Resources = -1;  /* SRS_Resources */
2457 static int hf_nr_rrc_twoPUCCH_Group = -1;         /* T_twoPUCCH_Group */
2458 static int hf_nr_rrc_dynamicSwitchSUL = -1;       /* T_dynamicSwitchSUL */
2459 static int hf_nr_rrc_simultaneousTxSUL_NonSUL_v1530 = -1;  /* T_simultaneousTxSUL_NonSUL_v1530 */
2460 static int hf_nr_rrc_pusch_DifferentTB_PerSlot = -1;  /* T_pusch_DifferentTB_PerSlot */
2461 static int hf_nr_rrc_scs_15kHz_01 = -1;           /* T_scs_15kHz_01 */
2462 static int hf_nr_rrc_scs_30kHz_01 = -1;           /* T_scs_30kHz_01 */
2463 static int hf_nr_rrc_scs_60kHz_02 = -1;           /* T_scs_60kHz_02 */
2464 static int hf_nr_rrc_scs_120kHz_01 = -1;          /* T_scs_120kHz_01 */
2465 static int hf_nr_rrc_csi_ReportFramework = -1;    /* CSI_ReportFramework */
2466 static int hf_nr_rrc_maxNumberPeriodicCSI_ReportPerBWP = -1;  /* INTEGER_1_4 */
2467 static int hf_nr_rrc_maxNumberAperiodicCSI_ReportPerBWP = -1;  /* INTEGER_1_4 */
2468 static int hf_nr_rrc_maxNumberSemiPersistentCSI_ReportPerBWP = -1;  /* INTEGER_0_4 */
2469 static int hf_nr_rrc_simultaneousCSI_ReportsAllCC = -1;  /* INTEGER_5_32 */
2470 static int hf_nr_rrc_supportedSubcarrierSpacingUL = -1;  /* SubcarrierSpacing */
2471 static int hf_nr_rrc_supportedBandwidthUL = -1;   /* SupportedBandwidth */
2472 static int hf_nr_rrc_channelBW_90mhz_01 = -1;     /* T_channelBW_90mhz_01 */
2473 static int hf_nr_rrc_mimo_CB_PUSCH = -1;          /* T_mimo_CB_PUSCH */
2474 static int hf_nr_rrc_maxNumberMIMO_LayersCB_PUSCH = -1;  /* MIMO_LayersUL */
2475 static int hf_nr_rrc_maxNumberSRS_ResourcePerSet = -1;  /* INTEGER_1_2 */
2476 static int hf_nr_rrc_maxNumberMIMO_LayersNonCB_PUSCH = -1;  /* MIMO_LayersUL */
2477 static int hf_nr_rrc_supportedModulationOrderUL = -1;  /* ModulationOrder */
2478 static int hf_nr_rrc_FreqBandList_item = -1;      /* FreqBandInformation */
2479 static int hf_nr_rrc_bandInformationEUTRA = -1;   /* FreqBandInformationEUTRA */
2480 static int hf_nr_rrc_bandInformationNR = -1;      /* FreqBandInformationNR */
2481 static int hf_nr_rrc_maxBandwidthRequestedDL = -1;  /* AggregatedBandwidth */
2482 static int hf_nr_rrc_maxBandwidthRequestedUL = -1;  /* AggregatedBandwidth */
2483 static int hf_nr_rrc_maxCarriersRequestedDL = -1;  /* INTEGER_1_maxNrofServingCells */
2484 static int hf_nr_rrc_maxCarriersRequestedUL = -1;  /* INTEGER_1_maxNrofServingCells */
2485 static int hf_nr_rrc_eutra_03 = -1;               /* EUTRA_Parameters */
2486 static int hf_nr_rrc_supportedBandListEUTRA = -1;  /* SEQUENCE_SIZE_1_maxBandsEUTRA_OF_FreqBandIndicatorEUTRA */
2487 static int hf_nr_rrc_supportedBandListEUTRA_item = -1;  /* FreqBandIndicatorEUTRA */
2488 static int hf_nr_rrc_eutra_ParametersCommon = -1;  /* EUTRA_ParametersCommon */
2489 static int hf_nr_rrc_eutra_ParametersXDD_Diff = -1;  /* EUTRA_ParametersXDD_Diff */
2490 static int hf_nr_rrc_mfbi_EUTRA = -1;             /* T_mfbi_EUTRA */
2491 static int hf_nr_rrc_modifiedMRP_BehaviorEUTRA = -1;  /* BIT_STRING_SIZE_32 */
2492 static int hf_nr_rrc_multiNS_Pmax_EUTRA = -1;     /* T_multiNS_Pmax_EUTRA */
2493 static int hf_nr_rrc_rs_SINR_MeasEUTRA = -1;      /* T_rs_SINR_MeasEUTRA */
2494 static int hf_nr_rrc_rsrqMeasWidebandEUTRA = -1;  /* T_rsrqMeasWidebandEUTRA */
2495 static int hf_nr_rrc_mac_ParametersCommon = -1;   /* MAC_ParametersCommon */
2496 static int hf_nr_rrc_mac_ParametersXDD_Diff = -1;  /* MAC_ParametersXDD_Diff */
2497 static int hf_nr_rrc_lcp_Restriction = -1;        /* T_lcp_Restriction */
2498 static int hf_nr_rrc_pucch_SpatialRelInfoMAC_CE = -1;  /* T_pucch_SpatialRelInfoMAC_CE */
2499 static int hf_nr_rrc_lch_ToSCellRestriction = -1;  /* T_lch_ToSCellRestriction */
2500 static int hf_nr_rrc_recommendedBitRate = -1;     /* T_recommendedBitRate */
2501 static int hf_nr_rrc_recommendedBitRateQuery = -1;  /* T_recommendedBitRateQuery */
2502 static int hf_nr_rrc_skipUplinkTxDynamic_01 = -1;  /* T_skipUplinkTxDynamic */
2503 static int hf_nr_rrc_logicalChannelSR_DelayTimer_01 = -1;  /* T_logicalChannelSR_DelayTimer_01 */
2504 static int hf_nr_rrc_longDRX_Cycle = -1;          /* T_longDRX_Cycle */
2505 static int hf_nr_rrc_shortDRX_Cycle = -1;         /* T_shortDRX_Cycle */
2506 static int hf_nr_rrc_multipleSR_Configurations = -1;  /* T_multipleSR_Configurations */
2507 static int hf_nr_rrc_multipleConfiguredGrants = -1;  /* T_multipleConfiguredGrants */
2508 static int hf_nr_rrc_measAndMobParametersCommon = -1;  /* MeasAndMobParametersCommon */
2509 static int hf_nr_rrc_measAndMobParametersXDD_Diff = -1;  /* MeasAndMobParametersXDD_Diff */
2510 static int hf_nr_rrc_measAndMobParametersFRX_Diff = -1;  /* MeasAndMobParametersFRX_Diff */
2511 static int hf_nr_rrc_supportedGapPattern = -1;    /* BIT_STRING_SIZE_22 */
2512 static int hf_nr_rrc_ssb_RLM = -1;                /* T_ssb_RLM */
2513 static int hf_nr_rrc_ssb_AndCSI_RS_RLM = -1;      /* T_ssb_AndCSI_RS_RLM */
2514 static int hf_nr_rrc_eventB_MeasAndReport = -1;   /* T_eventB_MeasAndReport */
2515 static int hf_nr_rrc_handoverFDD_TDD = -1;        /* T_handoverFDD_TDD */
2516 static int hf_nr_rrc_eutra_CGI_Reporting = -1;    /* T_eutra_CGI_Reporting */
2517 static int hf_nr_rrc_nr_CGI_Reporting = -1;       /* T_nr_CGI_Reporting */
2518 static int hf_nr_rrc_intraAndInterF_MeasAndReport = -1;  /* T_intraAndInterF_MeasAndReport */
2519 static int hf_nr_rrc_eventA_MeasAndReport = -1;   /* T_eventA_MeasAndReport */
2520 static int hf_nr_rrc_handoverInterF = -1;         /* T_handoverInterF */
2521 static int hf_nr_rrc_handoverLTE = -1;            /* T_handoverLTE */
2522 static int hf_nr_rrc_handover_eLTE = -1;          /* T_handover_eLTE */
2523 static int hf_nr_rrc_ss_SINR_Meas = -1;           /* T_ss_SINR_Meas */
2524 static int hf_nr_rrc_csi_RSRP_AndRSRQ_MeasWithSSB = -1;  /* T_csi_RSRP_AndRSRQ_MeasWithSSB */
2525 static int hf_nr_rrc_csi_RSRP_AndRSRQ_MeasWithoutSSB = -1;  /* T_csi_RSRP_AndRSRQ_MeasWithoutSSB */
2526 static int hf_nr_rrc_csi_SINR_Meas = -1;          /* T_csi_SINR_Meas */
2527 static int hf_nr_rrc_csi_RS_RLM = -1;             /* T_csi_RS_RLM */
2528 static int hf_nr_rrc_handoverInterF_01 = -1;      /* T_handoverInterF_01 */
2529 static int hf_nr_rrc_handoverLTE_01 = -1;         /* T_handoverLTE_01 */
2530 static int hf_nr_rrc_handover_eLTE_01 = -1;       /* T_handover_eLTE_01 */
2531 static int hf_nr_rrc_measAndMobParametersMRDC_Common = -1;  /* MeasAndMobParametersMRDC_Common */
2532 static int hf_nr_rrc_measAndMobParametersMRDC_XDD_Diff = -1;  /* MeasAndMobParametersMRDC_XDD_Diff */
2533 static int hf_nr_rrc_measAndMobParametersMRDC_FRX_Diff = -1;  /* MeasAndMobParametersMRDC_FRX_Diff */
2534 static int hf_nr_rrc_independentGapConfig = -1;   /* T_independentGapConfig */
2535 static int hf_nr_rrc_sftd_MeasPSCell = -1;        /* T_sftd_MeasPSCell */
2536 static int hf_nr_rrc_sftd_MeasNR_Cell = -1;       /* T_sftd_MeasNR_Cell */
2537 static int hf_nr_rrc_simultaneousRxDataSSB_DiffNumerology = -1;  /* T_simultaneousRxDataSSB_DiffNumerology */
2538 static int hf_nr_rrc_tci_StatePDSCH = -1;         /* T_tci_StatePDSCH */
2539 static int hf_nr_rrc_maxNumberConfiguredTCIstatesPerCC = -1;  /* T_maxNumberConfiguredTCIstatesPerCC */
2540 static int hf_nr_rrc_maxNumberActiveTCI_PerBWP = -1;  /* T_maxNumberActiveTCI_PerBWP */
2541 static int hf_nr_rrc_additionalActiveTCI_StatePDCCH = -1;  /* T_additionalActiveTCI_StatePDCCH */
2542 static int hf_nr_rrc_pusch_TransCoherence = -1;   /* T_pusch_TransCoherence */
2543 static int hf_nr_rrc_beamCorrespondence = -1;     /* T_beamCorrespondence */
2544 static int hf_nr_rrc_periodicBeamReport = -1;     /* T_periodicBeamReport */
2545 static int hf_nr_rrc_aperiodicBeamReport = -1;    /* T_aperiodicBeamReport */
2546 static int hf_nr_rrc_sp_BeamReportPUCCH = -1;     /* T_sp_BeamReportPUCCH */
2547 static int hf_nr_rrc_sp_BeamReportPUSCH = -1;     /* T_sp_BeamReportPUSCH */
2548 static int hf_nr_rrc_beamManagementSSB_CSI_RS = -1;  /* BeamManagementSSB_CSI_RS */
2549 static int hf_nr_rrc_maxNumberRxBeam = -1;        /* INTEGER_2_8 */
2550 static int hf_nr_rrc_maxNumberRxTxBeamSwitchDL = -1;  /* T_maxNumberRxTxBeamSwitchDL */
2551 static int hf_nr_rrc_scs_15kHz_02 = -1;           /* T_scs_15kHz_02 */
2552 static int hf_nr_rrc_scs_30kHz_02 = -1;           /* T_scs_30kHz_02 */
2553 static int hf_nr_rrc_scs_60kHz_03 = -1;           /* T_scs_60kHz_03 */
2554 static int hf_nr_rrc_scs_120kHz_02 = -1;          /* T_scs_120kHz_02 */
2555 static int hf_nr_rrc_scs_240kHz = -1;             /* T_scs_240kHz */
2556 static int hf_nr_rrc_maxNumberNonGroupBeamReporting = -1;  /* T_maxNumberNonGroupBeamReporting */
2557 static int hf_nr_rrc_groupBeamReporting = -1;     /* T_groupBeamReporting */
2558 static int hf_nr_rrc_uplinkBeamManagement = -1;   /* T_uplinkBeamManagement */
2559 static int hf_nr_rrc_maxNumberSRS_ResourcePerSet_BM = -1;  /* T_maxNumberSRS_ResourcePerSet_BM */
2560 static int hf_nr_rrc_maxNumberSRS_ResourceSet = -1;  /* INTEGER_1_8 */
2561 static int hf_nr_rrc_maxNumberCSI_RS_BFR = -1;    /* INTEGER_1_64 */
2562 static int hf_nr_rrc_maxNumberSSB_BFR = -1;       /* INTEGER_1_64 */
2563 static int hf_nr_rrc_maxNumberCSI_RS_SSB_BFR = -1;  /* INTEGER_1_256 */
2564 static int hf_nr_rrc_twoPortsPTRS_DL = -1;        /* T_twoPortsPTRS_DL */
2565 static int hf_nr_rrc_twoPortsPTRS_UL = -1;        /* T_twoPortsPTRS_UL */
2566 static int hf_nr_rrc_maxNumberSimultaneousSRS_PerCC = -1;  /* INTEGER_1_4 */
2567 static int hf_nr_rrc_beamReportTiming = -1;       /* T_beamReportTiming */
2568 static int hf_nr_rrc_scs_15kHz_03 = -1;           /* T_scs_15kHz_03 */
2569 static int hf_nr_rrc_scs_30kHz_03 = -1;           /* T_scs_30kHz_03 */
2570 static int hf_nr_rrc_scs_60kHz_04 = -1;           /* T_scs_60kHz_04 */
2571 static int hf_nr_rrc_scs_120kHz_03 = -1;          /* T_scs_120kHz_03 */
2572 static int hf_nr_rrc_ptrs_DensityRecommendationSetDL = -1;  /* T_ptrs_DensityRecommendationSetDL */
2573 static int hf_nr_rrc_scs_15kHz_04 = -1;           /* PTRS_DensityRecommendationDL */
2574 static int hf_nr_rrc_scs_30kHz_04 = -1;           /* PTRS_DensityRecommendationDL */
2575 static int hf_nr_rrc_scs_60kHz_05 = -1;           /* PTRS_DensityRecommendationDL */
2576 static int hf_nr_rrc_scs_120kHz_04 = -1;          /* PTRS_DensityRecommendationDL */
2577 static int hf_nr_rrc_ptrs_DensityRecommendationSetUL = -1;  /* T_ptrs_DensityRecommendationSetUL */
2578 static int hf_nr_rrc_scs_15kHz_05 = -1;           /* PTRS_DensityRecommendationUL */
2579 static int hf_nr_rrc_scs_30kHz_05 = -1;           /* PTRS_DensityRecommendationUL */
2580 static int hf_nr_rrc_scs_60kHz_06 = -1;           /* PTRS_DensityRecommendationUL */
2581 static int hf_nr_rrc_scs_120kHz_05 = -1;          /* PTRS_DensityRecommendationUL */
2582 static int hf_nr_rrc_csi_RS_ForTracking = -1;     /* CSI_RS_ForTracking */
2583 static int hf_nr_rrc_aperiodicTRS = -1;           /* T_aperiodicTRS */
2584 static int hf_nr_rrc_maxNumberSSB_CSI_RS_ResourceOneTx = -1;  /* T_maxNumberSSB_CSI_RS_ResourceOneTx */
2585 static int hf_nr_rrc_maxNumberSSB_CSI_RS_ResourceTwoTx = -1;  /* T_maxNumberSSB_CSI_RS_ResourceTwoTx */
2586 static int hf_nr_rrc_supportedCSI_RS_Density = -1;  /* T_supportedCSI_RS_Density */
2587 static int hf_nr_rrc_burstLength = -1;            /* INTEGER_1_2 */
2588 static int hf_nr_rrc_maxSimultaneousResourceSetsPerCC = -1;  /* INTEGER_1_8 */
2589 static int hf_nr_rrc_maxConfiguredResourceSetsPerCC = -1;  /* INTEGER_1_64 */
2590 static int hf_nr_rrc_maxConfiguredResourceSetsAllCC = -1;  /* INTEGER_1_128 */
2591 static int hf_nr_rrc_frequencyDensity1 = -1;      /* INTEGER_1_276 */
2592 static int hf_nr_rrc_frequencyDensity2 = -1;      /* INTEGER_1_276 */
2593 static int hf_nr_rrc_timeDensity1 = -1;           /* INTEGER_0_29 */
2594 static int hf_nr_rrc_timeDensity2 = -1;           /* INTEGER_0_29 */
2595 static int hf_nr_rrc_timeDensity3 = -1;           /* INTEGER_0_29 */
2596 static int hf_nr_rrc_sampleDensity1 = -1;         /* INTEGER_1_276 */
2597 static int hf_nr_rrc_sampleDensity2 = -1;         /* INTEGER_1_276 */
2598 static int hf_nr_rrc_sampleDensity3 = -1;         /* INTEGER_1_276 */
2599 static int hf_nr_rrc_sampleDensity4 = -1;         /* INTEGER_1_276 */
2600 static int hf_nr_rrc_sampleDensity5 = -1;         /* INTEGER_1_276 */
2601 static int hf_nr_rrc_maxNumberAperiodicSRS_PerBWP = -1;  /* T_maxNumberAperiodicSRS_PerBWP */
2602 static int hf_nr_rrc_maxNumberAperiodicSRS_PerBWP_PerSlot = -1;  /* INTEGER_1_6 */
2603 static int hf_nr_rrc_maxNumberPeriodicSRS_PerBWP = -1;  /* T_maxNumberPeriodicSRS_PerBWP */
2604 static int hf_nr_rrc_maxNumberPeriodicSRS_PerBWP_PerSlot = -1;  /* INTEGER_1_6 */
2605 static int hf_nr_rrc_maxNumberSemiPersitentSRS_PerBWP = -1;  /* T_maxNumberSemiPersitentSRS_PerBWP */
2606 static int hf_nr_rrc_maxNumberSP_SRS_PerBWP_PerSlot = -1;  /* INTEGER_1_6 */
2607 static int hf_nr_rrc_maxNumberSRS_Ports_PerResource = -1;  /* T_maxNumberSRS_Ports_PerResource */
2608 static int hf_nr_rrc_supportedSRS_TxPortSwitch = -1;  /* T_supportedSRS_TxPortSwitch */
2609 static int hf_nr_rrc_txSwitchImpactToRx = -1;     /* T_txSwitchImpactToRx */
2610 static int hf_nr_rrc_singleUL_Transmission = -1;  /* T_singleUL_Transmission */
2611 static int hf_nr_rrc_dynamicPowerSharing = -1;    /* T_dynamicPowerSharing */
2612 static int hf_nr_rrc_tdm_Pattern = -1;            /* T_tdm_Pattern */
2613 static int hf_nr_rrc_ul_SharingEUTRA_NR = -1;     /* T_ul_SharingEUTRA_NR */
2614 static int hf_nr_rrc_ul_SwitchingTimeEUTRA_NR = -1;  /* T_ul_SwitchingTimeEUTRA_NR */
2615 static int hf_nr_rrc_simultaneousRxTxInterBandENDC = -1;  /* T_simultaneousRxTxInterBandENDC */
2616 static int hf_nr_rrc_asyncIntraBandENDC = -1;     /* T_asyncIntraBandENDC */
2617 static int hf_nr_rrc_supportedROHC_Profiles = -1;  /* T_supportedROHC_Profiles */
2618 static int hf_nr_rrc_profile0x0000 = -1;          /* BOOLEAN */
2619 static int hf_nr_rrc_maxNumberROHC_ContextSessions = -1;  /* T_maxNumberROHC_ContextSessions */
2620 static int hf_nr_rrc_uplinkOnlyROHC_Profiles = -1;  /* T_uplinkOnlyROHC_Profiles */
2621 static int hf_nr_rrc_continueROHC_Context = -1;   /* T_continueROHC_Context */
2622 static int hf_nr_rrc_outOfOrderDelivery_01 = -1;  /* T_outOfOrderDelivery_01 */
2623 static int hf_nr_rrc_shortSN = -1;                /* T_shortSN */
2624 static int hf_nr_rrc_pdcp_DuplicationSRB3 = -1;   /* T_pdcp_DuplicationSRB3 */
2625 static int hf_nr_rrc_pdcp_DuplicationMCG_OrSCG = -1;  /* T_pdcp_DuplicationMCG_OrSCG */
2626 static int hf_nr_rrc_pdcp_DuplicationSplitSRB = -1;  /* T_pdcp_DuplicationSplitSRB */
2627 static int hf_nr_rrc_pdcp_DuplicationSplitDRB = -1;  /* T_pdcp_DuplicationSplitDRB */
2628 static int hf_nr_rrc_phy_ParametersCommon = -1;   /* Phy_ParametersCommon */
2629 static int hf_nr_rrc_phy_ParametersXDD_Diff = -1;  /* Phy_ParametersXDD_Diff */
2630 static int hf_nr_rrc_phy_ParametersFRX_Diff = -1;  /* Phy_ParametersFRX_Diff */
2631 static int hf_nr_rrc_phy_ParametersFR1 = -1;      /* Phy_ParametersFR1 */
2632 static int hf_nr_rrc_phy_ParametersFR2 = -1;      /* Phy_ParametersFR2 */
2633 static int hf_nr_rrc_csi_RS_CFRA_ForHO = -1;      /* T_csi_RS_CFRA_ForHO */
2634 static int hf_nr_rrc_dynamicPRB_BundlingDL = -1;  /* T_dynamicPRB_BundlingDL */
2635 static int hf_nr_rrc_sp_CSI_ReportPUCCH = -1;     /* T_sp_CSI_ReportPUCCH */
2636 static int hf_nr_rrc_sp_CSI_ReportPUSCH = -1;     /* T_sp_CSI_ReportPUSCH */
2637 static int hf_nr_rrc_nzp_CSI_RS_IntefMgmt = -1;   /* T_nzp_CSI_RS_IntefMgmt */
2638 static int hf_nr_rrc_type2_SP_CSI_Feedback_LongPUCCH = -1;  /* T_type2_SP_CSI_Feedback_LongPUCCH */
2639 static int hf_nr_rrc_precoderGranularityCORESET = -1;  /* T_precoderGranularityCORESET */
2640 static int hf_nr_rrc_dynamicHARQ_ACK_Codebook = -1;  /* T_dynamicHARQ_ACK_Codebook */
2641 static int hf_nr_rrc_semiStaticHARQ_ACK_Codebook = -1;  /* T_semiStaticHARQ_ACK_Codebook */
2642 static int hf_nr_rrc_spatialBundlingHARQ_ACK = -1;  /* T_spatialBundlingHARQ_ACK */
2643 static int hf_nr_rrc_dynamicBetaOffsetInd_HARQ_ACK_CSI = -1;  /* T_dynamicBetaOffsetInd_HARQ_ACK_CSI */
2644 static int hf_nr_rrc_pucch_Repetition_F1_3_4 = -1;  /* T_pucch_Repetition_F1_3_4 */
2645 static int hf_nr_rrc_ra_Type0_PUSCH = -1;         /* T_ra_Type0_PUSCH */
2646 static int hf_nr_rrc_dynamicSwitchRA_Type0_1_PDSCH = -1;  /* T_dynamicSwitchRA_Type0_1_PDSCH */
2647 static int hf_nr_rrc_dynamicSwitchRA_Type0_1_PUSCH = -1;  /* T_dynamicSwitchRA_Type0_1_PUSCH */
2648 static int hf_nr_rrc_pdsch_MappingTypeA = -1;     /* T_pdsch_MappingTypeA */
2649 static int hf_nr_rrc_pdsch_MappingTypeB = -1;     /* T_pdsch_MappingTypeB */
2650 static int hf_nr_rrc_interleavingVRB_ToPRB_PDSCH = -1;  /* T_interleavingVRB_ToPRB_PDSCH */
2651 static int hf_nr_rrc_interSlotFreqHopping_PUSCH = -1;  /* T_interSlotFreqHopping_PUSCH */
2652 static int hf_nr_rrc_type1_PUSCH_RepetitionMultiSlots = -1;  /* T_type1_PUSCH_RepetitionMultiSlots */
2653 static int hf_nr_rrc_type2_PUSCH_RepetitionMultiSlots = -1;  /* T_type2_PUSCH_RepetitionMultiSlots */
2654 static int hf_nr_rrc_pusch_RepetitionMultiSlots = -1;  /* T_pusch_RepetitionMultiSlots */
2655 static int hf_nr_rrc_pdsch_RepetitionMultiSlots = -1;  /* T_pdsch_RepetitionMultiSlots */
2656 static int hf_nr_rrc_downlinkSPS = -1;            /* T_downlinkSPS */
2657 static int hf_nr_rrc_configuredUL_GrantType1 = -1;  /* T_configuredUL_GrantType1 */
2658 static int hf_nr_rrc_configuredUL_GrantType2 = -1;  /* T_configuredUL_GrantType2 */
2659 static int hf_nr_rrc_pre_EmptIndication_DL = -1;  /* T_pre_EmptIndication_DL */
2660 static int hf_nr_rrc_cbg_TransIndication_DL = -1;  /* T_cbg_TransIndication_DL */
2661 static int hf_nr_rrc_cbg_TransIndication_UL = -1;  /* T_cbg_TransIndication_UL */
2662 static int hf_nr_rrc_cbg_FlushIndication_DL = -1;  /* T_cbg_FlushIndication_DL */
2663 static int hf_nr_rrc_dynamicHARQ_ACK_CodeB_CBG_Retx_DL = -1;  /* T_dynamicHARQ_ACK_CodeB_CBG_Retx_DL */
2664 static int hf_nr_rrc_rateMatchingResrcSetSemi_Static = -1;  /* T_rateMatchingResrcSetSemi_Static */
2665 static int hf_nr_rrc_rateMatchingResrcSetDynamic = -1;  /* T_rateMatchingResrcSetDynamic */
2666 static int hf_nr_rrc_bwp_SwitchingDelay = -1;     /* T_bwp_SwitchingDelay */
2667 static int hf_nr_rrc_eutra_RS_SINR_measurement = -1;  /* T_eutra_RS_SINR_measurement */
2668 static int hf_nr_rrc_dynamicSFI = -1;             /* T_dynamicSFI */
2669 static int hf_nr_rrc_twoPUCCH_F0_2_ConsecSymbols = -1;  /* T_twoPUCCH_F0_2_ConsecSymbols */
2670 static int hf_nr_rrc_twoDifferentTPC_Loop_PUSCH = -1;  /* T_twoDifferentTPC_Loop_PUSCH */
2671 static int hf_nr_rrc_twoDifferentTPC_Loop_PUCCH = -1;  /* T_twoDifferentTPC_Loop_PUCCH */
2672 static int hf_nr_rrc_dynamicSFI_01 = -1;          /* T_dynamicSFI_01 */
2673 static int hf_nr_rrc_oneFL_DMRS_TwoAdditionalDMRS = -1;  /* BIT_STRING_SIZE_2 */
2674 static int hf_nr_rrc_twoFL_DMRS = -1;             /* BIT_STRING_SIZE_2 */
2675 static int hf_nr_rrc_twoFL_DMRS_TwoAdditionalDMRS = -1;  /* BIT_STRING_SIZE_2 */
2676 static int hf_nr_rrc_oneFL_DMRS_ThreeAdditionalDMRS = -1;  /* BIT_STRING_SIZE_2 */
2677 static int hf_nr_rrc_supportedDMRS_TypeDL = -1;   /* T_supportedDMRS_TypeDL */
2678 static int hf_nr_rrc_supportedDMRS_TypeUL = -1;   /* T_supportedDMRS_TypeUL */
2679 static int hf_nr_rrc_semiOpenLoopCSI = -1;        /* T_semiOpenLoopCSI */
2680 static int hf_nr_rrc_csi_ReportWithoutPMI = -1;   /* T_csi_ReportWithoutPMI */
2681 static int hf_nr_rrc_csi_ReportWithoutCQI = -1;   /* T_csi_ReportWithoutCQI */
2682 static int hf_nr_rrc_onePortsPTRS = -1;           /* BIT_STRING_SIZE_2 */
2683 static int hf_nr_rrc_twoPUCCH_F0_2_ConsecSymbols_01 = -1;  /* T_twoPUCCH_F0_2_ConsecSymbols_01 */
2684 static int hf_nr_rrc_pucch_F2_WithFH = -1;        /* T_pucch_F2_WithFH */
2685 static int hf_nr_rrc_pucch_F3_WithFH = -1;        /* T_pucch_F3_WithFH */
2686 static int hf_nr_rrc_pucch_F4_WithFH = -1;        /* T_pucch_F4_WithFH */
2687 static int hf_nr_rrc_freqHoppingPUCCH_F0_2 = -1;  /* T_freqHoppingPUCCH_F0_2 */
2688 static int hf_nr_rrc_freqHoppingPUCCH_F1_3_4 = -1;  /* T_freqHoppingPUCCH_F1_3_4 */
2689 static int hf_nr_rrc_mux_SR_HARQ_ACK_CSI_PUCCH = -1;  /* T_mux_SR_HARQ_ACK_CSI_PUCCH */
2690 static int hf_nr_rrc_uci_CodeBlockSegmentation = -1;  /* T_uci_CodeBlockSegmentation */
2691 static int hf_nr_rrc_onePUCCH_LongAndShortFormat = -1;  /* T_onePUCCH_LongAndShortFormat */
2692 static int hf_nr_rrc_twoPUCCH_AnyOthersInSlot = -1;  /* T_twoPUCCH_AnyOthersInSlot */
2693 static int hf_nr_rrc_intraSlotFreqHopping_PUSCH = -1;  /* T_intraSlotFreqHopping_PUSCH */
2694 static int hf_nr_rrc_pusch_LBRM = -1;             /* T_pusch_LBRM */
2695 static int hf_nr_rrc_pdcch_BlindDetectionCA = -1;  /* INTEGER_4_16 */
2696 static int hf_nr_rrc_tpc_PUSCH_RNTI_01 = -1;      /* T_tpc_PUSCH_RNTI */
2697 static int hf_nr_rrc_tpc_PUCCH_RNTI_01 = -1;      /* T_tpc_PUCCH_RNTI */
2698 static int hf_nr_rrc_tpc_SRS_RNTI_01 = -1;        /* T_tpc_SRS_RNTI */
2699 static int hf_nr_rrc_absoluteTPC_Command = -1;    /* T_absoluteTPC_Command */
2700 static int hf_nr_rrc_twoDifferentTPC_Loop_PUSCH_01 = -1;  /* T_twoDifferentTPC_Loop_PUSCH_01 */
2701 static int hf_nr_rrc_twoDifferentTPC_Loop_PUCCH_01 = -1;  /* T_twoDifferentTPC_Loop_PUCCH_01 */
2702 static int hf_nr_rrc_pusch_HalfPi_BPSK = -1;      /* T_pusch_HalfPi_BPSK */
2703 static int hf_nr_rrc_pucch_F3_4_HalfPi_BPSK = -1;  /* T_pucch_F3_4_HalfPi_BPSK */
2704 static int hf_nr_rrc_almostContiguousCP_OFDM_UL = -1;  /* T_almostContiguousCP_OFDM_UL */
2705 static int hf_nr_rrc_sp_CSI_RS = -1;              /* T_sp_CSI_RS */
2706 static int hf_nr_rrc_sp_CSI_IM = -1;              /* T_sp_CSI_IM */
2707 static int hf_nr_rrc_tdd_MultiDL_UL_SwitchPerSlot = -1;  /* T_tdd_MultiDL_UL_SwitchPerSlot */
2708 static int hf_nr_rrc_multipleCORESET = -1;        /* T_multipleCORESET */
2709 static int hf_nr_rrc_pdcchMonitoringSingleOccasion = -1;  /* T_pdcchMonitoringSingleOccasion */
2710 static int hf_nr_rrc_scs_60kHz_07 = -1;           /* T_scs_60kHz_05 */
2711 static int hf_nr_rrc_pdsch_256QAM_FR1 = -1;       /* T_pdsch_256QAM_FR1 */
2712 static int hf_nr_rrc_pdsch_RE_MappingFR1 = -1;    /* T_pdsch_RE_MappingFR1 */
2713 static int hf_nr_rrc_calibrationGapPA = -1;       /* T_calibrationGapPA */
2714 static int hf_nr_rrc_pdsch_RE_MappingFR2 = -1;    /* T_pdsch_RE_MappingFR2 */
2715 static int hf_nr_rrc_naics_Capability_List = -1;  /* SEQUENCE_SIZE_1_maxNrofNAICS_Entries_OF_NAICS_Capability_Entry */
2716 static int hf_nr_rrc_naics_Capability_List_item = -1;  /* NAICS_Capability_Entry */
2717 static int hf_nr_rrc_numberOfNAICS_CapableCC = -1;  /* INTEGER_1_5 */
2718 static int hf_nr_rrc_numberOfAggregatedPRB = -1;  /* T_numberOfAggregatedPRB */
2719 static int hf_nr_rrc_supportedBandListNR = -1;    /* SEQUENCE_SIZE_1_maxBands_OF_BandNR */
2720 static int hf_nr_rrc_supportedBandListNR_item = -1;  /* BandNR */
2721 static int hf_nr_rrc_supportedBandCombinationList = -1;  /* BandCombinationList */
2722 static int hf_nr_rrc_appliedFreqBandListFilter = -1;  /* FreqBandList */
2723 static int hf_nr_rrc_modifiedMPR_Behaviour = -1;  /* BIT_STRING_SIZE_8 */
2724 static int hf_nr_rrc_mimo_ParametersPerBand = -1;  /* MIMO_ParametersPerBand */
2725 static int hf_nr_rrc_extendedCP = -1;             /* T_extendedCP */
2726 static int hf_nr_rrc_multipleTCI = -1;            /* T_multipleTCI */
2727 static int hf_nr_rrc_bwp_WithoutRestriction = -1;  /* T_bwp_WithoutRestriction */
2728 static int hf_nr_rrc_bwp_SameNumerology = -1;     /* T_bwp_SameNumerology */
2729 static int hf_nr_rrc_bwp_DiffNumerology = -1;     /* T_bwp_DiffNumerology */
2730 static int hf_nr_rrc_crossCarrierScheduling_SameSCS = -1;  /* T_crossCarrierScheduling_SameSCS */
2731 static int hf_nr_rrc_pdsch_256QAM_FR2 = -1;       /* T_pdsch_256QAM_FR2 */
2732 static int hf_nr_rrc_pusch_256QAM = -1;           /* T_pusch_256QAM */
2733 static int hf_nr_rrc_ue_PowerClass = -1;          /* T_ue_PowerClass */
2734 static int hf_nr_rrc_rateMatchingLTE_CRS = -1;    /* T_rateMatchingLTE_CRS */
2735 static int hf_nr_rrc_channelBWs_DL_v1530 = -1;    /* T_channelBWs_DL_v1530 */
2736 static int hf_nr_rrc_fr1 = -1;                    /* T_fr1 */
2737 static int hf_nr_rrc_scs_15kHz_06 = -1;           /* BIT_STRING_SIZE_10 */
2738 static int hf_nr_rrc_scs_30kHz_06 = -1;           /* BIT_STRING_SIZE_10 */
2739 static int hf_nr_rrc_scs_60kHz_08 = -1;           /* BIT_STRING_SIZE_10 */
2740 static int hf_nr_rrc_fr2 = -1;                    /* T_fr2 */
2741 static int hf_nr_rrc_scs_60kHz_09 = -1;           /* BIT_STRING_SIZE_3 */
2742 static int hf_nr_rrc_scs_120kHz_06 = -1;          /* BIT_STRING_SIZE_3 */
2743 static int hf_nr_rrc_channelBWs_UL_v1530 = -1;    /* T_channelBWs_UL_v1530 */
2744 static int hf_nr_rrc_fr1_01 = -1;                 /* T_fr1_01 */
2745 static int hf_nr_rrc_fr2_01 = -1;                 /* T_fr2_01 */
2746 static int hf_nr_rrc_maxUplinkDutyCycle = -1;     /* T_maxUplinkDutyCycle */
2747 static int hf_nr_rrc_am_WithShortSN = -1;         /* T_am_WithShortSN */
2748 static int hf_nr_rrc_um_WithShortSN = -1;         /* T_um_WithShortSN */
2749 static int hf_nr_rrc_um_WithLongSN = -1;          /* T_um_WithLongSN */
2750 static int hf_nr_rrc_fr1_02 = -1;                 /* T_fr1_02 */
2751 static int hf_nr_rrc_fr2_02 = -1;                 /* T_fr2_02 */
2752 static int hf_nr_rrc_UE_CapabilityRAT_ContainerList_item = -1;  /* UE_CapabilityRAT_Container */
2753 static int hf_nr_rrc_rat_Type = -1;               /* RAT_Type */
2754 static int hf_nr_rrc_ue_CapabilityRAT_Container = -1;  /* T_ue_CapabilityRAT_Container */
2755 static int hf_nr_rrc_UE_CapabilityRAT_RequestList_item = -1;  /* UE_CapabilityRAT_Request */
2756 static int hf_nr_rrc_capabilityRequestFilter = -1;  /* T_capabilityRequestFilter */
2757 static int hf_nr_rrc_frequencyBandList_02 = -1;   /* FreqBandList */
2758 static int hf_nr_rrc_nonCriticalExtension_35 = -1;  /* T_nonCriticalExtension_33 */
2759 static int hf_nr_rrc_measAndMobParametersMRDC = -1;  /* MeasAndMobParametersMRDC */
2760 static int hf_nr_rrc_phy_ParametersMRDC_v1530 = -1;  /* Phy_ParametersMRDC */
2761 static int hf_nr_rrc_rf_ParametersMRDC = -1;      /* RF_ParametersMRDC */
2762 static int hf_nr_rrc_generalParametersMRDC = -1;  /* GeneralParametersMRDC_XDD_Diff */
2763 static int hf_nr_rrc_fdd_Add_UE_MRDC_Capabilities = -1;  /* UE_MRDC_CapabilityAddXDD_Mode */
2764 static int hf_nr_rrc_tdd_Add_UE_MRDC_Capabilities = -1;  /* UE_MRDC_CapabilityAddXDD_Mode */
2765 static int hf_nr_rrc_fr1_Add_UE_MRDC_Capabilities = -1;  /* UE_MRDC_CapabilityAddFRX_Mode */
2766 static int hf_nr_rrc_fr2_Add_UE_MRDC_Capabilities = -1;  /* UE_MRDC_CapabilityAddFRX_Mode */
2767 static int hf_nr_rrc_featureSetCombinations = -1;  /* SEQUENCE_SIZE_1_maxFeatureSetCombinations_OF_FeatureSetCombination */
2768 static int hf_nr_rrc_featureSetCombinations_item = -1;  /* FeatureSetCombination */
2769 static int hf_nr_rrc_pdcp_ParametersMRDC_v1530 = -1;  /* PDCP_ParametersMRDC */
2770 static int hf_nr_rrc_nonCriticalExtension_36 = -1;  /* T_nonCriticalExtension_34 */
2771 static int hf_nr_rrc_generalParametersMRDC_XDD_Diff = -1;  /* GeneralParametersMRDC_XDD_Diff */
2772 static int hf_nr_rrc_splitSRB_WithOneUL_Path = -1;  /* T_splitSRB_WithOneUL_Path */
2773 static int hf_nr_rrc_splitDRB_withUL_Both_MCG_SCG = -1;  /* T_splitDRB_withUL_Both_MCG_SCG */
2774 static int hf_nr_rrc_srb3 = -1;                   /* T_srb3 */
2775 static int hf_nr_rrc_v2x_EUTRA_v1530 = -1;        /* T_v2x_EUTRA_v1530 */
2776 static int hf_nr_rrc_accessStratumRelease = -1;   /* AccessStratumRelease */
2777 static int hf_nr_rrc_pdcp_Parameters = -1;        /* PDCP_Parameters */
2778 static int hf_nr_rrc_rlc_Parameters = -1;         /* RLC_Parameters */
2779 static int hf_nr_rrc_mac_Parameters = -1;         /* MAC_Parameters */
2780 static int hf_nr_rrc_phy_Parameters = -1;         /* Phy_Parameters */
2781 static int hf_nr_rrc_rf_Parameters = -1;          /* RF_Parameters */
2782 static int hf_nr_rrc_measAndMobParameters = -1;   /* MeasAndMobParameters */
2783 static int hf_nr_rrc_fdd_Add_UE_NR_Capabilities = -1;  /* UE_NR_CapabilityAddXDD_Mode */
2784 static int hf_nr_rrc_tdd_Add_UE_NR_Capabilities = -1;  /* UE_NR_CapabilityAddXDD_Mode */
2785 static int hf_nr_rrc_fr1_Add_UE_NR_Capabilities = -1;  /* UE_NR_CapabilityAddFRX_Mode */
2786 static int hf_nr_rrc_fr2_Add_UE_NR_Capabilities = -1;  /* UE_NR_CapabilityAddFRX_Mode */
2787 static int hf_nr_rrc_featureSets = -1;            /* FeatureSets */
2788 static int hf_nr_rrc_nonCriticalExtension_37 = -1;  /* UE_NR_Capability_1530 */
2789 static int hf_nr_rrc_fdd_Add_UE_NR_Capabilities_1530 = -1;  /* UE_NR_CapabilityAddXDD_Mode_1530 */
2790 static int hf_nr_rrc_tdd_Add_UE_NR_Capabilities_1530 = -1;  /* UE_NR_CapabilityAddXDD_Mode_1530 */
2791 static int hf_nr_rrc_voiceOverMCG_Bearer = -1;    /* T_voiceOverMCG_Bearer */
2792 static int hf_nr_rrc_interRAT_Parameters = -1;    /* InterRAT_Parameters */
2793 static int hf_nr_rrc_inactiveState = -1;          /* T_inactiveState */
2794 static int hf_nr_rrc_delayBudgetReporting = -1;   /* T_delayBudgetReporting */
2795 static int hf_nr_rrc_nonCriticalExtension_38 = -1;  /* T_nonCriticalExtension_35 */
2796 static int hf_nr_rrc_EUTRA_MBSFN_SubframeConfigList_item = -1;  /* EUTRA_MBSFN_SubframeConfig */
2797 static int hf_nr_rrc_radioframeAllocationPeriod = -1;  /* T_radioframeAllocationPeriod */
2798 static int hf_nr_rrc_radioframeAllocationOffset = -1;  /* INTEGER_0_7 */
2799 static int hf_nr_rrc_subframeAllocation1 = -1;    /* T_subframeAllocation1 */
2800 static int hf_nr_rrc_oneFrame = -1;               /* BIT_STRING_SIZE_6 */
2801 static int hf_nr_rrc_fourFrames = -1;             /* BIT_STRING_SIZE_24 */
2802 static int hf_nr_rrc_subframeAllocation2 = -1;    /* T_subframeAllocation2 */
2803 static int hf_nr_rrc_oneFrame_01 = -1;            /* BIT_STRING_SIZE_2 */
2804 static int hf_nr_rrc_fourFrames_01 = -1;          /* BIT_STRING_SIZE_8 */
2805 static int hf_nr_rrc_EUTRA_MultiBandInfoList_item = -1;  /* EUTRA_MultiBandInfo */
2806 static int hf_nr_rrc_eutra_FreqBandIndicator = -1;  /* FreqBandIndicatorEUTRA */
2807 static int hf_nr_rrc_eutra_NS_PmaxList = -1;      /* EUTRA_NS_PmaxList */
2808 static int hf_nr_rrc_EUTRA_NS_PmaxList_item = -1;  /* EUTRA_NS_PmaxValue */
2809 static int hf_nr_rrc_additionalPmax = -1;         /* INTEGER_M30_33 */
2810 static int hf_nr_rrc_additionalSpectrumEmission_01 = -1;  /* INTEGER_1_288 */
2811 static int hf_nr_rrc_start_01 = -1;               /* EUTRA_PhysCellId */
2812 static int hf_nr_rrc_range_01 = -1;               /* T_range_01 */
2813 static int hf_nr_rrc_MultiFrequencyBandListNR_SIB_item = -1;  /* NR_MultiBandInfo */
2814 static int hf_nr_rrc_freqBandIndicatorNR = -1;    /* FreqBandIndicatorNR */
2815 static int hf_nr_rrc_nr_NS_PmaxList = -1;         /* NR_NS_PmaxList */
2816 static int hf_nr_rrc_NR_NS_PmaxList_item = -1;    /* NR_NS_PmaxValue */
2817 static int hf_nr_rrc_additionalPmax_01 = -1;      /* P_Max */
2818 static int hf_nr_rrc_delayBudgetReportingConfig = -1;  /* T_delayBudgetReportingConfig */
2819 static int hf_nr_rrc_setup_49 = -1;               /* T_setup */
2820 static int hf_nr_rrc_delayBudgetReportingProhibitTimer = -1;  /* T_delayBudgetReportingProhibitTimer */
2821 static int dummy_hf_nr_rrc_eag_field = -1; /* never registered */
2822
2823 /*--- End of included file: packet-nr-rrc-hf.c ---*/
2824 #line 54 "./asn1/nr-rrc/packet-nr-rrc-template.c"
2825 static int hf_nr_rrc_serialNumber_gs = -1;
2826 static int hf_nr_rrc_serialNumber_msg_code = -1;
2827 static int hf_nr_rrc_serialNumber_upd_nb = -1;
2828 static int hf_nr_rrc_warningType_value = -1;
2829 static int hf_nr_rrc_warningType_emergency_user_alert = -1;
2830 static int hf_nr_rrc_warningType_popup = -1;
2831 static int hf_nr_rrc_warningMessageSegment_nb_pages = -1;
2832 static int hf_nr_rrc_warningMessageSegment_decoded_page = -1;
2833 static int hf_nr_rrc_sib7_fragments = -1;
2834 static int hf_nr_rrc_sib7_fragment = -1;
2835 static int hf_nr_rrc_sib7_fragment_overlap = -1;
2836 static int hf_nr_rrc_sib7_fragment_overlap_conflict = -1;
2837 static int hf_nr_rrc_sib7_fragment_multiple_tails = -1;
2838 static int hf_nr_rrc_sib7_fragment_too_long_fragment = -1;
2839 static int hf_nr_rrc_sib7_fragment_error = -1;
2840 static int hf_nr_rrc_sib7_fragment_count = -1;
2841 static int hf_nr_rrc_sib7_reassembled_in = -1;
2842 static int hf_nr_rrc_sib7_reassembled_length = -1;
2843 static int hf_nr_rrc_sib7_reassembled_data = -1;
2844 static int hf_nr_rrc_sib8_fragments = -1;
2845 static int hf_nr_rrc_sib8_fragment = -1;
2846 static int hf_nr_rrc_sib8_fragment_overlap = -1;
2847 static int hf_nr_rrc_sib8_fragment_overlap_conflict = -1;
2848 static int hf_nr_rrc_sib8_fragment_multiple_tails = -1;
2849 static int hf_nr_rrc_sib8_fragment_too_long_fragment = -1;
2850 static int hf_nr_rrc_sib8_fragment_error = -1;
2851 static int hf_nr_rrc_sib8_fragment_count = -1;
2852 static int hf_nr_rrc_sib8_reassembled_in = -1;
2853 static int hf_nr_rrc_sib8_reassembled_length = -1;
2854 static int hf_nr_rrc_sib8_reassembled_data = -1;
2855 static int hf_nr_rrc_utc_time = -1;
2856 static int hf_nr_rrc_local_time = -1;
2857
2858 /* Initialize the subtree pointers */
2859 static gint ett_nr_rrc = -1;
2860
2861 /*--- Included file: packet-nr-rrc-ett.c ---*/
2862 #line 1 "./asn1/nr-rrc/packet-nr-rrc-ett.c"
2863 static gint ett_nr_rrc_HandoverCommand = -1;
2864 static gint ett_nr_rrc_T_criticalExtensions = -1;
2865 static gint ett_nr_rrc_T_c1 = -1;
2866 static gint ett_nr_rrc_T_criticalExtensionsFuture = -1;
2867 static gint ett_nr_rrc_HandoverCommand_IEs = -1;
2868 static gint ett_nr_rrc_T_nonCriticalExtension = -1;
2869 static gint ett_nr_rrc_HandoverPreparationInformation = -1;
2870 static gint ett_nr_rrc_T_criticalExtensions_01 = -1;
2871 static gint ett_nr_rrc_T_c1_01 = -1;
2872 static gint ett_nr_rrc_T_criticalExtensionsFuture_01 = -1;
2873 static gint ett_nr_rrc_HandoverPreparationInformation_IEs = -1;
2874 static gint ett_nr_rrc_T_nonCriticalExtension_01 = -1;
2875 static gint ett_nr_rrc_AS_Config = -1;
2876 static gint ett_nr_rrc_AS_Context = -1;
2877 static gint ett_nr_rrc_ReestablishmentInfo = -1;
2878 static gint ett_nr_rrc_ReestabNCellInfoList = -1;
2879 static gint ett_nr_rrc_ReestabNCellInfo = -1;
2880 static gint ett_nr_rrc_RRM_Config = -1;
2881 static gint ett_nr_rrc_CG_Config = -1;
2882 static gint ett_nr_rrc_T_criticalExtensions_02 = -1;
2883 static gint ett_nr_rrc_T_c1_02 = -1;
2884 static gint ett_nr_rrc_T_criticalExtensionsFuture_02 = -1;
2885 static gint ett_nr_rrc_CG_Config_IEs = -1;
2886 static gint ett_nr_rrc_T_nonCriticalExtension_02 = -1;
2887 static gint ett_nr_rrc_MeasConfigSN = -1;
2888 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxMeasFreqsSN_OF_NR_FreqInfo = -1;
2889 static gint ett_nr_rrc_NR_FreqInfo = -1;
2890 static gint ett_nr_rrc_ConfigRestrictModReqSCG = -1;
2891 static gint ett_nr_rrc_BandCombinationInfoSN = -1;
2892 static gint ett_nr_rrc_FR_InfoList = -1;
2893 static gint ett_nr_rrc_FR_Info = -1;
2894 static gint ett_nr_rrc_CandidateServingFreqListNR = -1;
2895 static gint ett_nr_rrc_CG_ConfigInfo = -1;
2896 static gint ett_nr_rrc_T_criticalExtensions_03 = -1;
2897 static gint ett_nr_rrc_T_c1_03 = -1;
2898 static gint ett_nr_rrc_T_criticalExtensionsFuture_03 = -1;
2899 static gint ett_nr_rrc_CG_ConfigInfo_IEs = -1;
2900 static gint ett_nr_rrc_T_scgFailureInfo = -1;
2901 static gint ett_nr_rrc_T_nonCriticalExtension_03 = -1;
2902 static gint ett_nr_rrc_ConfigRestrictInfoSCG = -1;
2903 static gint ett_nr_rrc_T_powerCoordination_FR1 = -1;
2904 static gint ett_nr_rrc_T_servCellIndexRangeSCG = -1;
2905 static gint ett_nr_rrc_BandCombinationInfoList = -1;
2906 static gint ett_nr_rrc_BandCombinationInfo = -1;
2907 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxFeatureSetsPerBand_OF_FeatureSetEntryIndex = -1;
2908 static gint ett_nr_rrc_DRX_Info = -1;
2909 static gint ett_nr_rrc_T_drx_LongCycleStartOffset = -1;
2910 static gint ett_nr_rrc_T_shortDRX = -1;
2911 static gint ett_nr_rrc_MeasConfigMN = -1;
2912 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxMeasFreqsMN_OF_NR_FreqInfo = -1;
2913 static gint ett_nr_rrc_T_measGapConfig = -1;
2914 static gint ett_nr_rrc_MRDC_AssistanceInfo = -1;
2915 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCombIDC_OF_AffectedCarrierFreqCombInfoMRDC = -1;
2916 static gint ett_nr_rrc_AffectedCarrierFreqCombInfoMRDC = -1;
2917 static gint ett_nr_rrc_T_affectedCarrierFreqCombMRDC = -1;
2918 static gint ett_nr_rrc_VictimSystemType = -1;
2919 static gint ett_nr_rrc_AffectedCarrierFreqCombEUTRA = -1;
2920 static gint ett_nr_rrc_AffectedCarrierFreqCombNR = -1;
2921 static gint ett_nr_rrc_MeasurementTimingConfiguration = -1;
2922 static gint ett_nr_rrc_T_criticalExtensions_04 = -1;
2923 static gint ett_nr_rrc_T_c1_04 = -1;
2924 static gint ett_nr_rrc_T_criticalExtensionsFuture_04 = -1;
2925 static gint ett_nr_rrc_MeasurementTimingConfiguration_IEs = -1;
2926 static gint ett_nr_rrc_T_nonCriticalExtension_04 = -1;
2927 static gint ett_nr_rrc_MeasTimingList = -1;
2928 static gint ett_nr_rrc_MeasTiming = -1;
2929 static gint ett_nr_rrc_T_frequencyAndTiming = -1;
2930 static gint ett_nr_rrc_UERadioPagingInformation = -1;
2931 static gint ett_nr_rrc_T_criticalExtensions_05 = -1;
2932 static gint ett_nr_rrc_T_c1_05 = -1;
2933 static gint ett_nr_rrc_T_criticalExtensionsFuture_05 = -1;
2934 static gint ett_nr_rrc_UERadioPagingInformation_IEs = -1;
2935 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxBands_OF_FreqBandIndicatorNR = -1;
2936 static gint ett_nr_rrc_T_nonCriticalExtension_05 = -1;
2937 static gint ett_nr_rrc_UERadioAccessCapabilityInformation = -1;
2938 static gint ett_nr_rrc_T_criticalExtensions_06 = -1;
2939 static gint ett_nr_rrc_T_c1_06 = -1;
2940 static gint ett_nr_rrc_T_criticalExtensionsFuture_06 = -1;
2941 static gint ett_nr_rrc_UERadioAccessCapabilityInformation_IEs = -1;
2942 static gint ett_nr_rrc_T_nonCriticalExtension_06 = -1;
2943 static gint ett_nr_rrc_BCCH_BCH_Message = -1;
2944 static gint ett_nr_rrc_BCCH_BCH_MessageType = -1;
2945 static gint ett_nr_rrc_T_messageClassExtension = -1;
2946 static gint ett_nr_rrc_BCCH_DL_SCH_Message = -1;
2947 static gint ett_nr_rrc_BCCH_DL_SCH_MessageType = -1;
2948 static gint ett_nr_rrc_T_c1_07 = -1;
2949 static gint ett_nr_rrc_T_messageClassExtension_01 = -1;
2950 static gint ett_nr_rrc_DL_CCCH_Message = -1;
2951 static gint ett_nr_rrc_DL_CCCH_MessageType = -1;
2952 static gint ett_nr_rrc_T_c1_08 = -1;
2953 static gint ett_nr_rrc_T_messageClassExtension_02 = -1;
2954 static gint ett_nr_rrc_DL_DCCH_Message = -1;
2955 static gint ett_nr_rrc_DL_DCCH_MessageType = -1;
2956 static gint ett_nr_rrc_T_c1_09 = -1;
2957 static gint ett_nr_rrc_T_messageClassExtension_03 = -1;
2958 static gint ett_nr_rrc_PCCH_Message = -1;
2959 static gint ett_nr_rrc_PCCH_MessageType = -1;
2960 static gint ett_nr_rrc_T_c1_10 = -1;
2961 static gint ett_nr_rrc_T_messageClassExtension_04 = -1;
2962 static gint ett_nr_rrc_UL_CCCH_Message = -1;
2963 static gint ett_nr_rrc_UL_CCCH_MessageType = -1;
2964 static gint ett_nr_rrc_T_c1_11 = -1;
2965 static gint ett_nr_rrc_T_messageClassExtension_05 = -1;
2966 static gint ett_nr_rrc_UL_CCCH1_Message = -1;
2967 static gint ett_nr_rrc_UL_CCCH1_MessageType = -1;
2968 static gint ett_nr_rrc_T_c1_12 = -1;
2969 static gint ett_nr_rrc_T_messageClassExtension_06 = -1;
2970 static gint ett_nr_rrc_UL_DCCH_Message = -1;
2971 static gint ett_nr_rrc_UL_DCCH_MessageType = -1;
2972 static gint ett_nr_rrc_T_c1_13 = -1;
2973 static gint ett_nr_rrc_T_messageClassExtension_07 = -1;
2974 static gint ett_nr_rrc_CounterCheck = -1;
2975 static gint ett_nr_rrc_T_criticalExtensions_07 = -1;
2976 static gint ett_nr_rrc_T_criticalExtensionsFuture_07 = -1;
2977 static gint ett_nr_rrc_CounterCheck_IEs = -1;
2978 static gint ett_nr_rrc_T_nonCriticalExtension_07 = -1;
2979 static gint ett_nr_rrc_DRB_CountMSB_InfoList = -1;
2980 static gint ett_nr_rrc_DRB_CountMSB_Info = -1;
2981 static gint ett_nr_rrc_CounterCheckResponse = -1;
2982 static gint ett_nr_rrc_T_criticalExtensions_08 = -1;
2983 static gint ett_nr_rrc_T_criticalExtensionsFuture_08 = -1;
2984 static gint ett_nr_rrc_CounterCheckResponse_IEs = -1;
2985 static gint ett_nr_rrc_T_nonCriticalExtension_08 = -1;
2986 static gint ett_nr_rrc_DRB_CountInfoList = -1;
2987 static gint ett_nr_rrc_DRB_CountInfo = -1;
2988 static gint ett_nr_rrc_DLInformationTransfer = -1;
2989 static gint ett_nr_rrc_T_criticalExtensions_09 = -1;
2990 static gint ett_nr_rrc_T_criticalExtensionsFuture_09 = -1;
2991 static gint ett_nr_rrc_DLInformationTransfer_IEs = -1;
2992 static gint ett_nr_rrc_T_nonCriticalExtension_09 = -1;
2993 static gint ett_nr_rrc_LocationMeasurementIndication = -1;
2994 static gint ett_nr_rrc_T_criticalExtensions_10 = -1;
2995 static gint ett_nr_rrc_T_criticalExtensionsFuture_10 = -1;
2996 static gint ett_nr_rrc_LocationMeasurementIndication_IEs = -1;
2997 static gint ett_nr_rrc_T_measurementIndication = -1;
2998 static gint ett_nr_rrc_T_nonCriticalExtension_10 = -1;
2999 static gint ett_nr_rrc_MIB = -1;
3000 static gint ett_nr_rrc_MeasurementReport = -1;
3001 static gint ett_nr_rrc_T_criticalExtensions_11 = -1;
3002 static gint ett_nr_rrc_T_criticalExtensionsFuture_11 = -1;
3003 static gint ett_nr_rrc_MeasurementReport_IEs = -1;
3004 static gint ett_nr_rrc_T_nonCriticalExtension_11 = -1;
3005 static gint ett_nr_rrc_MobilityFromNRCommand = -1;
3006 static gint ett_nr_rrc_T_criticalExtensions_12 = -1;
3007 static gint ett_nr_rrc_T_criticalExtensionsFuture_12 = -1;
3008 static gint ett_nr_rrc_MobilityFromNRCommand_IEs = -1;
3009 static gint ett_nr_rrc_T_nonCriticalExtension_12 = -1;
3010 static gint ett_nr_rrc_Paging = -1;
3011 static gint ett_nr_rrc_T_nonCriticalExtension_13 = -1;
3012 static gint ett_nr_rrc_PagingRecordList = -1;
3013 static gint ett_nr_rrc_PagingRecord = -1;
3014 static gint ett_nr_rrc_PagingUE_Identity = -1;
3015 static gint ett_nr_rrc_RRCReestablishment = -1;
3016 static gint ett_nr_rrc_T_criticalExtensions_13 = -1;
3017 static gint ett_nr_rrc_T_criticalExtensionsFuture_13 = -1;
3018 static gint ett_nr_rrc_RRCReestablishment_IEs = -1;
3019 static gint ett_nr_rrc_T_nonCriticalExtension_14 = -1;
3020 static gint ett_nr_rrc_RRCReestablishmentComplete = -1;
3021 static gint ett_nr_rrc_T_criticalExtensions_14 = -1;
3022 static gint ett_nr_rrc_T_criticalExtensionsFuture_14 = -1;
3023 static gint ett_nr_rrc_RRCReestablishmentComplete_IEs = -1;
3024 static gint ett_nr_rrc_T_nonCriticalExtension_15 = -1;
3025 static gint ett_nr_rrc_RRCReestablishmentRequest = -1;
3026 static gint ett_nr_rrc_RRCReestablishmentRequest_IEs = -1;
3027 static gint ett_nr_rrc_ReestabUE_Identity = -1;
3028 static gint ett_nr_rrc_RRCReconfiguration = -1;
3029 static gint ett_nr_rrc_T_criticalExtensions_15 = -1;
3030 static gint ett_nr_rrc_T_criticalExtensionsFuture_15 = -1;
3031 static gint ett_nr_rrc_RRCReconfiguration_IEs = -1;
3032 static gint ett_nr_rrc_RRCReconfiguration_v1530_IEs = -1;
3033 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxDRB_OF_DedicatedNAS_Message = -1;
3034 static gint ett_nr_rrc_T_nonCriticalExtension_16 = -1;
3035 static gint ett_nr_rrc_MasterKeyUpdate = -1;
3036 static gint ett_nr_rrc_RRCReconfigurationComplete = -1;
3037 static gint ett_nr_rrc_T_criticalExtensions_16 = -1;
3038 static gint ett_nr_rrc_T_criticalExtensionsFuture_16 = -1;
3039 static gint ett_nr_rrc_RRCReconfigurationComplete_IEs = -1;
3040 static gint ett_nr_rrc_RRCReconfigurationComplete_v1530_IEs = -1;
3041 static gint ett_nr_rrc_T_nonCriticalExtension_17 = -1;
3042 static gint ett_nr_rrc_RRCReject = -1;
3043 static gint ett_nr_rrc_T_criticalExtensions_17 = -1;
3044 static gint ett_nr_rrc_T_criticalExtensionsFuture_17 = -1;
3045 static gint ett_nr_rrc_RRCReject_IEs = -1;
3046 static gint ett_nr_rrc_T_nonCriticalExtension_18 = -1;
3047 static gint ett_nr_rrc_RRCRelease = -1;
3048 static gint ett_nr_rrc_T_criticalExtensions_18 = -1;
3049 static gint ett_nr_rrc_T_criticalExtensionsFuture_18 = -1;
3050 static gint ett_nr_rrc_RRCRelease_IEs = -1;
3051 static gint ett_nr_rrc_T_deprioritisationReq = -1;
3052 static gint ett_nr_rrc_T_nonCriticalExtension_19 = -1;
3053 static gint ett_nr_rrc_RedirectedCarrierInfo = -1;
3054 static gint ett_nr_rrc_RedirectedCarrierInfo_EUTRA = -1;
3055 static gint ett_nr_rrc_CarrierInfoNR = -1;
3056 static gint ett_nr_rrc_SuspendConfig = -1;
3057 static gint ett_nr_rrc_CellReselectionPriorities = -1;
3058 static gint ett_nr_rrc_FreqPriorityListEUTRA = -1;
3059 static gint ett_nr_rrc_FreqPriorityListNR = -1;
3060 static gint ett_nr_rrc_FreqPriorityEUTRA = -1;
3061 static gint ett_nr_rrc_FreqPriorityNR = -1;
3062 static gint ett_nr_rrc_RAN_NotificationAreaInfo = -1;
3063 static gint ett_nr_rrc_PLMN_RAN_AreaCellList = -1;
3064 static gint ett_nr_rrc_PLMN_RAN_AreaCell = -1;
3065 static gint ett_nr_rrc_SEQUENCE_SIZE_1_32_OF_CellIdentity = -1;
3066 static gint ett_nr_rrc_PLMN_RAN_AreaConfigList = -1;
3067 static gint ett_nr_rrc_PLMN_RAN_AreaConfig = -1;
3068 static gint ett_nr_rrc_SEQUENCE_SIZE_1_16_OF_RAN_AreaConfig = -1;
3069 static gint ett_nr_rrc_RAN_AreaConfig = -1;
3070 static gint ett_nr_rrc_SEQUENCE_SIZE_1_32_OF_RAN_AreaCode = -1;
3071 static gint ett_nr_rrc_RRCResume = -1;
3072 static gint ett_nr_rrc_T_criticalExtensions_19 = -1;
3073 static gint ett_nr_rrc_T_criticalExtensionsFuture_19 = -1;
3074 static gint ett_nr_rrc_RRCResume_IEs = -1;
3075 static gint ett_nr_rrc_T_nonCriticalExtension_20 = -1;
3076 static gint ett_nr_rrc_RRCResumeComplete = -1;
3077 static gint ett_nr_rrc_T_criticalExtensions_20 = -1;
3078 static gint ett_nr_rrc_T_criticalExtensionsFuture_20 = -1;
3079 static gint ett_nr_rrc_RRCResumeComplete_IEs = -1;
3080 static gint ett_nr_rrc_T_nonCriticalExtension_21 = -1;
3081 static gint ett_nr_rrc_RRCResumeRequest = -1;
3082 static gint ett_nr_rrc_RRCResumeRequest_IEs = -1;
3083 static gint ett_nr_rrc_RRCResumeRequest1 = -1;
3084 static gint ett_nr_rrc_RRCResumeRequest1_IEs = -1;
3085 static gint ett_nr_rrc_RRCSetup = -1;
3086 static gint ett_nr_rrc_T_criticalExtensions_21 = -1;
3087 static gint ett_nr_rrc_T_criticalExtensionsFuture_21 = -1;
3088 static gint ett_nr_rrc_RRCSetup_IEs = -1;
3089 static gint ett_nr_rrc_T_nonCriticalExtension_22 = -1;
3090 static gint ett_nr_rrc_RRCSetupComplete = -1;
3091 static gint ett_nr_rrc_T_criticalExtensions_22 = -1;
3092 static gint ett_nr_rrc_T_criticalExtensionsFuture_22 = -1;
3093 static gint ett_nr_rrc_RRCSetupComplete_IEs = -1;
3094 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofS_NSSAI_OF_S_NSSAI = -1;
3095 static gint ett_nr_rrc_T_ng_5G_S_TMSI_Value = -1;
3096 static gint ett_nr_rrc_T_nonCriticalExtension_23 = -1;
3097 static gint ett_nr_rrc_RegisteredAMF = -1;
3098 static gint ett_nr_rrc_RRCSetupRequest = -1;
3099 static gint ett_nr_rrc_RRCSetupRequest_IEs = -1;
3100 static gint ett_nr_rrc_InitialUE_Identity = -1;
3101 static gint ett_nr_rrc_RRCSystemInfoRequest = -1;
3102 static gint ett_nr_rrc_T_criticalExtensions_23 = -1;
3103 static gint ett_nr_rrc_T_criticalExtensionsFuture_23 = -1;
3104 static gint ett_nr_rrc_RRCSystemInfoRequest_r15_IEs = -1;
3105 static gint ett_nr_rrc_SecurityModeCommand = -1;
3106 static gint ett_nr_rrc_T_criticalExtensions_24 = -1;
3107 static gint ett_nr_rrc_T_criticalExtensionsFuture_24 = -1;
3108 static gint ett_nr_rrc_SecurityModeCommand_IEs = -1;
3109 static gint ett_nr_rrc_T_nonCriticalExtension_24 = -1;
3110 static gint ett_nr_rrc_SecurityConfigSMC = -1;
3111 static gint ett_nr_rrc_SecurityModeComplete = -1;
3112 static gint ett_nr_rrc_T_criticalExtensions_25 = -1;
3113 static gint ett_nr_rrc_T_criticalExtensionsFuture_25 = -1;
3114 static gint ett_nr_rrc_SecurityModeComplete_IEs = -1;
3115 static gint ett_nr_rrc_T_nonCriticalExtension_25 = -1;
3116 static gint ett_nr_rrc_SecurityModeFailure = -1;
3117 static gint ett_nr_rrc_T_criticalExtensions_26 = -1;
3118 static gint ett_nr_rrc_T_criticalExtensionsFuture_26 = -1;
3119 static gint ett_nr_rrc_SecurityModeFailure_IEs = -1;
3120 static gint ett_nr_rrc_T_nonCriticalExtension_26 = -1;
3121 static gint ett_nr_rrc_SIB1 = -1;
3122 static gint ett_nr_rrc_T_cellSelectionInfo = -1;
3123 static gint ett_nr_rrc_T_uac_BarringInfo = -1;
3124 static gint ett_nr_rrc_T_uac_AccessCategory1_SelectionAssistanceInfo = -1;
3125 static gint ett_nr_rrc_SEQUENCE_SIZE_2_maxPLMN_OF_UAC_AccessCategory1_SelectionAssistanceInfo = -1;
3126 static gint ett_nr_rrc_T_nonCriticalExtension_27 = -1;
3127 static gint ett_nr_rrc_SystemInformation = -1;
3128 static gint ett_nr_rrc_T_criticalExtensions_27 = -1;
3129 static gint ett_nr_rrc_T_criticalExtensionsFuture_27 = -1;
3130 static gint ett_nr_rrc_SystemInformation_IEs = -1;
3131 static gint ett_nr_rrc_T_sib_TypeAndInfo = -1;
3132 static gint ett_nr_rrc_T_sib_TypeAndInfo_item = -1;
3133 static gint ett_nr_rrc_T_nonCriticalExtension_28 = -1;
3134 static gint ett_nr_rrc_UEAssistanceInformation = -1;
3135 static gint ett_nr_rrc_T_criticalExtensions_28 = -1;
3136 static gint ett_nr_rrc_T_criticalExtensionsFuture_28 = -1;
3137 static gint ett_nr_rrc_UEAssistanceInformation_IEs = -1;
3138 static gint ett_nr_rrc_T_nonCriticalExtension_29 = -1;
3139 static gint ett_nr_rrc_DelayBudgetReport = -1;
3140 static gint ett_nr_rrc_UECapabilityEnquiry = -1;
3141 static gint ett_nr_rrc_T_criticalExtensions_29 = -1;
3142 static gint ett_nr_rrc_T_criticalExtensionsFuture_29 = -1;
3143 static gint ett_nr_rrc_UECapabilityEnquiry_IEs = -1;
3144 static gint ett_nr_rrc_T_nonCriticalExtension_30 = -1;
3145 static gint ett_nr_rrc_UECapabilityInformation = -1;
3146 static gint ett_nr_rrc_T_criticalExtensions_30 = -1;
3147 static gint ett_nr_rrc_T_criticalExtensionsFuture_30 = -1;
3148 static gint ett_nr_rrc_UECapabilityInformation_IEs = -1;
3149 static gint ett_nr_rrc_T_nonCriticalExtension_31 = -1;
3150 static gint ett_nr_rrc_ULInformationTransfer = -1;
3151 static gint ett_nr_rrc_T_criticalExtensions_31 = -1;
3152 static gint ett_nr_rrc_T_criticalExtensionsFuture_31 = -1;
3153 static gint ett_nr_rrc_ULInformationTransfer_IEs = -1;
3154 static gint ett_nr_rrc_T_nonCriticalExtension_32 = -1;
3155 static gint ett_nr_rrc_SIB2 = -1;
3156 static gint ett_nr_rrc_T_cellReselectionInfoCommon = -1;
3157 static gint ett_nr_rrc_T_speedStateReselectionPars = -1;
3158 static gint ett_nr_rrc_T_q_HystSF = -1;
3159 static gint ett_nr_rrc_T_cellReselectionServingFreqInfo = -1;
3160 static gint ett_nr_rrc_T_intraFreqCellReselectionInfo = -1;
3161 static gint ett_nr_rrc_SIB3 = -1;
3162 static gint ett_nr_rrc_IntraFreqNeighCellList = -1;
3163 static gint ett_nr_rrc_IntraFreqNeighCellInfo = -1;
3164 static gint ett_nr_rrc_IntraFreqBlackCellList = -1;
3165 static gint ett_nr_rrc_SIB4 = -1;
3166 static gint ett_nr_rrc_InterFreqCarrierFreqList = -1;
3167 static gint ett_nr_rrc_InterFreqCarrierFreqInfo = -1;
3168 static gint ett_nr_rrc_T_threshX_Q = -1;
3169 static gint ett_nr_rrc_InterFreqNeighCellList = -1;
3170 static gint ett_nr_rrc_InterFreqNeighCellInfo = -1;
3171 static gint ett_nr_rrc_InterFreqBlackCellList = -1;
3172 static gint ett_nr_rrc_SIB5 = -1;
3173 static gint ett_nr_rrc_CarrierFreqListEUTRA = -1;
3174 static gint ett_nr_rrc_CarrierFreqEUTRA = -1;
3175 static gint ett_nr_rrc_T_threshX_Q_01 = -1;
3176 static gint ett_nr_rrc_EUTRA_FreqBlackCellList = -1;
3177 static gint ett_nr_rrc_EUTRA_FreqNeighCellList = -1;
3178 static gint ett_nr_rrc_EUTRA_FreqNeighCellInfo = -1;
3179 static gint ett_nr_rrc_SIB6 = -1;
3180 static gint ett_nr_rrc_SIB7 = -1;
3181 static gint ett_nr_rrc_SIB8 = -1;
3182 static gint ett_nr_rrc_SIB9 = -1;
3183 static gint ett_nr_rrc_T_timeInfo = -1;
3184 static gint ett_nr_rrc_BeamFailureRecoveryConfig = -1;
3185 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCandidateBeams_OF_PRACH_ResourceDedicatedBFR = -1;
3186 static gint ett_nr_rrc_PRACH_ResourceDedicatedBFR = -1;
3187 static gint ett_nr_rrc_BFR_SSB_Resource = -1;
3188 static gint ett_nr_rrc_BFR_CSIRS_Resource = -1;
3189 static gint ett_nr_rrc_T_ra_OccasionList = -1;
3190 static gint ett_nr_rrc_BSR_Config = -1;
3191 static gint ett_nr_rrc_BWP = -1;
3192 static gint ett_nr_rrc_BWP_Downlink = -1;
3193 static gint ett_nr_rrc_BWP_DownlinkCommon = -1;
3194 static gint ett_nr_rrc_T_pdcch_ConfigCommon = -1;
3195 static gint ett_nr_rrc_T_pdsch_ConfigCommon = -1;
3196 static gint ett_nr_rrc_BWP_DownlinkDedicated = -1;
3197 static gint ett_nr_rrc_T_pdcch_Config = -1;
3198 static gint ett_nr_rrc_T_pdsch_Config = -1;
3199 static gint ett_nr_rrc_T_sps_Config = -1;
3200 static gint ett_nr_rrc_T_radioLinkMonitoringConfig = -1;
3201 static gint ett_nr_rrc_BWP_Uplink = -1;
3202 static gint ett_nr_rrc_BWP_UplinkCommon = -1;
3203 static gint ett_nr_rrc_T_rach_ConfigCommon = -1;
3204 static gint ett_nr_rrc_T_pusch_ConfigCommon = -1;
3205 static gint ett_nr_rrc_T_pucch_ConfigCommon = -1;
3206 static gint ett_nr_rrc_BWP_UplinkDedicated = -1;
3207 static gint ett_nr_rrc_T_pucch_Config = -1;
3208 static gint ett_nr_rrc_T_pusch_Config = -1;
3209 static gint ett_nr_rrc_T_configuredGrantConfig = -1;
3210 static gint ett_nr_rrc_T_srs_Config = -1;
3211 static gint ett_nr_rrc_T_beamFailureRecoveryConfig = -1;
3212 static gint ett_nr_rrc_CellAccessRelatedInfo = -1;
3213 static gint ett_nr_rrc_CellAccessRelatedInfo_EUTRA_5GC = -1;
3214 static gint ett_nr_rrc_PLMN_IdentityList_EUTRA_5GC = -1;
3215 static gint ett_nr_rrc_PLMN_Identity_EUTRA_5GC = -1;
3216 static gint ett_nr_rrc_CellIdentity_EUTRA_5GC = -1;
3217 static gint ett_nr_rrc_CellAccessRelatedInfo_EUTRA_EPC = -1;
3218 static gint ett_nr_rrc_PLMN_IdentityList_EUTRA_EPC = -1;
3219 static gint ett_nr_rrc_CellGroupConfig = -1;
3220 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxLC_ID_OF_RLC_BearerConfig = -1;
3221 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxLC_ID_OF_LogicalChannelIdentity = -1;
3222 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSCells_OF_SCellConfig = -1;
3223 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSCells_OF_SCellIndex = -1;
3224 static gint ett_nr_rrc_SpCellConfig = -1;
3225 static gint ett_nr_rrc_T_rlf_TimersAndConstants = -1;
3226 static gint ett_nr_rrc_ReconfigurationWithSync = -1;
3227 static gint ett_nr_rrc_T_rach_ConfigDedicated = -1;
3228 static gint ett_nr_rrc_SCellConfig = -1;
3229 static gint ett_nr_rrc_CGI_Info = -1;
3230 static gint ett_nr_rrc_T_noSIB1 = -1;
3231 static gint ett_nr_rrc_CodebookConfig = -1;
3232 static gint ett_nr_rrc_T_codebookType = -1;
3233 static gint ett_nr_rrc_T_type1_01 = -1;
3234 static gint ett_nr_rrc_T_subType = -1;
3235 static gint ett_nr_rrc_T_typeI_SinglePanel = -1;
3236 static gint ett_nr_rrc_T_nrOfAntennaPorts = -1;
3237 static gint ett_nr_rrc_T_two = -1;
3238 static gint ett_nr_rrc_T_moreThanTwo = -1;
3239 static gint ett_nr_rrc_T_n1_n2 = -1;
3240 static gint ett_nr_rrc_T_typeI_MultiPanel = -1;
3241 static gint ett_nr_rrc_T_ng_n1_n2 = -1;
3242 static gint ett_nr_rrc_T_type2 = -1;
3243 static gint ett_nr_rrc_T_subType_01 = -1;
3244 static gint ett_nr_rrc_T_typeII = -1;
3245 static gint ett_nr_rrc_T_n1_n2_codebookSubsetRestriction = -1;
3246 static gint ett_nr_rrc_T_typeII_PortSelection = -1;
3247 static gint ett_nr_rrc_ConfiguredGrantConfig = -1;
3248 static gint ett_nr_rrc_T_uci_OnPUSCH = -1;
3249 static gint ett_nr_rrc_T_rrc_ConfiguredUplinkGrant = -1;
3250 static gint ett_nr_rrc_CG_UCI_OnPUSCH = -1;
3251 static gint ett_nr_rrc_SEQUENCE_SIZE_1_4_OF_BetaOffsets = -1;
3252 static gint ett_nr_rrc_ConnEstFailureControl = -1;
3253 static gint ett_nr_rrc_ControlResourceSet = -1;
3254 static gint ett_nr_rrc_T_cce_REG_MappingType = -1;
3255 static gint ett_nr_rrc_T_interleaved = -1;
3256 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofTCI_StatesPDCCH_OF_TCI_StateId = -1;
3257 static gint ett_nr_rrc_CrossCarrierSchedulingConfig = -1;
3258 static gint ett_nr_rrc_T_schedulingCellInfo = -1;
3259 static gint ett_nr_rrc_T_own = -1;
3260 static gint ett_nr_rrc_T_other = -1;
3261 static gint ett_nr_rrc_CSI_AperiodicTriggerStateList = -1;
3262 static gint ett_nr_rrc_CSI_AperiodicTriggerState = -1;
3263 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofReportConfigPerAperiodicTrigger_OF_CSI_AssociatedReportConfigInfo = -1;
3264 static gint ett_nr_rrc_CSI_AssociatedReportConfigInfo = -1;
3265 static gint ett_nr_rrc_T_resourcesForChannel = -1;
3266 static gint ett_nr_rrc_T_nzp_CSI_RS = -1;
3267 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofAP_CSI_RS_ResourcesPerSet_OF_TCI_StateId = -1;
3268 static gint ett_nr_rrc_CSI_FrequencyOccupation = -1;
3269 static gint ett_nr_rrc_CSI_IM_Resource = -1;
3270 static gint ett_nr_rrc_T_csi_IM_ResourceElementPattern = -1;
3271 static gint ett_nr_rrc_T_pattern0 = -1;
3272 static gint ett_nr_rrc_T_pattern1 = -1;
3273 static gint ett_nr_rrc_CSI_IM_ResourceSet = -1;
3274 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourcesPerSet_OF_CSI_IM_ResourceId = -1;
3275 static gint ett_nr_rrc_CSI_MeasConfig = -1;
3276 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_Resources_OF_NZP_CSI_RS_Resource = -1;
3277 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_Resources_OF_NZP_CSI_RS_ResourceId = -1;
3278 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourceSets_OF_NZP_CSI_RS_ResourceSet = -1;
3279 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourceSets_OF_NZP_CSI_RS_ResourceSetId = -1;
3280 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_IM_Resources_OF_CSI_IM_Resource = -1;
3281 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_IM_Resources_OF_CSI_IM_ResourceId = -1;
3282 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourceSets_OF_CSI_IM_ResourceSet = -1;
3283 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourceSets_OF_CSI_IM_ResourceSetId = -1;
3284 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourceSets_OF_CSI_SSB_ResourceSet = -1;
3285 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourceSets_OF_CSI_SSB_ResourceSetId = -1;
3286 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_ResourceConfigurations_OF_CSI_ResourceConfig = -1;
3287 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_ResourceConfigurations_OF_CSI_ResourceConfigId = -1;
3288 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_ReportConfigurations_OF_CSI_ReportConfig = -1;
3289 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_ReportConfigurations_OF_CSI_ReportConfigId = -1;
3290 static gint ett_nr_rrc_T_aperiodicTriggerStateList = -1;
3291 static gint ett_nr_rrc_T_semiPersistentOnPUSCH_TriggerStateList = -1;
3292 static gint ett_nr_rrc_CSI_ReportConfig = -1;
3293 static gint ett_nr_rrc_T_reportConfigType = -1;
3294 static gint ett_nr_rrc_T_periodic = -1;
3295 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofBWPs_OF_PUCCH_CSI_Resource = -1;
3296 static gint ett_nr_rrc_T_semiPersistentOnPUCCH = -1;
3297 static gint ett_nr_rrc_T_semiPersistentOnPUSCH = -1;
3298 static gint ett_nr_rrc_T_reportSlotOffsetList = -1;
3299 static gint ett_nr_rrc_T_aperiodic = -1;
3300 static gint ett_nr_rrc_T_reportSlotOffsetList_01 = -1;
3301 static gint ett_nr_rrc_T_reportQuantity = -1;
3302 static gint ett_nr_rrc_T_cri_RI_i1_CQI = -1;
3303 static gint ett_nr_rrc_T_reportFreqConfiguration = -1;
3304 static gint ett_nr_rrc_T_csi_ReportingBand = -1;
3305 static gint ett_nr_rrc_T_groupBasedBeamReporting = -1;
3306 static gint ett_nr_rrc_T_disabled = -1;
3307 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourcesPerConfig_OF_PortIndexFor8Ranks = -1;
3308 static gint ett_nr_rrc_T_semiPersistentOnPUSCH_v1530 = -1;
3309 static gint ett_nr_rrc_CSI_ReportPeriodicityAndOffset = -1;
3310 static gint ett_nr_rrc_PUCCH_CSI_Resource = -1;
3311 static gint ett_nr_rrc_PortIndexFor8Ranks = -1;
3312 static gint ett_nr_rrc_T_portIndex8 = -1;
3313 static gint ett_nr_rrc_SEQUENCE_SIZE_2_OF_PortIndex8 = -1;
3314 static gint ett_nr_rrc_SEQUENCE_SIZE_3_OF_PortIndex8 = -1;
3315 static gint ett_nr_rrc_SEQUENCE_SIZE_4_OF_PortIndex8 = -1;
3316 static gint ett_nr_rrc_SEQUENCE_SIZE_5_OF_PortIndex8 = -1;
3317 static gint ett_nr_rrc_SEQUENCE_SIZE_6_OF_PortIndex8 = -1;
3318 static gint ett_nr_rrc_SEQUENCE_SIZE_7_OF_PortIndex8 = -1;
3319 static gint ett_nr_rrc_SEQUENCE_SIZE_8_OF_PortIndex8 = -1;
3320 static gint ett_nr_rrc_T_portIndex4 = -1;
3321 static gint ett_nr_rrc_SEQUENCE_SIZE_2_OF_PortIndex4 = -1;
3322 static gint ett_nr_rrc_SEQUENCE_SIZE_3_OF_PortIndex4 = -1;
3323 static gint ett_nr_rrc_SEQUENCE_SIZE_4_OF_PortIndex4 = -1;
3324 static gint ett_nr_rrc_T_portIndex2 = -1;
3325 static gint ett_nr_rrc_SEQUENCE_SIZE_2_OF_PortIndex2 = -1;
3326 static gint ett_nr_rrc_CSI_ResourceConfig = -1;
3327 static gint ett_nr_rrc_T_csi_RS_ResourceSetList = -1;
3328 static gint ett_nr_rrc_T_nzp_CSI_RS_SSB = -1;
3329 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourceSetsPerConfig_OF_NZP_CSI_RS_ResourceSetId = -1;
3330 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourceSetsPerConfig_OF_CSI_SSB_ResourceSetId = -1;
3331 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourceSetsPerConfig_OF_CSI_IM_ResourceSetId = -1;
3332 static gint ett_nr_rrc_CSI_ResourcePeriodicityAndOffset = -1;
3333 static gint ett_nr_rrc_CSI_RS_ResourceConfigMobility = -1;
3334 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_RS_CellsRRM_OF_CSI_RS_CellMobility = -1;
3335 static gint ett_nr_rrc_CSI_RS_CellMobility = -1;
3336 static gint ett_nr_rrc_T_csi_rs_MeasurementBW = -1;
3337 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_RS_ResourcesRRM_OF_CSI_RS_Resource_Mobility = -1;
3338 static gint ett_nr_rrc_CSI_RS_Resource_Mobility = -1;
3339 static gint ett_nr_rrc_T_slotConfig = -1;
3340 static gint ett_nr_rrc_T_associatedSSB = -1;
3341 static gint ett_nr_rrc_T_frequencyDomainAllocation = -1;
3342 static gint ett_nr_rrc_CSI_RS_ResourceMapping = -1;
3343 static gint ett_nr_rrc_T_frequencyDomainAllocation_01 = -1;
3344 static gint ett_nr_rrc_T_density_01 = -1;
3345 static gint ett_nr_rrc_CSI_SemiPersistentOnPUSCH_TriggerStateList = -1;
3346 static gint ett_nr_rrc_CSI_SemiPersistentOnPUSCH_TriggerState = -1;
3347 static gint ett_nr_rrc_CSI_SSB_ResourceSet = -1;
3348 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourcePerSet_OF_SSB_Index = -1;
3349 static gint ett_nr_rrc_DMRS_DownlinkConfig = -1;
3350 static gint ett_nr_rrc_T_phaseTrackingRS = -1;
3351 static gint ett_nr_rrc_DMRS_UplinkConfig = -1;
3352 static gint ett_nr_rrc_T_phaseTrackingRS_01 = -1;
3353 static gint ett_nr_rrc_T_transformPrecodingDisabled = -1;
3354 static gint ett_nr_rrc_T_transformPrecodingEnabled = -1;
3355 static gint ett_nr_rrc_DownlinkConfigCommon = -1;
3356 static gint ett_nr_rrc_DownlinkConfigCommonSIB = -1;
3357 static gint ett_nr_rrc_BCCH_Config = -1;
3358 static gint ett_nr_rrc_PCCH_Config = -1;
3359 static gint ett_nr_rrc_T_nAndPagingFrameOffset = -1;
3360 static gint ett_nr_rrc_T_firstPDCCH_MonitoringOccasionOfPO = -1;
3361 static gint ett_nr_rrc_T_sCS15KHZoneT = -1;
3362 static gint ett_nr_rrc_T_sCS30KHZoneT_SCS15KHZhalfT = -1;
3363 static gint ett_nr_rrc_T_sCS60KHZoneT_SCS30KHZhalfT_SCS15KHZquarterT = -1;
3364 static gint ett_nr_rrc_T_sCS120KHZoneT_SCS60KHZhalfT_SCS30KHZquarterT_SCS15KHZoneEighthT = -1;
3365 static gint ett_nr_rrc_T_sCS120KHZhalfT_SCS60KHZquarterT_SCS30KHZoneEighthT_SCS15KHZoneSixteenthT = -1;
3366 static gint ett_nr_rrc_T_sCS120KHZquarterT_SCS60KHZoneEighthT_SCS30KHZoneSixteenthT = -1;
3367 static gint ett_nr_rrc_T_sCS120KHZoneEighthT_SCS60KHZoneSixteenthT = -1;
3368 static gint ett_nr_rrc_T_sCS120KHZoneSixteenthT = -1;
3369 static gint ett_nr_rrc_DownlinkPreemption = -1;
3370 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofServingCells_OF_INT_ConfigurationPerServingCell = -1;
3371 static gint ett_nr_rrc_INT_ConfigurationPerServingCell = -1;
3372 static gint ett_nr_rrc_DRX_Config = -1;
3373 static gint ett_nr_rrc_T_drx_onDurationTimer = -1;
3374 static gint ett_nr_rrc_T_drx_LongCycleStartOffset_01 = -1;
3375 static gint ett_nr_rrc_T_shortDRX_01 = -1;
3376 static gint ett_nr_rrc_FrequencyInfoDL = -1;
3377 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxSCSs_OF_SCS_SpecificCarrier = -1;
3378 static gint ett_nr_rrc_FrequencyInfoDL_SIB = -1;
3379 static gint ett_nr_rrc_FrequencyInfoUL = -1;
3380 static gint ett_nr_rrc_FrequencyInfoUL_SIB = -1;
3381 static gint ett_nr_rrc_LocationMeasurementInfo = -1;
3382 static gint ett_nr_rrc_EUTRA_RSTD_InfoList = -1;
3383 static gint ett_nr_rrc_EUTRA_RSTD_Info = -1;
3384 static gint ett_nr_rrc_LogicalChannelConfig = -1;
3385 static gint ett_nr_rrc_T_ul_SpecificParameters = -1;
3386 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofServingCells_1_OF_ServCellIndex = -1;
3387 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxSCSs_OF_SubcarrierSpacing = -1;
3388 static gint ett_nr_rrc_MAC_CellGroupConfig = -1;
3389 static gint ett_nr_rrc_T_drx_Config = -1;
3390 static gint ett_nr_rrc_T_phr_Config = -1;
3391 static gint ett_nr_rrc_T_dataInactivityTimer_v1530 = -1;
3392 static gint ett_nr_rrc_MeasConfig = -1;
3393 static gint ett_nr_rrc_T_s_MeasureConfig = -1;
3394 static gint ett_nr_rrc_MeasObjectToRemoveList = -1;
3395 static gint ett_nr_rrc_MeasIdToRemoveList = -1;
3396 static gint ett_nr_rrc_ReportConfigToRemoveList = -1;
3397 static gint ett_nr_rrc_MeasGapConfig = -1;
3398 static gint ett_nr_rrc_T_gapFR2 = -1;
3399 static gint ett_nr_rrc_T_gapFR1 = -1;
3400 static gint ett_nr_rrc_T_gapUE = -1;
3401 static gint ett_nr_rrc_GapConfig = -1;
3402 static gint ett_nr_rrc_MeasGapSharingConfig = -1;
3403 static gint ett_nr_rrc_T_gapSharingFR2 = -1;
3404 static gint ett_nr_rrc_T_gapSharingFR1 = -1;
3405 static gint ett_nr_rrc_T_gapSharingUE = -1;
3406 static gint ett_nr_rrc_MeasIdToAddModList = -1;
3407 static gint ett_nr_rrc_MeasIdToAddMod = -1;
3408 static gint ett_nr_rrc_MeasObjectEUTRA = -1;
3409 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxCellMeasEUTRA_OF_EUTRA_Cell = -1;
3410 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxCellMeasEUTRA_OF_EUTRA_BlackCell = -1;
3411 static gint ett_nr_rrc_EUTRA_CellIndexList = -1;
3412 static gint ett_nr_rrc_EUTRA_Cell = -1;
3413 static gint ett_nr_rrc_EUTRA_BlackCell = -1;
3414 static gint ett_nr_rrc_MeasObjectNR = -1;
3415 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPCI_Ranges_OF_PCI_RangeElement = -1;
3416 static gint ett_nr_rrc_ReferenceSignalConfig = -1;
3417 static gint ett_nr_rrc_T_csi_rs_ResourceConfigMobility = -1;
3418 static gint ett_nr_rrc_SSB_ConfigMobility = -1;
3419 static gint ett_nr_rrc_T_ssb_ToMeasure = -1;
3420 static gint ett_nr_rrc_Q_OffsetRangeList = -1;
3421 static gint ett_nr_rrc_ThresholdNR = -1;
3422 static gint ett_nr_rrc_CellsToAddModList = -1;
3423 static gint ett_nr_rrc_CellsToAddMod = -1;
3424 static gint ett_nr_rrc_MeasObjectToAddModList = -1;
3425 static gint ett_nr_rrc_MeasObjectToAddMod = -1;
3426 static gint ett_nr_rrc_T_measObject = -1;
3427 static gint ett_nr_rrc_MeasResultCellListSFTD = -1;
3428 static gint ett_nr_rrc_MeasResultCellSFTD = -1;
3429 static gint ett_nr_rrc_MeasResults = -1;
3430 static gint ett_nr_rrc_T_measResultNeighCells = -1;
3431 static gint ett_nr_rrc_MeasResultServMOList = -1;
3432 static gint ett_nr_rrc_MeasResultServMO = -1;
3433 static gint ett_nr_rrc_MeasResultListNR = -1;
3434 static gint ett_nr_rrc_MeasResultNR = -1;
3435 static gint ett_nr_rrc_T_measResult = -1;
3436 static gint ett_nr_rrc_T_cellResults = -1;
3437 static gint ett_nr_rrc_T_rsIndexResults = -1;
3438 static gint ett_nr_rrc_MeasResultListEUTRA = -1;
3439 static gint ett_nr_rrc_MeasResultEUTRA = -1;
3440 static gint ett_nr_rrc_T_cgi_Info = -1;
3441 static gint ett_nr_rrc_T_cgi_info_EPC = -1;
3442 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxPLMN_OF_CellAccessRelatedInfo_EUTRA_EPC = -1;
3443 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxPLMN_OF_CellAccessRelatedInfo_EUTRA_5GC = -1;
3444 static gint ett_nr_rrc_MultiBandInfoListEUTRA = -1;
3445 static gint ett_nr_rrc_MeasQuantityResults = -1;
3446 static gint ett_nr_rrc_MeasQuantityResultsEUTRA = -1;
3447 static gint ett_nr_rrc_ResultsPerSSB_IndexList = -1;
3448 static gint ett_nr_rrc_ResultsPerSSB_Index = -1;
3449 static gint ett_nr_rrc_ResultsPerCSI_RS_IndexList = -1;
3450 static gint ett_nr_rrc_ResultsPerCSI_RS_Index = -1;
3451 static gint ett_nr_rrc_MeasResultSCG_Failure = -1;
3452 static gint ett_nr_rrc_MeasResultList2NR = -1;
3453 static gint ett_nr_rrc_MeasResult2NR = -1;
3454 static gint ett_nr_rrc_MobilityStateParameters = -1;
3455 static gint ett_nr_rrc_MultiFrequencyBandListNR = -1;
3456 static gint ett_nr_rrc_NZP_CSI_RS_Resource = -1;
3457 static gint ett_nr_rrc_NZP_CSI_RS_ResourceSet = -1;
3458 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourcesPerSet_OF_NZP_CSI_RS_ResourceId = -1;
3459 static gint ett_nr_rrc_PCI_List = -1;
3460 static gint ett_nr_rrc_PCI_Range = -1;
3461 static gint ett_nr_rrc_PCI_RangeElement = -1;
3462 static gint ett_nr_rrc_PCI_RangeIndexList = -1;
3463 static gint ett_nr_rrc_PDCCH_Config = -1;
3464 static gint ett_nr_rrc_SEQUENCE_SIZE_1_3_OF_ControlResourceSet = -1;
3465 static gint ett_nr_rrc_SEQUENCE_SIZE_1_3_OF_ControlResourceSetId = -1;
3466 static gint ett_nr_rrc_SEQUENCE_SIZE_1_10_OF_SearchSpace = -1;
3467 static gint ett_nr_rrc_SEQUENCE_SIZE_1_10_OF_SearchSpaceId = -1;
3468 static gint ett_nr_rrc_T_downlinkPreemption = -1;
3469 static gint ett_nr_rrc_T_tpc_PUSCH = -1;
3470 static gint ett_nr_rrc_T_tpc_PUCCH = -1;
3471 static gint ett_nr_rrc_T_tpc_SRS = -1;
3472 static gint ett_nr_rrc_PDCCH_ConfigCommon = -1;
3473 static gint ett_nr_rrc_SEQUENCE_SIZE_1_4_OF_SearchSpace = -1;
3474 static gint ett_nr_rrc_PDCCH_ConfigSIB1 = -1;
3475 static gint ett_nr_rrc_PDCCH_ServingCellConfig = -1;
3476 static gint ett_nr_rrc_T_slotFormatIndicator = -1;
3477 static gint ett_nr_rrc_PDCP_Config = -1;
3478 static gint ett_nr_rrc_T_drb = -1;
3479 static gint ett_nr_rrc_T_headerCompression = -1;
3480 static gint ett_nr_rrc_T_rohc = -1;
3481 static gint ett_nr_rrc_T_profiles = -1;
3482 static gint ett_nr_rrc_T_uplinkOnlyROHC = -1;
3483 static gint ett_nr_rrc_T_profiles_01 = -1;
3484 static gint ett_nr_rrc_T_moreThanOneRLC = -1;
3485 static gint ett_nr_rrc_T_primaryPath = -1;
3486 static gint ett_nr_rrc_PDSCH_Config = -1;
3487 static gint ett_nr_rrc_T_dmrs_DownlinkForPDSCH_MappingTypeA = -1;
3488 static gint ett_nr_rrc_T_dmrs_DownlinkForPDSCH_MappingTypeB = -1;
3489 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofTCI_States_OF_TCI_State = -1;
3490 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofTCI_States_OF_TCI_StateId = -1;
3491 static gint ett_nr_rrc_T_pdsch_TimeDomainAllocationList = -1;
3492 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofRateMatchPatterns_OF_RateMatchPattern = -1;
3493 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofRateMatchPatterns_OF_RateMatchPatternId = -1;
3494 static gint ett_nr_rrc_T_prb_BundlingType = -1;
3495 static gint ett_nr_rrc_T_staticBundling = -1;
3496 static gint ett_nr_rrc_T_dynamicBundling = -1;
3497 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_Resources_OF_ZP_CSI_RS_Resource = -1;
3498 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_Resources_OF_ZP_CSI_RS_ResourceId = -1;
3499 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourceSets_OF_ZP_CSI_RS_ResourceSet = -1;
3500 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourceSets_OF_ZP_CSI_RS_ResourceSetId = -1;
3501 static gint ett_nr_rrc_T_p_ZP_CSI_RS_ResourceSet = -1;
3502 static gint ett_nr_rrc_RateMatchPatternGroup = -1;
3503 static gint ett_nr_rrc_RateMatchPatternGroup_item = -1;
3504 static gint ett_nr_rrc_PDSCH_ConfigCommon = -1;
3505 static gint ett_nr_rrc_PDSCH_ServingCellConfig = -1;
3506 static gint ett_nr_rrc_T_codeBlockGroupTransmission = -1;
3507 static gint ett_nr_rrc_PDSCH_CodeBlockGroupTransmission = -1;
3508 static gint ett_nr_rrc_PDSCH_TimeDomainResourceAllocationList = -1;
3509 static gint ett_nr_rrc_PDSCH_TimeDomainResourceAllocation = -1;
3510 static gint ett_nr_rrc_PHR_Config = -1;
3511 static gint ett_nr_rrc_PhysicalCellGroupConfig = -1;
3512 static gint ett_nr_rrc_T_cs_RNTI = -1;
3513 static gint ett_nr_rrc_PLMN_Identity = -1;
3514 static gint ett_nr_rrc_MCC = -1;
3515 static gint ett_nr_rrc_MNC = -1;
3516 static gint ett_nr_rrc_PLMN_IdentityInfoList = -1;
3517 static gint ett_nr_rrc_PLMN_IdentityInfo = -1;
3518 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxPLMN_OF_PLMN_Identity = -1;
3519 static gint ett_nr_rrc_PTRS_DownlinkConfig = -1;
3520 static gint ett_nr_rrc_T_frequencyDensity = -1;
3521 static gint ett_nr_rrc_T_timeDensity = -1;
3522 static gint ett_nr_rrc_PTRS_UplinkConfig = -1;
3523 static gint ett_nr_rrc_T_transformPrecoderDisabled = -1;
3524 static gint ett_nr_rrc_T_frequencyDensity_01 = -1;
3525 static gint ett_nr_rrc_T_timeDensity_01 = -1;
3526 static gint ett_nr_rrc_T_transformPrecoderEnabled = -1;
3527 static gint ett_nr_rrc_T_sampleDensity = -1;
3528 static gint ett_nr_rrc_PUCCH_Config = -1;
3529 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_ResourceSets_OF_PUCCH_ResourceSet = -1;
3530 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_ResourceSets_OF_PUCCH_ResourceSetId = -1;
3531 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_Resources_OF_PUCCH_Resource = -1;
3532 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_Resources_OF_PUCCH_ResourceId = -1;
3533 static gint ett_nr_rrc_T_format1 = -1;
3534 static gint ett_nr_rrc_T_format2 = -1;
3535 static gint ett_nr_rrc_T_format3 = -1;
3536 static gint ett_nr_rrc_T_format4 = -1;
3537 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSR_Resources_OF_SchedulingRequestResourceConfig = -1;
3538 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSR_Resources_OF_SchedulingRequestResourceId = -1;
3539 static gint ett_nr_rrc_SEQUENCE_SIZE_1_2_OF_PUCCH_ResourceId = -1;
3540 static gint ett_nr_rrc_T_dl_DataToUL_ACK = -1;
3541 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSpatialRelationInfos_OF_PUCCH_SpatialRelationInfo = -1;
3542 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSpatialRelationInfos_OF_PUCCH_SpatialRelationInfoId = -1;
3543 static gint ett_nr_rrc_PUCCH_FormatConfig = -1;
3544 static gint ett_nr_rrc_PUCCH_ResourceSet = -1;
3545 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_ResourcesPerSet_OF_PUCCH_ResourceId = -1;
3546 static gint ett_nr_rrc_PUCCH_Resource = -1;
3547 static gint ett_nr_rrc_T_format = -1;
3548 static gint ett_nr_rrc_PUCCH_format0 = -1;
3549 static gint ett_nr_rrc_PUCCH_format1 = -1;
3550 static gint ett_nr_rrc_PUCCH_format2 = -1;
3551 static gint ett_nr_rrc_PUCCH_format3 = -1;
3552 static gint ett_nr_rrc_PUCCH_format4 = -1;
3553 static gint ett_nr_rrc_PUCCH_ConfigCommon = -1;
3554 static gint ett_nr_rrc_PUCCH_PowerControl = -1;
3555 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_P0_PerSet_OF_P0_PUCCH = -1;
3556 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_PathlossReferenceRSs_OF_PUCCH_PathlossReferenceRS = -1;
3557 static gint ett_nr_rrc_P0_PUCCH = -1;
3558 static gint ett_nr_rrc_PUCCH_PathlossReferenceRS = -1;
3559 static gint ett_nr_rrc_T_referenceSignal = -1;
3560 static gint ett_nr_rrc_PUCCH_SpatialRelationInfo = -1;
3561 static gint ett_nr_rrc_T_referenceSignal_01 = -1;
3562 static gint ett_nr_rrc_T_srs = -1;
3563 static gint ett_nr_rrc_PUCCH_TPC_CommandConfig = -1;
3564 static gint ett_nr_rrc_PUSCH_Config = -1;
3565 static gint ett_nr_rrc_T_dmrs_UplinkForPUSCH_MappingTypeA = -1;
3566 static gint ett_nr_rrc_T_dmrs_UplinkForPUSCH_MappingTypeB = -1;
3567 static gint ett_nr_rrc_T_frequencyHoppingOffsetLists = -1;
3568 static gint ett_nr_rrc_T_pusch_TimeDomainAllocationList = -1;
3569 static gint ett_nr_rrc_T_uci_OnPUSCH_01 = -1;
3570 static gint ett_nr_rrc_UCI_OnPUSCH = -1;
3571 static gint ett_nr_rrc_T_betaOffsets = -1;
3572 static gint ett_nr_rrc_SEQUENCE_SIZE_4_OF_BetaOffsets = -1;
3573 static gint ett_nr_rrc_PUSCH_ConfigCommon = -1;
3574 static gint ett_nr_rrc_PUSCH_PowerControl = -1;
3575 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofP0_PUSCH_AlphaSets_OF_P0_PUSCH_AlphaSet = -1;
3576 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUSCH_PathlossReferenceRSs_OF_PUSCH_PathlossReferenceRS = -1;
3577 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUSCH_PathlossReferenceRSs_OF_PUSCH_PathlossReferenceRS_Id = -1;
3578 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRI_PUSCH_Mappings_OF_SRI_PUSCH_PowerControl = -1;
3579 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRI_PUSCH_Mappings_OF_SRI_PUSCH_PowerControlId = -1;
3580 static gint ett_nr_rrc_P0_PUSCH_AlphaSet = -1;
3581 static gint ett_nr_rrc_PUSCH_PathlossReferenceRS = -1;
3582 static gint ett_nr_rrc_T_referenceSignal_02 = -1;
3583 static gint ett_nr_rrc_SRI_PUSCH_PowerControl = -1;
3584 static gint ett_nr_rrc_BetaOffsets = -1;
3585 static gint ett_nr_rrc_PUSCH_ServingCellConfig = -1;
3586 static gint ett_nr_rrc_T_codeBlockGroupTransmission_01 = -1;
3587 static gint ett_nr_rrc_PUSCH_CodeBlockGroupTransmission = -1;
3588 static gint ett_nr_rrc_PUSCH_TimeDomainResourceAllocationList = -1;
3589 static gint ett_nr_rrc_PUSCH_TimeDomainResourceAllocation = -1;
3590 static gint ett_nr_rrc_PUSCH_TPC_CommandConfig = -1;
3591 static gint ett_nr_rrc_QuantityConfig = -1;
3592 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofQuantityConfig_OF_QuantityConfigNR = -1;
3593 static gint ett_nr_rrc_QuantityConfigNR = -1;
3594 static gint ett_nr_rrc_QuantityConfigRS = -1;
3595 static gint ett_nr_rrc_FilterConfig = -1;
3596 static gint ett_nr_rrc_RACH_ConfigCommon = -1;
3597 static gint ett_nr_rrc_T_ssb_perRACH_OccasionAndCB_PreamblesPerSSB = -1;
3598 static gint ett_nr_rrc_T_groupBconfigured = -1;
3599 static gint ett_nr_rrc_T_prach_RootSequenceIndex = -1;
3600 static gint ett_nr_rrc_RACH_ConfigDedicated = -1;
3601 static gint ett_nr_rrc_CFRA = -1;
3602 static gint ett_nr_rrc_T_occasions = -1;
3603 static gint ett_nr_rrc_T_resources = -1;
3604 static gint ett_nr_rrc_T_ssb = -1;
3605 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxRA_SSB_Resources_OF_CFRA_SSB_Resource = -1;
3606 static gint ett_nr_rrc_T_csirs = -1;
3607 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxRA_CSIRS_Resources_OF_CFRA_CSIRS_Resource = -1;
3608 static gint ett_nr_rrc_CFRA_SSB_Resource = -1;
3609 static gint ett_nr_rrc_CFRA_CSIRS_Resource = -1;
3610 static gint ett_nr_rrc_T_ra_OccasionList_01 = -1;
3611 static gint ett_nr_rrc_RACH_ConfigGeneric = -1;
3612 static gint ett_nr_rrc_RA_Prioritization = -1;
3613 static gint ett_nr_rrc_RadioBearerConfig = -1;
3614 static gint ett_nr_rrc_SRB_ToAddModList = -1;
3615 static gint ett_nr_rrc_SRB_ToAddMod = -1;
3616 static gint ett_nr_rrc_DRB_ToAddModList = -1;
3617 static gint ett_nr_rrc_DRB_ToAddMod = -1;
3618 static gint ett_nr_rrc_T_cnAssociation = -1;
3619 static gint ett_nr_rrc_DRB_ToReleaseList = -1;
3620 static gint ett_nr_rrc_SecurityConfig = -1;
3621 static gint ett_nr_rrc_RadioLinkMonitoringConfig = -1;
3622 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofFailureDetectionResources_OF_RadioLinkMonitoringRS = -1;
3623 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofFailureDetectionResources_OF_RadioLinkMonitoringRS_Id = -1;
3624 static gint ett_nr_rrc_RadioLinkMonitoringRS = -1;
3625 static gint ett_nr_rrc_T_detectionResource = -1;
3626 static gint ett_nr_rrc_RateMatchPattern = -1;
3627 static gint ett_nr_rrc_T_patternType = -1;
3628 static gint ett_nr_rrc_T_bitmaps = -1;
3629 static gint ett_nr_rrc_T_symbolsInResourceBlock = -1;
3630 static gint ett_nr_rrc_T_periodicityAndPattern = -1;
3631 static gint ett_nr_rrc_RateMatchPatternLTE_CRS = -1;
3632 static gint ett_nr_rrc_ReportConfigInterRAT = -1;
3633 static gint ett_nr_rrc_T_reportType = -1;
3634 static gint ett_nr_rrc_ReportCGI_EUTRA = -1;
3635 static gint ett_nr_rrc_EventTriggerConfigInterRAT = -1;
3636 static gint ett_nr_rrc_T_eventId = -1;
3637 static gint ett_nr_rrc_T_eventB1 = -1;
3638 static gint ett_nr_rrc_T_eventB2 = -1;
3639 static gint ett_nr_rrc_PeriodicalReportConfigInterRAT = -1;
3640 static gint ett_nr_rrc_MeasTriggerQuantityEUTRA = -1;
3641 static gint ett_nr_rrc_ReportConfigNR = -1;
3642 static gint ett_nr_rrc_T_reportType_01 = -1;
3643 static gint ett_nr_rrc_ReportCGI = -1;
3644 static gint ett_nr_rrc_EventTriggerConfig = -1;
3645 static gint ett_nr_rrc_T_eventId_01 = -1;
3646 static gint ett_nr_rrc_T_eventA1 = -1;
3647 static gint ett_nr_rrc_T_eventA2 = -1;
3648 static gint ett_nr_rrc_T_eventA3 = -1;
3649 static gint ett_nr_rrc_T_eventA4 = -1;
3650 static gint ett_nr_rrc_T_eventA5 = -1;
3651 static gint ett_nr_rrc_T_eventA6 = -1;
3652 static gint ett_nr_rrc_PeriodicalReportConfig = -1;
3653 static gint ett_nr_rrc_MeasTriggerQuantity = -1;
3654 static gint ett_nr_rrc_MeasTriggerQuantityOffset = -1;
3655 static gint ett_nr_rrc_MeasReportQuantity = -1;
3656 static gint ett_nr_rrc_ReportConfigToAddModList = -1;
3657 static gint ett_nr_rrc_ReportConfigToAddMod = -1;
3658 static gint ett_nr_rrc_T_reportConfig = -1;
3659 static gint ett_nr_rrc_RLC_BearerConfig = -1;
3660 static gint ett_nr_rrc_T_servedRadioBearer = -1;
3661 static gint ett_nr_rrc_RLC_Config = -1;
3662 static gint ett_nr_rrc_T_am = -1;
3663 static gint ett_nr_rrc_T_um_Bi_Directional = -1;
3664 static gint ett_nr_rrc_T_um_Uni_Directional_UL = -1;
3665 static gint ett_nr_rrc_T_um_Uni_Directional_DL = -1;
3666 static gint ett_nr_rrc_UL_AM_RLC = -1;
3667 static gint ett_nr_rrc_DL_AM_RLC = -1;
3668 static gint ett_nr_rrc_UL_UM_RLC = -1;
3669 static gint ett_nr_rrc_DL_UM_RLC = -1;
3670 static gint ett_nr_rrc_RLF_TimersAndConstants = -1;
3671 static gint ett_nr_rrc_SchedulingRequestConfig = -1;
3672 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSR_ConfigPerCellGroup_OF_SchedulingRequestToAddMod = -1;
3673 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSR_ConfigPerCellGroup_OF_SchedulingRequestId = -1;
3674 static gint ett_nr_rrc_SchedulingRequestToAddMod = -1;
3675 static gint ett_nr_rrc_SchedulingRequestResourceConfig = -1;
3676 static gint ett_nr_rrc_T_periodicityAndOffset = -1;
3677 static gint ett_nr_rrc_SCS_SpecificCarrier = -1;
3678 static gint ett_nr_rrc_SDAP_Config = -1;
3679 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofQFIs_OF_QFI = -1;
3680 static gint ett_nr_rrc_SearchSpace = -1;
3681 static gint ett_nr_rrc_T_monitoringSlotPeriodicityAndOffset = -1;
3682 static gint ett_nr_rrc_T_nrofCandidates = -1;
3683 static gint ett_nr_rrc_T_searchSpaceType = -1;
3684 static gint ett_nr_rrc_T_common = -1;
3685 static gint ett_nr_rrc_T_dci_Format0_0_AndFormat1_0 = -1;
3686 static gint ett_nr_rrc_T_dci_Format2_0 = -1;
3687 static gint ett_nr_rrc_T_nrofCandidates_SFI = -1;
3688 static gint ett_nr_rrc_T_dci_Format2_1 = -1;
3689 static gint ett_nr_rrc_T_dci_Format2_2 = -1;
3690 static gint ett_nr_rrc_T_dci_Format2_3 = -1;
3691 static gint ett_nr_rrc_T_ue_Specific = -1;
3692 static gint ett_nr_rrc_SecurityAlgorithmConfig = -1;
3693 static gint ett_nr_rrc_ServingCellConfig = -1;
3694 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofBWPs_OF_BWP_Id = -1;
3695 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofBWPs_OF_BWP_Downlink = -1;
3696 static gint ett_nr_rrc_T_pdcch_ServingCellConfig = -1;
3697 static gint ett_nr_rrc_T_pdsch_ServingCellConfig = -1;
3698 static gint ett_nr_rrc_T_csi_MeasConfig = -1;
3699 static gint ett_nr_rrc_UplinkConfig = -1;
3700 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofBWPs_OF_BWP_Uplink = -1;
3701 static gint ett_nr_rrc_T_pusch_ServingCellConfig = -1;
3702 static gint ett_nr_rrc_T_carrierSwitching = -1;
3703 static gint ett_nr_rrc_ServingCellConfigCommon = -1;
3704 static gint ett_nr_rrc_T_ssb_PositionsInBurst = -1;
3705 static gint ett_nr_rrc_T_lte_CRS_ToMatchAround = -1;
3706 static gint ett_nr_rrc_ServingCellConfigCommonSIB = -1;
3707 static gint ett_nr_rrc_T_ssb_PositionsInBurst_01 = -1;
3708 static gint ett_nr_rrc_SI_SchedulingInfo = -1;
3709 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxSI_Message_OF_SchedulingInfo = -1;
3710 static gint ett_nr_rrc_SchedulingInfo = -1;
3711 static gint ett_nr_rrc_SIB_Mapping = -1;
3712 static gint ett_nr_rrc_SIB_TypeInfo = -1;
3713 static gint ett_nr_rrc_SI_RequestConfig = -1;
3714 static gint ett_nr_rrc_T_rach_OccasionsSI = -1;
3715 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxSI_Message_OF_SI_RequestResources = -1;
3716 static gint ett_nr_rrc_SI_RequestResources = -1;
3717 static gint ett_nr_rrc_SlotFormatCombinationsPerCell = -1;
3718 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSlotFormatCombinationsPerSet_OF_SlotFormatCombination = -1;
3719 static gint ett_nr_rrc_SlotFormatCombination = -1;
3720 static gint ett_nr_rrc_T_slotFormats = -1;
3721 static gint ett_nr_rrc_SlotFormatIndicator = -1;
3722 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofAggregatedCellsPerCellGroup_OF_SlotFormatCombinationsPerCell = -1;
3723 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofAggregatedCellsPerCellGroup_OF_ServCellIndex = -1;
3724 static gint ett_nr_rrc_S_NSSAI = -1;
3725 static gint ett_nr_rrc_SpeedStateScaleFactors = -1;
3726 static gint ett_nr_rrc_SS_RSSI_Measurement = -1;
3727 static gint ett_nr_rrc_SPS_Config = -1;
3728 static gint ett_nr_rrc_SRS_CarrierSwitching = -1;
3729 static gint ett_nr_rrc_T_srs_TPC_PDCCH_Group = -1;
3730 static gint ett_nr_rrc_SEQUENCE_SIZE_1_32_OF_SRS_TPC_PDCCH_Config = -1;
3731 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofServingCells_OF_ServCellIndex = -1;
3732 static gint ett_nr_rrc_SRS_TPC_PDCCH_Config = -1;
3733 static gint ett_nr_rrc_SEQUENCE_SIZE_1_4_OF_SRS_CC_SetIndex = -1;
3734 static gint ett_nr_rrc_SRS_CC_SetIndex = -1;
3735 static gint ett_nr_rrc_SRS_Config = -1;
3736 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRS_ResourceSets_OF_SRS_ResourceSetId = -1;
3737 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRS_ResourceSets_OF_SRS_ResourceSet = -1;
3738 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRS_Resources_OF_SRS_ResourceId = -1;
3739 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRS_Resources_OF_SRS_Resource = -1;
3740 static gint ett_nr_rrc_SRS_ResourceSet = -1;
3741 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRS_ResourcesPerSet_OF_SRS_ResourceId = -1;
3742 static gint ett_nr_rrc_T_resourceType_01 = -1;
3743 static gint ett_nr_rrc_T_aperiodic_01 = -1;
3744 static gint ett_nr_rrc_T_aperiodicSRS_ResourceTriggerList_v1530 = -1;
3745 static gint ett_nr_rrc_T_semi_persistent = -1;
3746 static gint ett_nr_rrc_T_periodic_01 = -1;
3747 static gint ett_nr_rrc_T_pathlossReferenceRS = -1;
3748 static gint ett_nr_rrc_SRS_Resource = -1;
3749 static gint ett_nr_rrc_T_transmissionComb = -1;
3750 static gint ett_nr_rrc_T_n2 = -1;
3751 static gint ett_nr_rrc_T_n4 = -1;
3752 static gint ett_nr_rrc_T_resourceMapping = -1;
3753 static gint ett_nr_rrc_T_freqHopping = -1;
3754 static gint ett_nr_rrc_T_resourceType_02 = -1;
3755 static gint ett_nr_rrc_T_aperiodic_02 = -1;
3756 static gint ett_nr_rrc_T_semi_persistent_01 = -1;
3757 static gint ett_nr_rrc_T_periodic_02 = -1;
3758 static gint ett_nr_rrc_SRS_SpatialRelationInfo = -1;
3759 static gint ett_nr_rrc_T_referenceSignal_03 = -1;
3760 static gint ett_nr_rrc_T_srs_01 = -1;
3761 static gint ett_nr_rrc_SRS_PeriodicityAndOffset = -1;
3762 static gint ett_nr_rrc_SRS_TPC_CommandConfig = -1;
3763 static gint ett_nr_rrc_SSB_MTC = -1;
3764 static gint ett_nr_rrc_T_periodicityAndOffset_01 = -1;
3765 static gint ett_nr_rrc_SSB_MTC2 = -1;
3766 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPCIsPerSMTC_OF_PhysCellId = -1;
3767 static gint ett_nr_rrc_SSB_ToMeasure = -1;
3768 static gint ett_nr_rrc_TAG_Config = -1;
3769 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofTAGs_OF_TAG_Id = -1;
3770 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofTAGs_OF_TAG = -1;
3771 static gint ett_nr_rrc_TAG = -1;
3772 static gint ett_nr_rrc_TCI_State = -1;
3773 static gint ett_nr_rrc_QCL_Info = -1;
3774 static gint ett_nr_rrc_T_referenceSignal_04 = -1;
3775 static gint ett_nr_rrc_TDD_UL_DL_ConfigCommon = -1;
3776 static gint ett_nr_rrc_TDD_UL_DL_Pattern = -1;
3777 static gint ett_nr_rrc_TDD_UL_DL_ConfigDedicated = -1;
3778 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSlots_OF_TDD_UL_DL_SlotConfig = -1;
3779 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSlots_OF_TDD_UL_DL_SlotIndex = -1;
3780 static gint ett_nr_rrc_TDD_UL_DL_SlotConfig = -1;
3781 static gint ett_nr_rrc_T_symbols = -1;
3782 static gint ett_nr_rrc_T_explicit = -1;
3783 static gint ett_nr_rrc_UAC_BarringInfoSetList = -1;
3784 static gint ett_nr_rrc_UAC_BarringInfoSet = -1;
3785 static gint ett_nr_rrc_UAC_BarringPerCatList = -1;
3786 static gint ett_nr_rrc_UAC_BarringPerCat = -1;
3787 static gint ett_nr_rrc_UAC_BarringPerPLMN_List = -1;
3788 static gint ett_nr_rrc_UAC_BarringPerPLMN = -1;
3789 static gint ett_nr_rrc_T_uac_ACBarringListType = -1;
3790 static gint ett_nr_rrc_SEQUENCE_SIZE_maxAccessCat_1_OF_UAC_BarringInfoSetIndex = -1;
3791 static gint ett_nr_rrc_UE_TimersAndConstants = -1;
3792 static gint ett_nr_rrc_UplinkConfigCommon = -1;
3793 static gint ett_nr_rrc_UplinkConfigCommonSIB = -1;
3794 static gint ett_nr_rrc_UplinkTxDirectCurrentList = -1;
3795 static gint ett_nr_rrc_UplinkTxDirectCurrentCell = -1;
3796 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofBWPs_OF_UplinkTxDirectCurrentBWP = -1;
3797 static gint ett_nr_rrc_UplinkTxDirectCurrentBWP = -1;
3798 static gint ett_nr_rrc_ZP_CSI_RS_Resource = -1;
3799 static gint ett_nr_rrc_ZP_CSI_RS_ResourceSet = -1;
3800 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourcesPerSet_OF_ZP_CSI_RS_ResourceId = -1;
3801 static gint ett_nr_rrc_BandCombinationList = -1;
3802 static gint ett_nr_rrc_BandCombination = -1;
3803 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_OF_BandParameters = -1;
3804 static gint ett_nr_rrc_BandParameters = -1;
3805 static gint ett_nr_rrc_T_eutra = -1;
3806 static gint ett_nr_rrc_T_nr = -1;
3807 static gint ett_nr_rrc_CA_ParametersEUTRA = -1;
3808 static gint ett_nr_rrc_CA_ParametersNR = -1;
3809 static gint ett_nr_rrc_FeatureSetCombination = -1;
3810 static gint ett_nr_rrc_FeatureSetsPerBand = -1;
3811 static gint ett_nr_rrc_FeatureSet = -1;
3812 static gint ett_nr_rrc_T_eutra_01 = -1;
3813 static gint ett_nr_rrc_T_nr_01 = -1;
3814 static gint ett_nr_rrc_FeatureSetDownlink = -1;
3815 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofServingCells_OF_FeatureSetDownlinkPerCC_Id = -1;
3816 static gint ett_nr_rrc_T_timeDurationForQCL = -1;
3817 static gint ett_nr_rrc_T_pdsch_DifferentTB_PerSlot = -1;
3818 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeI_SinglePanelCodebook = -1;
3819 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeI_MultiPanelCodebook = -1;
3820 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeII_Codebook = -1;
3821 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeII_CodebookPortSelection = -1;
3822 static gint ett_nr_rrc_CSI_RS_IM_ReceptionForFeedback = -1;
3823 static gint ett_nr_rrc_TypeI_SinglePanelCodebook = -1;
3824 static gint ett_nr_rrc_TypeI_MultiPanelCodebook = -1;
3825 static gint ett_nr_rrc_TypeII_Codebook = -1;
3826 static gint ett_nr_rrc_TypeII_CodebookPortSelection = -1;
3827 static gint ett_nr_rrc_FeatureSetDownlinkPerCC = -1;
3828 static gint ett_nr_rrc_FeatureSets = -1;
3829 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxDownlinkFeatureSets_OF_FeatureSetDownlink = -1;
3830 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxPerCC_FeatureSets_OF_FeatureSetDownlinkPerCC = -1;
3831 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxUplinkFeatureSets_OF_FeatureSetUplink = -1;
3832 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxPerCC_FeatureSets_OF_FeatureSetUplinkPerCC = -1;
3833 static gint ett_nr_rrc_FeatureSetUplink = -1;
3834 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofServingCells_OF_FeatureSetUplinkPerCC_Id = -1;
3835 static gint ett_nr_rrc_T_pusch_DifferentTB_PerSlot = -1;
3836 static gint ett_nr_rrc_CSI_ReportFramework = -1;
3837 static gint ett_nr_rrc_FeatureSetUplinkPerCC = -1;
3838 static gint ett_nr_rrc_T_mimo_CB_PUSCH = -1;
3839 static gint ett_nr_rrc_FreqBandList = -1;
3840 static gint ett_nr_rrc_FreqBandInformation = -1;
3841 static gint ett_nr_rrc_FreqBandInformationEUTRA = -1;
3842 static gint ett_nr_rrc_FreqBandInformationNR = -1;
3843 static gint ett_nr_rrc_InterRAT_Parameters = -1;
3844 static gint ett_nr_rrc_EUTRA_Parameters = -1;
3845 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxBandsEUTRA_OF_FreqBandIndicatorEUTRA = -1;
3846 static gint ett_nr_rrc_EUTRA_ParametersCommon = -1;
3847 static gint ett_nr_rrc_EUTRA_ParametersXDD_Diff = -1;
3848 static gint ett_nr_rrc_MAC_Parameters = -1;
3849 static gint ett_nr_rrc_MAC_ParametersCommon = -1;
3850 static gint ett_nr_rrc_MAC_ParametersXDD_Diff = -1;
3851 static gint ett_nr_rrc_MeasAndMobParameters = -1;
3852 static gint ett_nr_rrc_MeasAndMobParametersCommon = -1;
3853 static gint ett_nr_rrc_MeasAndMobParametersXDD_Diff = -1;
3854 static gint ett_nr_rrc_MeasAndMobParametersFRX_Diff = -1;
3855 static gint ett_nr_rrc_MeasAndMobParametersMRDC = -1;
3856 static gint ett_nr_rrc_MeasAndMobParametersMRDC_Common = -1;
3857 static gint ett_nr_rrc_MeasAndMobParametersMRDC_XDD_Diff = -1;
3858 static gint ett_nr_rrc_MeasAndMobParametersMRDC_FRX_Diff = -1;
3859 static gint ett_nr_rrc_MIMO_ParametersPerBand = -1;
3860 static gint ett_nr_rrc_T_tci_StatePDSCH = -1;
3861 static gint ett_nr_rrc_T_maxNumberRxTxBeamSwitchDL = -1;
3862 static gint ett_nr_rrc_T_uplinkBeamManagement = -1;
3863 static gint ett_nr_rrc_T_beamReportTiming = -1;
3864 static gint ett_nr_rrc_T_ptrs_DensityRecommendationSetDL = -1;
3865 static gint ett_nr_rrc_T_ptrs_DensityRecommendationSetUL = -1;
3866 static gint ett_nr_rrc_BeamManagementSSB_CSI_RS = -1;
3867 static gint ett_nr_rrc_CSI_RS_ForTracking = -1;
3868 static gint ett_nr_rrc_PTRS_DensityRecommendationDL = -1;
3869 static gint ett_nr_rrc_PTRS_DensityRecommendationUL = -1;
3870 static gint ett_nr_rrc_SRS_Resources = -1;
3871 static gint ett_nr_rrc_SRS_TxSwitch = -1;
3872 static gint ett_nr_rrc_MRDC_Parameters = -1;
3873 static gint ett_nr_rrc_PDCP_Parameters = -1;
3874 static gint ett_nr_rrc_T_supportedROHC_Profiles = -1;
3875 static gint ett_nr_rrc_PDCP_ParametersMRDC = -1;
3876 static gint ett_nr_rrc_Phy_Parameters = -1;
3877 static gint ett_nr_rrc_Phy_ParametersCommon = -1;
3878 static gint ett_nr_rrc_Phy_ParametersXDD_Diff = -1;
3879 static gint ett_nr_rrc_Phy_ParametersFRX_Diff = -1;
3880 static gint ett_nr_rrc_Phy_ParametersFR1 = -1;
3881 static gint ett_nr_rrc_Phy_ParametersFR2 = -1;
3882 static gint ett_nr_rrc_Phy_ParametersMRDC = -1;
3883 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofNAICS_Entries_OF_NAICS_Capability_Entry = -1;
3884 static gint ett_nr_rrc_NAICS_Capability_Entry = -1;
3885 static gint ett_nr_rrc_RF_Parameters = -1;
3886 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxBands_OF_BandNR = -1;
3887 static gint ett_nr_rrc_BandNR = -1;
3888 static gint ett_nr_rrc_T_channelBWs_DL_v1530 = -1;
3889 static gint ett_nr_rrc_T_fr1 = -1;
3890 static gint ett_nr_rrc_T_fr2 = -1;
3891 static gint ett_nr_rrc_T_channelBWs_UL_v1530 = -1;
3892 static gint ett_nr_rrc_T_fr1_01 = -1;
3893 static gint ett_nr_rrc_T_fr2_01 = -1;
3894 static gint ett_nr_rrc_RF_ParametersMRDC = -1;
3895 static gint ett_nr_rrc_RLC_Parameters = -1;
3896 static gint ett_nr_rrc_SupportedBandwidth = -1;
3897 static gint ett_nr_rrc_UE_CapabilityRAT_ContainerList = -1;
3898 static gint ett_nr_rrc_UE_CapabilityRAT_Container = -1;
3899 static gint ett_nr_rrc_UE_CapabilityRAT_RequestList = -1;
3900 static gint ett_nr_rrc_UE_CapabilityRAT_Request = -1;
3901 static gint ett_nr_rrc_UE_CapabilityRequestFilterNR = -1;
3902 static gint ett_nr_rrc_T_nonCriticalExtension_33 = -1;
3903 static gint ett_nr_rrc_UE_MRDC_Capability = -1;
3904 static gint ett_nr_rrc_SEQUENCE_SIZE_1_maxFeatureSetCombinations_OF_FeatureSetCombination = -1;
3905 static gint ett_nr_rrc_T_nonCriticalExtension_34 = -1;
3906 static gint ett_nr_rrc_UE_MRDC_CapabilityAddXDD_Mode = -1;
3907 static gint ett_nr_rrc_UE_MRDC_CapabilityAddFRX_Mode = -1;
3908 static gint ett_nr_rrc_GeneralParametersMRDC_XDD_Diff = -1;
3909 static gint ett_nr_rrc_UE_NR_Capability = -1;
3910 static gint ett_nr_rrc_UE_NR_Capability_1530 = -1;
3911 static gint ett_nr_rrc_T_nonCriticalExtension_35 = -1;
3912 static gint ett_nr_rrc_UE_NR_CapabilityAddXDD_Mode = -1;
3913 static gint ett_nr_rrc_UE_NR_CapabilityAddXDD_Mode_1530 = -1;
3914 static gint ett_nr_rrc_UE_NR_CapabilityAddFRX_Mode = -1;
3915 static gint ett_nr_rrc_EUTRA_MBSFN_SubframeConfigList = -1;
3916 static gint ett_nr_rrc_EUTRA_MBSFN_SubframeConfig = -1;
3917 static gint ett_nr_rrc_T_subframeAllocation1 = -1;
3918 static gint ett_nr_rrc_T_subframeAllocation2 = -1;
3919 static gint ett_nr_rrc_EUTRA_MultiBandInfoList = -1;
3920 static gint ett_nr_rrc_EUTRA_MultiBandInfo = -1;
3921 static gint ett_nr_rrc_EUTRA_NS_PmaxList = -1;
3922 static gint ett_nr_rrc_EUTRA_NS_PmaxValue = -1;
3923 static gint ett_nr_rrc_EUTRA_PhysCellIdRange = -1;
3924 static gint ett_nr_rrc_MultiFrequencyBandListNR_SIB = -1;
3925 static gint ett_nr_rrc_NR_MultiBandInfo = -1;
3926 static gint ett_nr_rrc_NR_NS_PmaxList = -1;
3927 static gint ett_nr_rrc_NR_NS_PmaxValue = -1;
3928 static gint ett_nr_rrc_OtherConfig = -1;
3929 static gint ett_nr_rrc_T_delayBudgetReportingConfig = -1;
3930 static gint ett_nr_rrc_T_setup = -1;
3931
3932 /*--- End of included file: packet-nr-rrc-ett.c ---*/
3933 #line 90 "./asn1/nr-rrc/packet-nr-rrc-template.c"
3934 static gint ett_nr_rrc_DedicatedNAS_Message = -1;
3935 static gint ett_rr_rrc_targetRAT_MessageContainer = -1;
3936 static gint ett_nr_rrc_nas_Container = -1;
3937 static gint ett_nr_rrc_serialNumber = -1;
3938 static gint ett_nr_rrc_warningType = -1;
3939 static gint ett_nr_rrc_dataCodingScheme = -1;
3940 static gint ett_nr_rrc_sib7_fragment = -1;
3941 static gint ett_nr_rrc_sib7_fragments = -1;
3942 static gint ett_nr_rrc_sib8_fragment = -1;
3943 static gint ett_nr_rrc_sib8_fragments = -1;
3944 static gint ett_nr_rrc_warningMessageSegment = -1;
3945 static gint ett_nr_rrc_timeInfo = -1;
3946 static gint ett_nr_rrc_capabilityRequestFilter = -1;
3947
3948 static expert_field ei_nr_rrc_number_pages_le15 = EI_INIT;
3949
3950 static const unit_name_string units_periodicities = { " periodicity", " periodicities" };
3951 static const unit_name_string units_prbs = { " PRB", " PRBs" };
3952 static const unit_name_string units_slots = { " slot", " slots" };
3953
3954 typedef struct {
3955   guint8 rat_type;
3956   guint8 target_rat_type;
3957   guint16 message_identifier;
3958   guint8 warning_message_segment_type;
3959   guint8 warning_message_segment_number;
3960 } nr_rrc_private_data_t;
3961
3962 /* Helper function to get or create a struct that will be actx->private_data */
3963 static nr_rrc_private_data_t*
3964 nr_rrc_get_private_data(asn1_ctx_t *actx)
3965 {
3966   if (actx->private_data == NULL) {
3967     actx->private_data = wmem_new0(wmem_packet_scope(), nr_rrc_private_data_t);
3968   }
3969   return (nr_rrc_private_data_t*)actx->private_data;
3970 }
3971
3972 static void
3973 nr_rrc_call_dissector(dissector_handle_t handle, tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
3974 {
3975   TRY {
3976     call_dissector(handle, tvb, pinfo, tree);
3977   }
3978   CATCH_BOUNDS_ERRORS {
3979     show_exception(tvb, pinfo, tree, EXCEPT_CODE, GET_MESSAGE);
3980   }
3981   ENDTRY;
3982 }
3983
3984 /* Forward declarations */
3985 static int dissect_UE_CapabilityRequestFilterNR_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
3986
3987 static void
3988 nr_rrc_q_RxLevMin_fmt(gchar *s, guint32 v)
3989 {
3990   g_snprintf(s, ITEM_LABEL_LENGTH, "%u dB (%u)", 2*v, v);
3991 }
3992
3993 static const value_string nr_rrc_serialNumber_gs_vals[] = {
3994   { 0, "Display mode immediate, cell wide"},
3995   { 1, "Display mode normal, PLMN wide"},
3996   { 2, "Display mode normal, tracking area wide"},
3997   { 3, "Display mode normal, cell wide"},
3998   { 0, NULL},
3999 };
4000
4001 static const value_string nr_rrc_warningType_vals[] = {
4002   { 0, "Earthquake"},
4003   { 1, "Tsunami"},
4004   { 2, "Earthquake and Tsunami"},
4005   { 3, "Test"},
4006   { 4, "Other"},
4007   { 0, NULL},
4008 };
4009
4010 static const fragment_items nr_rrc_sib7_frag_items = {
4011     &ett_nr_rrc_sib7_fragment,
4012     &ett_nr_rrc_sib7_fragments,
4013     &hf_nr_rrc_sib7_fragments,
4014     &hf_nr_rrc_sib7_fragment,
4015     &hf_nr_rrc_sib7_fragment_overlap,
4016     &hf_nr_rrc_sib7_fragment_overlap_conflict,
4017     &hf_nr_rrc_sib7_fragment_multiple_tails,
4018     &hf_nr_rrc_sib7_fragment_too_long_fragment,
4019     &hf_nr_rrc_sib7_fragment_error,
4020     &hf_nr_rrc_sib7_fragment_count,
4021     &hf_nr_rrc_sib7_reassembled_in,
4022     &hf_nr_rrc_sib7_reassembled_length,
4023     &hf_nr_rrc_sib7_reassembled_data,
4024     "SIB7 warning message segments"
4025 };
4026
4027 static const fragment_items nr_rrc_sib8_frag_items = {
4028     &ett_nr_rrc_sib8_fragment,
4029     &ett_nr_rrc_sib8_fragments,
4030     &hf_nr_rrc_sib8_fragments,
4031     &hf_nr_rrc_sib8_fragment,
4032     &hf_nr_rrc_sib8_fragment_overlap,
4033     &hf_nr_rrc_sib8_fragment_overlap_conflict,
4034     &hf_nr_rrc_sib8_fragment_multiple_tails,
4035     &hf_nr_rrc_sib8_fragment_too_long_fragment,
4036     &hf_nr_rrc_sib8_fragment_error,
4037     &hf_nr_rrc_sib8_fragment_count,
4038     &hf_nr_rrc_sib8_reassembled_in,
4039     &hf_nr_rrc_sib8_reassembled_length,
4040     &hf_nr_rrc_sib8_reassembled_data,
4041     "SIB8 warning message segments"
4042 };
4043
4044 static void
4045 dissect_nr_rrc_warningMessageSegment(tvbuff_t *warning_msg_seg_tvb, proto_tree *tree, packet_info *pinfo, guint8 dataCodingScheme)
4046 {
4047   guint32 offset;
4048   guint8 nb_of_pages, length, *str;
4049   proto_item *ti;
4050   tvbuff_t *cb_data_page_tvb, *cb_data_tvb;
4051   int i;
4052
4053   nb_of_pages = tvb_get_guint8(warning_msg_seg_tvb, 0);
4054   ti = proto_tree_add_uint(tree, hf_nr_rrc_warningMessageSegment_nb_pages, warning_msg_seg_tvb, 0, 1, nb_of_pages);
4055   if (nb_of_pages > 15) {
4056     expert_add_info_format(pinfo, ti, &ei_nr_rrc_number_pages_le15,
4057                            "Number of pages should be <=15 (found %u)", nb_of_pages);
4058     nb_of_pages = 15;
4059   }
4060   for (i = 0, offset = 1; i < nb_of_pages; i++) {
4061     length = tvb_get_guint8(warning_msg_seg_tvb, offset+82);
4062     cb_data_page_tvb = tvb_new_subset_length(warning_msg_seg_tvb, offset, length);
4063     cb_data_tvb = dissect_cbs_data(dataCodingScheme, cb_data_page_tvb, tree, pinfo, 0);
4064     if (cb_data_tvb) {
4065       str = tvb_get_string_enc(wmem_packet_scope(), cb_data_tvb, 0, tvb_reported_length(cb_data_tvb), ENC_UTF_8|ENC_NA);
4066       proto_tree_add_string_format(tree, hf_nr_rrc_warningMessageSegment_decoded_page, warning_msg_seg_tvb, offset, 83,
4067                                    str, "Decoded Page %u: %s", i+1, str);
4068     }
4069     offset += 83;
4070   }
4071 }
4072
4073 static const value_string nr_rrc_daylightSavingTime_vals[] = {
4074   { 0, "No adjustment for Daylight Saving Time"},
4075   { 1, "+1 hour adjustment for Daylight Saving Time"},
4076   { 2, "+2 hours adjustment for Daylight Saving Time"},
4077   { 3, "Reserved"},
4078   { 0, NULL},
4079 };
4080
4081 static void
4082 nr_rrc_localTimeOffset_fmt(gchar *s, guint32 v)
4083 {
4084   gint32 time_offset = (gint32) v;
4085
4086   g_snprintf(s, ITEM_LABEL_LENGTH, "UTC time %c %dhr %dmin (%d)",
4087              (time_offset < 0) ? '-':'+', abs(time_offset) >> 2,
4088              (abs(time_offset) & 0x03) * 15, time_offset);
4089 }
4090
4091 static void
4092 nr_rrc_drx_SlotOffset_fmt(gchar *s, guint32 v)
4093 {
4094   g_snprintf(s, ITEM_LABEL_LENGTH, "%g ms (%u)", 1./32 * v, v);
4095 }
4096
4097 static void
4098 nr_rrc_Hysteresis_fmt(gchar *s, guint32 v)
4099 {
4100   g_snprintf(s, ITEM_LABEL_LENGTH, "%gdB (%u)", 0.5 * v, v);
4101 }
4102
4103 static void
4104 nr_rrc_msg3_DeltaPreamble_fmt(gchar *s, guint32 v)
4105 {
4106   gint32 d = (gint32)v;
4107
4108   g_snprintf(s, ITEM_LABEL_LENGTH, "%ddB (%d)", 2 * d, d);
4109 }
4110
4111 static void
4112 nr_rrc_Q_RxLevMin_fmt(gchar *s, guint32 v)
4113 {
4114   gint32 d = (gint32)v;
4115
4116   g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm (%d)", 2 * d, d);
4117 }
4118
4119 static void
4120 nr_rrc_RSRP_RangeEUTRA_fmt(gchar *s, guint32 v)
4121 {
4122   if (v == 0) {
4123     g_snprintf(s, ITEM_LABEL_LENGTH, "RSRP < -140dBm (0)");
4124   } else if (v < 97) {
4125     g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= RSRP < %ddBm (%u)", v-141, v-140, v);
4126   } else {
4127     g_snprintf(s, ITEM_LABEL_LENGTH, "-44dBm <= RSRP (97)");
4128   }
4129 }
4130
4131 static void
4132 nr_rrc_RSRQ_RangeEUTRA_fmt(gchar *s, guint32 v)
4133 {
4134   if (v == 0) {
4135     g_snprintf(s, ITEM_LABEL_LENGTH, "RSRQ < -19.5dB (0)");
4136   } else if (v < 34) {
4137     g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= RSRQ < %.1fdB (%u)", ((float)v/2)-20, (((float)v+1)/2)-20, v);
4138   } else {
4139     g_snprintf(s, ITEM_LABEL_LENGTH, "-3dB <= RSRQ (34)");
4140   }
4141 }
4142
4143 static void
4144 nr_rrc_SINR_RangeEUTRA_fmt(gchar *s, guint32 v)
4145 {
4146   if (v == 0) {
4147     g_snprintf(s, ITEM_LABEL_LENGTH, "SINR < -23dB (0)");
4148   } else if (v == 127) {
4149     g_snprintf(s, ITEM_LABEL_LENGTH, "40dB <= SINR (127)");
4150   } else {
4151     g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= SINR < %.1fdB (%u)", (((float)v-1)/2)-23, ((float)v/2)-23, v);
4152   }
4153 }
4154
4155 static void
4156 nr_rrc_ReselectionThreshold_fmt(gchar *s, guint32 v)
4157 {
4158   g_snprintf(s, ITEM_LABEL_LENGTH, "%udB (%u)", 2 * v, v);
4159 }
4160
4161 static void
4162 nr_rrc_RSRP_Range_fmt(gchar *s, guint32 v)
4163 {
4164   if (v == 0) {
4165     g_snprintf(s, ITEM_LABEL_LENGTH, "SS-RSRP < -156dBm (0)");
4166   } else if (v < 126) {
4167     g_snprintf(s, ITEM_LABEL_LENGTH, "%ddBm <= SS-RSRP < %ddBm (%u)", v-157, v-156, v);
4168   } else if (v == 126) {
4169     g_snprintf(s, ITEM_LABEL_LENGTH, "-31dBm <= SS-RSRP (126)");
4170   } else {
4171     g_snprintf(s, ITEM_LABEL_LENGTH, "infinity (127)");
4172   }
4173 }
4174
4175 static void
4176 nr_rrc_RSRQ_Range_fmt(gchar *s, guint32 v)
4177 {
4178   if (v == 0) {
4179     g_snprintf(s, ITEM_LABEL_LENGTH, "SS-RSRQ < -43dB (0)");
4180   } else if (v < 127) {
4181     g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= SS-RSRQ < %.1fdB (%u)", (((float)v-1)/2)-43, ((float)v/2)-43, v);
4182   } else {
4183     g_snprintf(s, ITEM_LABEL_LENGTH, "-20dB <= SS-RSRQ (127)");
4184   }
4185 }
4186
4187 static void
4188 nr_rrc_SINR_Range_fmt(gchar *s, guint32 v)
4189 {
4190   if (v == 0) {
4191     g_snprintf(s, ITEM_LABEL_LENGTH, "SS-SINR < -23dB (0)");
4192   } else if (v < 127) {
4193     g_snprintf(s, ITEM_LABEL_LENGTH, "%.1fdB <= SS-SINR < %.1fdB (%u)", (((float)v-1)/2)-23, ((float)v/2)-23, v);
4194   } else {
4195     g_snprintf(s, ITEM_LABEL_LENGTH, "40dB <= SS-SINR (127)");
4196   }
4197 }
4198
4199
4200 /*--- Included file: packet-nr-rrc-fn.c ---*/
4201 #line 1 "./asn1/nr-rrc/packet-nr-rrc-fn.c"
4202 /*--- PDUs declarations ---*/
4203 static int dissect_MeasResultList2NR_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
4204 static int dissect_MeasResultSCG_Failure_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
4205 static int dissect_SystemInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
4206
4207
4208
4209 static int
4210 dissect_nr_rrc_T_handoverCommandMessage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4211   offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index,
4212                                                                 NO_BOUND, NO_BOUND, FALSE, dissect_nr_rrc_RRCReconfiguration_PDU);
4213
4214   return offset;
4215 }
4216
4217
4218 static const per_sequence_t T_nonCriticalExtension_sequence[] = {
4219   { NULL, 0, 0, NULL }
4220 };
4221
4222 static int
4223 dissect_nr_rrc_T_nonCriticalExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4224   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4225                                    ett_nr_rrc_T_nonCriticalExtension, T_nonCriticalExtension_sequence);
4226
4227   return offset;
4228 }
4229
4230
4231 static const per_sequence_t HandoverCommand_IEs_sequence[] = {
4232   { &hf_nr_rrc_handoverCommandMessage, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_handoverCommandMessage },
4233   { &hf_nr_rrc_nonCriticalExtension, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension },
4234   { NULL, 0, 0, NULL }
4235 };
4236
4237 static int
4238 dissect_nr_rrc_HandoverCommand_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4239   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4240                                    ett_nr_rrc_HandoverCommand_IEs, HandoverCommand_IEs_sequence);
4241
4242   return offset;
4243 }
4244
4245
4246
4247 static int
4248 dissect_nr_rrc_NULL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4249   offset = dissect_per_null(tvb, offset, actx, tree, hf_index);
4250
4251   return offset;
4252 }
4253
4254
4255 static const value_string nr_rrc_T_c1_vals[] = {
4256   {   0, "handoverCommand" },
4257   {   1, "spare3" },
4258   {   2, "spare2" },
4259   {   3, "spare1" },
4260   { 0, NULL }
4261 };
4262
4263 static const per_choice_t T_c1_choice[] = {
4264   {   0, &hf_nr_rrc_handoverCommand, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_HandoverCommand_IEs },
4265   {   1, &hf_nr_rrc_spare3       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
4266   {   2, &hf_nr_rrc_spare2       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
4267   {   3, &hf_nr_rrc_spare1       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
4268   { 0, NULL, 0, NULL }
4269 };
4270
4271 static int
4272 dissect_nr_rrc_T_c1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4273   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
4274                                  ett_nr_rrc_T_c1, T_c1_choice,
4275                                  NULL);
4276
4277   return offset;
4278 }
4279
4280
4281 static const per_sequence_t T_criticalExtensionsFuture_sequence[] = {
4282   { NULL, 0, 0, NULL }
4283 };
4284
4285 static int
4286 dissect_nr_rrc_T_criticalExtensionsFuture(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4287   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4288                                    ett_nr_rrc_T_criticalExtensionsFuture, T_criticalExtensionsFuture_sequence);
4289
4290   return offset;
4291 }
4292
4293
4294 static const value_string nr_rrc_T_criticalExtensions_vals[] = {
4295   {   0, "c1" },
4296   {   1, "criticalExtensionsFuture" },
4297   { 0, NULL }
4298 };
4299
4300 static const per_choice_t T_criticalExtensions_choice[] = {
4301   {   0, &hf_nr_rrc_c1           , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_c1 },
4302   {   1, &hf_nr_rrc_criticalExtensionsFuture, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture },
4303   { 0, NULL, 0, NULL }
4304 };
4305
4306 static int
4307 dissect_nr_rrc_T_criticalExtensions(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4308   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
4309                                  ett_nr_rrc_T_criticalExtensions, T_criticalExtensions_choice,
4310                                  NULL);
4311
4312   return offset;
4313 }
4314
4315
4316 static const per_sequence_t HandoverCommand_sequence[] = {
4317   { &hf_nr_rrc_criticalExtensions, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions },
4318   { NULL, 0, 0, NULL }
4319 };
4320
4321 static int
4322 dissect_nr_rrc_HandoverCommand(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4323   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4324                                    ett_nr_rrc_HandoverCommand, HandoverCommand_sequence);
4325
4326   return offset;
4327 }
4328
4329
4330 static const value_string nr_rrc_RAT_Type_vals[] = {
4331   { RAT_Type_nr, "nr" },
4332   { RAT_Type_eutra_nr, "eutra-nr" },
4333   { RAT_Type_eutra, "eutra" },
4334   { RAT_Type_spare1, "spare1" },
4335   { 0, NULL }
4336 };
4337
4338
4339 static int
4340 dissect_nr_rrc_RAT_Type(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4341   guint32 rat_type;
4342   nr_rrc_private_data_t *nr_priv = nr_rrc_get_private_data(actx);
4343   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
4344                                      4, &rat_type, TRUE, 0, NULL);
4345
4346   nr_priv->rat_type = (guint8)rat_type;
4347
4348
4349   return offset;
4350 }
4351
4352
4353
4354 static int
4355 dissect_nr_rrc_T_ue_CapabilityRAT_Container(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4356   tvbuff_t *ue_cap_tvb = NULL;
4357   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
4358                                        NO_BOUND, NO_BOUND, FALSE, &ue_cap_tvb);
4359
4360
4361
4362   if (ue_cap_tvb) {
4363     nr_rrc_private_data_t *nr_priv = nr_rrc_get_private_data(actx);
4364     proto_tree *subtree;
4365
4366     subtree = proto_item_add_subtree(actx->created_item, ett_nr_rrc_UE_CapabilityRAT_Container);
4367     switch(nr_priv->rat_type){
4368     case RAT_Type_nr:
4369       dissect_nr_rrc_UE_NR_Capability_PDU(ue_cap_tvb, actx->pinfo, subtree, NULL);
4370       break;
4371     case RAT_Type_eutra_nr:
4372       dissect_nr_rrc_UE_MRDC_Capability_PDU(ue_cap_tvb, actx->pinfo, subtree, NULL);
4373       break;
4374     case RAT_Type_eutra:
4375       dissect_lte_rrc_UE_EUTRA_Capability_PDU(ue_cap_tvb, actx->pinfo, subtree, NULL);
4376       break;
4377     default:
4378       break;
4379     }
4380   }
4381
4382   return offset;
4383 }
4384
4385
4386 static const per_sequence_t UE_CapabilityRAT_Container_sequence[] = {
4387   { &hf_nr_rrc_rat_Type     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RAT_Type },
4388   { &hf_nr_rrc_ue_CapabilityRAT_Container, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_ue_CapabilityRAT_Container },
4389   { NULL, 0, 0, NULL }
4390 };
4391
4392 static int
4393 dissect_nr_rrc_UE_CapabilityRAT_Container(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4394   nr_rrc_private_data_t *nr_priv = nr_rrc_get_private_data(actx);
4395   /* Initialise to invalid value */
4396   nr_priv->rat_type = 0xFF;
4397   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4398                                    ett_nr_rrc_UE_CapabilityRAT_Container, UE_CapabilityRAT_Container_sequence);
4399
4400
4401
4402   return offset;
4403 }
4404
4405
4406 static const per_sequence_t UE_CapabilityRAT_ContainerList_sequence_of[1] = {
4407   { &hf_nr_rrc_UE_CapabilityRAT_ContainerList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_UE_CapabilityRAT_Container },
4408 };
4409
4410 static int
4411 dissect_nr_rrc_UE_CapabilityRAT_ContainerList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4412   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4413                                                   ett_nr_rrc_UE_CapabilityRAT_ContainerList, UE_CapabilityRAT_ContainerList_sequence_of,
4414                                                   0, maxRAT_CapabilityContainers, FALSE);
4415
4416   return offset;
4417 }
4418
4419
4420
4421 static int
4422 dissect_nr_rrc_T_rrcReconfiguration(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4423   offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index,
4424                                                                 NO_BOUND, NO_BOUND, FALSE, dissect_nr_rrc_RRCReconfiguration_PDU);
4425
4426   return offset;
4427 }
4428
4429
4430 static const per_sequence_t AS_Config_sequence[] = {
4431   { &hf_nr_rrc_rrcReconfiguration, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_rrcReconfiguration },
4432   { NULL, 0, 0, NULL }
4433 };
4434
4435 static int
4436 dissect_nr_rrc_AS_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4437   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4438                                    ett_nr_rrc_AS_Config, AS_Config_sequence);
4439
4440   return offset;
4441 }
4442
4443
4444 static const value_string nr_rrc_T_ue_InactiveTime_vals[] = {
4445   {   0, "s1" },
4446   {   1, "s2" },
4447   {   2, "s3" },
4448   {   3, "s5" },
4449   {   4, "s7" },
4450   {   5, "s10" },
4451   {   6, "s15" },
4452   {   7, "s20" },
4453   {   8, "s25" },
4454   {   9, "s30" },
4455   {  10, "s40" },
4456   {  11, "s50" },
4457   {  12, "min1" },
4458   {  13, "min1s20c" },
4459   {  14, "min1s40" },
4460   {  15, "min2" },
4461   {  16, "min2s30" },
4462   {  17, "min3" },
4463   {  18, "min3s30" },
4464   {  19, "min4" },
4465   {  20, "min5" },
4466   {  21, "min6" },
4467   {  22, "min7" },
4468   {  23, "min8" },
4469   {  24, "min9" },
4470   {  25, "min10" },
4471   {  26, "min12" },
4472   {  27, "min14" },
4473   {  28, "min17" },
4474   {  29, "min20" },
4475   {  30, "min24" },
4476   {  31, "min28" },
4477   {  32, "min33" },
4478   {  33, "min38" },
4479   {  34, "min44" },
4480   {  35, "min50" },
4481   {  36, "hr1" },
4482   {  37, "hr1min30" },
4483   {  38, "hr2" },
4484   {  39, "hr2min30" },
4485   {  40, "hr3" },
4486   {  41, "hr3min30" },
4487   {  42, "hr4" },
4488   {  43, "hr5" },
4489   {  44, "hr6" },
4490   {  45, "hr8" },
4491   {  46, "hr10" },
4492   {  47, "hr13" },
4493   {  48, "hr16" },
4494   {  49, "hr20" },
4495   {  50, "day1" },
4496   {  51, "day1hr12" },
4497   {  52, "day2" },
4498   {  53, "day2hr12" },
4499   {  54, "day3" },
4500   {  55, "day4" },
4501   {  56, "day5" },
4502   {  57, "day7" },
4503   {  58, "day10" },
4504   {  59, "day14" },
4505   {  60, "day19" },
4506   {  61, "day24" },
4507   {  62, "day30" },
4508   {  63, "dayMoreThan30" },
4509   { 0, NULL }
4510 };
4511
4512 static value_string_ext nr_rrc_T_ue_InactiveTime_vals_ext = VALUE_STRING_EXT_INIT(nr_rrc_T_ue_InactiveTime_vals);
4513
4514
4515 static int
4516 dissect_nr_rrc_T_ue_InactiveTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4517   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
4518                                      64, NULL, FALSE, 0, NULL);
4519
4520   return offset;
4521 }
4522
4523
4524
4525 static int
4526 dissect_nr_rrc_ARFCN_ValueNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4527   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4528                                                             0U, maxNARFCN, NULL, FALSE);
4529
4530   return offset;
4531 }
4532
4533
4534
4535 static int
4536 dissect_nr_rrc_PhysCellId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4537   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4538                                                             0U, 1007U, NULL, FALSE);
4539
4540   return offset;
4541 }
4542
4543
4544
4545 static int
4546 dissect_nr_rrc_RSRP_Range(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4547   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4548                                                             0U, 127U, NULL, FALSE);
4549
4550   return offset;
4551 }
4552
4553
4554
4555 static int
4556 dissect_nr_rrc_RSRQ_Range(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4557   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4558                                                             0U, 127U, NULL, FALSE);
4559
4560   return offset;
4561 }
4562
4563
4564
4565 static int
4566 dissect_nr_rrc_SINR_Range(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4567   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4568                                                             0U, 127U, NULL, FALSE);
4569
4570   return offset;
4571 }
4572
4573
4574 static const per_sequence_t MeasQuantityResults_sequence[] = {
4575   { &hf_nr_rrc_rsrp         , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_RSRP_Range },
4576   { &hf_nr_rrc_rsrq         , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_RSRQ_Range },
4577   { &hf_nr_rrc_sinr         , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SINR_Range },
4578   { NULL, 0, 0, NULL }
4579 };
4580
4581 static int
4582 dissect_nr_rrc_MeasQuantityResults(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4583   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4584                                    ett_nr_rrc_MeasQuantityResults, MeasQuantityResults_sequence);
4585
4586   return offset;
4587 }
4588
4589
4590 static const per_sequence_t T_cellResults_sequence[] = {
4591   { &hf_nr_rrc_resultsSSB_Cell, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MeasQuantityResults },
4592   { &hf_nr_rrc_resultsCSI_RS_Cell, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MeasQuantityResults },
4593   { NULL, 0, 0, NULL }
4594 };
4595
4596 static int
4597 dissect_nr_rrc_T_cellResults(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4598   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4599                                    ett_nr_rrc_T_cellResults, T_cellResults_sequence);
4600
4601   return offset;
4602 }
4603
4604
4605
4606 static int
4607 dissect_nr_rrc_SSB_Index(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4608   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4609                                                             0U, maxNrofSSBs_1, NULL, FALSE);
4610
4611   return offset;
4612 }
4613
4614
4615 static const per_sequence_t ResultsPerSSB_Index_sequence[] = {
4616   { &hf_nr_rrc_ssb_Index    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SSB_Index },
4617   { &hf_nr_rrc_ssb_Results  , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MeasQuantityResults },
4618   { NULL, 0, 0, NULL }
4619 };
4620
4621 static int
4622 dissect_nr_rrc_ResultsPerSSB_Index(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4623   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4624                                    ett_nr_rrc_ResultsPerSSB_Index, ResultsPerSSB_Index_sequence);
4625
4626   return offset;
4627 }
4628
4629
4630 static const per_sequence_t ResultsPerSSB_IndexList_sequence_of[1] = {
4631   { &hf_nr_rrc_ResultsPerSSB_IndexList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ResultsPerSSB_Index },
4632 };
4633
4634 static int
4635 dissect_nr_rrc_ResultsPerSSB_IndexList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4636   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4637                                                   ett_nr_rrc_ResultsPerSSB_IndexList, ResultsPerSSB_IndexList_sequence_of,
4638                                                   1, maxNrofIndexesToReport2, FALSE);
4639
4640   return offset;
4641 }
4642
4643
4644
4645 static int
4646 dissect_nr_rrc_CSI_RS_Index(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4647   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4648                                                             0U, maxNrofCSI_RS_ResourcesRRM_1, NULL, FALSE);
4649
4650   return offset;
4651 }
4652
4653
4654 static const per_sequence_t ResultsPerCSI_RS_Index_sequence[] = {
4655   { &hf_nr_rrc_csi_RS_Index , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_RS_Index },
4656   { &hf_nr_rrc_csi_RS_Results, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MeasQuantityResults },
4657   { NULL, 0, 0, NULL }
4658 };
4659
4660 static int
4661 dissect_nr_rrc_ResultsPerCSI_RS_Index(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4662   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4663                                    ett_nr_rrc_ResultsPerCSI_RS_Index, ResultsPerCSI_RS_Index_sequence);
4664
4665   return offset;
4666 }
4667
4668
4669 static const per_sequence_t ResultsPerCSI_RS_IndexList_sequence_of[1] = {
4670   { &hf_nr_rrc_ResultsPerCSI_RS_IndexList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ResultsPerCSI_RS_Index },
4671 };
4672
4673 static int
4674 dissect_nr_rrc_ResultsPerCSI_RS_IndexList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4675   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4676                                                   ett_nr_rrc_ResultsPerCSI_RS_IndexList, ResultsPerCSI_RS_IndexList_sequence_of,
4677                                                   1, maxNrofIndexesToReport2, FALSE);
4678
4679   return offset;
4680 }
4681
4682
4683 static const per_sequence_t T_rsIndexResults_sequence[] = {
4684   { &hf_nr_rrc_resultsSSB_Indexes, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_ResultsPerSSB_IndexList },
4685   { &hf_nr_rrc_resultsCSI_RS_Indexes, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_ResultsPerCSI_RS_IndexList },
4686   { NULL, 0, 0, NULL }
4687 };
4688
4689 static int
4690 dissect_nr_rrc_T_rsIndexResults(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4691   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4692                                    ett_nr_rrc_T_rsIndexResults, T_rsIndexResults_sequence);
4693
4694   return offset;
4695 }
4696
4697
4698 static const per_sequence_t T_measResult_sequence[] = {
4699   { &hf_nr_rrc_cellResults  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_cellResults },
4700   { &hf_nr_rrc_rsIndexResults, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_rsIndexResults },
4701   { NULL, 0, 0, NULL }
4702 };
4703
4704 static int
4705 dissect_nr_rrc_T_measResult(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4706   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4707                                    ett_nr_rrc_T_measResult, T_measResult_sequence);
4708
4709   return offset;
4710 }
4711
4712
4713
4714 static int
4715 dissect_nr_rrc_MCC_MNC_Digit(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4716   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4717                                                             0U, 9U, NULL, FALSE);
4718
4719   return offset;
4720 }
4721
4722
4723 static const per_sequence_t MCC_sequence_of[1] = {
4724   { &hf_nr_rrc_MCC_item     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MCC_MNC_Digit },
4725 };
4726
4727 static int
4728 dissect_nr_rrc_MCC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4729   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4730                                                   ett_nr_rrc_MCC, MCC_sequence_of,
4731                                                   3, 3, FALSE);
4732
4733   return offset;
4734 }
4735
4736
4737 static const per_sequence_t MNC_sequence_of[1] = {
4738   { &hf_nr_rrc_MNC_item     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MCC_MNC_Digit },
4739 };
4740
4741 static int
4742 dissect_nr_rrc_MNC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4743   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4744                                                   ett_nr_rrc_MNC, MNC_sequence_of,
4745                                                   2, 3, FALSE);
4746
4747   return offset;
4748 }
4749
4750
4751 static const per_sequence_t PLMN_Identity_sequence[] = {
4752   { &hf_nr_rrc_mcc          , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MCC },
4753   { &hf_nr_rrc_mnc          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MNC },
4754   { NULL, 0, 0, NULL }
4755 };
4756
4757 static int
4758 dissect_nr_rrc_PLMN_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4759   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4760                                    ett_nr_rrc_PLMN_Identity, PLMN_Identity_sequence);
4761
4762   return offset;
4763 }
4764
4765
4766 static const per_sequence_t SEQUENCE_SIZE_1_maxPLMN_OF_PLMN_Identity_sequence_of[1] = {
4767   { &hf_nr_rrc_plmn_IdentityList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PLMN_Identity },
4768 };
4769
4770 static int
4771 dissect_nr_rrc_SEQUENCE_SIZE_1_maxPLMN_OF_PLMN_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4772   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4773                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxPLMN_OF_PLMN_Identity, SEQUENCE_SIZE_1_maxPLMN_OF_PLMN_Identity_sequence_of,
4774                                                   1, maxPLMN, FALSE);
4775
4776   return offset;
4777 }
4778
4779
4780
4781 static int
4782 dissect_nr_rrc_TrackingAreaCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4783   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
4784                                      24, 24, FALSE, NULL, NULL);
4785
4786   return offset;
4787 }
4788
4789
4790
4791 static int
4792 dissect_nr_rrc_RAN_AreaCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4793   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4794                                                             0U, 255U, NULL, FALSE);
4795
4796   return offset;
4797 }
4798
4799
4800
4801 static int
4802 dissect_nr_rrc_CellIdentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4803   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
4804                                      36, 36, FALSE, NULL, NULL);
4805
4806   return offset;
4807 }
4808
4809
4810 static const value_string nr_rrc_T_cellReservedForOperatorUse_vals[] = {
4811   {   0, "reserved" },
4812   {   1, "notReserved" },
4813   { 0, NULL }
4814 };
4815
4816
4817 static int
4818 dissect_nr_rrc_T_cellReservedForOperatorUse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4819   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
4820                                      2, NULL, FALSE, 0, NULL);
4821
4822   return offset;
4823 }
4824
4825
4826 static const per_sequence_t PLMN_IdentityInfo_sequence[] = {
4827   { &hf_nr_rrc_plmn_IdentityList_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SEQUENCE_SIZE_1_maxPLMN_OF_PLMN_Identity },
4828   { &hf_nr_rrc_trackingAreaCode, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_TrackingAreaCode },
4829   { &hf_nr_rrc_ranac        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_RAN_AreaCode },
4830   { &hf_nr_rrc_cellIdentity , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CellIdentity },
4831   { &hf_nr_rrc_cellReservedForOperatorUse, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_cellReservedForOperatorUse },
4832   { NULL, 0, 0, NULL }
4833 };
4834
4835 static int
4836 dissect_nr_rrc_PLMN_IdentityInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4837   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4838                                    ett_nr_rrc_PLMN_IdentityInfo, PLMN_IdentityInfo_sequence);
4839
4840   return offset;
4841 }
4842
4843
4844 static const per_sequence_t PLMN_IdentityInfoList_sequence_of[1] = {
4845   { &hf_nr_rrc_PLMN_IdentityInfoList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PLMN_IdentityInfo },
4846 };
4847
4848 static int
4849 dissect_nr_rrc_PLMN_IdentityInfoList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4850   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4851                                                   ett_nr_rrc_PLMN_IdentityInfoList, PLMN_IdentityInfoList_sequence_of,
4852                                                   1, maxPLMN, FALSE);
4853
4854   return offset;
4855 }
4856
4857
4858
4859 static int
4860 dissect_nr_rrc_FreqBandIndicatorNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4861   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4862                                                             1U, 1024U, NULL, FALSE);
4863
4864   return offset;
4865 }
4866
4867
4868 static const per_sequence_t MultiFrequencyBandListNR_sequence_of[1] = {
4869   { &hf_nr_rrc_MultiFrequencyBandListNR_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FreqBandIndicatorNR },
4870 };
4871
4872 static int
4873 dissect_nr_rrc_MultiFrequencyBandListNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4874   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4875                                                   ett_nr_rrc_MultiFrequencyBandListNR, MultiFrequencyBandListNR_sequence_of,
4876                                                   1, maxNrofMultiBands, FALSE);
4877
4878   return offset;
4879 }
4880
4881
4882
4883 static int
4884 dissect_nr_rrc_INTEGER_0_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4885   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4886                                                             0U, 15U, NULL, FALSE);
4887
4888   return offset;
4889 }
4890
4891
4892
4893 static int
4894 dissect_nr_rrc_ControlResourceSetZero(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4895   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4896                                                             0U, 15U, NULL, FALSE);
4897
4898   return offset;
4899 }
4900
4901
4902
4903 static int
4904 dissect_nr_rrc_SearchSpaceZero(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4905   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
4906                                                             0U, 15U, NULL, FALSE);
4907
4908   return offset;
4909 }
4910
4911
4912 static const per_sequence_t PDCCH_ConfigSIB1_sequence[] = {
4913   { &hf_nr_rrc_controlResourceSetZero, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ControlResourceSetZero },
4914   { &hf_nr_rrc_searchSpaceZero, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SearchSpaceZero },
4915   { NULL, 0, 0, NULL }
4916 };
4917
4918 static int
4919 dissect_nr_rrc_PDCCH_ConfigSIB1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4920   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4921                                    ett_nr_rrc_PDCCH_ConfigSIB1, PDCCH_ConfigSIB1_sequence);
4922
4923   return offset;
4924 }
4925
4926
4927 static const per_sequence_t T_noSIB1_sequence[] = {
4928   { &hf_nr_rrc_ssb_SubcarrierOffset, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_15 },
4929   { &hf_nr_rrc_pdcch_ConfigSIB1, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PDCCH_ConfigSIB1 },
4930   { NULL, 0, 0, NULL }
4931 };
4932
4933 static int
4934 dissect_nr_rrc_T_noSIB1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4935   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4936                                    ett_nr_rrc_T_noSIB1, T_noSIB1_sequence);
4937
4938   return offset;
4939 }
4940
4941
4942 static const per_sequence_t CGI_Info_sequence[] = {
4943   { &hf_nr_rrc_plmn_IdentityInfoList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_PLMN_IdentityInfoList },
4944   { &hf_nr_rrc_frequencyBandList_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_MultiFrequencyBandListNR },
4945   { &hf_nr_rrc_noSIB1       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_noSIB1 },
4946   { NULL, 0, 0, NULL }
4947 };
4948
4949 static int
4950 dissect_nr_rrc_CGI_Info(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4951   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4952                                    ett_nr_rrc_CGI_Info, CGI_Info_sequence);
4953
4954   return offset;
4955 }
4956
4957
4958 static const per_sequence_t MeasResultNR_eag_1_sequence[] = {
4959   { &hf_nr_rrc_cgi_Info     , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_CGI_Info },
4960   { NULL, 0, 0, NULL }
4961 };
4962
4963 static int
4964 dissect_nr_rrc_MeasResultNR_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4965   offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasResultNR_eag_1_sequence);
4966
4967   return offset;
4968 }
4969
4970
4971 static const per_sequence_t MeasResultNR_sequence[] = {
4972   { &hf_nr_rrc_physCellId   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_PhysCellId },
4973   { &hf_nr_rrc_measResult   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_measResult },
4974   { &dummy_hf_nr_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasResultNR_eag_1 },
4975   { NULL, 0, 0, NULL }
4976 };
4977
4978 static int
4979 dissect_nr_rrc_MeasResultNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4980   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
4981                                    ett_nr_rrc_MeasResultNR, MeasResultNR_sequence);
4982
4983   return offset;
4984 }
4985
4986
4987 static const per_sequence_t MeasResultListNR_sequence_of[1] = {
4988   { &hf_nr_rrc_MeasResultListNR_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasResultNR },
4989 };
4990
4991 static int
4992 dissect_nr_rrc_MeasResultListNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
4993   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
4994                                                   ett_nr_rrc_MeasResultListNR, MeasResultListNR_sequence_of,
4995                                                   1, maxCellReport, FALSE);
4996
4997   return offset;
4998 }
4999
5000
5001 static const per_sequence_t MeasResult2NR_sequence[] = {
5002   { &hf_nr_rrc_ssbFrequency , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ARFCN_ValueNR },
5003   { &hf_nr_rrc_refFreqCSI_RS, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ARFCN_ValueNR },
5004   { &hf_nr_rrc_measResultServingCell, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_MeasResultNR },
5005   { &hf_nr_rrc_measResultNeighCellListNR, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_MeasResultListNR },
5006   { NULL, 0, 0, NULL }
5007 };
5008
5009 static int
5010 dissect_nr_rrc_MeasResult2NR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5011   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5012                                    ett_nr_rrc_MeasResult2NR, MeasResult2NR_sequence);
5013
5014   return offset;
5015 }
5016
5017
5018 static const per_sequence_t MeasResultList2NR_sequence_of[1] = {
5019   { &hf_nr_rrc_MeasResultList2NR_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasResult2NR },
5020 };
5021
5022 static int
5023 dissect_nr_rrc_MeasResultList2NR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5024   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5025                                                   ett_nr_rrc_MeasResultList2NR, MeasResultList2NR_sequence_of,
5026                                                   1, maxFreq, FALSE);
5027
5028   return offset;
5029 }
5030
5031
5032 static const per_sequence_t RRM_Config_sequence[] = {
5033   { &hf_nr_rrc_ue_InactiveTime, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_ue_InactiveTime },
5034   { &hf_nr_rrc_candidateCellInfoList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_MeasResultList2NR },
5035   { NULL, 0, 0, NULL }
5036 };
5037
5038 static int
5039 dissect_nr_rrc_RRM_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5040   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5041                                    ett_nr_rrc_RRM_Config, RRM_Config_sequence);
5042
5043   return offset;
5044 }
5045
5046
5047
5048 static int
5049 dissect_nr_rrc_ShortMAC_I(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5050   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
5051                                      16, 16, FALSE, NULL, NULL);
5052
5053   return offset;
5054 }
5055
5056
5057
5058 static int
5059 dissect_nr_rrc_BIT_STRING_SIZE_256(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5060   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
5061                                      256, 256, FALSE, NULL, NULL);
5062
5063   return offset;
5064 }
5065
5066
5067 static const per_sequence_t ReestabNCellInfo_sequence[] = {
5068   { &hf_nr_rrc_cellIdentity , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CellIdentity },
5069   { &hf_nr_rrc_key_gNodeB_Star, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BIT_STRING_SIZE_256 },
5070   { &hf_nr_rrc_shortMAC_I   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ShortMAC_I },
5071   { NULL, 0, 0, NULL }
5072 };
5073
5074 static int
5075 dissect_nr_rrc_ReestabNCellInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5076   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5077                                    ett_nr_rrc_ReestabNCellInfo, ReestabNCellInfo_sequence);
5078
5079   return offset;
5080 }
5081
5082
5083 static const per_sequence_t ReestabNCellInfoList_sequence_of[1] = {
5084   { &hf_nr_rrc_ReestabNCellInfoList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ReestabNCellInfo },
5085 };
5086
5087 static int
5088 dissect_nr_rrc_ReestabNCellInfoList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5089   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5090                                                   ett_nr_rrc_ReestabNCellInfoList, ReestabNCellInfoList_sequence_of,
5091                                                   1, maxCellPrep, FALSE);
5092
5093   return offset;
5094 }
5095
5096
5097 static const per_sequence_t ReestablishmentInfo_sequence[] = {
5098   { &hf_nr_rrc_sourcePhysCellId, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PhysCellId },
5099   { &hf_nr_rrc_targetCellShortMAC_I, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ShortMAC_I },
5100   { &hf_nr_rrc_additionalReestabInfoList, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_ReestabNCellInfoList },
5101   { NULL, 0, 0, NULL }
5102 };
5103
5104 static int
5105 dissect_nr_rrc_ReestablishmentInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5106   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5107                                    ett_nr_rrc_ReestablishmentInfo, ReestablishmentInfo_sequence);
5108
5109   return offset;
5110 }
5111
5112
5113
5114 static int
5115 dissect_nr_rrc_BandCombinationIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5116   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5117                                                             1U, maxBandComb, NULL, FALSE);
5118
5119   return offset;
5120 }
5121
5122
5123
5124 static int
5125 dissect_nr_rrc_FeatureSetEntryIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5126   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5127                                                             1U, maxFeatureSetsPerBand, NULL, FALSE);
5128
5129   return offset;
5130 }
5131
5132
5133 static const per_sequence_t SEQUENCE_SIZE_1_maxFeatureSetsPerBand_OF_FeatureSetEntryIndex_sequence_of[1] = {
5134   { &hf_nr_rrc_allowedFeatureSetsList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FeatureSetEntryIndex },
5135 };
5136
5137 static int
5138 dissect_nr_rrc_SEQUENCE_SIZE_1_maxFeatureSetsPerBand_OF_FeatureSetEntryIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5139   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5140                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxFeatureSetsPerBand_OF_FeatureSetEntryIndex, SEQUENCE_SIZE_1_maxFeatureSetsPerBand_OF_FeatureSetEntryIndex_sequence_of,
5141                                                   1, maxFeatureSetsPerBand, FALSE);
5142
5143   return offset;
5144 }
5145
5146
5147 static const per_sequence_t BandCombinationInfo_sequence[] = {
5148   { &hf_nr_rrc_bandCombinationIndex, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BandCombinationIndex },
5149   { &hf_nr_rrc_allowedFeatureSetsList, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SEQUENCE_SIZE_1_maxFeatureSetsPerBand_OF_FeatureSetEntryIndex },
5150   { NULL, 0, 0, NULL }
5151 };
5152
5153 static int
5154 dissect_nr_rrc_BandCombinationInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5155   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5156                                    ett_nr_rrc_BandCombinationInfo, BandCombinationInfo_sequence);
5157
5158   return offset;
5159 }
5160
5161
5162 static const per_sequence_t BandCombinationInfoList_sequence_of[1] = {
5163   { &hf_nr_rrc_BandCombinationInfoList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BandCombinationInfo },
5164 };
5165
5166 static int
5167 dissect_nr_rrc_BandCombinationInfoList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5168   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5169                                                   ett_nr_rrc_BandCombinationInfoList, BandCombinationInfoList_sequence_of,
5170                                                   1, maxBandComb, FALSE);
5171
5172   return offset;
5173 }
5174
5175
5176
5177 static int
5178 dissect_nr_rrc_P_Max(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5179   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5180                                                             -30, 33U, NULL, FALSE);
5181
5182   return offset;
5183 }
5184
5185
5186 static const per_sequence_t T_powerCoordination_FR1_sequence[] = {
5187   { &hf_nr_rrc_p_maxNR_FR1  , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_P_Max },
5188   { &hf_nr_rrc_p_maxEUTRA   , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_P_Max },
5189   { &hf_nr_rrc_p_maxUE_FR1  , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_P_Max },
5190   { NULL, 0, 0, NULL }
5191 };
5192
5193 static int
5194 dissect_nr_rrc_T_powerCoordination_FR1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5195   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5196                                    ett_nr_rrc_T_powerCoordination_FR1, T_powerCoordination_FR1_sequence);
5197
5198   return offset;
5199 }
5200
5201
5202
5203 static int
5204 dissect_nr_rrc_ServCellIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5205   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5206                                                             0U, maxNrofServingCells_1, NULL, FALSE);
5207
5208   return offset;
5209 }
5210
5211
5212 static const per_sequence_t T_servCellIndexRangeSCG_sequence[] = {
5213   { &hf_nr_rrc_lowBound     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ServCellIndex },
5214   { &hf_nr_rrc_upBound      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ServCellIndex },
5215   { NULL, 0, 0, NULL }
5216 };
5217
5218 static int
5219 dissect_nr_rrc_T_servCellIndexRangeSCG(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5220   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5221                                    ett_nr_rrc_T_servCellIndexRangeSCG, T_servCellIndexRangeSCG_sequence);
5222
5223   return offset;
5224 }
5225
5226
5227
5228 static int
5229 dissect_nr_rrc_INTEGER_1_maxMeasFreqsMN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5230   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5231                                                             1U, maxMeasFreqsMN, NULL, FALSE);
5232
5233   return offset;
5234 }
5235
5236
5237
5238 static int
5239 dissect_nr_rrc_INTEGER_1_maxMeasIdentitiesMN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5240   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5241                                                             1U, maxMeasIdentitiesMN, NULL, FALSE);
5242
5243   return offset;
5244 }
5245
5246
5247 static const per_sequence_t ConfigRestrictInfoSCG_sequence[] = {
5248   { &hf_nr_rrc_allowedBC_ListMRDC, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_BandCombinationInfoList },
5249   { &hf_nr_rrc_powerCoordination_FR1, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_powerCoordination_FR1 },
5250   { &hf_nr_rrc_servCellIndexRangeSCG, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_servCellIndexRangeSCG },
5251   { &hf_nr_rrc_maxMeasFreqsSCG_NR, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_maxMeasFreqsMN },
5252   { &hf_nr_rrc_maxMeasIdentitiesSCG_NR, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_maxMeasIdentitiesMN },
5253   { NULL, 0, 0, NULL }
5254 };
5255
5256 static int
5257 dissect_nr_rrc_ConfigRestrictInfoSCG(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5258   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5259                                    ett_nr_rrc_ConfigRestrictInfoSCG, ConfigRestrictInfoSCG_sequence);
5260
5261   return offset;
5262 }
5263
5264
5265 static const per_sequence_t SEQUENCE_SIZE_1_32_OF_CellIdentity_sequence_of[1] = {
5266   { &hf_nr_rrc_ran_AreaCells_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CellIdentity },
5267 };
5268
5269 static int
5270 dissect_nr_rrc_SEQUENCE_SIZE_1_32_OF_CellIdentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5271   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5272                                                   ett_nr_rrc_SEQUENCE_SIZE_1_32_OF_CellIdentity, SEQUENCE_SIZE_1_32_OF_CellIdentity_sequence_of,
5273                                                   1, 32, FALSE);
5274
5275   return offset;
5276 }
5277
5278
5279 static const per_sequence_t PLMN_RAN_AreaCell_sequence[] = {
5280   { &hf_nr_rrc_plmn_Identity, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_PLMN_Identity },
5281   { &hf_nr_rrc_ran_AreaCells, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SEQUENCE_SIZE_1_32_OF_CellIdentity },
5282   { NULL, 0, 0, NULL }
5283 };
5284
5285 static int
5286 dissect_nr_rrc_PLMN_RAN_AreaCell(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5287   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5288                                    ett_nr_rrc_PLMN_RAN_AreaCell, PLMN_RAN_AreaCell_sequence);
5289
5290   return offset;
5291 }
5292
5293
5294 static const per_sequence_t PLMN_RAN_AreaCellList_sequence_of[1] = {
5295   { &hf_nr_rrc_PLMN_RAN_AreaCellList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PLMN_RAN_AreaCell },
5296 };
5297
5298 static int
5299 dissect_nr_rrc_PLMN_RAN_AreaCellList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5300   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5301                                                   ett_nr_rrc_PLMN_RAN_AreaCellList, PLMN_RAN_AreaCellList_sequence_of,
5302                                                   1, maxPLMNIdentities, FALSE);
5303
5304   return offset;
5305 }
5306
5307
5308 static const per_sequence_t SEQUENCE_SIZE_1_32_OF_RAN_AreaCode_sequence_of[1] = {
5309   { &hf_nr_rrc_ran_AreaCodeList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RAN_AreaCode },
5310 };
5311
5312 static int
5313 dissect_nr_rrc_SEQUENCE_SIZE_1_32_OF_RAN_AreaCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5314   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5315                                                   ett_nr_rrc_SEQUENCE_SIZE_1_32_OF_RAN_AreaCode, SEQUENCE_SIZE_1_32_OF_RAN_AreaCode_sequence_of,
5316                                                   1, 32, FALSE);
5317
5318   return offset;
5319 }
5320
5321
5322 static const per_sequence_t RAN_AreaConfig_sequence[] = {
5323   { &hf_nr_rrc_trackingAreaCode, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_TrackingAreaCode },
5324   { &hf_nr_rrc_ran_AreaCodeList, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_32_OF_RAN_AreaCode },
5325   { NULL, 0, 0, NULL }
5326 };
5327
5328 static int
5329 dissect_nr_rrc_RAN_AreaConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5330   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5331                                    ett_nr_rrc_RAN_AreaConfig, RAN_AreaConfig_sequence);
5332
5333   return offset;
5334 }
5335
5336
5337 static const per_sequence_t SEQUENCE_SIZE_1_16_OF_RAN_AreaConfig_sequence_of[1] = {
5338   { &hf_nr_rrc_ran_Area_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RAN_AreaConfig },
5339 };
5340
5341 static int
5342 dissect_nr_rrc_SEQUENCE_SIZE_1_16_OF_RAN_AreaConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5343   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5344                                                   ett_nr_rrc_SEQUENCE_SIZE_1_16_OF_RAN_AreaConfig, SEQUENCE_SIZE_1_16_OF_RAN_AreaConfig_sequence_of,
5345                                                   1, 16, FALSE);
5346
5347   return offset;
5348 }
5349
5350
5351 static const per_sequence_t PLMN_RAN_AreaConfig_sequence[] = {
5352   { &hf_nr_rrc_plmn_Identity, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_PLMN_Identity },
5353   { &hf_nr_rrc_ran_Area     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SEQUENCE_SIZE_1_16_OF_RAN_AreaConfig },
5354   { NULL, 0, 0, NULL }
5355 };
5356
5357 static int
5358 dissect_nr_rrc_PLMN_RAN_AreaConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5359   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5360                                    ett_nr_rrc_PLMN_RAN_AreaConfig, PLMN_RAN_AreaConfig_sequence);
5361
5362   return offset;
5363 }
5364
5365
5366 static const per_sequence_t PLMN_RAN_AreaConfigList_sequence_of[1] = {
5367   { &hf_nr_rrc_PLMN_RAN_AreaConfigList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PLMN_RAN_AreaConfig },
5368 };
5369
5370 static int
5371 dissect_nr_rrc_PLMN_RAN_AreaConfigList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5372   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5373                                                   ett_nr_rrc_PLMN_RAN_AreaConfigList, PLMN_RAN_AreaConfigList_sequence_of,
5374                                                   1, maxPLMNIdentities, FALSE);
5375
5376   return offset;
5377 }
5378
5379
5380 static const value_string nr_rrc_RAN_NotificationAreaInfo_vals[] = {
5381   {   0, "cellList" },
5382   {   1, "ran-AreaConfigList" },
5383   { 0, NULL }
5384 };
5385
5386 static const per_choice_t RAN_NotificationAreaInfo_choice[] = {
5387   {   0, &hf_nr_rrc_cellList     , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_PLMN_RAN_AreaCellList },
5388   {   1, &hf_nr_rrc_ran_AreaConfigList, ASN1_EXTENSION_ROOT    , dissect_nr_rrc_PLMN_RAN_AreaConfigList },
5389   { 0, NULL, 0, NULL }
5390 };
5391
5392 static int
5393 dissect_nr_rrc_RAN_NotificationAreaInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5394   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
5395                                  ett_nr_rrc_RAN_NotificationAreaInfo, RAN_NotificationAreaInfo_choice,
5396                                  NULL);
5397
5398   return offset;
5399 }
5400
5401
5402 static const per_sequence_t AS_Context_eag_1_sequence[] = {
5403   { &hf_nr_rrc_ran_NotificationAreaInfo, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_RAN_NotificationAreaInfo },
5404   { NULL, 0, 0, NULL }
5405 };
5406
5407 static int
5408 dissect_nr_rrc_AS_Context_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5409   offset = dissect_per_sequence_eag(tvb, offset, actx, tree, AS_Context_eag_1_sequence);
5410
5411   return offset;
5412 }
5413
5414
5415 static const per_sequence_t AS_Context_sequence[] = {
5416   { &hf_nr_rrc_reestablishmentInfo, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ReestablishmentInfo },
5417   { &hf_nr_rrc_configRestrictInfo, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ConfigRestrictInfoSCG },
5418   { &dummy_hf_nr_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_nr_rrc_AS_Context_eag_1 },
5419   { NULL, 0, 0, NULL }
5420 };
5421
5422 static int
5423 dissect_nr_rrc_AS_Context(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5424   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5425                                    ett_nr_rrc_AS_Context, AS_Context_sequence);
5426
5427   return offset;
5428 }
5429
5430
5431 static const per_sequence_t T_nonCriticalExtension_01_sequence[] = {
5432   { NULL, 0, 0, NULL }
5433 };
5434
5435 static int
5436 dissect_nr_rrc_T_nonCriticalExtension_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5437   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5438                                    ett_nr_rrc_T_nonCriticalExtension_01, T_nonCriticalExtension_01_sequence);
5439
5440   return offset;
5441 }
5442
5443
5444 static const per_sequence_t HandoverPreparationInformation_IEs_sequence[] = {
5445   { &hf_nr_rrc_ue_CapabilityRAT_List, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_UE_CapabilityRAT_ContainerList },
5446   { &hf_nr_rrc_sourceConfig , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_AS_Config },
5447   { &hf_nr_rrc_rrm_Config   , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_RRM_Config },
5448   { &hf_nr_rrc_as_Context   , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_AS_Context },
5449   { &hf_nr_rrc_nonCriticalExtension_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_01 },
5450   { NULL, 0, 0, NULL }
5451 };
5452
5453 static int
5454 dissect_nr_rrc_HandoverPreparationInformation_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5455   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5456                                    ett_nr_rrc_HandoverPreparationInformation_IEs, HandoverPreparationInformation_IEs_sequence);
5457
5458   return offset;
5459 }
5460
5461
5462 static const value_string nr_rrc_T_c1_01_vals[] = {
5463   {   0, "handoverPreparationInformation" },
5464   {   1, "spare3" },
5465   {   2, "spare2" },
5466   {   3, "spare1" },
5467   { 0, NULL }
5468 };
5469
5470 static const per_choice_t T_c1_01_choice[] = {
5471   {   0, &hf_nr_rrc_handoverPreparationInformation, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_HandoverPreparationInformation_IEs },
5472   {   1, &hf_nr_rrc_spare3       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
5473   {   2, &hf_nr_rrc_spare2       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
5474   {   3, &hf_nr_rrc_spare1       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
5475   { 0, NULL, 0, NULL }
5476 };
5477
5478 static int
5479 dissect_nr_rrc_T_c1_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5480   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
5481                                  ett_nr_rrc_T_c1_01, T_c1_01_choice,
5482                                  NULL);
5483
5484   return offset;
5485 }
5486
5487
5488 static const per_sequence_t T_criticalExtensionsFuture_01_sequence[] = {
5489   { NULL, 0, 0, NULL }
5490 };
5491
5492 static int
5493 dissect_nr_rrc_T_criticalExtensionsFuture_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5494   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5495                                    ett_nr_rrc_T_criticalExtensionsFuture_01, T_criticalExtensionsFuture_01_sequence);
5496
5497   return offset;
5498 }
5499
5500
5501 static const value_string nr_rrc_T_criticalExtensions_01_vals[] = {
5502   {   0, "c1" },
5503   {   1, "criticalExtensionsFuture" },
5504   { 0, NULL }
5505 };
5506
5507 static const per_choice_t T_criticalExtensions_01_choice[] = {
5508   {   0, &hf_nr_rrc_c1_01        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_c1_01 },
5509   {   1, &hf_nr_rrc_criticalExtensionsFuture_01, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_01 },
5510   { 0, NULL, 0, NULL }
5511 };
5512
5513 static int
5514 dissect_nr_rrc_T_criticalExtensions_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5515   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
5516                                  ett_nr_rrc_T_criticalExtensions_01, T_criticalExtensions_01_choice,
5517                                  NULL);
5518
5519   return offset;
5520 }
5521
5522
5523 static const per_sequence_t HandoverPreparationInformation_sequence[] = {
5524   { &hf_nr_rrc_criticalExtensions_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_01 },
5525   { NULL, 0, 0, NULL }
5526 };
5527
5528 static int
5529 dissect_nr_rrc_HandoverPreparationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5530   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5531                                    ett_nr_rrc_HandoverPreparationInformation, HandoverPreparationInformation_sequence);
5532
5533   return offset;
5534 }
5535
5536
5537
5538 static int
5539 dissect_nr_rrc_T_scg_CellGroupConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5540   offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index,
5541                                                                 NO_BOUND, NO_BOUND, FALSE, dissect_nr_rrc_RRCReconfiguration_PDU);
5542
5543   return offset;
5544 }
5545
5546
5547
5548 static int
5549 dissect_nr_rrc_T_scg_RB_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5550   offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index,
5551                                                                 NO_BOUND, NO_BOUND, FALSE, dissect_nr_rrc_RadioBearerConfig_PDU);
5552
5553   return offset;
5554 }
5555
5556
5557 static const per_sequence_t BandCombinationInfoSN_sequence[] = {
5558   { &hf_nr_rrc_bandCombinationIndex, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BandCombinationIndex },
5559   { &hf_nr_rrc_requestedFeatureSets, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FeatureSetEntryIndex },
5560   { NULL, 0, 0, NULL }
5561 };
5562
5563 static int
5564 dissect_nr_rrc_BandCombinationInfoSN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5565   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5566                                    ett_nr_rrc_BandCombinationInfoSN, BandCombinationInfoSN_sequence);
5567
5568   return offset;
5569 }
5570
5571
5572 static const per_sequence_t ConfigRestrictModReqSCG_sequence[] = {
5573   { &hf_nr_rrc_requestedBC_MRDC, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_BandCombinationInfoSN },
5574   { &hf_nr_rrc_requestedP_MaxFR1, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_P_Max },
5575   { NULL, 0, 0, NULL }
5576 };
5577
5578 static int
5579 dissect_nr_rrc_ConfigRestrictModReqSCG(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5580   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5581                                    ett_nr_rrc_ConfigRestrictModReqSCG, ConfigRestrictModReqSCG_sequence);
5582
5583   return offset;
5584 }
5585
5586
5587
5588 static int
5589 dissect_nr_rrc_INTEGER_0_9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5590   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5591                                                             0U, 9U, NULL, FALSE);
5592
5593   return offset;
5594 }
5595
5596
5597
5598 static int
5599 dissect_nr_rrc_INTEGER_0_19(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5600   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5601                                                             0U, 19U, NULL, FALSE);
5602
5603   return offset;
5604 }
5605
5606
5607
5608 static int
5609 dissect_nr_rrc_INTEGER_0_31(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5610   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5611                                                             0U, 31U, NULL, FALSE);
5612
5613   return offset;
5614 }
5615
5616
5617
5618 static int
5619 dissect_nr_rrc_INTEGER_0_39(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5620   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5621                                                             0U, 39U, NULL, FALSE);
5622
5623   return offset;
5624 }
5625
5626
5627
5628 static int
5629 dissect_nr_rrc_INTEGER_0_59(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5630   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5631                                                             0U, 59U, NULL, FALSE);
5632
5633   return offset;
5634 }
5635
5636
5637
5638 static int
5639 dissect_nr_rrc_INTEGER_0_63(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5640   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5641                                                             0U, 63U, NULL, FALSE);
5642
5643   return offset;
5644 }
5645
5646
5647
5648 static int
5649 dissect_nr_rrc_INTEGER_0_69(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5650   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5651                                                             0U, 69U, NULL, FALSE);
5652
5653   return offset;
5654 }
5655
5656
5657
5658 static int
5659 dissect_nr_rrc_INTEGER_0_79(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5660   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5661                                                             0U, 79U, NULL, FALSE);
5662
5663   return offset;
5664 }
5665
5666
5667
5668 static int
5669 dissect_nr_rrc_INTEGER_0_127(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5670   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5671                                                             0U, 127U, NULL, FALSE);
5672
5673   return offset;
5674 }
5675
5676
5677
5678 static int
5679 dissect_nr_rrc_INTEGER_0_159(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5680   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5681                                                             0U, 159U, NULL, FALSE);
5682
5683   return offset;
5684 }
5685
5686
5687
5688 static int
5689 dissect_nr_rrc_INTEGER_0_255(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5690   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5691                                                             0U, 255U, NULL, FALSE);
5692
5693   return offset;
5694 }
5695
5696
5697
5698 static int
5699 dissect_nr_rrc_INTEGER_0_319(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5700   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5701                                                             0U, 319U, NULL, FALSE);
5702
5703   return offset;
5704 }
5705
5706
5707
5708 static int
5709 dissect_nr_rrc_INTEGER_0_511(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5710   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5711                                                             0U, 511U, NULL, FALSE);
5712
5713   return offset;
5714 }
5715
5716
5717
5718 static int
5719 dissect_nr_rrc_INTEGER_0_639(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5720   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5721                                                             0U, 639U, NULL, FALSE);
5722
5723   return offset;
5724 }
5725
5726
5727
5728 static int
5729 dissect_nr_rrc_INTEGER_0_1023(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5730   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5731                                                             0U, 1023U, NULL, FALSE);
5732
5733   return offset;
5734 }
5735
5736
5737
5738 static int
5739 dissect_nr_rrc_INTEGER_0_1279(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5740   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5741                                                             0U, 1279U, NULL, FALSE);
5742
5743   return offset;
5744 }
5745
5746
5747
5748 static int
5749 dissect_nr_rrc_INTEGER_0_2047(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5750   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5751                                                             0U, 2047U, NULL, FALSE);
5752
5753   return offset;
5754 }
5755
5756
5757
5758 static int
5759 dissect_nr_rrc_INTEGER_0_2559(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5760   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5761                                                             0U, 2559U, NULL, FALSE);
5762
5763   return offset;
5764 }
5765
5766
5767
5768 static int
5769 dissect_nr_rrc_INTEGER_0_5119(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5770   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5771                                                             0U, 5119U, NULL, FALSE);
5772
5773   return offset;
5774 }
5775
5776
5777
5778 static int
5779 dissect_nr_rrc_INTEGER_0_10239(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5780   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5781                                                             0U, 10239U, NULL, FALSE);
5782
5783   return offset;
5784 }
5785
5786
5787 static const value_string nr_rrc_T_drx_LongCycleStartOffset_vals[] = {
5788   {   0, "ms10" },
5789   {   1, "ms20" },
5790   {   2, "ms32" },
5791   {   3, "ms40" },
5792   {   4, "ms60" },
5793   {   5, "ms64" },
5794   {   6, "ms70" },
5795   {   7, "ms80" },
5796   {   8, "ms128" },
5797   {   9, "ms160" },
5798   {  10, "ms256" },
5799   {  11, "ms320" },
5800   {  12, "ms512" },
5801   {  13, "ms640" },
5802   {  14, "ms1024" },
5803   {  15, "ms1280" },
5804   {  16, "ms2048" },
5805   {  17, "ms2560" },
5806   {  18, "ms5120" },
5807   {  19, "ms10240" },
5808   { 0, NULL }
5809 };
5810
5811 static value_string_ext nr_rrc_T_drx_LongCycleStartOffset_vals_ext = VALUE_STRING_EXT_INIT(nr_rrc_T_drx_LongCycleStartOffset_vals);
5812
5813 static const per_choice_t T_drx_LongCycleStartOffset_choice[] = {
5814   {   0, &hf_nr_rrc_ms10         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_9 },
5815   {   1, &hf_nr_rrc_ms20         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_19 },
5816   {   2, &hf_nr_rrc_ms32         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_31 },
5817   {   3, &hf_nr_rrc_ms40         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_39 },
5818   {   4, &hf_nr_rrc_ms60         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_59 },
5819   {   5, &hf_nr_rrc_ms64         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_63 },
5820   {   6, &hf_nr_rrc_ms70         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_69 },
5821   {   7, &hf_nr_rrc_ms80         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_79 },
5822   {   8, &hf_nr_rrc_ms128        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_127 },
5823   {   9, &hf_nr_rrc_ms160        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_159 },
5824   {  10, &hf_nr_rrc_ms256        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_255 },
5825   {  11, &hf_nr_rrc_ms320        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_319 },
5826   {  12, &hf_nr_rrc_ms512        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_511 },
5827   {  13, &hf_nr_rrc_ms640        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_639 },
5828   {  14, &hf_nr_rrc_ms1024       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_1023 },
5829   {  15, &hf_nr_rrc_ms1280       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_1279 },
5830   {  16, &hf_nr_rrc_ms2048       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_2047 },
5831   {  17, &hf_nr_rrc_ms2560       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_2559 },
5832   {  18, &hf_nr_rrc_ms5120       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_5119 },
5833   {  19, &hf_nr_rrc_ms10240      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_10239 },
5834   { 0, NULL, 0, NULL }
5835 };
5836
5837 static int
5838 dissect_nr_rrc_T_drx_LongCycleStartOffset(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5839   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
5840                                  ett_nr_rrc_T_drx_LongCycleStartOffset, T_drx_LongCycleStartOffset_choice,
5841                                  NULL);
5842
5843   return offset;
5844 }
5845
5846
5847 static const value_string nr_rrc_T_drx_ShortCycle_vals[] = {
5848   {   0, "ms2" },
5849   {   1, "ms3" },
5850   {   2, "ms4" },
5851   {   3, "ms5" },
5852   {   4, "ms6" },
5853   {   5, "ms7" },
5854   {   6, "ms8" },
5855   {   7, "ms10" },
5856   {   8, "ms14" },
5857   {   9, "ms16" },
5858   {  10, "ms20" },
5859   {  11, "ms30" },
5860   {  12, "ms32" },
5861   {  13, "ms35" },
5862   {  14, "ms40" },
5863   {  15, "ms64" },
5864   {  16, "ms80" },
5865   {  17, "ms128" },
5866   {  18, "ms160" },
5867   {  19, "ms256" },
5868   {  20, "ms320" },
5869   {  21, "ms512" },
5870   {  22, "ms640" },
5871   {  23, "spare9" },
5872   {  24, "spare8" },
5873   {  25, "spare7" },
5874   {  26, "spare6" },
5875   {  27, "spare5" },
5876   {  28, "spare4" },
5877   {  29, "spare3" },
5878   {  30, "spare2" },
5879   {  31, "spare1" },
5880   { 0, NULL }
5881 };
5882
5883 static value_string_ext nr_rrc_T_drx_ShortCycle_vals_ext = VALUE_STRING_EXT_INIT(nr_rrc_T_drx_ShortCycle_vals);
5884
5885
5886 static int
5887 dissect_nr_rrc_T_drx_ShortCycle(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5888   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
5889                                      32, NULL, FALSE, 0, NULL);
5890
5891   return offset;
5892 }
5893
5894
5895
5896 static int
5897 dissect_nr_rrc_INTEGER_1_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5898   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
5899                                                             1U, 16U, NULL, FALSE);
5900
5901   return offset;
5902 }
5903
5904
5905 static const per_sequence_t T_shortDRX_sequence[] = {
5906   { &hf_nr_rrc_drx_ShortCycle, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_drx_ShortCycle },
5907   { &hf_nr_rrc_drx_ShortCycleTimer, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_16 },
5908   { NULL, 0, 0, NULL }
5909 };
5910
5911 static int
5912 dissect_nr_rrc_T_shortDRX(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5913   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5914                                    ett_nr_rrc_T_shortDRX, T_shortDRX_sequence);
5915
5916   return offset;
5917 }
5918
5919
5920 static const per_sequence_t DRX_Info_sequence[] = {
5921   { &hf_nr_rrc_drx_LongCycleStartOffset, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_drx_LongCycleStartOffset },
5922   { &hf_nr_rrc_shortDRX     , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_shortDRX },
5923   { NULL, 0, 0, NULL }
5924 };
5925
5926 static int
5927 dissect_nr_rrc_DRX_Info(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5928   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5929                                    ett_nr_rrc_DRX_Info, DRX_Info_sequence);
5930
5931   return offset;
5932 }
5933
5934
5935
5936 static int
5937 dissect_nr_rrc_T_candidateCellInfoListSN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5938   offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index,
5939                                                                 NO_BOUND, NO_BOUND, FALSE, dissect_MeasResultList2NR_PDU);
5940
5941   return offset;
5942 }
5943
5944
5945 static const per_sequence_t NR_FreqInfo_sequence[] = {
5946   { &hf_nr_rrc_measuredFrequency, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ARFCN_ValueNR },
5947   { NULL, 0, 0, NULL }
5948 };
5949
5950 static int
5951 dissect_nr_rrc_NR_FreqInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5952   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5953                                    ett_nr_rrc_NR_FreqInfo, NR_FreqInfo_sequence);
5954
5955   return offset;
5956 }
5957
5958
5959 static const per_sequence_t SEQUENCE_SIZE_1_maxMeasFreqsSN_OF_NR_FreqInfo_sequence_of[1] = {
5960   { &hf_nr_rrc_measuredFrequenciesSN_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_NR_FreqInfo },
5961 };
5962
5963 static int
5964 dissect_nr_rrc_SEQUENCE_SIZE_1_maxMeasFreqsSN_OF_NR_FreqInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5965   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
5966                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxMeasFreqsSN_OF_NR_FreqInfo, SEQUENCE_SIZE_1_maxMeasFreqsSN_OF_NR_FreqInfo_sequence_of,
5967                                                   1, maxMeasFreqsSN, FALSE);
5968
5969   return offset;
5970 }
5971
5972
5973 static const per_sequence_t MeasConfigSN_sequence[] = {
5974   { &hf_nr_rrc_measuredFrequenciesSN, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxMeasFreqsSN_OF_NR_FreqInfo },
5975   { NULL, 0, 0, NULL }
5976 };
5977
5978 static int
5979 dissect_nr_rrc_MeasConfigSN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5980   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
5981                                    ett_nr_rrc_MeasConfigSN, MeasConfigSN_sequence);
5982
5983   return offset;
5984 }
5985
5986
5987 static const value_string nr_rrc_T_fr_Type_vals[] = {
5988   {   0, "fr1" },
5989   {   1, "fr2" },
5990   { 0, NULL }
5991 };
5992
5993
5994 static int
5995 dissect_nr_rrc_T_fr_Type(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
5996   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
5997                                      2, NULL, FALSE, 0, NULL);
5998
5999   return offset;
6000 }
6001
6002
6003 static const per_sequence_t FR_Info_sequence[] = {
6004   { &hf_nr_rrc_servCellIndex, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ServCellIndex },
6005   { &hf_nr_rrc_fr_Type      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_fr_Type },
6006   { NULL, 0, 0, NULL }
6007 };
6008
6009 static int
6010 dissect_nr_rrc_FR_Info(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6011   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6012                                    ett_nr_rrc_FR_Info, FR_Info_sequence);
6013
6014   return offset;
6015 }
6016
6017
6018 static const per_sequence_t FR_InfoList_sequence_of[1] = {
6019   { &hf_nr_rrc_FR_InfoList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FR_Info },
6020 };
6021
6022 static int
6023 dissect_nr_rrc_FR_InfoList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6024   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
6025                                                   ett_nr_rrc_FR_InfoList, FR_InfoList_sequence_of,
6026                                                   1, maxNrofServingCells_1, FALSE);
6027
6028   return offset;
6029 }
6030
6031
6032 static const per_sequence_t CandidateServingFreqListNR_sequence_of[1] = {
6033   { &hf_nr_rrc_CandidateServingFreqListNR_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ARFCN_ValueNR },
6034 };
6035
6036 static int
6037 dissect_nr_rrc_CandidateServingFreqListNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6038   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
6039                                                   ett_nr_rrc_CandidateServingFreqListNR, CandidateServingFreqListNR_sequence_of,
6040                                                   1, maxFreqIDC_MRDC, FALSE);
6041
6042   return offset;
6043 }
6044
6045
6046 static const per_sequence_t T_nonCriticalExtension_02_sequence[] = {
6047   { NULL, 0, 0, NULL }
6048 };
6049
6050 static int
6051 dissect_nr_rrc_T_nonCriticalExtension_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6052   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6053                                    ett_nr_rrc_T_nonCriticalExtension_02, T_nonCriticalExtension_02_sequence);
6054
6055   return offset;
6056 }
6057
6058
6059 static const per_sequence_t CG_Config_IEs_sequence[] = {
6060   { &hf_nr_rrc_scg_CellGroupConfig, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_scg_CellGroupConfig },
6061   { &hf_nr_rrc_scg_RB_Config, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_scg_RB_Config },
6062   { &hf_nr_rrc_configRestrictModReq, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_ConfigRestrictModReqSCG },
6063   { &hf_nr_rrc_drx_InfoSCG  , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_DRX_Info },
6064   { &hf_nr_rrc_candidateCellInfoListSN, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_candidateCellInfoListSN },
6065   { &hf_nr_rrc_measConfigSN , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MeasConfigSN },
6066   { &hf_nr_rrc_selectedBandCombinationNR, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_BandCombinationInfoSN },
6067   { &hf_nr_rrc_fr_InfoListSCG, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_FR_InfoList },
6068   { &hf_nr_rrc_candidateServingFreqListNR, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_CandidateServingFreqListNR },
6069   { &hf_nr_rrc_nonCriticalExtension_02, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_02 },
6070   { NULL, 0, 0, NULL }
6071 };
6072
6073 static int
6074 dissect_nr_rrc_CG_Config_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6075   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6076                                    ett_nr_rrc_CG_Config_IEs, CG_Config_IEs_sequence);
6077
6078   return offset;
6079 }
6080
6081
6082 static const value_string nr_rrc_T_c1_02_vals[] = {
6083   {   0, "cg-Config" },
6084   {   1, "spare3" },
6085   {   2, "spare2" },
6086   {   3, "spare1" },
6087   { 0, NULL }
6088 };
6089
6090 static const per_choice_t T_c1_02_choice[] = {
6091   {   0, &hf_nr_rrc_cg_Config    , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_CG_Config_IEs },
6092   {   1, &hf_nr_rrc_spare3       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
6093   {   2, &hf_nr_rrc_spare2       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
6094   {   3, &hf_nr_rrc_spare1       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
6095   { 0, NULL, 0, NULL }
6096 };
6097
6098 static int
6099 dissect_nr_rrc_T_c1_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6100   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
6101                                  ett_nr_rrc_T_c1_02, T_c1_02_choice,
6102                                  NULL);
6103
6104   return offset;
6105 }
6106
6107
6108 static const per_sequence_t T_criticalExtensionsFuture_02_sequence[] = {
6109   { NULL, 0, 0, NULL }
6110 };
6111
6112 static int
6113 dissect_nr_rrc_T_criticalExtensionsFuture_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6114   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6115                                    ett_nr_rrc_T_criticalExtensionsFuture_02, T_criticalExtensionsFuture_02_sequence);
6116
6117   return offset;
6118 }
6119
6120
6121 static const value_string nr_rrc_T_criticalExtensions_02_vals[] = {
6122   {   0, "c1" },
6123   {   1, "criticalExtensionsFuture" },
6124   { 0, NULL }
6125 };
6126
6127 static const per_choice_t T_criticalExtensions_02_choice[] = {
6128   {   0, &hf_nr_rrc_c1_02        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_c1_02 },
6129   {   1, &hf_nr_rrc_criticalExtensionsFuture_02, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_02 },
6130   { 0, NULL, 0, NULL }
6131 };
6132
6133 static int
6134 dissect_nr_rrc_T_criticalExtensions_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6135   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
6136                                  ett_nr_rrc_T_criticalExtensions_02, T_criticalExtensions_02_choice,
6137                                  NULL);
6138
6139   return offset;
6140 }
6141
6142
6143 static const per_sequence_t CG_Config_sequence[] = {
6144   { &hf_nr_rrc_criticalExtensions_02, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_02 },
6145   { NULL, 0, 0, NULL }
6146 };
6147
6148 static int
6149 dissect_nr_rrc_CG_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6150   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6151                                    ett_nr_rrc_CG_Config, CG_Config_sequence);
6152
6153   return offset;
6154 }
6155
6156
6157
6158 static int
6159 dissect_nr_rrc_T_ue_CapabilityInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6160   offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index,
6161                                                                 NO_BOUND, NO_BOUND, FALSE, dissect_nr_rrc_UE_CapabilityRAT_ContainerList_PDU);
6162
6163   return offset;
6164 }
6165
6166
6167
6168 static int
6169 dissect_nr_rrc_T_candidateCellInfoListSN_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6170   offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index,
6171                                                                 NO_BOUND, NO_BOUND, FALSE, dissect_MeasResultList2NR_PDU);
6172
6173   return offset;
6174 }
6175
6176
6177
6178 static int
6179 dissect_nr_rrc_INTEGER_M30720_30719(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6180   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6181                                                             -30720, 30719U, NULL, FALSE);
6182
6183   return offset;
6184 }
6185
6186
6187 static const per_sequence_t MeasResultCellSFTD_sequence[] = {
6188   { &hf_nr_rrc_physCellId   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PhysCellId },
6189   { &hf_nr_rrc_sfn_OffsetResult, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_1023 },
6190   { &hf_nr_rrc_frameBoundaryOffsetResult, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_M30720_30719 },
6191   { &hf_nr_rrc_rsrp_Result  , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_RSRP_Range },
6192   { NULL, 0, 0, NULL }
6193 };
6194
6195 static int
6196 dissect_nr_rrc_MeasResultCellSFTD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6197   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6198                                    ett_nr_rrc_MeasResultCellSFTD, MeasResultCellSFTD_sequence);
6199
6200   return offset;
6201 }
6202
6203
6204 static const per_sequence_t MeasResultCellListSFTD_sequence_of[1] = {
6205   { &hf_nr_rrc_MeasResultCellListSFTD_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasResultCellSFTD },
6206 };
6207
6208 static int
6209 dissect_nr_rrc_MeasResultCellListSFTD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6210   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
6211                                                   ett_nr_rrc_MeasResultCellListSFTD, MeasResultCellListSFTD_sequence_of,
6212                                                   1, maxCellSFTD, FALSE);
6213
6214   return offset;
6215 }
6216
6217
6218 static const value_string nr_rrc_T_failureType_vals[] = {
6219   {   0, "t310-Expiry" },
6220   {   1, "randomAccessProblem" },
6221   {   2, "rlc-MaxNumRetx" },
6222   {   3, "scg-ChangeFailure" },
6223   {   4, "scg-reconfigFailure" },
6224   {   5, "srb3-IntegrityFailure" },
6225   { 0, NULL }
6226 };
6227
6228
6229 static int
6230 dissect_nr_rrc_T_failureType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6231   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
6232                                      6, NULL, FALSE, 0, NULL);
6233
6234   return offset;
6235 }
6236
6237
6238
6239 static int
6240 dissect_nr_rrc_T_measResultSCG(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6241   offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index,
6242                                                                 NO_BOUND, NO_BOUND, FALSE, dissect_MeasResultSCG_Failure_PDU);
6243
6244   return offset;
6245 }
6246
6247
6248 static const per_sequence_t T_scgFailureInfo_sequence[] = {
6249   { &hf_nr_rrc_failureType  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_failureType },
6250   { &hf_nr_rrc_measResultSCG, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_measResultSCG },
6251   { NULL, 0, 0, NULL }
6252 };
6253
6254 static int
6255 dissect_nr_rrc_T_scgFailureInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6256   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6257                                    ett_nr_rrc_T_scgFailureInfo, T_scgFailureInfo_sequence);
6258
6259   return offset;
6260 }
6261
6262
6263 static const per_sequence_t SEQUENCE_SIZE_1_maxMeasFreqsMN_OF_NR_FreqInfo_sequence_of[1] = {
6264   { &hf_nr_rrc_measuredFrequenciesMN_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_NR_FreqInfo },
6265 };
6266
6267 static int
6268 dissect_nr_rrc_SEQUENCE_SIZE_1_maxMeasFreqsMN_OF_NR_FreqInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6269   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
6270                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxMeasFreqsMN_OF_NR_FreqInfo, SEQUENCE_SIZE_1_maxMeasFreqsMN_OF_NR_FreqInfo_sequence_of,
6271                                                   1, maxMeasFreqsMN, FALSE);
6272
6273   return offset;
6274 }
6275
6276
6277 static const value_string nr_rrc_T_mgl_vals[] = {
6278   {   0, "ms1dot5" },
6279   {   1, "ms3" },
6280   {   2, "ms3dot5" },
6281   {   3, "ms4" },
6282   {   4, "ms5dot5" },
6283   {   5, "ms6" },
6284   { 0, NULL }
6285 };
6286
6287
6288 static int
6289 dissect_nr_rrc_T_mgl(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6290   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
6291                                      6, NULL, FALSE, 0, NULL);
6292
6293   return offset;
6294 }
6295
6296
6297 static const value_string nr_rrc_T_mgrp_vals[] = {
6298   {   0, "ms20" },
6299   {   1, "ms40" },
6300   {   2, "ms80" },
6301   {   3, "ms160" },
6302   { 0, NULL }
6303 };
6304
6305
6306 static int
6307 dissect_nr_rrc_T_mgrp(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6308   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
6309                                      4, NULL, FALSE, 0, NULL);
6310
6311   return offset;
6312 }
6313
6314
6315 static const value_string nr_rrc_T_mgta_vals[] = {
6316   {   0, "ms0" },
6317   {   1, "ms0dot25" },
6318   {   2, "ms0dot5" },
6319   { 0, NULL }
6320 };
6321
6322
6323 static int
6324 dissect_nr_rrc_T_mgta(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6325   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
6326                                      3, NULL, FALSE, 0, NULL);
6327
6328   return offset;
6329 }
6330
6331
6332 static const per_sequence_t GapConfig_sequence[] = {
6333   { &hf_nr_rrc_gapOffset    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_159 },
6334   { &hf_nr_rrc_mgl          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_mgl },
6335   { &hf_nr_rrc_mgrp         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_mgrp },
6336   { &hf_nr_rrc_mgta         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_mgta },
6337   { NULL, 0, 0, NULL }
6338 };
6339
6340 static int
6341 dissect_nr_rrc_GapConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6342   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6343                                    ett_nr_rrc_GapConfig, GapConfig_sequence);
6344
6345   return offset;
6346 }
6347
6348
6349 static const value_string nr_rrc_T_measGapConfig_vals[] = {
6350   {   0, "release" },
6351   {   1, "setup" },
6352   { 0, NULL }
6353 };
6354
6355 static const per_choice_t T_measGapConfig_choice[] = {
6356   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
6357   {   1, &hf_nr_rrc_setup        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_GapConfig },
6358   { 0, NULL, 0, NULL }
6359 };
6360
6361 static int
6362 dissect_nr_rrc_T_measGapConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6363   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
6364                                  ett_nr_rrc_T_measGapConfig, T_measGapConfig_choice,
6365                                  NULL);
6366
6367   return offset;
6368 }
6369
6370
6371 static const value_string nr_rrc_T_gapPurpose_vals[] = {
6372   {   0, "perUE" },
6373   {   1, "perFR1" },
6374   { 0, NULL }
6375 };
6376
6377
6378 static int
6379 dissect_nr_rrc_T_gapPurpose(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6380   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
6381                                      2, NULL, FALSE, 0, NULL);
6382
6383   return offset;
6384 }
6385
6386
6387 static const per_sequence_t MeasConfigMN_sequence[] = {
6388   { &hf_nr_rrc_measuredFrequenciesMN, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxMeasFreqsMN_OF_NR_FreqInfo },
6389   { &hf_nr_rrc_measGapConfig, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_measGapConfig },
6390   { &hf_nr_rrc_gapPurpose   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_gapPurpose },
6391   { NULL, 0, 0, NULL }
6392 };
6393
6394 static int
6395 dissect_nr_rrc_MeasConfigMN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6396   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6397                                    ett_nr_rrc_MeasConfigMN, MeasConfigMN_sequence);
6398
6399   return offset;
6400 }
6401
6402
6403
6404 static int
6405 dissect_nr_rrc_T_sourceConfigSCG(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6406   offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index,
6407                                                                 NO_BOUND, NO_BOUND, FALSE, dissect_nr_rrc_RRCReconfiguration_PDU);
6408
6409   return offset;
6410 }
6411
6412
6413
6414 static int
6415 dissect_nr_rrc_T_scg_RB_Config_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6416   offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index,
6417                                                                 NO_BOUND, NO_BOUND, FALSE, dissect_nr_rrc_RadioBearerConfig_PDU);
6418
6419   return offset;
6420 }
6421
6422
6423
6424 static int
6425 dissect_nr_rrc_T_mcg_RB_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6426   offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index,
6427                                                                 NO_BOUND, NO_BOUND, FALSE, dissect_nr_rrc_RadioBearerConfig_PDU);
6428
6429   return offset;
6430 }
6431
6432
6433 static const value_string nr_rrc_T_gps_vals[] = {
6434   {   0, "true" },
6435   { 0, NULL }
6436 };
6437
6438
6439 static int
6440 dissect_nr_rrc_T_gps(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6441   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
6442                                      1, NULL, FALSE, 0, NULL);
6443
6444   return offset;
6445 }
6446
6447
6448 static const value_string nr_rrc_T_glonass_vals[] = {
6449   {   0, "true" },
6450   { 0, NULL }
6451 };
6452
6453
6454 static int
6455 dissect_nr_rrc_T_glonass(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6456   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
6457                                      1, NULL, FALSE, 0, NULL);
6458
6459   return offset;
6460 }
6461
6462
6463 static const value_string nr_rrc_T_bds_vals[] = {
6464   {   0, "true" },
6465   { 0, NULL }
6466 };
6467
6468
6469 static int
6470 dissect_nr_rrc_T_bds(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6471   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
6472                                      1, NULL, FALSE, 0, NULL);
6473
6474   return offset;
6475 }
6476
6477
6478 static const value_string nr_rrc_T_galileo_vals[] = {
6479   {   0, "true" },
6480   { 0, NULL }
6481 };
6482
6483
6484 static int
6485 dissect_nr_rrc_T_galileo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6486   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
6487                                      1, NULL, FALSE, 0, NULL);
6488
6489   return offset;
6490 }
6491
6492
6493 static const value_string nr_rrc_T_wlan_vals[] = {
6494   {   0, "true" },
6495   { 0, NULL }
6496 };
6497
6498
6499 static int
6500 dissect_nr_rrc_T_wlan(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6501   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
6502                                      1, NULL, FALSE, 0, NULL);
6503
6504   return offset;
6505 }
6506
6507
6508 static const value_string nr_rrc_T_bluetooth_vals[] = {
6509   {   0, "true" },
6510   { 0, NULL }
6511 };
6512
6513
6514 static int
6515 dissect_nr_rrc_T_bluetooth(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6516   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
6517                                      1, NULL, FALSE, 0, NULL);
6518
6519   return offset;
6520 }
6521
6522
6523 static const per_sequence_t VictimSystemType_sequence[] = {
6524   { &hf_nr_rrc_gps          , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_gps },
6525   { &hf_nr_rrc_glonass      , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_glonass },
6526   { &hf_nr_rrc_bds          , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_bds },
6527   { &hf_nr_rrc_galileo      , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_galileo },
6528   { &hf_nr_rrc_wlan         , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_wlan },
6529   { &hf_nr_rrc_bluetooth    , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_bluetooth },
6530   { NULL, 0, 0, NULL }
6531 };
6532
6533 static int
6534 dissect_nr_rrc_VictimSystemType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6535   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6536                                    ett_nr_rrc_VictimSystemType, VictimSystemType_sequence);
6537
6538   return offset;
6539 }
6540
6541
6542 static const value_string nr_rrc_T_interferenceDirectionMRDC_vals[] = {
6543   {   0, "eutra-nr" },
6544   {   1, "nr" },
6545   {   2, "other" },
6546   {   3, "utra-nr-other" },
6547   {   4, "nr-other" },
6548   {   5, "spare3" },
6549   {   6, "spare2" },
6550   {   7, "spare1" },
6551   { 0, NULL }
6552 };
6553
6554
6555 static int
6556 dissect_nr_rrc_T_interferenceDirectionMRDC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6557   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
6558                                      8, NULL, FALSE, 0, NULL);
6559
6560   return offset;
6561 }
6562
6563
6564
6565 static int
6566 dissect_nr_rrc_ARFCN_ValueEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6567   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6568                                                             0U, maxEARFCN, NULL, FALSE);
6569
6570   return offset;
6571 }
6572
6573
6574 static const per_sequence_t AffectedCarrierFreqCombEUTRA_sequence_of[1] = {
6575   { &hf_nr_rrc_AffectedCarrierFreqCombEUTRA_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ARFCN_ValueEUTRA },
6576 };
6577
6578 static int
6579 dissect_nr_rrc_AffectedCarrierFreqCombEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6580   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
6581                                                   ett_nr_rrc_AffectedCarrierFreqCombEUTRA, AffectedCarrierFreqCombEUTRA_sequence_of,
6582                                                   1, maxNrofServingCellsEUTRA, FALSE);
6583
6584   return offset;
6585 }
6586
6587
6588 static const per_sequence_t AffectedCarrierFreqCombNR_sequence_of[1] = {
6589   { &hf_nr_rrc_AffectedCarrierFreqCombNR_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ARFCN_ValueNR },
6590 };
6591
6592 static int
6593 dissect_nr_rrc_AffectedCarrierFreqCombNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6594   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
6595                                                   ett_nr_rrc_AffectedCarrierFreqCombNR, AffectedCarrierFreqCombNR_sequence_of,
6596                                                   1, maxNrofServingCells, FALSE);
6597
6598   return offset;
6599 }
6600
6601
6602 static const per_sequence_t T_affectedCarrierFreqCombMRDC_sequence[] = {
6603   { &hf_nr_rrc_affectedCarrierFreqCombEUTRA, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_AffectedCarrierFreqCombEUTRA },
6604   { &hf_nr_rrc_affectedCarrierFreqCombNR, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_AffectedCarrierFreqCombNR },
6605   { NULL, 0, 0, NULL }
6606 };
6607
6608 static int
6609 dissect_nr_rrc_T_affectedCarrierFreqCombMRDC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6610   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6611                                    ett_nr_rrc_T_affectedCarrierFreqCombMRDC, T_affectedCarrierFreqCombMRDC_sequence);
6612
6613   return offset;
6614 }
6615
6616
6617 static const per_sequence_t AffectedCarrierFreqCombInfoMRDC_sequence[] = {
6618   { &hf_nr_rrc_victimSystemType, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_VictimSystemType },
6619   { &hf_nr_rrc_interferenceDirectionMRDC, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_interferenceDirectionMRDC },
6620   { &hf_nr_rrc_affectedCarrierFreqCombMRDC, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_affectedCarrierFreqCombMRDC },
6621   { NULL, 0, 0, NULL }
6622 };
6623
6624 static int
6625 dissect_nr_rrc_AffectedCarrierFreqCombInfoMRDC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6626   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6627                                    ett_nr_rrc_AffectedCarrierFreqCombInfoMRDC, AffectedCarrierFreqCombInfoMRDC_sequence);
6628
6629   return offset;
6630 }
6631
6632
6633 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofCombIDC_OF_AffectedCarrierFreqCombInfoMRDC_sequence_of[1] = {
6634   { &hf_nr_rrc_affectedCarrierFreqCombInfoListMRDC_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_AffectedCarrierFreqCombInfoMRDC },
6635 };
6636
6637 static int
6638 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCombIDC_OF_AffectedCarrierFreqCombInfoMRDC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6639   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
6640                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCombIDC_OF_AffectedCarrierFreqCombInfoMRDC, SEQUENCE_SIZE_1_maxNrofCombIDC_OF_AffectedCarrierFreqCombInfoMRDC_sequence_of,
6641                                                   1, maxNrofCombIDC, FALSE);
6642
6643   return offset;
6644 }
6645
6646
6647 static const per_sequence_t MRDC_AssistanceInfo_sequence[] = {
6648   { &hf_nr_rrc_affectedCarrierFreqCombInfoListMRDC, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCombIDC_OF_AffectedCarrierFreqCombInfoMRDC },
6649   { NULL, 0, 0, NULL }
6650 };
6651
6652 static int
6653 dissect_nr_rrc_MRDC_AssistanceInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6654   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6655                                    ett_nr_rrc_MRDC_AssistanceInfo, MRDC_AssistanceInfo_sequence);
6656
6657   return offset;
6658 }
6659
6660
6661 static const per_sequence_t T_nonCriticalExtension_03_sequence[] = {
6662   { NULL, 0, 0, NULL }
6663 };
6664
6665 static int
6666 dissect_nr_rrc_T_nonCriticalExtension_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6667   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6668                                    ett_nr_rrc_T_nonCriticalExtension_03, T_nonCriticalExtension_03_sequence);
6669
6670   return offset;
6671 }
6672
6673
6674 static const per_sequence_t CG_ConfigInfo_IEs_sequence[] = {
6675   { &hf_nr_rrc_ue_CapabilityInfo, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_ue_CapabilityInfo },
6676   { &hf_nr_rrc_candidateCellInfoListMN, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MeasResultList2NR },
6677   { &hf_nr_rrc_candidateCellInfoListSN_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_candidateCellInfoListSN_01 },
6678   { &hf_nr_rrc_measResultCellListSFTD, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MeasResultCellListSFTD },
6679   { &hf_nr_rrc_scgFailureInfo, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_scgFailureInfo },
6680   { &hf_nr_rrc_configRestrictInfo, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_ConfigRestrictInfoSCG },
6681   { &hf_nr_rrc_drx_InfoMCG  , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_DRX_Info },
6682   { &hf_nr_rrc_measConfigMN , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MeasConfigMN },
6683   { &hf_nr_rrc_sourceConfigSCG, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_sourceConfigSCG },
6684   { &hf_nr_rrc_scg_RB_Config_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_scg_RB_Config_01 },
6685   { &hf_nr_rrc_mcg_RB_Config, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_mcg_RB_Config },
6686   { &hf_nr_rrc_mrdc_AssistanceInfo, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MRDC_AssistanceInfo },
6687   { &hf_nr_rrc_nonCriticalExtension_03, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_03 },
6688   { NULL, 0, 0, NULL }
6689 };
6690
6691 static int
6692 dissect_nr_rrc_CG_ConfigInfo_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6693   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6694                                    ett_nr_rrc_CG_ConfigInfo_IEs, CG_ConfigInfo_IEs_sequence);
6695
6696   return offset;
6697 }
6698
6699
6700 static const value_string nr_rrc_T_c1_03_vals[] = {
6701   {   0, "cg-ConfigInfo" },
6702   {   1, "spare3" },
6703   {   2, "spare2" },
6704   {   3, "spare1" },
6705   { 0, NULL }
6706 };
6707
6708 static const per_choice_t T_c1_03_choice[] = {
6709   {   0, &hf_nr_rrc_cg_ConfigInfo, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_CG_ConfigInfo_IEs },
6710   {   1, &hf_nr_rrc_spare3       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
6711   {   2, &hf_nr_rrc_spare2       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
6712   {   3, &hf_nr_rrc_spare1       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
6713   { 0, NULL, 0, NULL }
6714 };
6715
6716 static int
6717 dissect_nr_rrc_T_c1_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6718   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
6719                                  ett_nr_rrc_T_c1_03, T_c1_03_choice,
6720                                  NULL);
6721
6722   return offset;
6723 }
6724
6725
6726 static const per_sequence_t T_criticalExtensionsFuture_03_sequence[] = {
6727   { NULL, 0, 0, NULL }
6728 };
6729
6730 static int
6731 dissect_nr_rrc_T_criticalExtensionsFuture_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6732   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6733                                    ett_nr_rrc_T_criticalExtensionsFuture_03, T_criticalExtensionsFuture_03_sequence);
6734
6735   return offset;
6736 }
6737
6738
6739 static const value_string nr_rrc_T_criticalExtensions_03_vals[] = {
6740   {   0, "c1" },
6741   {   1, "criticalExtensionsFuture" },
6742   { 0, NULL }
6743 };
6744
6745 static const per_choice_t T_criticalExtensions_03_choice[] = {
6746   {   0, &hf_nr_rrc_c1_03        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_c1_03 },
6747   {   1, &hf_nr_rrc_criticalExtensionsFuture_03, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_03 },
6748   { 0, NULL, 0, NULL }
6749 };
6750
6751 static int
6752 dissect_nr_rrc_T_criticalExtensions_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6753   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
6754                                  ett_nr_rrc_T_criticalExtensions_03, T_criticalExtensions_03_choice,
6755                                  NULL);
6756
6757   return offset;
6758 }
6759
6760
6761 static const per_sequence_t CG_ConfigInfo_sequence[] = {
6762   { &hf_nr_rrc_criticalExtensions_03, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_03 },
6763   { NULL, 0, 0, NULL }
6764 };
6765
6766 static int
6767 dissect_nr_rrc_CG_ConfigInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6768   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6769                                    ett_nr_rrc_CG_ConfigInfo, CG_ConfigInfo_sequence);
6770
6771   return offset;
6772 }
6773
6774
6775 static const value_string nr_rrc_SubcarrierSpacing_vals[] = {
6776   {   0, "kHz15" },
6777   {   1, "kHz30" },
6778   {   2, "kHz60" },
6779   {   3, "kHz120" },
6780   {   4, "kHz240" },
6781   {   5, "spare3" },
6782   {   6, "spare2" },
6783   {   7, "spare1" },
6784   { 0, NULL }
6785 };
6786
6787
6788 static int
6789 dissect_nr_rrc_SubcarrierSpacing(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6790   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
6791                                      8, NULL, FALSE, 0, NULL);
6792
6793   return offset;
6794 }
6795
6796
6797
6798 static int
6799 dissect_nr_rrc_INTEGER_0_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6800   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6801                                                             0U, 4U, NULL, FALSE);
6802
6803   return offset;
6804 }
6805
6806
6807 static const value_string nr_rrc_T_periodicityAndOffset_01_vals[] = {
6808   {   0, "sf5" },
6809   {   1, "sf10" },
6810   {   2, "sf20" },
6811   {   3, "sf40" },
6812   {   4, "sf80" },
6813   {   5, "sf160" },
6814   { 0, NULL }
6815 };
6816
6817 static const per_choice_t T_periodicityAndOffset_01_choice[] = {
6818   {   0, &hf_nr_rrc_sf5          , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_4 },
6819   {   1, &hf_nr_rrc_sf10         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_9 },
6820   {   2, &hf_nr_rrc_sf20         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_19 },
6821   {   3, &hf_nr_rrc_sf40         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_39 },
6822   {   4, &hf_nr_rrc_sf80         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_79 },
6823   {   5, &hf_nr_rrc_sf160        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_159 },
6824   { 0, NULL, 0, NULL }
6825 };
6826
6827 static int
6828 dissect_nr_rrc_T_periodicityAndOffset_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6829   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
6830                                  ett_nr_rrc_T_periodicityAndOffset_01, T_periodicityAndOffset_01_choice,
6831                                  NULL);
6832
6833   return offset;
6834 }
6835
6836
6837 static const value_string nr_rrc_T_duration_vals[] = {
6838   {   0, "sf1" },
6839   {   1, "sf2" },
6840   {   2, "sf3" },
6841   {   3, "sf4" },
6842   {   4, "sf5" },
6843   { 0, NULL }
6844 };
6845
6846
6847 static int
6848 dissect_nr_rrc_T_duration(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6849   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
6850                                      5, NULL, FALSE, 0, NULL);
6851
6852   return offset;
6853 }
6854
6855
6856 static const per_sequence_t SSB_MTC_sequence[] = {
6857   { &hf_nr_rrc_periodicityAndOffset_02, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_periodicityAndOffset_01 },
6858   { &hf_nr_rrc_duration_02  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_duration },
6859   { NULL, 0, 0, NULL }
6860 };
6861
6862 static int
6863 dissect_nr_rrc_SSB_MTC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6864   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6865                                    ett_nr_rrc_SSB_MTC, SSB_MTC_sequence);
6866
6867   return offset;
6868 }
6869
6870
6871
6872 static int
6873 dissect_nr_rrc_BIT_STRING_SIZE_1_80(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6874   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
6875                                      1, 80, FALSE, NULL, NULL);
6876
6877   return offset;
6878 }
6879
6880
6881
6882 static int
6883 dissect_nr_rrc_INTEGER_0_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6884   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
6885                                                             0U, 3U, NULL, FALSE);
6886
6887   return offset;
6888 }
6889
6890
6891 static const per_sequence_t SS_RSSI_Measurement_sequence[] = {
6892   { &hf_nr_rrc_measurementSlots, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BIT_STRING_SIZE_1_80 },
6893   { &hf_nr_rrc_endSymbol    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_3 },
6894   { NULL, 0, 0, NULL }
6895 };
6896
6897 static int
6898 dissect_nr_rrc_SS_RSSI_Measurement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6899   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6900                                    ett_nr_rrc_SS_RSSI_Measurement, SS_RSSI_Measurement_sequence);
6901
6902   return offset;
6903 }
6904
6905
6906 static const per_sequence_t T_frequencyAndTiming_sequence[] = {
6907   { &hf_nr_rrc_carrierFreq  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ARFCN_ValueNR },
6908   { &hf_nr_rrc_ssbSubcarrierSpacing, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SubcarrierSpacing },
6909   { &hf_nr_rrc_ssb_MeasurementTimingConfiguration, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SSB_MTC },
6910   { &hf_nr_rrc_ss_RSSI_Measurement, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SS_RSSI_Measurement },
6911   { NULL, 0, 0, NULL }
6912 };
6913
6914 static int
6915 dissect_nr_rrc_T_frequencyAndTiming(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6916   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6917                                    ett_nr_rrc_T_frequencyAndTiming, T_frequencyAndTiming_sequence);
6918
6919   return offset;
6920 }
6921
6922
6923 static const per_sequence_t MeasTiming_sequence[] = {
6924   { &hf_nr_rrc_frequencyAndTiming, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_frequencyAndTiming },
6925   { NULL, 0, 0, NULL }
6926 };
6927
6928 static int
6929 dissect_nr_rrc_MeasTiming(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6930   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6931                                    ett_nr_rrc_MeasTiming, MeasTiming_sequence);
6932
6933   return offset;
6934 }
6935
6936
6937 static const per_sequence_t MeasTimingList_sequence_of[1] = {
6938   { &hf_nr_rrc_MeasTimingList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasTiming },
6939 };
6940
6941 static int
6942 dissect_nr_rrc_MeasTimingList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6943   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
6944                                                   ett_nr_rrc_MeasTimingList, MeasTimingList_sequence_of,
6945                                                   1, maxMeasFreqsMN, FALSE);
6946
6947   return offset;
6948 }
6949
6950
6951 static const per_sequence_t T_nonCriticalExtension_04_sequence[] = {
6952   { NULL, 0, 0, NULL }
6953 };
6954
6955 static int
6956 dissect_nr_rrc_T_nonCriticalExtension_04(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6957   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6958                                    ett_nr_rrc_T_nonCriticalExtension_04, T_nonCriticalExtension_04_sequence);
6959
6960   return offset;
6961 }
6962
6963
6964 static const per_sequence_t MeasurementTimingConfiguration_IEs_sequence[] = {
6965   { &hf_nr_rrc_measTiming   , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MeasTimingList },
6966   { &hf_nr_rrc_nonCriticalExtension_04, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_04 },
6967   { NULL, 0, 0, NULL }
6968 };
6969
6970 static int
6971 dissect_nr_rrc_MeasurementTimingConfiguration_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6972   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
6973                                    ett_nr_rrc_MeasurementTimingConfiguration_IEs, MeasurementTimingConfiguration_IEs_sequence);
6974
6975   return offset;
6976 }
6977
6978
6979 static const value_string nr_rrc_T_c1_04_vals[] = {
6980   {   0, "measTimingConf" },
6981   {   1, "spare3" },
6982   {   2, "spare2" },
6983   {   3, "spare1" },
6984   { 0, NULL }
6985 };
6986
6987 static const per_choice_t T_c1_04_choice[] = {
6988   {   0, &hf_nr_rrc_measTimingConf, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_MeasurementTimingConfiguration_IEs },
6989   {   1, &hf_nr_rrc_spare3       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
6990   {   2, &hf_nr_rrc_spare2       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
6991   {   3, &hf_nr_rrc_spare1       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
6992   { 0, NULL, 0, NULL }
6993 };
6994
6995 static int
6996 dissect_nr_rrc_T_c1_04(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
6997   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
6998                                  ett_nr_rrc_T_c1_04, T_c1_04_choice,
6999                                  NULL);
7000
7001   return offset;
7002 }
7003
7004
7005 static const per_sequence_t T_criticalExtensionsFuture_04_sequence[] = {
7006   { NULL, 0, 0, NULL }
7007 };
7008
7009 static int
7010 dissect_nr_rrc_T_criticalExtensionsFuture_04(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7011   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7012                                    ett_nr_rrc_T_criticalExtensionsFuture_04, T_criticalExtensionsFuture_04_sequence);
7013
7014   return offset;
7015 }
7016
7017
7018 static const value_string nr_rrc_T_criticalExtensions_04_vals[] = {
7019   {   0, "c1" },
7020   {   1, "criticalExtensionsFuture" },
7021   { 0, NULL }
7022 };
7023
7024 static const per_choice_t T_criticalExtensions_04_choice[] = {
7025   {   0, &hf_nr_rrc_c1_04        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_c1_04 },
7026   {   1, &hf_nr_rrc_criticalExtensionsFuture_04, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_04 },
7027   { 0, NULL, 0, NULL }
7028 };
7029
7030 static int
7031 dissect_nr_rrc_T_criticalExtensions_04(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7032   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
7033                                  ett_nr_rrc_T_criticalExtensions_04, T_criticalExtensions_04_choice,
7034                                  NULL);
7035
7036   return offset;
7037 }
7038
7039
7040 static const per_sequence_t MeasurementTimingConfiguration_sequence[] = {
7041   { &hf_nr_rrc_criticalExtensions_04, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_04 },
7042   { NULL, 0, 0, NULL }
7043 };
7044
7045 static int
7046 dissect_nr_rrc_MeasurementTimingConfiguration(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7047   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7048                                    ett_nr_rrc_MeasurementTimingConfiguration, MeasurementTimingConfiguration_sequence);
7049
7050   return offset;
7051 }
7052
7053
7054 static const per_sequence_t SEQUENCE_SIZE_1_maxBands_OF_FreqBandIndicatorNR_sequence_of[1] = {
7055   { &hf_nr_rrc_supportedBandListNRForPaging_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FreqBandIndicatorNR },
7056 };
7057
7058 static int
7059 dissect_nr_rrc_SEQUENCE_SIZE_1_maxBands_OF_FreqBandIndicatorNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7060   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
7061                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxBands_OF_FreqBandIndicatorNR, SEQUENCE_SIZE_1_maxBands_OF_FreqBandIndicatorNR_sequence_of,
7062                                                   1, maxBands, FALSE);
7063
7064   return offset;
7065 }
7066
7067
7068 static const per_sequence_t T_nonCriticalExtension_05_sequence[] = {
7069   { NULL, 0, 0, NULL }
7070 };
7071
7072 static int
7073 dissect_nr_rrc_T_nonCriticalExtension_05(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7074   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7075                                    ett_nr_rrc_T_nonCriticalExtension_05, T_nonCriticalExtension_05_sequence);
7076
7077   return offset;
7078 }
7079
7080
7081 static const per_sequence_t UERadioPagingInformation_IEs_sequence[] = {
7082   { &hf_nr_rrc_supportedBandListNRForPaging, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxBands_OF_FreqBandIndicatorNR },
7083   { &hf_nr_rrc_nonCriticalExtension_05, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_05 },
7084   { NULL, 0, 0, NULL }
7085 };
7086
7087 static int
7088 dissect_nr_rrc_UERadioPagingInformation_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7089   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7090                                    ett_nr_rrc_UERadioPagingInformation_IEs, UERadioPagingInformation_IEs_sequence);
7091
7092   return offset;
7093 }
7094
7095
7096 static const value_string nr_rrc_T_c1_05_vals[] = {
7097   {   0, "ueRadioPagingInformation" },
7098   {   1, "spare7" },
7099   {   2, "spare6" },
7100   {   3, "spare5" },
7101   {   4, "spare4" },
7102   {   5, "spare3" },
7103   {   6, "spare2" },
7104   {   7, "spare1" },
7105   { 0, NULL }
7106 };
7107
7108 static const per_choice_t T_c1_05_choice[] = {
7109   {   0, &hf_nr_rrc_ueRadioPagingInformation, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_UERadioPagingInformation_IEs },
7110   {   1, &hf_nr_rrc_spare7       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
7111   {   2, &hf_nr_rrc_spare6       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
7112   {   3, &hf_nr_rrc_spare5       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
7113   {   4, &hf_nr_rrc_spare4       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
7114   {   5, &hf_nr_rrc_spare3       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
7115   {   6, &hf_nr_rrc_spare2       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
7116   {   7, &hf_nr_rrc_spare1       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
7117   { 0, NULL, 0, NULL }
7118 };
7119
7120 static int
7121 dissect_nr_rrc_T_c1_05(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7122   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
7123                                  ett_nr_rrc_T_c1_05, T_c1_05_choice,
7124                                  NULL);
7125
7126   return offset;
7127 }
7128
7129
7130 static const per_sequence_t T_criticalExtensionsFuture_05_sequence[] = {
7131   { NULL, 0, 0, NULL }
7132 };
7133
7134 static int
7135 dissect_nr_rrc_T_criticalExtensionsFuture_05(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7136   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7137                                    ett_nr_rrc_T_criticalExtensionsFuture_05, T_criticalExtensionsFuture_05_sequence);
7138
7139   return offset;
7140 }
7141
7142
7143 static const value_string nr_rrc_T_criticalExtensions_05_vals[] = {
7144   {   0, "c1" },
7145   {   1, "criticalExtensionsFuture" },
7146   { 0, NULL }
7147 };
7148
7149 static const per_choice_t T_criticalExtensions_05_choice[] = {
7150   {   0, &hf_nr_rrc_c1_05        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_c1_05 },
7151   {   1, &hf_nr_rrc_criticalExtensionsFuture_05, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_05 },
7152   { 0, NULL, 0, NULL }
7153 };
7154
7155 static int
7156 dissect_nr_rrc_T_criticalExtensions_05(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7157   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
7158                                  ett_nr_rrc_T_criticalExtensions_05, T_criticalExtensions_05_choice,
7159                                  NULL);
7160
7161   return offset;
7162 }
7163
7164
7165 static const per_sequence_t UERadioPagingInformation_sequence[] = {
7166   { &hf_nr_rrc_criticalExtensions_05, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_05 },
7167   { NULL, 0, 0, NULL }
7168 };
7169
7170 static int
7171 dissect_nr_rrc_UERadioPagingInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7172   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7173                                    ett_nr_rrc_UERadioPagingInformation, UERadioPagingInformation_sequence);
7174
7175   return offset;
7176 }
7177
7178
7179
7180 static int
7181 dissect_nr_rrc_T_ue_RadioAccessCapabilityInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7182   offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index,
7183                                                                 NO_BOUND, NO_BOUND, FALSE, dissect_nr_rrc_UE_CapabilityRAT_ContainerList_PDU);
7184
7185   return offset;
7186 }
7187
7188
7189 static const per_sequence_t T_nonCriticalExtension_06_sequence[] = {
7190   { NULL, 0, 0, NULL }
7191 };
7192
7193 static int
7194 dissect_nr_rrc_T_nonCriticalExtension_06(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7195   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7196                                    ett_nr_rrc_T_nonCriticalExtension_06, T_nonCriticalExtension_06_sequence);
7197
7198   return offset;
7199 }
7200
7201
7202 static const per_sequence_t UERadioAccessCapabilityInformation_IEs_sequence[] = {
7203   { &hf_nr_rrc_ue_RadioAccessCapabilityInfo, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_ue_RadioAccessCapabilityInfo },
7204   { &hf_nr_rrc_nonCriticalExtension_06, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_06 },
7205   { NULL, 0, 0, NULL }
7206 };
7207
7208 static int
7209 dissect_nr_rrc_UERadioAccessCapabilityInformation_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7210   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7211                                    ett_nr_rrc_UERadioAccessCapabilityInformation_IEs, UERadioAccessCapabilityInformation_IEs_sequence);
7212
7213   return offset;
7214 }
7215
7216
7217 static const value_string nr_rrc_T_c1_06_vals[] = {
7218   {   0, "ueRadioAccessCapabilityInformation" },
7219   {   1, "spare7" },
7220   {   2, "spare6" },
7221   {   3, "spare5" },
7222   {   4, "spare4" },
7223   {   5, "spare3" },
7224   {   6, "spare2" },
7225   {   7, "spare1" },
7226   { 0, NULL }
7227 };
7228
7229 static const per_choice_t T_c1_06_choice[] = {
7230   {   0, &hf_nr_rrc_ueRadioAccessCapabilityInformation, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_UERadioAccessCapabilityInformation_IEs },
7231   {   1, &hf_nr_rrc_spare7       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
7232   {   2, &hf_nr_rrc_spare6       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
7233   {   3, &hf_nr_rrc_spare5       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
7234   {   4, &hf_nr_rrc_spare4       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
7235   {   5, &hf_nr_rrc_spare3       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
7236   {   6, &hf_nr_rrc_spare2       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
7237   {   7, &hf_nr_rrc_spare1       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
7238   { 0, NULL, 0, NULL }
7239 };
7240
7241 static int
7242 dissect_nr_rrc_T_c1_06(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7243   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
7244                                  ett_nr_rrc_T_c1_06, T_c1_06_choice,
7245                                  NULL);
7246
7247   return offset;
7248 }
7249
7250
7251 static const per_sequence_t T_criticalExtensionsFuture_06_sequence[] = {
7252   { NULL, 0, 0, NULL }
7253 };
7254
7255 static int
7256 dissect_nr_rrc_T_criticalExtensionsFuture_06(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7257   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7258                                    ett_nr_rrc_T_criticalExtensionsFuture_06, T_criticalExtensionsFuture_06_sequence);
7259
7260   return offset;
7261 }
7262
7263
7264 static const value_string nr_rrc_T_criticalExtensions_06_vals[] = {
7265   {   0, "c1" },
7266   {   1, "criticalExtensionsFuture" },
7267   { 0, NULL }
7268 };
7269
7270 static const per_choice_t T_criticalExtensions_06_choice[] = {
7271   {   0, &hf_nr_rrc_c1_06        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_c1_06 },
7272   {   1, &hf_nr_rrc_criticalExtensionsFuture_06, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_06 },
7273   { 0, NULL, 0, NULL }
7274 };
7275
7276 static int
7277 dissect_nr_rrc_T_criticalExtensions_06(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7278   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
7279                                  ett_nr_rrc_T_criticalExtensions_06, T_criticalExtensions_06_choice,
7280                                  NULL);
7281
7282   return offset;
7283 }
7284
7285
7286 static const per_sequence_t UERadioAccessCapabilityInformation_sequence[] = {
7287   { &hf_nr_rrc_criticalExtensions_06, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_06 },
7288   { NULL, 0, 0, NULL }
7289 };
7290
7291 static int
7292 dissect_nr_rrc_UERadioAccessCapabilityInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7293   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7294                                    ett_nr_rrc_UERadioAccessCapabilityInformation, UERadioAccessCapabilityInformation_sequence);
7295
7296   return offset;
7297 }
7298
7299
7300
7301 static int
7302 dissect_nr_rrc_BIT_STRING_SIZE_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7303   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
7304                                      6, 6, FALSE, NULL, NULL);
7305
7306   return offset;
7307 }
7308
7309
7310 static const value_string nr_rrc_T_subCarrierSpacingCommon_vals[] = {
7311   {   0, "scs15or60" },
7312   {   1, "scs30or120" },
7313   { 0, NULL }
7314 };
7315
7316
7317 static int
7318 dissect_nr_rrc_T_subCarrierSpacingCommon(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7319   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
7320                                      2, NULL, FALSE, 0, NULL);
7321
7322   return offset;
7323 }
7324
7325
7326 static const value_string nr_rrc_T_dmrs_TypeA_Position_vals[] = {
7327   {   0, "pos2" },
7328   {   1, "pos3" },
7329   { 0, NULL }
7330 };
7331
7332
7333 static int
7334 dissect_nr_rrc_T_dmrs_TypeA_Position(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7335   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
7336                                      2, NULL, FALSE, 0, NULL);
7337
7338   return offset;
7339 }
7340
7341
7342 static const value_string nr_rrc_T_cellBarred_vals[] = {
7343   {   0, "barred" },
7344   {   1, "notBarred" },
7345   { 0, NULL }
7346 };
7347
7348
7349 static int
7350 dissect_nr_rrc_T_cellBarred(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7351   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
7352                                      2, NULL, FALSE, 0, NULL);
7353
7354   return offset;
7355 }
7356
7357
7358 static const value_string nr_rrc_T_intraFreqReselection_vals[] = {
7359   {   0, "allowed" },
7360   {   1, "notAllowed" },
7361   { 0, NULL }
7362 };
7363
7364
7365 static int
7366 dissect_nr_rrc_T_intraFreqReselection(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7367   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
7368                                      2, NULL, FALSE, 0, NULL);
7369
7370   return offset;
7371 }
7372
7373
7374
7375 static int
7376 dissect_nr_rrc_BIT_STRING_SIZE_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7377   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
7378                                      1, 1, FALSE, NULL, NULL);
7379
7380   return offset;
7381 }
7382
7383
7384 static const per_sequence_t MIB_sequence[] = {
7385   { &hf_nr_rrc_systemFrameNumber, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BIT_STRING_SIZE_6 },
7386   { &hf_nr_rrc_subCarrierSpacingCommon, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_subCarrierSpacingCommon },
7387   { &hf_nr_rrc_ssb_SubcarrierOffset, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_15 },
7388   { &hf_nr_rrc_dmrs_TypeA_Position, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_dmrs_TypeA_Position },
7389   { &hf_nr_rrc_pdcch_ConfigSIB1, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PDCCH_ConfigSIB1 },
7390   { &hf_nr_rrc_cellBarred   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_cellBarred },
7391   { &hf_nr_rrc_intraFreqReselection, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_intraFreqReselection },
7392   { &hf_nr_rrc_spare        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BIT_STRING_SIZE_1 },
7393   { NULL, 0, 0, NULL }
7394 };
7395
7396 static int
7397 dissect_nr_rrc_MIB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7398   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MIB");
7399
7400   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7401                                    ett_nr_rrc_MIB, MIB_sequence);
7402
7403   return offset;
7404 }
7405
7406
7407 static const per_sequence_t T_messageClassExtension_sequence[] = {
7408   { NULL, 0, 0, NULL }
7409 };
7410
7411 static int
7412 dissect_nr_rrc_T_messageClassExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7413   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7414                                    ett_nr_rrc_T_messageClassExtension, T_messageClassExtension_sequence);
7415
7416   return offset;
7417 }
7418
7419
7420 static const value_string nr_rrc_BCCH_BCH_MessageType_vals[] = {
7421   {   0, "mib" },
7422   {   1, "messageClassExtension" },
7423   { 0, NULL }
7424 };
7425
7426 static const per_choice_t BCCH_BCH_MessageType_choice[] = {
7427   {   0, &hf_nr_rrc_mib          , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_MIB },
7428   {   1, &hf_nr_rrc_messageClassExtension, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_messageClassExtension },
7429   { 0, NULL, 0, NULL }
7430 };
7431
7432 static int
7433 dissect_nr_rrc_BCCH_BCH_MessageType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7434   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
7435                                  ett_nr_rrc_BCCH_BCH_MessageType, BCCH_BCH_MessageType_choice,
7436                                  NULL);
7437
7438   return offset;
7439 }
7440
7441
7442 static const per_sequence_t BCCH_BCH_Message_sequence[] = {
7443   { &hf_nr_rrc_message      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BCCH_BCH_MessageType },
7444   { NULL, 0, 0, NULL }
7445 };
7446
7447 static int
7448 dissect_nr_rrc_BCCH_BCH_Message(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7449   proto_item *ti;
7450
7451   col_set_str(actx->pinfo->cinfo, COL_PROTOCOL, "NR RRC");
7452   col_clear(actx->pinfo->cinfo, COL_INFO);
7453
7454   ti = proto_tree_add_item(tree, proto_nr_rrc, tvb, 0, -1, ENC_NA);
7455   tree = proto_item_add_subtree(ti, ett_nr_rrc);
7456
7457   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7458                                    ett_nr_rrc_BCCH_BCH_Message, BCCH_BCH_Message_sequence);
7459
7460   return offset;
7461 }
7462
7463
7464
7465 static int
7466 dissect_nr_rrc_INTEGER_2_maxNrofSS_BlocksToAverage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7467   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
7468                                                             2U, maxNrofSS_BlocksToAverage, NULL, FALSE);
7469
7470   return offset;
7471 }
7472
7473
7474 static const per_sequence_t ThresholdNR_sequence[] = {
7475   { &hf_nr_rrc_thresholdRSRP, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_RSRP_Range },
7476   { &hf_nr_rrc_thresholdRSRQ, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_RSRQ_Range },
7477   { &hf_nr_rrc_thresholdSINR, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SINR_Range },
7478   { NULL, 0, 0, NULL }
7479 };
7480
7481 static int
7482 dissect_nr_rrc_ThresholdNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7483   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7484                                    ett_nr_rrc_ThresholdNR, ThresholdNR_sequence);
7485
7486   return offset;
7487 }
7488
7489
7490 static const value_string nr_rrc_Q_OffsetRange_vals[] = {
7491   {   0, "dB-24" },
7492   {   1, "dB-22" },
7493   {   2, "dB-20" },
7494   {   3, "dB-18" },
7495   {   4, "dB-16" },
7496   {   5, "dB-14" },
7497   {   6, "dB-12" },
7498   {   7, "dB-10" },
7499   {   8, "dB-8" },
7500   {   9, "dB-6" },
7501   {  10, "dB-5" },
7502   {  11, "dB-4" },
7503   {  12, "dB-3" },
7504   {  13, "dB-2" },
7505   {  14, "dB-1" },
7506   {  15, "dB0" },
7507   {  16, "dB1" },
7508   {  17, "dB2" },
7509   {  18, "dB3" },
7510   {  19, "dB4" },
7511   {  20, "dB5" },
7512   {  21, "dB6" },
7513   {  22, "dB8" },
7514   {  23, "dB10" },
7515   {  24, "dB12" },
7516   {  25, "dB14" },
7517   {  26, "dB16" },
7518   {  27, "dB18" },
7519   {  28, "dB20" },
7520   {  29, "dB22" },
7521   {  30, "dB24" },
7522   { 0, NULL }
7523 };
7524
7525 static value_string_ext nr_rrc_Q_OffsetRange_vals_ext = VALUE_STRING_EXT_INIT(nr_rrc_Q_OffsetRange_vals);
7526
7527
7528 static int
7529 dissect_nr_rrc_Q_OffsetRange(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7530   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
7531                                      31, NULL, FALSE, 0, NULL);
7532
7533   return offset;
7534 }
7535
7536
7537
7538 static int
7539 dissect_nr_rrc_RangeToBestCell(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7540   offset = dissect_nr_rrc_Q_OffsetRange(tvb, offset, actx, tree, hf_index);
7541
7542   return offset;
7543 }
7544
7545
7546 static const value_string nr_rrc_T_q_Hyst_vals[] = {
7547   {   0, "dB0" },
7548   {   1, "dB1" },
7549   {   2, "dB2" },
7550   {   3, "dB3" },
7551   {   4, "dB4" },
7552   {   5, "dB5" },
7553   {   6, "dB6" },
7554   {   7, "dB8" },
7555   {   8, "dB10" },
7556   {   9, "dB12" },
7557   {  10, "dB14" },
7558   {  11, "dB16" },
7559   {  12, "dB18" },
7560   {  13, "dB20" },
7561   {  14, "dB22" },
7562   {  15, "dB24" },
7563   { 0, NULL }
7564 };
7565
7566
7567 static int
7568 dissect_nr_rrc_T_q_Hyst(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7569   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
7570                                      16, NULL, FALSE, 0, NULL);
7571
7572   return offset;
7573 }
7574
7575
7576 static const value_string nr_rrc_T_t_Evaluation_vals[] = {
7577   {   0, "s30" },
7578   {   1, "s60" },
7579   {   2, "s120" },
7580   {   3, "s180" },
7581   {   4, "s240" },
7582   {   5, "spare3" },
7583   {   6, "spare2" },
7584   {   7, "spare1" },
7585   { 0, NULL }
7586 };
7587
7588
7589 static int
7590 dissect_nr_rrc_T_t_Evaluation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7591   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
7592                                      8, NULL, FALSE, 0, NULL);
7593
7594   return offset;
7595 }
7596
7597
7598 static const value_string nr_rrc_T_t_HystNormal_vals[] = {
7599   {   0, "s30" },
7600   {   1, "s60" },
7601   {   2, "s120" },
7602   {   3, "s180" },
7603   {   4, "s240" },
7604   {   5, "spare3" },
7605   {   6, "spare2" },
7606   {   7, "spare1" },
7607   { 0, NULL }
7608 };
7609
7610
7611 static int
7612 dissect_nr_rrc_T_t_HystNormal(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7613   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
7614                                      8, NULL, FALSE, 0, NULL);
7615
7616   return offset;
7617 }
7618
7619
7620 static const per_sequence_t MobilityStateParameters_sequence[] = {
7621   { &hf_nr_rrc_t_Evaluation , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_t_Evaluation },
7622   { &hf_nr_rrc_t_HystNormal , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_t_HystNormal },
7623   { &hf_nr_rrc_n_CellChangeMedium, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_16 },
7624   { &hf_nr_rrc_n_CellChangeHigh, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_16 },
7625   { NULL, 0, 0, NULL }
7626 };
7627
7628 static int
7629 dissect_nr_rrc_MobilityStateParameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7630   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7631                                    ett_nr_rrc_MobilityStateParameters, MobilityStateParameters_sequence);
7632
7633   return offset;
7634 }
7635
7636
7637 static const value_string nr_rrc_T_sf_Medium_vals[] = {
7638   {   0, "dB-6" },
7639   {   1, "dB-4" },
7640   {   2, "dB-2" },
7641   {   3, "dB0" },
7642   { 0, NULL }
7643 };
7644
7645
7646 static int
7647 dissect_nr_rrc_T_sf_Medium(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7648   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
7649                                      4, NULL, FALSE, 0, NULL);
7650
7651   return offset;
7652 }
7653
7654
7655 static const value_string nr_rrc_T_sf_High_vals[] = {
7656   {   0, "dB-6" },
7657   {   1, "dB-4" },
7658   {   2, "dB-2" },
7659   {   3, "dB0" },
7660   { 0, NULL }
7661 };
7662
7663
7664 static int
7665 dissect_nr_rrc_T_sf_High(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7666   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
7667                                      4, NULL, FALSE, 0, NULL);
7668
7669   return offset;
7670 }
7671
7672
7673 static const per_sequence_t T_q_HystSF_sequence[] = {
7674   { &hf_nr_rrc_sf_Medium    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_sf_Medium },
7675   { &hf_nr_rrc_sf_High      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_sf_High },
7676   { NULL, 0, 0, NULL }
7677 };
7678
7679 static int
7680 dissect_nr_rrc_T_q_HystSF(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7681   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7682                                    ett_nr_rrc_T_q_HystSF, T_q_HystSF_sequence);
7683
7684   return offset;
7685 }
7686
7687
7688 static const per_sequence_t T_speedStateReselectionPars_sequence[] = {
7689   { &hf_nr_rrc_mobilityStateParameters, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MobilityStateParameters },
7690   { &hf_nr_rrc_q_HystSF     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_q_HystSF },
7691   { NULL, 0, 0, NULL }
7692 };
7693
7694 static int
7695 dissect_nr_rrc_T_speedStateReselectionPars(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7696   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7697                                    ett_nr_rrc_T_speedStateReselectionPars, T_speedStateReselectionPars_sequence);
7698
7699   return offset;
7700 }
7701
7702
7703 static const per_sequence_t T_cellReselectionInfoCommon_sequence[] = {
7704   { &hf_nr_rrc_nrofSS_BlocksToAverage, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_2_maxNrofSS_BlocksToAverage },
7705   { &hf_nr_rrc_absThreshSS_BlocksConsolidation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ThresholdNR },
7706   { &hf_nr_rrc_rangeToBestCell, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_RangeToBestCell },
7707   { &hf_nr_rrc_q_Hyst       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_q_Hyst },
7708   { &hf_nr_rrc_speedStateReselectionPars, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_speedStateReselectionPars },
7709   { NULL, 0, 0, NULL }
7710 };
7711
7712 static int
7713 dissect_nr_rrc_T_cellReselectionInfoCommon(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7714   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7715                                    ett_nr_rrc_T_cellReselectionInfoCommon, T_cellReselectionInfoCommon_sequence);
7716
7717   return offset;
7718 }
7719
7720
7721
7722 static int
7723 dissect_nr_rrc_ReselectionThreshold(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7724   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
7725                                                             0U, 31U, NULL, FALSE);
7726
7727   return offset;
7728 }
7729
7730
7731
7732 static int
7733 dissect_nr_rrc_ReselectionThresholdQ(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7734   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
7735                                                             0U, 31U, NULL, FALSE);
7736
7737   return offset;
7738 }
7739
7740
7741
7742 static int
7743 dissect_nr_rrc_CellReselectionPriority(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7744   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
7745                                                             0U, 7U, NULL, FALSE);
7746
7747   return offset;
7748 }
7749
7750
7751 static const value_string nr_rrc_CellReselectionSubPriority_vals[] = {
7752   {   0, "oDot2" },
7753   {   1, "oDot4" },
7754   {   2, "oDot6" },
7755   {   3, "oDot8" },
7756   { 0, NULL }
7757 };
7758
7759
7760 static int
7761 dissect_nr_rrc_CellReselectionSubPriority(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7762   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
7763                                      4, NULL, FALSE, 0, NULL);
7764
7765   return offset;
7766 }
7767
7768
7769 static const per_sequence_t T_cellReselectionServingFreqInfo_sequence[] = {
7770   { &hf_nr_rrc_s_NonIntraSearchP, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ReselectionThreshold },
7771   { &hf_nr_rrc_s_NonIntraSearchQ, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ReselectionThresholdQ },
7772   { &hf_nr_rrc_threshServingLowP, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ReselectionThreshold },
7773   { &hf_nr_rrc_threshServingLowQ, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ReselectionThresholdQ },
7774   { &hf_nr_rrc_cellReselectionPriority, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CellReselectionPriority },
7775   { &hf_nr_rrc_cellReselectionSubPriority, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_CellReselectionSubPriority },
7776   { NULL, 0, 0, NULL }
7777 };
7778
7779 static int
7780 dissect_nr_rrc_T_cellReselectionServingFreqInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7781   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7782                                    ett_nr_rrc_T_cellReselectionServingFreqInfo, T_cellReselectionServingFreqInfo_sequence);
7783
7784   return offset;
7785 }
7786
7787
7788
7789 static int
7790 dissect_nr_rrc_Q_RxLevMin(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7791   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
7792                                                             -70, -22, NULL, FALSE);
7793
7794   return offset;
7795 }
7796
7797
7798
7799 static int
7800 dissect_nr_rrc_Q_QualMin(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7801   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
7802                                                             -34, -3, NULL, FALSE);
7803
7804   return offset;
7805 }
7806
7807
7808
7809 static int
7810 dissect_nr_rrc_T_Reselection(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7811   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
7812                                                             0U, 7U, NULL, FALSE);
7813
7814   return offset;
7815 }
7816
7817
7818
7819 static int
7820 dissect_nr_rrc_AdditionalSpectrumEmission(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7821   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
7822                                                             0U, 7U, NULL, FALSE);
7823
7824   return offset;
7825 }
7826
7827
7828 static const per_sequence_t NR_NS_PmaxValue_sequence[] = {
7829   { &hf_nr_rrc_additionalPmax_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_P_Max },
7830   { &hf_nr_rrc_additionalSpectrumEmission, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_AdditionalSpectrumEmission },
7831   { NULL, 0, 0, NULL }
7832 };
7833
7834 static int
7835 dissect_nr_rrc_NR_NS_PmaxValue(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7836   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7837                                    ett_nr_rrc_NR_NS_PmaxValue, NR_NS_PmaxValue_sequence);
7838
7839   return offset;
7840 }
7841
7842
7843 static const per_sequence_t NR_NS_PmaxList_sequence_of[1] = {
7844   { &hf_nr_rrc_NR_NS_PmaxList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_NR_NS_PmaxValue },
7845 };
7846
7847 static int
7848 dissect_nr_rrc_NR_NS_PmaxList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7849   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
7850                                                   ett_nr_rrc_NR_NS_PmaxList, NR_NS_PmaxList_sequence_of,
7851                                                   1, maxNR_NS_Pmax, FALSE);
7852
7853   return offset;
7854 }
7855
7856
7857 static const per_sequence_t NR_MultiBandInfo_sequence[] = {
7858   { &hf_nr_rrc_freqBandIndicatorNR, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_FreqBandIndicatorNR },
7859   { &hf_nr_rrc_nr_NS_PmaxList, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_NR_NS_PmaxList },
7860   { NULL, 0, 0, NULL }
7861 };
7862
7863 static int
7864 dissect_nr_rrc_NR_MultiBandInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7865   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7866                                    ett_nr_rrc_NR_MultiBandInfo, NR_MultiBandInfo_sequence);
7867
7868   return offset;
7869 }
7870
7871
7872 static const per_sequence_t MultiFrequencyBandListNR_SIB_sequence_of[1] = {
7873   { &hf_nr_rrc_MultiFrequencyBandListNR_SIB_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_NR_MultiBandInfo },
7874 };
7875
7876 static int
7877 dissect_nr_rrc_MultiFrequencyBandListNR_SIB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7878   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
7879                                                   ett_nr_rrc_MultiFrequencyBandListNR_SIB, MultiFrequencyBandListNR_SIB_sequence_of,
7880                                                   1, maxNrofMultiBands, FALSE);
7881
7882   return offset;
7883 }
7884
7885
7886
7887 static int
7888 dissect_nr_rrc_BIT_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7889   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
7890                                      4, 4, FALSE, NULL, NULL);
7891
7892   return offset;
7893 }
7894
7895
7896
7897 static int
7898 dissect_nr_rrc_BIT_STRING_SIZE_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7899   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
7900                                      8, 8, FALSE, NULL, NULL);
7901
7902   return offset;
7903 }
7904
7905
7906
7907 static int
7908 dissect_nr_rrc_BIT_STRING_SIZE_64(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7909   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
7910                                      64, 64, FALSE, NULL, NULL);
7911
7912   return offset;
7913 }
7914
7915
7916 static const value_string nr_rrc_SSB_ToMeasure_vals[] = {
7917   {   0, "shortBitmap" },
7918   {   1, "mediumBitmap" },
7919   {   2, "longBitmap" },
7920   { 0, NULL }
7921 };
7922
7923 static const per_choice_t SSB_ToMeasure_choice[] = {
7924   {   0, &hf_nr_rrc_shortBitmap  , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_4 },
7925   {   1, &hf_nr_rrc_mediumBitmap , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_8 },
7926   {   2, &hf_nr_rrc_longBitmap   , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_64 },
7927   { 0, NULL, 0, NULL }
7928 };
7929
7930 static int
7931 dissect_nr_rrc_SSB_ToMeasure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7932   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
7933                                  ett_nr_rrc_SSB_ToMeasure, SSB_ToMeasure_choice,
7934                                  NULL);
7935
7936   return offset;
7937 }
7938
7939
7940
7941 static int
7942 dissect_nr_rrc_BOOLEAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7943   offset = dissect_per_boolean(tvb, offset, actx, tree, hf_index, NULL);
7944
7945   return offset;
7946 }
7947
7948
7949 static const per_sequence_t T_intraFreqCellReselectionInfo_sequence[] = {
7950   { &hf_nr_rrc_q_RxLevMin   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_Q_RxLevMin },
7951   { &hf_nr_rrc_q_RxLevMinSUL, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_Q_RxLevMin },
7952   { &hf_nr_rrc_q_QualMin    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_Q_QualMin },
7953   { &hf_nr_rrc_s_IntraSearchP, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ReselectionThreshold },
7954   { &hf_nr_rrc_s_IntraSearchQ, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ReselectionThresholdQ },
7955   { &hf_nr_rrc_t_ReselectionNR, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_Reselection },
7956   { &hf_nr_rrc_frequencyBandList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_MultiFrequencyBandListNR_SIB },
7957   { &hf_nr_rrc_frequencyBandListSUL, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_MultiFrequencyBandListNR_SIB },
7958   { &hf_nr_rrc_p_Max        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_P_Max },
7959   { &hf_nr_rrc_smtc         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SSB_MTC },
7960   { &hf_nr_rrc_ss_RSSI_Measurement, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SS_RSSI_Measurement },
7961   { &hf_nr_rrc_ssb_ToMeasure, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SSB_ToMeasure },
7962   { &hf_nr_rrc_deriveSSB_IndexFromCell, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
7963   { NULL, 0, 0, NULL }
7964 };
7965
7966 static int
7967 dissect_nr_rrc_T_intraFreqCellReselectionInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7968   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7969                                    ett_nr_rrc_T_intraFreqCellReselectionInfo, T_intraFreqCellReselectionInfo_sequence);
7970
7971   return offset;
7972 }
7973
7974
7975 static const per_sequence_t SIB2_sequence[] = {
7976   { &hf_nr_rrc_cellReselectionInfoCommon, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_cellReselectionInfoCommon },
7977   { &hf_nr_rrc_cellReselectionServingFreqInfo, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_cellReselectionServingFreqInfo },
7978   { &hf_nr_rrc_intraFreqCellReselectionInfo, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_intraFreqCellReselectionInfo },
7979   { NULL, 0, 0, NULL }
7980 };
7981
7982 static int
7983 dissect_nr_rrc_SIB2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7984   col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB2");
7985
7986   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
7987                                    ett_nr_rrc_SIB2, SIB2_sequence);
7988
7989   return offset;
7990 }
7991
7992
7993
7994 static int
7995 dissect_nr_rrc_INTEGER_1_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
7996   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
7997                                                             1U, 8U, NULL, FALSE);
7998
7999   return offset;
8000 }
8001
8002
8003 static const per_sequence_t IntraFreqNeighCellInfo_sequence[] = {
8004   { &hf_nr_rrc_physCellId   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PhysCellId },
8005   { &hf_nr_rrc_q_OffsetCell , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_Q_OffsetRange },
8006   { &hf_nr_rrc_q_RxLevMinOffsetCell, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_8 },
8007   { &hf_nr_rrc_q_RxLevMinOffsetCellSUL, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_8 },
8008   { &hf_nr_rrc_q_QualMinOffsetCell, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_8 },
8009   { NULL, 0, 0, NULL }
8010 };
8011
8012 static int
8013 dissect_nr_rrc_IntraFreqNeighCellInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8014   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8015                                    ett_nr_rrc_IntraFreqNeighCellInfo, IntraFreqNeighCellInfo_sequence);
8016
8017   return offset;
8018 }
8019
8020
8021 static const per_sequence_t IntraFreqNeighCellList_sequence_of[1] = {
8022   { &hf_nr_rrc_IntraFreqNeighCellList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_IntraFreqNeighCellInfo },
8023 };
8024
8025 static int
8026 dissect_nr_rrc_IntraFreqNeighCellList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8027   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
8028                                                   ett_nr_rrc_IntraFreqNeighCellList, IntraFreqNeighCellList_sequence_of,
8029                                                   1, maxCellIntra, FALSE);
8030
8031   return offset;
8032 }
8033
8034
8035 static const value_string nr_rrc_T_range_vals[] = {
8036   {   0, "n4" },
8037   {   1, "n8" },
8038   {   2, "n12" },
8039   {   3, "n16" },
8040   {   4, "n24" },
8041   {   5, "n32" },
8042   {   6, "n48" },
8043   {   7, "n64" },
8044   {   8, "n84" },
8045   {   9, "n96" },
8046   {  10, "n128" },
8047   {  11, "n168" },
8048   {  12, "n252" },
8049   {  13, "n504" },
8050   {  14, "n1008" },
8051   {  15, "spare1" },
8052   { 0, NULL }
8053 };
8054
8055
8056 static int
8057 dissect_nr_rrc_T_range(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8058   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
8059                                      16, NULL, FALSE, 0, NULL);
8060
8061   return offset;
8062 }
8063
8064
8065 static const per_sequence_t PCI_Range_sequence[] = {
8066   { &hf_nr_rrc_start        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PhysCellId },
8067   { &hf_nr_rrc_range        , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_range },
8068   { NULL, 0, 0, NULL }
8069 };
8070
8071 static int
8072 dissect_nr_rrc_PCI_Range(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8073   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8074                                    ett_nr_rrc_PCI_Range, PCI_Range_sequence);
8075
8076   return offset;
8077 }
8078
8079
8080 static const per_sequence_t IntraFreqBlackCellList_sequence_of[1] = {
8081   { &hf_nr_rrc_IntraFreqBlackCellList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PCI_Range },
8082 };
8083
8084 static int
8085 dissect_nr_rrc_IntraFreqBlackCellList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8086   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
8087                                                   ett_nr_rrc_IntraFreqBlackCellList, IntraFreqBlackCellList_sequence_of,
8088                                                   1, maxCellBlack, FALSE);
8089
8090   return offset;
8091 }
8092
8093
8094
8095 static int
8096 dissect_nr_rrc_OCTET_STRING(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8097   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
8098                                        NO_BOUND, NO_BOUND, FALSE, NULL);
8099
8100   return offset;
8101 }
8102
8103
8104 static const per_sequence_t SIB3_sequence[] = {
8105   { &hf_nr_rrc_intraFreqNeighCellList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_IntraFreqNeighCellList },
8106   { &hf_nr_rrc_intraFreqBlackCellList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_IntraFreqBlackCellList },
8107   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
8108   { NULL, 0, 0, NULL }
8109 };
8110
8111 static int
8112 dissect_nr_rrc_SIB3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8113   col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB3");
8114
8115   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8116                                    ett_nr_rrc_SIB3, SIB3_sequence);
8117
8118   return offset;
8119 }
8120
8121
8122 static const value_string nr_rrc_T_sf_Medium_01_vals[] = {
8123   {   0, "oDot25" },
8124   {   1, "oDot5" },
8125   {   2, "oDot75" },
8126   {   3, "lDot0" },
8127   { 0, NULL }
8128 };
8129
8130
8131 static int
8132 dissect_nr_rrc_T_sf_Medium_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8133   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
8134                                      4, NULL, FALSE, 0, NULL);
8135
8136   return offset;
8137 }
8138
8139
8140 static const value_string nr_rrc_T_sf_High_01_vals[] = {
8141   {   0, "oDot25" },
8142   {   1, "oDot5" },
8143   {   2, "oDot75" },
8144   {   3, "lDot0" },
8145   { 0, NULL }
8146 };
8147
8148
8149 static int
8150 dissect_nr_rrc_T_sf_High_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8151   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
8152                                      4, NULL, FALSE, 0, NULL);
8153
8154   return offset;
8155 }
8156
8157
8158 static const per_sequence_t SpeedStateScaleFactors_sequence[] = {
8159   { &hf_nr_rrc_sf_Medium_01 , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_sf_Medium_01 },
8160   { &hf_nr_rrc_sf_High_01   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_sf_High_01 },
8161   { NULL, 0, 0, NULL }
8162 };
8163
8164 static int
8165 dissect_nr_rrc_SpeedStateScaleFactors(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8166   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8167                                    ett_nr_rrc_SpeedStateScaleFactors, SpeedStateScaleFactors_sequence);
8168
8169   return offset;
8170 }
8171
8172
8173 static const per_sequence_t T_threshX_Q_sequence[] = {
8174   { &hf_nr_rrc_threshX_HighQ, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ReselectionThresholdQ },
8175   { &hf_nr_rrc_threshX_LowQ , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ReselectionThresholdQ },
8176   { NULL, 0, 0, NULL }
8177 };
8178
8179 static int
8180 dissect_nr_rrc_T_threshX_Q(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8181   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8182                                    ett_nr_rrc_T_threshX_Q, T_threshX_Q_sequence);
8183
8184   return offset;
8185 }
8186
8187
8188 static const per_sequence_t InterFreqNeighCellInfo_sequence[] = {
8189   { &hf_nr_rrc_physCellId   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PhysCellId },
8190   { &hf_nr_rrc_q_OffsetCell , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_Q_OffsetRange },
8191   { &hf_nr_rrc_q_RxLevMinOffsetCell, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_8 },
8192   { &hf_nr_rrc_q_RxLevMinOffsetCellSUL, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_8 },
8193   { &hf_nr_rrc_q_QualMinOffsetCell, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_8 },
8194   { NULL, 0, 0, NULL }
8195 };
8196
8197 static int
8198 dissect_nr_rrc_InterFreqNeighCellInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8199   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8200                                    ett_nr_rrc_InterFreqNeighCellInfo, InterFreqNeighCellInfo_sequence);
8201
8202   return offset;
8203 }
8204
8205
8206 static const per_sequence_t InterFreqNeighCellList_sequence_of[1] = {
8207   { &hf_nr_rrc_InterFreqNeighCellList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_InterFreqNeighCellInfo },
8208 };
8209
8210 static int
8211 dissect_nr_rrc_InterFreqNeighCellList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8212   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
8213                                                   ett_nr_rrc_InterFreqNeighCellList, InterFreqNeighCellList_sequence_of,
8214                                                   1, maxCellInter, FALSE);
8215
8216   return offset;
8217 }
8218
8219
8220 static const per_sequence_t InterFreqBlackCellList_sequence_of[1] = {
8221   { &hf_nr_rrc_InterFreqBlackCellList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PCI_Range },
8222 };
8223
8224 static int
8225 dissect_nr_rrc_InterFreqBlackCellList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8226   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
8227                                                   ett_nr_rrc_InterFreqBlackCellList, InterFreqBlackCellList_sequence_of,
8228                                                   1, maxCellBlack, FALSE);
8229
8230   return offset;
8231 }
8232
8233
8234 static const per_sequence_t InterFreqCarrierFreqInfo_sequence[] = {
8235   { &hf_nr_rrc_dl_CarrierFreq, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ARFCN_ValueNR },
8236   { &hf_nr_rrc_frequencyBandList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_MultiFrequencyBandListNR_SIB },
8237   { &hf_nr_rrc_frequencyBandListSUL, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_MultiFrequencyBandListNR_SIB },
8238   { &hf_nr_rrc_nrofSS_BlocksToAverage, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_2_maxNrofSS_BlocksToAverage },
8239   { &hf_nr_rrc_absThreshSS_BlocksConsolidation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ThresholdNR },
8240   { &hf_nr_rrc_smtc         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SSB_MTC },
8241   { &hf_nr_rrc_ssbSubcarrierSpacing, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SubcarrierSpacing },
8242   { &hf_nr_rrc_ssb_ToMeasure, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SSB_ToMeasure },
8243   { &hf_nr_rrc_deriveSSB_IndexFromCell, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
8244   { &hf_nr_rrc_ss_RSSI_Measurement, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SS_RSSI_Measurement },
8245   { &hf_nr_rrc_q_RxLevMin   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_Q_RxLevMin },
8246   { &hf_nr_rrc_q_RxLevMinSUL, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_Q_RxLevMin },
8247   { &hf_nr_rrc_q_QualMin    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_Q_QualMin },
8248   { &hf_nr_rrc_p_Max        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_P_Max },
8249   { &hf_nr_rrc_t_ReselectionNR, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_Reselection },
8250   { &hf_nr_rrc_t_ReselectionNR_SF, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SpeedStateScaleFactors },
8251   { &hf_nr_rrc_threshX_HighP, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ReselectionThreshold },
8252   { &hf_nr_rrc_threshX_LowP , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ReselectionThreshold },
8253   { &hf_nr_rrc_threshX_Q    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_threshX_Q },
8254   { &hf_nr_rrc_cellReselectionPriority, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_CellReselectionPriority },
8255   { &hf_nr_rrc_cellReselectionSubPriority, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_CellReselectionSubPriority },
8256   { &hf_nr_rrc_q_OffsetFreq , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_Q_OffsetRange },
8257   { &hf_nr_rrc_interFreqNeighCellList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_InterFreqNeighCellList },
8258   { &hf_nr_rrc_interFreqBlackCellList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_InterFreqBlackCellList },
8259   { NULL, 0, 0, NULL }
8260 };
8261
8262 static int
8263 dissect_nr_rrc_InterFreqCarrierFreqInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8264   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8265                                    ett_nr_rrc_InterFreqCarrierFreqInfo, InterFreqCarrierFreqInfo_sequence);
8266
8267   return offset;
8268 }
8269
8270
8271 static const per_sequence_t InterFreqCarrierFreqList_sequence_of[1] = {
8272   { &hf_nr_rrc_InterFreqCarrierFreqList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_InterFreqCarrierFreqInfo },
8273 };
8274
8275 static int
8276 dissect_nr_rrc_InterFreqCarrierFreqList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8277   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
8278                                                   ett_nr_rrc_InterFreqCarrierFreqList, InterFreqCarrierFreqList_sequence_of,
8279                                                   1, maxFreq, FALSE);
8280
8281   return offset;
8282 }
8283
8284
8285 static const per_sequence_t SIB4_sequence[] = {
8286   { &hf_nr_rrc_interFreqCarrierFreqList, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_InterFreqCarrierFreqList },
8287   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
8288   { NULL, 0, 0, NULL }
8289 };
8290
8291 static int
8292 dissect_nr_rrc_SIB4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8293   col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB4");
8294
8295   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8296                                    ett_nr_rrc_SIB4, SIB4_sequence);
8297
8298   return offset;
8299 }
8300
8301
8302
8303 static int
8304 dissect_nr_rrc_FreqBandIndicatorEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8305   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
8306                                                             1U, maxBandsEUTRA, NULL, FALSE);
8307
8308   return offset;
8309 }
8310
8311
8312
8313 static int
8314 dissect_nr_rrc_INTEGER_M30_33(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8315   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
8316                                                             -30, 33U, NULL, FALSE);
8317
8318   return offset;
8319 }
8320
8321
8322
8323 static int
8324 dissect_nr_rrc_INTEGER_1_288(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8325   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
8326                                                             1U, 288U, NULL, FALSE);
8327
8328   return offset;
8329 }
8330
8331
8332 static const per_sequence_t EUTRA_NS_PmaxValue_sequence[] = {
8333   { &hf_nr_rrc_additionalPmax, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_M30_33 },
8334   { &hf_nr_rrc_additionalSpectrumEmission_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_288 },
8335   { NULL, 0, 0, NULL }
8336 };
8337
8338 static int
8339 dissect_nr_rrc_EUTRA_NS_PmaxValue(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8340   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8341                                    ett_nr_rrc_EUTRA_NS_PmaxValue, EUTRA_NS_PmaxValue_sequence);
8342
8343   return offset;
8344 }
8345
8346
8347 static const per_sequence_t EUTRA_NS_PmaxList_sequence_of[1] = {
8348   { &hf_nr_rrc_EUTRA_NS_PmaxList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_EUTRA_NS_PmaxValue },
8349 };
8350
8351 static int
8352 dissect_nr_rrc_EUTRA_NS_PmaxList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8353   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
8354                                                   ett_nr_rrc_EUTRA_NS_PmaxList, EUTRA_NS_PmaxList_sequence_of,
8355                                                   1, maxEUTRA_NS_Pmax, FALSE);
8356
8357   return offset;
8358 }
8359
8360
8361 static const per_sequence_t EUTRA_MultiBandInfo_sequence[] = {
8362   { &hf_nr_rrc_eutra_FreqBandIndicator, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FreqBandIndicatorEUTRA },
8363   { &hf_nr_rrc_eutra_NS_PmaxList, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_EUTRA_NS_PmaxList },
8364   { NULL, 0, 0, NULL }
8365 };
8366
8367 static int
8368 dissect_nr_rrc_EUTRA_MultiBandInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8369   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8370                                    ett_nr_rrc_EUTRA_MultiBandInfo, EUTRA_MultiBandInfo_sequence);
8371
8372   return offset;
8373 }
8374
8375
8376 static const per_sequence_t EUTRA_MultiBandInfoList_sequence_of[1] = {
8377   { &hf_nr_rrc_EUTRA_MultiBandInfoList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_EUTRA_MultiBandInfo },
8378 };
8379
8380 static int
8381 dissect_nr_rrc_EUTRA_MultiBandInfoList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8382   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
8383                                                   ett_nr_rrc_EUTRA_MultiBandInfoList, EUTRA_MultiBandInfoList_sequence_of,
8384                                                   1, maxMultiBands, FALSE);
8385
8386   return offset;
8387 }
8388
8389
8390
8391 static int
8392 dissect_nr_rrc_EUTRA_PhysCellId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8393   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
8394                                                             0U, 503U, NULL, FALSE);
8395
8396   return offset;
8397 }
8398
8399
8400 static const value_string nr_rrc_EUTRA_Q_OffsetRange_vals[] = {
8401   {   0, "dB-24" },
8402   {   1, "dB-22" },
8403   {   2, "dB-20" },
8404   {   3, "dB-18" },
8405   {   4, "dB-16" },
8406   {   5, "dB-14" },
8407   {   6, "dB-12" },
8408   {   7, "dB-10" },
8409   {   8, "dB-8" },
8410   {   9, "dB-6" },
8411   {  10, "dB-5" },
8412   {  11, "dB-4" },
8413   {  12, "dB-3" },
8414   {  13, "dB-2" },
8415   {  14, "dB-1" },
8416   {  15, "dB0" },
8417   {  16, "dB1" },
8418   {  17, "dB2" },
8419   {  18, "dB3" },
8420   {  19, "dB4" },
8421   {  20, "dB5" },
8422   {  21, "dB6" },
8423   {  22, "dB8" },
8424   {  23, "dB10" },
8425   {  24, "dB12" },
8426   {  25, "dB14" },
8427   {  26, "dB16" },
8428   {  27, "dB18" },
8429   {  28, "dB20" },
8430   {  29, "dB22" },
8431   {  30, "dB24" },
8432   { 0, NULL }
8433 };
8434
8435 static value_string_ext nr_rrc_EUTRA_Q_OffsetRange_vals_ext = VALUE_STRING_EXT_INIT(nr_rrc_EUTRA_Q_OffsetRange_vals);
8436
8437
8438 static int
8439 dissect_nr_rrc_EUTRA_Q_OffsetRange(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8440   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
8441                                      31, NULL, FALSE, 0, NULL);
8442
8443   return offset;
8444 }
8445
8446
8447 static const per_sequence_t EUTRA_FreqNeighCellInfo_sequence[] = {
8448   { &hf_nr_rrc_physCellId_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_EUTRA_PhysCellId },
8449   { &hf_nr_rrc_q_OffsetCell_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_EUTRA_Q_OffsetRange },
8450   { &hf_nr_rrc_q_RxLevMinOffsetCell, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_8 },
8451   { &hf_nr_rrc_q_QualMinOffsetCell, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_8 },
8452   { NULL, 0, 0, NULL }
8453 };
8454
8455 static int
8456 dissect_nr_rrc_EUTRA_FreqNeighCellInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8457   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8458                                    ett_nr_rrc_EUTRA_FreqNeighCellInfo, EUTRA_FreqNeighCellInfo_sequence);
8459
8460   return offset;
8461 }
8462
8463
8464 static const per_sequence_t EUTRA_FreqNeighCellList_sequence_of[1] = {
8465   { &hf_nr_rrc_EUTRA_FreqNeighCellList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_EUTRA_FreqNeighCellInfo },
8466 };
8467
8468 static int
8469 dissect_nr_rrc_EUTRA_FreqNeighCellList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8470   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
8471                                                   ett_nr_rrc_EUTRA_FreqNeighCellList, EUTRA_FreqNeighCellList_sequence_of,
8472                                                   1, maxCellEUTRA, FALSE);
8473
8474   return offset;
8475 }
8476
8477
8478 static const value_string nr_rrc_T_range_01_vals[] = {
8479   {   0, "n4" },
8480   {   1, "n8" },
8481   {   2, "n12" },
8482   {   3, "n16" },
8483   {   4, "n24" },
8484   {   5, "n32" },
8485   {   6, "n48" },
8486   {   7, "n64" },
8487   {   8, "n84" },
8488   {   9, "n96" },
8489   {  10, "n128" },
8490   {  11, "n168" },
8491   {  12, "n252" },
8492   {  13, "n504" },
8493   {  14, "spare2" },
8494   {  15, "spare1" },
8495   { 0, NULL }
8496 };
8497
8498
8499 static int
8500 dissect_nr_rrc_T_range_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8501   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
8502                                      16, NULL, FALSE, 0, NULL);
8503
8504   return offset;
8505 }
8506
8507
8508 static const per_sequence_t EUTRA_PhysCellIdRange_sequence[] = {
8509   { &hf_nr_rrc_start_01     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_EUTRA_PhysCellId },
8510   { &hf_nr_rrc_range_01     , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_range_01 },
8511   { NULL, 0, 0, NULL }
8512 };
8513
8514 static int
8515 dissect_nr_rrc_EUTRA_PhysCellIdRange(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8516   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8517                                    ett_nr_rrc_EUTRA_PhysCellIdRange, EUTRA_PhysCellIdRange_sequence);
8518
8519   return offset;
8520 }
8521
8522
8523 static const per_sequence_t EUTRA_FreqBlackCellList_sequence_of[1] = {
8524   { &hf_nr_rrc_EUTRA_FreqBlackCellList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_EUTRA_PhysCellIdRange },
8525 };
8526
8527 static int
8528 dissect_nr_rrc_EUTRA_FreqBlackCellList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8529   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
8530                                                   ett_nr_rrc_EUTRA_FreqBlackCellList, EUTRA_FreqBlackCellList_sequence_of,
8531                                                   1, maxEUTRA_CellBlack, FALSE);
8532
8533   return offset;
8534 }
8535
8536
8537 static const value_string nr_rrc_EUTRA_AllowedMeasBandwidth_vals[] = {
8538   {   0, "mbw6" },
8539   {   1, "mbw15" },
8540   {   2, "mbw25" },
8541   {   3, "mbw50" },
8542   {   4, "mbw75" },
8543   {   5, "mbw100" },
8544   { 0, NULL }
8545 };
8546
8547
8548 static int
8549 dissect_nr_rrc_EUTRA_AllowedMeasBandwidth(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8550   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
8551                                      6, NULL, FALSE, 0, NULL);
8552
8553   return offset;
8554 }
8555
8556
8557
8558 static int
8559 dissect_nr_rrc_EUTRA_PresenceAntennaPort1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8560   offset = dissect_per_boolean(tvb, offset, actx, tree, hf_index, NULL);
8561
8562   return offset;
8563 }
8564
8565
8566
8567 static int
8568 dissect_nr_rrc_INTEGER_M70_M22(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8569   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
8570                                                             -70, -22, NULL, FALSE);
8571
8572   return offset;
8573 }
8574
8575
8576
8577 static int
8578 dissect_nr_rrc_INTEGER_M34_M3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8579   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
8580                                                             -34, -3, NULL, FALSE);
8581
8582   return offset;
8583 }
8584
8585
8586 static const per_sequence_t T_threshX_Q_01_sequence[] = {
8587   { &hf_nr_rrc_threshX_HighQ, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ReselectionThresholdQ },
8588   { &hf_nr_rrc_threshX_LowQ , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ReselectionThresholdQ },
8589   { NULL, 0, 0, NULL }
8590 };
8591
8592 static int
8593 dissect_nr_rrc_T_threshX_Q_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8594   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8595                                    ett_nr_rrc_T_threshX_Q_01, T_threshX_Q_01_sequence);
8596
8597   return offset;
8598 }
8599
8600
8601 static const per_sequence_t CarrierFreqEUTRA_sequence[] = {
8602   { &hf_nr_rrc_carrierFreq_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ARFCN_ValueEUTRA },
8603   { &hf_nr_rrc_eutra_multiBandInfoList, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_EUTRA_MultiBandInfoList },
8604   { &hf_nr_rrc_eutra_FreqNeighCellList, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_EUTRA_FreqNeighCellList },
8605   { &hf_nr_rrc_eutra_BlackCellList, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_EUTRA_FreqBlackCellList },
8606   { &hf_nr_rrc_allowedMeasBandwidth, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_EUTRA_AllowedMeasBandwidth },
8607   { &hf_nr_rrc_presenceAntennaPort1, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_EUTRA_PresenceAntennaPort1 },
8608   { &hf_nr_rrc_cellReselectionPriority, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_CellReselectionPriority },
8609   { &hf_nr_rrc_cellReselectionSubPriority, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_CellReselectionSubPriority },
8610   { &hf_nr_rrc_threshX_High , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ReselectionThreshold },
8611   { &hf_nr_rrc_threshX_Low  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ReselectionThreshold },
8612   { &hf_nr_rrc_q_RxLevMin_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_M70_M22 },
8613   { &hf_nr_rrc_q_QualMin_01 , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_M34_M3 },
8614   { &hf_nr_rrc_p_MaxEUTRA   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_M30_33 },
8615   { &hf_nr_rrc_threshX_Q_01 , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_threshX_Q_01 },
8616   { NULL, 0, 0, NULL }
8617 };
8618
8619 static int
8620 dissect_nr_rrc_CarrierFreqEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8621   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8622                                    ett_nr_rrc_CarrierFreqEUTRA, CarrierFreqEUTRA_sequence);
8623
8624   return offset;
8625 }
8626
8627
8628 static const per_sequence_t CarrierFreqListEUTRA_sequence_of[1] = {
8629   { &hf_nr_rrc_CarrierFreqListEUTRA_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CarrierFreqEUTRA },
8630 };
8631
8632 static int
8633 dissect_nr_rrc_CarrierFreqListEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8634   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
8635                                                   ett_nr_rrc_CarrierFreqListEUTRA, CarrierFreqListEUTRA_sequence_of,
8636                                                   1, maxEUTRA_Carrier, FALSE);
8637
8638   return offset;
8639 }
8640
8641
8642 static const per_sequence_t SIB5_sequence[] = {
8643   { &hf_nr_rrc_carrierFreqListEUTRA, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_CarrierFreqListEUTRA },
8644   { &hf_nr_rrc_t_ReselectionEUTRA, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_Reselection },
8645   { &hf_nr_rrc_t_ReselectionEUTRA_SF, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SpeedStateScaleFactors },
8646   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
8647   { NULL, 0, 0, NULL }
8648 };
8649
8650 static int
8651 dissect_nr_rrc_SIB5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8652   col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB5");
8653
8654   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8655                                    ett_nr_rrc_SIB5, SIB5_sequence);
8656
8657   return offset;
8658 }
8659
8660
8661
8662 static int
8663 dissect_nr_rrc_T_messageIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8664   tvbuff_t *msg_id_tvb = NULL;
8665   offset = dissect_per_bit_string(tvb, offset, actx, tree, -1,
8666                                      16, 16, FALSE, &msg_id_tvb, NULL);
8667
8668
8669
8670   if (msg_id_tvb) {
8671     actx->created_item = proto_tree_add_item(tree, hf_index, msg_id_tvb, 0, 2, ENC_BIG_ENDIAN);
8672   }
8673
8674   return offset;
8675 }
8676
8677
8678
8679 static int
8680 dissect_nr_rrc_T_serialNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8681   tvbuff_t *serial_nb_tvb = NULL;
8682   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
8683                                      16, 16, FALSE, &serial_nb_tvb, NULL);
8684
8685
8686
8687   if (serial_nb_tvb) {
8688     proto_tree *subtree;
8689     subtree = proto_item_add_subtree(actx->created_item, ett_nr_rrc_serialNumber);
8690     proto_tree_add_item(subtree, hf_nr_rrc_serialNumber_gs, serial_nb_tvb, 0, 2, ENC_BIG_ENDIAN);
8691     proto_tree_add_item(subtree, hf_nr_rrc_serialNumber_msg_code, serial_nb_tvb, 0, 2, ENC_BIG_ENDIAN);
8692     proto_tree_add_item(subtree, hf_nr_rrc_serialNumber_upd_nb, serial_nb_tvb, 0, 2, ENC_BIG_ENDIAN);
8693   }
8694
8695   return offset;
8696 }
8697
8698
8699
8700 static int
8701 dissect_nr_rrc_T_warningType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8702   tvbuff_t *warning_type_tvb = NULL;
8703   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
8704                                        2, 2, FALSE, &warning_type_tvb);
8705
8706
8707
8708   if (warning_type_tvb) {
8709     proto_tree *subtree;
8710     subtree = proto_item_add_subtree(actx->created_item, ett_nr_rrc_warningType);
8711     proto_tree_add_item(subtree, hf_nr_rrc_warningType_value, warning_type_tvb, 0, 2, ENC_BIG_ENDIAN);
8712     proto_tree_add_item(subtree, hf_nr_rrc_warningType_emergency_user_alert, warning_type_tvb, 0, 2, ENC_BIG_ENDIAN);
8713     proto_tree_add_item(subtree, hf_nr_rrc_warningType_popup, warning_type_tvb, 0, 2, ENC_BIG_ENDIAN);
8714   }
8715
8716   return offset;
8717 }
8718
8719
8720 static const per_sequence_t SIB6_sequence[] = {
8721   { &hf_nr_rrc_messageIdentifier, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_messageIdentifier },
8722   { &hf_nr_rrc_serialNumber , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_serialNumber },
8723   { &hf_nr_rrc_warningType  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_warningType },
8724   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
8725   { NULL, 0, 0, NULL }
8726 };
8727
8728 static int
8729 dissect_nr_rrc_SIB6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8730   col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB6");
8731
8732   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8733                                    ett_nr_rrc_SIB6, SIB6_sequence);
8734
8735   return offset;
8736 }
8737
8738
8739
8740 static int
8741 dissect_nr_rrc_T_messageIdentifier_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8742   tvbuff_t *msg_id_tvb = NULL;
8743   offset = dissect_per_bit_string(tvb, offset, actx, tree, -1,
8744                                      16, 16, FALSE, &msg_id_tvb, NULL);
8745
8746
8747
8748   if (msg_id_tvb) {
8749     nr_rrc_private_data_t *nr_priv = nr_rrc_get_private_data(actx);
8750     nr_priv->message_identifier = tvb_get_ntohs(msg_id_tvb, 0) << 16;
8751     actx->created_item = proto_tree_add_item(tree, hf_index, msg_id_tvb, 0, 2, ENC_BIG_ENDIAN);
8752   }
8753
8754   return offset;
8755 }
8756
8757
8758
8759 static int
8760 dissect_nr_rrc_T_serialNumber_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8761   tvbuff_t *serial_nb_tvb = NULL;
8762   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
8763                                      16, 16, FALSE, &serial_nb_tvb, NULL);
8764
8765
8766
8767   if (serial_nb_tvb) {
8768     nr_rrc_private_data_t *nr_priv = nr_rrc_get_private_data(actx);
8769     proto_tree *subtree;
8770     nr_priv->message_identifier |= tvb_get_ntohs(serial_nb_tvb, 0);
8771     subtree = proto_item_add_subtree(actx->created_item, ett_nr_rrc_serialNumber);
8772     proto_tree_add_item(subtree, hf_nr_rrc_serialNumber_gs, serial_nb_tvb, 0, 2, ENC_BIG_ENDIAN);
8773     proto_tree_add_item(subtree, hf_nr_rrc_serialNumber_msg_code, serial_nb_tvb, 0, 2, ENC_BIG_ENDIAN);
8774     proto_tree_add_item(subtree, hf_nr_rrc_serialNumber_upd_nb, serial_nb_tvb, 0, 2, ENC_BIG_ENDIAN);
8775   }
8776
8777   return offset;
8778 }
8779
8780
8781 static const value_string nr_rrc_T_warningMessageSegmentType_vals[] = {
8782   {   0, "notLastSegment" },
8783   {   1, "lastSegment" },
8784   { 0, NULL }
8785 };
8786
8787
8788 static int
8789 dissect_nr_rrc_T_warningMessageSegmentType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8790   nr_rrc_private_data_t *nr_priv = nr_rrc_get_private_data(actx);
8791   guint32 segment_type;
8792   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
8793                                      2, &segment_type, FALSE, 0, NULL);
8794
8795   nr_priv->warning_message_segment_type = (guint8)segment_type;
8796
8797
8798   return offset;
8799 }
8800
8801
8802
8803 static int
8804 dissect_nr_rrc_T_warningMessageSegmentNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8805   nr_rrc_private_data_t *nr_priv = nr_rrc_get_private_data(actx);
8806   guint32 segment_number;
8807   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
8808                                                             0U, 63U, &segment_number, FALSE);
8809
8810   nr_priv->warning_message_segment_number = (guint8)segment_number;
8811
8812
8813   return offset;
8814 }
8815
8816
8817
8818 static int
8819 dissect_nr_rrc_T_warningMessageSegment(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8820   tvbuff_t *warning_msg_seg_tvb = NULL;
8821   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
8822                                        NO_BOUND, NO_BOUND, FALSE, &warning_msg_seg_tvb);
8823
8824
8825
8826   if (warning_msg_seg_tvb) {
8827     nr_rrc_private_data_t *nr_priv = nr_rrc_get_private_data(actx);
8828     proto_tree *subtree;
8829     tvbuff_t *frag_tvb;
8830     gpointer p_dcs;
8831     fragment_head *frag_data = fragment_add_seq_check(&nr_rrc_sib7_reassembly_table, warning_msg_seg_tvb, 0, actx->pinfo,
8832                                                       nr_priv->message_identifier, NULL,
8833                                                       nr_priv->warning_message_segment_number,
8834                                                       tvb_reported_length(warning_msg_seg_tvb),
8835                                                       nr_priv->warning_message_segment_type ? FALSE : TRUE);
8836     subtree = proto_item_add_subtree(actx->created_item, ett_nr_rrc_warningMessageSegment);
8837     frag_tvb = process_reassembled_data(warning_msg_seg_tvb, 0, actx->pinfo, "Reassembled SIB7 warning message",
8838                                         frag_data, &nr_rrc_sib7_frag_items, NULL, subtree);
8839     p_dcs = wmem_map_lookup(nr_rrc_etws_cmas_dcs_hash, GUINT_TO_POINTER((guint)nr_priv->message_identifier));
8840     if (frag_tvb && p_dcs) {
8841       dissect_nr_rrc_warningMessageSegment(frag_tvb, subtree, actx->pinfo, GPOINTER_TO_UINT(p_dcs));
8842     }
8843   }
8844
8845   return offset;
8846 }
8847
8848
8849
8850 static int
8851 dissect_nr_rrc_T_dataCodingScheme(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8852   tvbuff_t *data_coding_scheme_tvb = NULL;
8853   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
8854                                        1, 1, FALSE, &data_coding_scheme_tvb);
8855
8856
8857
8858   if (data_coding_scheme_tvb) {
8859     nr_rrc_private_data_t *nr_priv = nr_rrc_get_private_data(actx);
8860     proto_tree *subtree;
8861     guint32 dataCodingScheme;
8862     subtree = proto_item_add_subtree(actx->created_item, ett_nr_rrc_dataCodingScheme);
8863     dataCodingScheme = dissect_cbs_data_coding_scheme(data_coding_scheme_tvb, actx->pinfo, subtree, 0);
8864     wmem_map_insert(nr_rrc_etws_cmas_dcs_hash, GUINT_TO_POINTER((guint)nr_priv->message_identifier),
8865                     GUINT_TO_POINTER(dataCodingScheme));
8866   }
8867
8868   return offset;
8869 }
8870
8871
8872 static const per_sequence_t SIB7_sequence[] = {
8873   { &hf_nr_rrc_messageIdentifier_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_messageIdentifier_01 },
8874   { &hf_nr_rrc_serialNumber_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_serialNumber_01 },
8875   { &hf_nr_rrc_warningMessageSegmentType, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_warningMessageSegmentType },
8876   { &hf_nr_rrc_warningMessageSegmentNumber, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_warningMessageSegmentNumber },
8877   { &hf_nr_rrc_warningMessageSegment, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_warningMessageSegment },
8878   { &hf_nr_rrc_dataCodingScheme, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_dataCodingScheme },
8879   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
8880   { NULL, 0, 0, NULL }
8881 };
8882
8883 static int
8884 dissect_nr_rrc_SIB7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8885   col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB7");
8886
8887   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
8888                                    ett_nr_rrc_SIB7, SIB7_sequence);
8889
8890   return offset;
8891 }
8892
8893
8894
8895 static int
8896 dissect_nr_rrc_T_messageIdentifier_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8897   tvbuff_t *msg_id_tvb = NULL;
8898   offset = dissect_per_bit_string(tvb, offset, actx, tree, -1,
8899                                      16, 16, FALSE, &msg_id_tvb, NULL);
8900
8901
8902
8903   if (msg_id_tvb) {
8904     nr_rrc_private_data_t *nr_priv = nr_rrc_get_private_data(actx);
8905     nr_priv->message_identifier = tvb_get_ntohs(msg_id_tvb, 0) << 16;
8906     actx->created_item = proto_tree_add_item(tree, hf_index, msg_id_tvb, 0, 2, ENC_BIG_ENDIAN);
8907   }
8908
8909   return offset;
8910 }
8911
8912
8913
8914 static int
8915 dissect_nr_rrc_T_serialNumber_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8916   tvbuff_t *serial_nb_tvb = NULL;
8917   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
8918                                      16, 16, FALSE, &serial_nb_tvb, NULL);
8919
8920
8921
8922   if (serial_nb_tvb) {
8923     nr_rrc_private_data_t *nr_priv = nr_rrc_get_private_data(actx);
8924     proto_tree *subtree;
8925     nr_priv->message_identifier |= tvb_get_ntohs(serial_nb_tvb, 0);
8926     subtree = proto_item_add_subtree(actx->created_item, ett_nr_rrc_serialNumber);
8927     proto_tree_add_item(subtree, hf_nr_rrc_serialNumber_gs, serial_nb_tvb, 0, 2, ENC_BIG_ENDIAN);
8928     proto_tree_add_item(subtree, hf_nr_rrc_serialNumber_msg_code, serial_nb_tvb, 0, 2, ENC_BIG_ENDIAN);
8929     proto_tree_add_item(subtree, hf_nr_rrc_serialNumber_upd_nb, serial_nb_tvb, 0, 2, ENC_BIG_ENDIAN);
8930   }
8931
8932   return offset;
8933 }
8934
8935
8936 static const value_string nr_rrc_T_warningMessageSegmentType_01_vals[] = {
8937   {   0, "notLastSegment" },
8938   {   1, "lastSegment" },
8939   { 0, NULL }
8940 };
8941
8942
8943 static int
8944 dissect_nr_rrc_T_warningMessageSegmentType_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8945   nr_rrc_private_data_t *nr_priv = nr_rrc_get_private_data(actx);
8946   guint32 segment_type;
8947   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
8948                                      2, &segment_type, FALSE, 0, NULL);
8949
8950   nr_priv->warning_message_segment_type = (guint8)segment_type;
8951
8952
8953   return offset;
8954 }
8955
8956
8957
8958 static int
8959 dissect_nr_rrc_T_warningMessageSegmentNumber_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8960   nr_rrc_private_data_t *nr_priv = nr_rrc_get_private_data(actx);
8961   guint32 segment_number;
8962   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
8963                                                             0U, 63U, &segment_number, FALSE);
8964
8965   nr_priv->warning_message_segment_number = (guint8)segment_number;
8966
8967
8968   return offset;
8969 }
8970
8971
8972
8973 static int
8974 dissect_nr_rrc_T_warningMessageSegment_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
8975   tvbuff_t *warning_msg_seg_tvb = NULL;
8976   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
8977                                        NO_BOUND, NO_BOUND, FALSE, &warning_msg_seg_tvb);
8978
8979
8980
8981   if (warning_msg_seg_tvb) {
8982     nr_rrc_private_data_t *nr_priv = nr_rrc_get_private_data(actx);
8983     proto_tree *subtree;
8984     tvbuff_t *frag_tvb;
8985     gpointer p_dcs;
8986     fragment_head *frag_data = fragment_add_seq_check(&nr_rrc_sib8_reassembly_table, warning_msg_seg_tvb, 0, actx->pinfo,
8987                                                       nr_priv->message_identifier, NULL,
8988                                                       nr_priv->warning_message_segment_number,
8989                                                       tvb_reported_length(warning_msg_seg_tvb),
8990                                                       nr_priv->warning_message_segment_type ? FALSE : TRUE);
8991     subtree = proto_item_add_subtree(actx->created_item, ett_nr_rrc_warningMessageSegment);
8992     frag_tvb = process_reassembled_data(warning_msg_seg_tvb, 0, actx->pinfo, "Reassembled SIB8 warning message",
8993                                         frag_data, &nr_rrc_sib8_frag_items, NULL, subtree);
8994     p_dcs = wmem_map_lookup(nr_rrc_etws_cmas_dcs_hash, GUINT_TO_POINTER((guint)nr_priv->message_identifier));
8995     if (frag_tvb && p_dcs) {
8996       dissect_nr_rrc_warningMessageSegment(frag_tvb, subtree, actx->pinfo, GPOINTER_TO_UINT(p_dcs));
8997     }
8998   }
8999
9000   return offset;
9001 }
9002
9003
9004
9005 static int
9006 dissect_nr_rrc_T_dataCodingScheme_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9007   tvbuff_t *data_coding_scheme_tvb = NULL;
9008   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
9009                                        1, 1, FALSE, &data_coding_scheme_tvb);
9010
9011
9012
9013   if (data_coding_scheme_tvb) {
9014     nr_rrc_private_data_t *nr_priv = nr_rrc_get_private_data(actx);
9015     proto_tree *subtree;
9016     guint32 dataCodingScheme;
9017     subtree = proto_item_add_subtree(actx->created_item, ett_nr_rrc_dataCodingScheme);
9018     dataCodingScheme = dissect_cbs_data_coding_scheme(data_coding_scheme_tvb, actx->pinfo, subtree, 0);
9019     wmem_map_insert(nr_rrc_etws_cmas_dcs_hash, GUINT_TO_POINTER((guint)nr_priv->message_identifier),
9020                     GUINT_TO_POINTER(dataCodingScheme));
9021   }
9022
9023   return offset;
9024 }
9025
9026
9027 static const per_sequence_t SIB8_sequence[] = {
9028   { &hf_nr_rrc_messageIdentifier_02, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_messageIdentifier_02 },
9029   { &hf_nr_rrc_serialNumber_02, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_serialNumber_02 },
9030   { &hf_nr_rrc_warningMessageSegmentType_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_warningMessageSegmentType_01 },
9031   { &hf_nr_rrc_warningMessageSegmentNumber_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_warningMessageSegmentNumber_01 },
9032   { &hf_nr_rrc_warningMessageSegment_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_warningMessageSegment_01 },
9033   { &hf_nr_rrc_dataCodingScheme_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_dataCodingScheme_01 },
9034   { &hf_nr_rrc_warningAreaCoordinatesSegment, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
9035   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
9036   { NULL, 0, 0, NULL }
9037 };
9038
9039 static int
9040 dissect_nr_rrc_SIB8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9041   col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB8");
9042
9043   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9044                                    ett_nr_rrc_SIB8, SIB8_sequence);
9045
9046   return offset;
9047 }
9048
9049
9050
9051 static int
9052 dissect_nr_rrc_T_timeInfoUTC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9053   guint64 timeInfo;
9054   proto_tree *subtree;
9055   nstime_t ts;
9056   guint32 old_offset = offset;
9057   offset = dissect_per_constrained_integer_64b(tvb, offset, actx, tree, hf_index,
9058                                                             0U, G_GUINT64_CONSTANT(549755813887), &timeInfo, FALSE);
9059
9060
9061
9062   subtree = proto_item_add_subtree(actx->created_item, ett_nr_rrc_timeInfo);
9063   ts.secs = (time_t)(timeInfo/100)-2208988800U; /* epoch is 00:00:00 (midnight) UTC on 1900-01-01 */
9064   ts.nsecs = (int)(timeInfo%100)*10000000;
9065   proto_tree_add_time(subtree, hf_nr_rrc_utc_time, tvb, old_offset>>3, (old_offset&0x07) ? 6 : 5, &ts);
9066   proto_tree_add_time(subtree, hf_nr_rrc_local_time, tvb, old_offset>>3, (old_offset&0x07) ? 6 : 5, &ts);
9067
9068   return offset;
9069 }
9070
9071
9072
9073 static int
9074 dissect_nr_rrc_T_dayLightSavingTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9075   tvbuff_t *daylight_saving_time_tvb = NULL;
9076   offset = dissect_per_bit_string(tvb, offset, actx, tree, -1,
9077                                      2, 2, FALSE, &daylight_saving_time_tvb, NULL);
9078
9079
9080
9081   if (daylight_saving_time_tvb) {
9082     guint bitvalue = tvb_get_bits8(daylight_saving_time_tvb, 0, 2);
9083     actx->created_item = proto_tree_add_uint(tree, hf_index, daylight_saving_time_tvb, 0, 1, bitvalue);
9084   }
9085
9086   return offset;
9087 }
9088
9089
9090
9091 static int
9092 dissect_nr_rrc_INTEGER_M127_128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9093   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
9094                                                             -127, 128U, NULL, FALSE);
9095
9096   return offset;
9097 }
9098
9099
9100
9101 static int
9102 dissect_nr_rrc_INTEGER_M63_64(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9103   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
9104                                                             -63, 64U, NULL, FALSE);
9105
9106   return offset;
9107 }
9108
9109
9110 static const per_sequence_t T_timeInfo_sequence[] = {
9111   { &hf_nr_rrc_timeInfoUTC  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_timeInfoUTC },
9112   { &hf_nr_rrc_dayLightSavingTime, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_dayLightSavingTime },
9113   { &hf_nr_rrc_leapSeconds  , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_M127_128 },
9114   { &hf_nr_rrc_localTimeOffset, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_M63_64 },
9115   { NULL, 0, 0, NULL }
9116 };
9117
9118 static int
9119 dissect_nr_rrc_T_timeInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9120   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9121                                    ett_nr_rrc_T_timeInfo, T_timeInfo_sequence);
9122
9123   return offset;
9124 }
9125
9126
9127 static const per_sequence_t SIB9_sequence[] = {
9128   { &hf_nr_rrc_timeInfo     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_timeInfo },
9129   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
9130   { NULL, 0, 0, NULL }
9131 };
9132
9133 static int
9134 dissect_nr_rrc_SIB9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9135   col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB9");
9136
9137   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9138                                    ett_nr_rrc_SIB9, SIB9_sequence);
9139
9140   return offset;
9141 }
9142
9143
9144 static const value_string nr_rrc_T_sib_TypeAndInfo_item_vals[] = {
9145   {   0, "sib2" },
9146   {   1, "sib3" },
9147   {   2, "sib4" },
9148   {   3, "sib5" },
9149   {   4, "sib6" },
9150   {   5, "sib7" },
9151   {   6, "sib8" },
9152   {   7, "sib9" },
9153   { 0, NULL }
9154 };
9155
9156 static const per_choice_t T_sib_TypeAndInfo_item_choice[] = {
9157   {   0, &hf_nr_rrc_sib2         , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_SIB2 },
9158   {   1, &hf_nr_rrc_sib3         , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_SIB3 },
9159   {   2, &hf_nr_rrc_sib4         , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_SIB4 },
9160   {   3, &hf_nr_rrc_sib5         , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_SIB5 },
9161   {   4, &hf_nr_rrc_sib6         , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_SIB6 },
9162   {   5, &hf_nr_rrc_sib7         , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_SIB7 },
9163   {   6, &hf_nr_rrc_sib8         , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_SIB8 },
9164   {   7, &hf_nr_rrc_sib9         , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_SIB9 },
9165   { 0, NULL, 0, NULL }
9166 };
9167
9168 static int
9169 dissect_nr_rrc_T_sib_TypeAndInfo_item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9170   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
9171                                  ett_nr_rrc_T_sib_TypeAndInfo_item, T_sib_TypeAndInfo_item_choice,
9172                                  NULL);
9173
9174   return offset;
9175 }
9176
9177
9178 static const per_sequence_t T_sib_TypeAndInfo_sequence_of[1] = {
9179   { &hf_nr_rrc_sib_TypeAndInfo_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_sib_TypeAndInfo_item },
9180 };
9181
9182 static int
9183 dissect_nr_rrc_T_sib_TypeAndInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9184   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
9185                                                   ett_nr_rrc_T_sib_TypeAndInfo, T_sib_TypeAndInfo_sequence_of,
9186                                                   1, maxSIB, FALSE);
9187
9188   return offset;
9189 }
9190
9191
9192 static const per_sequence_t T_nonCriticalExtension_28_sequence[] = {
9193   { NULL, 0, 0, NULL }
9194 };
9195
9196 static int
9197 dissect_nr_rrc_T_nonCriticalExtension_28(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9198   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9199                                    ett_nr_rrc_T_nonCriticalExtension_28, T_nonCriticalExtension_28_sequence);
9200
9201   return offset;
9202 }
9203
9204
9205 static const per_sequence_t SystemInformation_IEs_sequence[] = {
9206   { &hf_nr_rrc_sib_TypeAndInfo, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_sib_TypeAndInfo },
9207   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
9208   { &hf_nr_rrc_nonCriticalExtension_30, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_28 },
9209   { NULL, 0, 0, NULL }
9210 };
9211
9212 static int
9213 dissect_nr_rrc_SystemInformation_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9214   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9215                                    ett_nr_rrc_SystemInformation_IEs, SystemInformation_IEs_sequence);
9216
9217   return offset;
9218 }
9219
9220
9221 static const per_sequence_t T_criticalExtensionsFuture_27_sequence[] = {
9222   { NULL, 0, 0, NULL }
9223 };
9224
9225 static int
9226 dissect_nr_rrc_T_criticalExtensionsFuture_27(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9227   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9228                                    ett_nr_rrc_T_criticalExtensionsFuture_27, T_criticalExtensionsFuture_27_sequence);
9229
9230   return offset;
9231 }
9232
9233
9234 static const value_string nr_rrc_T_criticalExtensions_27_vals[] = {
9235   {   0, "systemInformation-r15" },
9236   {   1, "criticalExtensionsFuture" },
9237   { 0, NULL }
9238 };
9239
9240 static const per_choice_t T_criticalExtensions_27_choice[] = {
9241   {   0, &hf_nr_rrc_systemInformation_r15, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SystemInformation_IEs },
9242   {   1, &hf_nr_rrc_criticalExtensionsFuture_27, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_27 },
9243   { 0, NULL, 0, NULL }
9244 };
9245
9246 static int
9247 dissect_nr_rrc_T_criticalExtensions_27(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9248   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
9249                                  ett_nr_rrc_T_criticalExtensions_27, T_criticalExtensions_27_choice,
9250                                  NULL);
9251
9252   return offset;
9253 }
9254
9255
9256 static const per_sequence_t SystemInformation_sequence[] = {
9257   { &hf_nr_rrc_criticalExtensions_27, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_27 },
9258   { NULL, 0, 0, NULL }
9259 };
9260
9261 static int
9262 dissect_nr_rrc_SystemInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9263   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "System Information [");
9264
9265   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9266                                    ett_nr_rrc_SystemInformation, SystemInformation_sequence);
9267
9268   col_append_str(actx->pinfo->cinfo, COL_INFO, " ]");
9269
9270   return offset;
9271 }
9272
9273
9274 static const per_sequence_t T_cellSelectionInfo_sequence[] = {
9275   { &hf_nr_rrc_q_RxLevMin   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_Q_RxLevMin },
9276   { &hf_nr_rrc_q_RxLevMinOffset, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_8 },
9277   { &hf_nr_rrc_q_RxLevMinSUL, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_Q_RxLevMin },
9278   { &hf_nr_rrc_q_QualMin    , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_Q_QualMin },
9279   { &hf_nr_rrc_q_QualMinOffset, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_8 },
9280   { NULL, 0, 0, NULL }
9281 };
9282
9283 static int
9284 dissect_nr_rrc_T_cellSelectionInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9285   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9286                                    ett_nr_rrc_T_cellSelectionInfo, T_cellSelectionInfo_sequence);
9287
9288   return offset;
9289 }
9290
9291
9292 static const value_string nr_rrc_T_cellReservedForOtherUse_vals[] = {
9293   {   0, "true" },
9294   { 0, NULL }
9295 };
9296
9297
9298 static int
9299 dissect_nr_rrc_T_cellReservedForOtherUse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9300   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
9301                                      1, NULL, FALSE, 0, NULL);
9302
9303   return offset;
9304 }
9305
9306
9307 static const per_sequence_t CellAccessRelatedInfo_sequence[] = {
9308   { &hf_nr_rrc_plmn_IdentityList, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PLMN_IdentityInfoList },
9309   { &hf_nr_rrc_cellReservedForOtherUse, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_cellReservedForOtherUse },
9310   { NULL, 0, 0, NULL }
9311 };
9312
9313 static int
9314 dissect_nr_rrc_CellAccessRelatedInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9315   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9316                                    ett_nr_rrc_CellAccessRelatedInfo, CellAccessRelatedInfo_sequence);
9317
9318   return offset;
9319 }
9320
9321
9322 static const value_string nr_rrc_T_connEstFailCount_vals[] = {
9323   {   0, "n1" },
9324   {   1, "n2" },
9325   {   2, "n3" },
9326   {   3, "n4" },
9327   { 0, NULL }
9328 };
9329
9330
9331 static int
9332 dissect_nr_rrc_T_connEstFailCount(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9333   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
9334                                      4, NULL, FALSE, 0, NULL);
9335
9336   return offset;
9337 }
9338
9339
9340 static const value_string nr_rrc_T_connEstFailOffsetValidity_vals[] = {
9341   {   0, "s30" },
9342   {   1, "s60" },
9343   {   2, "s120" },
9344   {   3, "s240" },
9345   {   4, "s300" },
9346   {   5, "s420" },
9347   {   6, "s600" },
9348   {   7, "s900" },
9349   { 0, NULL }
9350 };
9351
9352
9353 static int
9354 dissect_nr_rrc_T_connEstFailOffsetValidity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9355   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
9356                                      8, NULL, FALSE, 0, NULL);
9357
9358   return offset;
9359 }
9360
9361
9362 static const per_sequence_t ConnEstFailureControl_sequence[] = {
9363   { &hf_nr_rrc_connEstFailCount, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_connEstFailCount },
9364   { &hf_nr_rrc_connEstFailOffsetValidity, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_connEstFailOffsetValidity },
9365   { &hf_nr_rrc_connEstFailOffset, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_15 },
9366   { NULL, 0, 0, NULL }
9367 };
9368
9369 static int
9370 dissect_nr_rrc_ConnEstFailureControl(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9371   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9372                                    ett_nr_rrc_ConnEstFailureControl, ConnEstFailureControl_sequence);
9373
9374   return offset;
9375 }
9376
9377
9378 static const value_string nr_rrc_T_si_BroadcastStatus_vals[] = {
9379   {   0, "broadcasting" },
9380   {   1, "notBroadcasting" },
9381   { 0, NULL }
9382 };
9383
9384
9385 static int
9386 dissect_nr_rrc_T_si_BroadcastStatus(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9387   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
9388                                      2, NULL, FALSE, 0, NULL);
9389
9390   return offset;
9391 }
9392
9393
9394 static const value_string nr_rrc_T_si_Periodicity_vals[] = {
9395   {   0, "rf8" },
9396   {   1, "rf16" },
9397   {   2, "rf32" },
9398   {   3, "rf64" },
9399   {   4, "rf128" },
9400   {   5, "rf256" },
9401   {   6, "rf512" },
9402   { 0, NULL }
9403 };
9404
9405
9406 static int
9407 dissect_nr_rrc_T_si_Periodicity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9408   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
9409                                      7, NULL, FALSE, 0, NULL);
9410
9411   return offset;
9412 }
9413
9414
9415 static const value_string nr_rrc_T_type_vals[] = {
9416   {   0, "sibType2" },
9417   {   1, "sibType3" },
9418   {   2, "sibType4" },
9419   {   3, "sibType5" },
9420   {   4, "sibType6" },
9421   {   5, "sibType7" },
9422   {   6, "sibType8" },
9423   {   7, "sibType9" },
9424   {   8, "spare8" },
9425   {   9, "spare7" },
9426   {  10, "spare6" },
9427   {  11, "spare5" },
9428   {  12, "spare4" },
9429   {  13, "spare3" },
9430   {  14, "spare2" },
9431   {  15, "spare1" },
9432   { 0, NULL }
9433 };
9434
9435
9436 static int
9437 dissect_nr_rrc_T_type(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9438   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
9439                                      16, NULL, TRUE, 0, NULL);
9440
9441   return offset;
9442 }
9443
9444
9445 static const value_string nr_rrc_T_areaScope_vals[] = {
9446   {   0, "true" },
9447   { 0, NULL }
9448 };
9449
9450
9451 static int
9452 dissect_nr_rrc_T_areaScope(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9453   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
9454                                      1, NULL, FALSE, 0, NULL);
9455
9456   return offset;
9457 }
9458
9459
9460 static const per_sequence_t SIB_TypeInfo_sequence[] = {
9461   { &hf_nr_rrc_type         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_type },
9462   { &hf_nr_rrc_valueTag     , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_31 },
9463   { &hf_nr_rrc_areaScope    , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_areaScope },
9464   { NULL, 0, 0, NULL }
9465 };
9466
9467 static int
9468 dissect_nr_rrc_SIB_TypeInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9469   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9470                                    ett_nr_rrc_SIB_TypeInfo, SIB_TypeInfo_sequence);
9471
9472   return offset;
9473 }
9474
9475
9476 static const per_sequence_t SIB_Mapping_sequence_of[1] = {
9477   { &hf_nr_rrc_SIB_Mapping_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SIB_TypeInfo },
9478 };
9479
9480 static int
9481 dissect_nr_rrc_SIB_Mapping(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9482   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
9483                                                   ett_nr_rrc_SIB_Mapping, SIB_Mapping_sequence_of,
9484                                                   1, maxSIB, FALSE);
9485
9486   return offset;
9487 }
9488
9489
9490 static const per_sequence_t SchedulingInfo_sequence[] = {
9491   { &hf_nr_rrc_si_BroadcastStatus, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_si_BroadcastStatus },
9492   { &hf_nr_rrc_si_Periodicity, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_si_Periodicity },
9493   { &hf_nr_rrc_sib_MappingInfo, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SIB_Mapping },
9494   { NULL, 0, 0, NULL }
9495 };
9496
9497 static int
9498 dissect_nr_rrc_SchedulingInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9499   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9500                                    ett_nr_rrc_SchedulingInfo, SchedulingInfo_sequence);
9501
9502   return offset;
9503 }
9504
9505
9506 static const per_sequence_t SEQUENCE_SIZE_1_maxSI_Message_OF_SchedulingInfo_sequence_of[1] = {
9507   { &hf_nr_rrc_schedulingInfoList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SchedulingInfo },
9508 };
9509
9510 static int
9511 dissect_nr_rrc_SEQUENCE_SIZE_1_maxSI_Message_OF_SchedulingInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9512   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
9513                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxSI_Message_OF_SchedulingInfo, SEQUENCE_SIZE_1_maxSI_Message_OF_SchedulingInfo_sequence_of,
9514                                                   1, maxSI_Message, FALSE);
9515
9516   return offset;
9517 }
9518
9519
9520 static const value_string nr_rrc_T_si_WindowLength_vals[] = {
9521   {   0, "s5" },
9522   {   1, "s10" },
9523   {   2, "s20" },
9524   {   3, "s40" },
9525   {   4, "s80" },
9526   {   5, "s160" },
9527   {   6, "s320" },
9528   {   7, "s640" },
9529   {   8, "s1280" },
9530   { 0, NULL }
9531 };
9532
9533
9534 static int
9535 dissect_nr_rrc_T_si_WindowLength(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9536   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
9537                                      9, NULL, FALSE, 0, NULL);
9538
9539   return offset;
9540 }
9541
9542
9543 static const value_string nr_rrc_T_msg1_FDM_vals[] = {
9544   {   0, "one" },
9545   {   1, "two" },
9546   {   2, "four" },
9547   {   3, "eight" },
9548   { 0, NULL }
9549 };
9550
9551
9552 static int
9553 dissect_nr_rrc_T_msg1_FDM(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9554   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
9555                                      4, NULL, FALSE, 0, NULL);
9556
9557   return offset;
9558 }
9559
9560
9561
9562 static int
9563 dissect_nr_rrc_INTEGER_0_maxNrofPhysicalResourceBlocks_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9564   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
9565                                                             0U, maxNrofPhysicalResourceBlocks_1, NULL, FALSE);
9566
9567   return offset;
9568 }
9569
9570
9571
9572 static int
9573 dissect_nr_rrc_INTEGER_M202_M60(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9574   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
9575                                                             -202, -60, NULL, FALSE);
9576
9577   return offset;
9578 }
9579
9580
9581 static const value_string nr_rrc_T_preambleTransMax_vals[] = {
9582   {   0, "n3" },
9583   {   1, "n4" },
9584   {   2, "n5" },
9585   {   3, "n6" },
9586   {   4, "n7" },
9587   {   5, "n8" },
9588   {   6, "n10" },
9589   {   7, "n20" },
9590   {   8, "n50" },
9591   {   9, "n100" },
9592   {  10, "n200" },
9593   { 0, NULL }
9594 };
9595
9596
9597 static int
9598 dissect_nr_rrc_T_preambleTransMax(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9599   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
9600                                      11, NULL, FALSE, 0, NULL);
9601
9602   return offset;
9603 }
9604
9605
9606 static const value_string nr_rrc_T_powerRampingStep_vals[] = {
9607   {   0, "dB0" },
9608   {   1, "dB2" },
9609   {   2, "dB4" },
9610   {   3, "dB6" },
9611   { 0, NULL }
9612 };
9613
9614
9615 static int
9616 dissect_nr_rrc_T_powerRampingStep(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9617   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
9618                                      4, NULL, FALSE, 0, NULL);
9619
9620   return offset;
9621 }
9622
9623
9624 static const value_string nr_rrc_T_ra_ResponseWindow_vals[] = {
9625   {   0, "sl1" },
9626   {   1, "sl2" },
9627   {   2, "sl4" },
9628   {   3, "sl8" },
9629   {   4, "sl10" },
9630   {   5, "sl20" },
9631   {   6, "sl40" },
9632   {   7, "sl80" },
9633   { 0, NULL }
9634 };
9635
9636
9637 static int
9638 dissect_nr_rrc_T_ra_ResponseWindow(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9639   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
9640                                      8, NULL, FALSE, 0, NULL);
9641
9642   return offset;
9643 }
9644
9645
9646 static const per_sequence_t RACH_ConfigGeneric_sequence[] = {
9647   { &hf_nr_rrc_prach_ConfigurationIndex, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_255 },
9648   { &hf_nr_rrc_msg1_FDM     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_msg1_FDM },
9649   { &hf_nr_rrc_msg1_FrequencyStart, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_maxNrofPhysicalResourceBlocks_1 },
9650   { &hf_nr_rrc_zeroCorrelationZoneConfig, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_15 },
9651   { &hf_nr_rrc_preambleReceivedTargetPower, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_M202_M60 },
9652   { &hf_nr_rrc_preambleTransMax, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_preambleTransMax },
9653   { &hf_nr_rrc_powerRampingStep, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_powerRampingStep },
9654   { &hf_nr_rrc_ra_ResponseWindow, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_ra_ResponseWindow },
9655   { NULL, 0, 0, NULL }
9656 };
9657
9658 static int
9659 dissect_nr_rrc_RACH_ConfigGeneric(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9660   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9661                                    ett_nr_rrc_RACH_ConfigGeneric, RACH_ConfigGeneric_sequence);
9662
9663   return offset;
9664 }
9665
9666
9667 static const value_string nr_rrc_T_ssb_perRACH_Occasion_02_vals[] = {
9668   {   0, "oneEighth" },
9669   {   1, "oneFourth" },
9670   {   2, "oneHalf" },
9671   {   3, "one" },
9672   {   4, "two" },
9673   {   5, "four" },
9674   {   6, "eight" },
9675   {   7, "sixteen" },
9676   { 0, NULL }
9677 };
9678
9679
9680 static int
9681 dissect_nr_rrc_T_ssb_perRACH_Occasion_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9682   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
9683                                      8, NULL, FALSE, 0, NULL);
9684
9685   return offset;
9686 }
9687
9688
9689 static const per_sequence_t T_rach_OccasionsSI_sequence[] = {
9690   { &hf_nr_rrc_rach_ConfigSI, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RACH_ConfigGeneric },
9691   { &hf_nr_rrc_ssb_perRACH_Occasion_02, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_ssb_perRACH_Occasion_02 },
9692   { NULL, 0, 0, NULL }
9693 };
9694
9695 static int
9696 dissect_nr_rrc_T_rach_OccasionsSI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9697   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9698                                    ett_nr_rrc_T_rach_OccasionsSI, T_rach_OccasionsSI_sequence);
9699
9700   return offset;
9701 }
9702
9703
9704 static const value_string nr_rrc_T_si_RequestPeriod_vals[] = {
9705   {   0, "one" },
9706   {   1, "two" },
9707   {   2, "four" },
9708   {   3, "six" },
9709   {   4, "eight" },
9710   {   5, "ten" },
9711   {   6, "twelve" },
9712   {   7, "sixteen" },
9713   { 0, NULL }
9714 };
9715
9716
9717 static int
9718 dissect_nr_rrc_T_si_RequestPeriod(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9719   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
9720                                      8, NULL, FALSE, 0, NULL);
9721
9722   return offset;
9723 }
9724
9725
9726 static const per_sequence_t SI_RequestResources_sequence[] = {
9727   { &hf_nr_rrc_ra_PreambleStartIndex, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_63 },
9728   { &hf_nr_rrc_ra_AssociationPeriodIndex, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_15 },
9729   { &hf_nr_rrc_ra_ssb_OccasionMaskIndex, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_15 },
9730   { NULL, 0, 0, NULL }
9731 };
9732
9733 static int
9734 dissect_nr_rrc_SI_RequestResources(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9735   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9736                                    ett_nr_rrc_SI_RequestResources, SI_RequestResources_sequence);
9737
9738   return offset;
9739 }
9740
9741
9742 static const per_sequence_t SEQUENCE_SIZE_1_maxSI_Message_OF_SI_RequestResources_sequence_of[1] = {
9743   { &hf_nr_rrc_si_RequestResources_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SI_RequestResources },
9744 };
9745
9746 static int
9747 dissect_nr_rrc_SEQUENCE_SIZE_1_maxSI_Message_OF_SI_RequestResources(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9748   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
9749                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxSI_Message_OF_SI_RequestResources, SEQUENCE_SIZE_1_maxSI_Message_OF_SI_RequestResources_sequence_of,
9750                                                   1, maxSI_Message, FALSE);
9751
9752   return offset;
9753 }
9754
9755
9756 static const per_sequence_t SI_RequestConfig_sequence[] = {
9757   { &hf_nr_rrc_rach_OccasionsSI, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_rach_OccasionsSI },
9758   { &hf_nr_rrc_si_RequestPeriod, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_si_RequestPeriod },
9759   { &hf_nr_rrc_si_RequestResources, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SEQUENCE_SIZE_1_maxSI_Message_OF_SI_RequestResources },
9760   { NULL, 0, 0, NULL }
9761 };
9762
9763 static int
9764 dissect_nr_rrc_SI_RequestConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9765   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9766                                    ett_nr_rrc_SI_RequestConfig, SI_RequestConfig_sequence);
9767
9768   return offset;
9769 }
9770
9771
9772
9773 static int
9774 dissect_nr_rrc_BIT_STRING_SIZE_24(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9775   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
9776                                      24, 24, FALSE, NULL, NULL);
9777
9778   return offset;
9779 }
9780
9781
9782 static const per_sequence_t SI_SchedulingInfo_sequence[] = {
9783   { &hf_nr_rrc_schedulingInfoList, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SEQUENCE_SIZE_1_maxSI_Message_OF_SchedulingInfo },
9784   { &hf_nr_rrc_si_WindowLength, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_si_WindowLength },
9785   { &hf_nr_rrc_si_RequestConfig, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SI_RequestConfig },
9786   { &hf_nr_rrc_si_RequestConfigSUL, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SI_RequestConfig },
9787   { &hf_nr_rrc_systemInformationAreaID, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_BIT_STRING_SIZE_24 },
9788   { NULL, 0, 0, NULL }
9789 };
9790
9791 static int
9792 dissect_nr_rrc_SI_SchedulingInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9793   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9794                                    ett_nr_rrc_SI_SchedulingInfo, SI_SchedulingInfo_sequence);
9795
9796   return offset;
9797 }
9798
9799
9800
9801 static int
9802 dissect_nr_rrc_INTEGER_0_2199(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9803   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
9804                                                             0U, 2199U, NULL, FALSE);
9805
9806   return offset;
9807 }
9808
9809
9810
9811 static int
9812 dissect_nr_rrc_INTEGER_1_maxNrofPhysicalResourceBlocks(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9813   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
9814                                                             1U, maxNrofPhysicalResourceBlocks, NULL, FALSE);
9815
9816   return offset;
9817 }
9818
9819
9820
9821 static int
9822 dissect_nr_rrc_INTEGER_0_4095(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9823   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
9824                                                             0U, 4095U, NULL, FALSE);
9825
9826   return offset;
9827 }
9828
9829
9830 static const per_sequence_t SCS_SpecificCarrier_eag_1_sequence[] = {
9831   { &hf_nr_rrc_txDirectCurrentLocation_v1530, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_4095 },
9832   { NULL, 0, 0, NULL }
9833 };
9834
9835 static int
9836 dissect_nr_rrc_SCS_SpecificCarrier_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9837   offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SCS_SpecificCarrier_eag_1_sequence);
9838
9839   return offset;
9840 }
9841
9842
9843 static const per_sequence_t SCS_SpecificCarrier_sequence[] = {
9844   { &hf_nr_rrc_offsetToCarrier, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_2199 },
9845   { &hf_nr_rrc_subcarrierSpacing, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SubcarrierSpacing },
9846   { &hf_nr_rrc_carrierBandwidth, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_maxNrofPhysicalResourceBlocks },
9847   { &dummy_hf_nr_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_nr_rrc_SCS_SpecificCarrier_eag_1 },
9848   { NULL, 0, 0, NULL }
9849 };
9850
9851 static int
9852 dissect_nr_rrc_SCS_SpecificCarrier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9853   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9854                                    ett_nr_rrc_SCS_SpecificCarrier, SCS_SpecificCarrier_sequence);
9855
9856   return offset;
9857 }
9858
9859
9860 static const per_sequence_t SEQUENCE_SIZE_1_maxSCSs_OF_SCS_SpecificCarrier_sequence_of[1] = {
9861   { &hf_nr_rrc_scs_SpecificCarrierList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SCS_SpecificCarrier },
9862 };
9863
9864 static int
9865 dissect_nr_rrc_SEQUENCE_SIZE_1_maxSCSs_OF_SCS_SpecificCarrier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9866   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
9867                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxSCSs_OF_SCS_SpecificCarrier, SEQUENCE_SIZE_1_maxSCSs_OF_SCS_SpecificCarrier_sequence_of,
9868                                                   1, maxSCSs, FALSE);
9869
9870   return offset;
9871 }
9872
9873
9874 static const per_sequence_t FrequencyInfoDL_SIB_sequence[] = {
9875   { &hf_nr_rrc_frequencyBandList, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MultiFrequencyBandListNR_SIB },
9876   { &hf_nr_rrc_offsetToPointA, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_2199 },
9877   { &hf_nr_rrc_scs_SpecificCarrierList, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SEQUENCE_SIZE_1_maxSCSs_OF_SCS_SpecificCarrier },
9878   { NULL, 0, 0, NULL }
9879 };
9880
9881 static int
9882 dissect_nr_rrc_FrequencyInfoDL_SIB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9883   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9884                                    ett_nr_rrc_FrequencyInfoDL_SIB, FrequencyInfoDL_SIB_sequence);
9885
9886   return offset;
9887 }
9888
9889
9890
9891 static int
9892 dissect_nr_rrc_INTEGER_0_37949(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9893   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
9894                                                             0U, 37949U, NULL, FALSE);
9895
9896   return offset;
9897 }
9898
9899
9900 static const value_string nr_rrc_T_cyclicPrefix_vals[] = {
9901   {   0, "extended" },
9902   { 0, NULL }
9903 };
9904
9905
9906 static int
9907 dissect_nr_rrc_T_cyclicPrefix(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9908   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
9909                                      1, NULL, FALSE, 0, NULL);
9910
9911   return offset;
9912 }
9913
9914
9915 static const per_sequence_t BWP_sequence[] = {
9916   { &hf_nr_rrc_locationAndBandwidth, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_37949 },
9917   { &hf_nr_rrc_subcarrierSpacing, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SubcarrierSpacing },
9918   { &hf_nr_rrc_cyclicPrefix , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_cyclicPrefix },
9919   { NULL, 0, 0, NULL }
9920 };
9921
9922 static int
9923 dissect_nr_rrc_BWP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9924   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
9925                                    ett_nr_rrc_BWP, BWP_sequence);
9926
9927   return offset;
9928 }
9929
9930
9931
9932 static int
9933 dissect_nr_rrc_ControlResourceSetId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9934   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
9935                                                             0U, maxNrofControlResourceSets_1, NULL, FALSE);
9936
9937   return offset;
9938 }
9939
9940
9941
9942 static int
9943 dissect_nr_rrc_BIT_STRING_SIZE_45(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9944   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
9945                                      45, 45, FALSE, NULL, NULL);
9946
9947   return offset;
9948 }
9949
9950
9951
9952 static int
9953 dissect_nr_rrc_INTEGER_1_maxCoReSetDuration(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9954   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
9955                                                             1U, maxCoReSetDuration, NULL, FALSE);
9956
9957   return offset;
9958 }
9959
9960
9961 static const value_string nr_rrc_T_reg_BundleSize_vals[] = {
9962   {   0, "n2" },
9963   {   1, "n3" },
9964   {   2, "n6" },
9965   { 0, NULL }
9966 };
9967
9968
9969 static int
9970 dissect_nr_rrc_T_reg_BundleSize(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9971   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
9972                                      3, NULL, FALSE, 0, NULL);
9973
9974   return offset;
9975 }
9976
9977
9978 static const value_string nr_rrc_T_interleaverSize_vals[] = {
9979   {   0, "n2" },
9980   {   1, "n3" },
9981   {   2, "n6" },
9982   { 0, NULL }
9983 };
9984
9985
9986 static int
9987 dissect_nr_rrc_T_interleaverSize(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
9988   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
9989                                      3, NULL, FALSE, 0, NULL);
9990
9991   return offset;
9992 }
9993
9994
9995 static const per_sequence_t T_interleaved_sequence[] = {
9996   { &hf_nr_rrc_reg_BundleSize, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_reg_BundleSize },
9997   { &hf_nr_rrc_interleaverSize, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_interleaverSize },
9998   { &hf_nr_rrc_shiftIndex   , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_maxNrofPhysicalResourceBlocks_1 },
9999   { NULL, 0, 0, NULL }
10000 };
10001
10002 static int
10003 dissect_nr_rrc_T_interleaved(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10004   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10005                                    ett_nr_rrc_T_interleaved, T_interleaved_sequence);
10006
10007   return offset;
10008 }
10009
10010
10011 static const value_string nr_rrc_T_cce_REG_MappingType_vals[] = {
10012   {   0, "interleaved" },
10013   {   1, "nonInterleaved" },
10014   { 0, NULL }
10015 };
10016
10017 static const per_choice_t T_cce_REG_MappingType_choice[] = {
10018   {   0, &hf_nr_rrc_interleaved  , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_interleaved },
10019   {   1, &hf_nr_rrc_nonInterleaved, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
10020   { 0, NULL, 0, NULL }
10021 };
10022
10023 static int
10024 dissect_nr_rrc_T_cce_REG_MappingType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10025   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
10026                                  ett_nr_rrc_T_cce_REG_MappingType, T_cce_REG_MappingType_choice,
10027                                  NULL);
10028
10029   return offset;
10030 }
10031
10032
10033 static const value_string nr_rrc_T_precoderGranularity_vals[] = {
10034   {   0, "sameAsREG-bundle" },
10035   {   1, "allContiguousRBs" },
10036   { 0, NULL }
10037 };
10038
10039
10040 static int
10041 dissect_nr_rrc_T_precoderGranularity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10042   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
10043                                      2, NULL, FALSE, 0, NULL);
10044
10045   return offset;
10046 }
10047
10048
10049
10050 static int
10051 dissect_nr_rrc_TCI_StateId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10052   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
10053                                                             0U, maxNrofTCI_States_1, NULL, FALSE);
10054
10055   return offset;
10056 }
10057
10058
10059 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofTCI_StatesPDCCH_OF_TCI_StateId_sequence_of[1] = {
10060   { &hf_nr_rrc_tci_StatesPDCCH_ToAddList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_TCI_StateId },
10061 };
10062
10063 static int
10064 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofTCI_StatesPDCCH_OF_TCI_StateId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10065   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
10066                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofTCI_StatesPDCCH_OF_TCI_StateId, SEQUENCE_SIZE_1_maxNrofTCI_StatesPDCCH_OF_TCI_StateId_sequence_of,
10067                                                   1, maxNrofTCI_StatesPDCCH, FALSE);
10068
10069   return offset;
10070 }
10071
10072
10073 static const value_string nr_rrc_T_tci_PresentInDCI_vals[] = {
10074   {   0, "enabled" },
10075   { 0, NULL }
10076 };
10077
10078
10079 static int
10080 dissect_nr_rrc_T_tci_PresentInDCI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10081   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
10082                                      1, NULL, FALSE, 0, NULL);
10083
10084   return offset;
10085 }
10086
10087
10088
10089 static int
10090 dissect_nr_rrc_INTEGER_0_65535(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10091   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
10092                                                             0U, 65535U, NULL, FALSE);
10093
10094   return offset;
10095 }
10096
10097
10098 static const per_sequence_t ControlResourceSet_sequence[] = {
10099   { &hf_nr_rrc_controlResourceSetId, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ControlResourceSetId },
10100   { &hf_nr_rrc_frequencyDomainResources, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BIT_STRING_SIZE_45 },
10101   { &hf_nr_rrc_duration     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_maxCoReSetDuration },
10102   { &hf_nr_rrc_cce_REG_MappingType, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_cce_REG_MappingType },
10103   { &hf_nr_rrc_precoderGranularity, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_precoderGranularity },
10104   { &hf_nr_rrc_tci_StatesPDCCH_ToAddList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofTCI_StatesPDCCH_OF_TCI_StateId },
10105   { &hf_nr_rrc_tci_StatesPDCCH_ToReleaseList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofTCI_StatesPDCCH_OF_TCI_StateId },
10106   { &hf_nr_rrc_tci_PresentInDCI, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_tci_PresentInDCI },
10107   { &hf_nr_rrc_pdcch_DMRS_ScramblingID, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_65535 },
10108   { NULL, 0, 0, NULL }
10109 };
10110
10111 static int
10112 dissect_nr_rrc_ControlResourceSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10113   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10114                                    ett_nr_rrc_ControlResourceSet, ControlResourceSet_sequence);
10115
10116   return offset;
10117 }
10118
10119
10120
10121 static int
10122 dissect_nr_rrc_SearchSpaceId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10123   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
10124                                                             0U, maxNrofSearchSpaces_1, NULL, FALSE);
10125
10126   return offset;
10127 }
10128
10129
10130
10131 static int
10132 dissect_nr_rrc_INTEGER_0_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10133   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
10134                                                             0U, 1U, NULL, FALSE);
10135
10136   return offset;
10137 }
10138
10139
10140
10141 static int
10142 dissect_nr_rrc_INTEGER_0_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10143   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
10144                                                             0U, 7U, NULL, FALSE);
10145
10146   return offset;
10147 }
10148
10149
10150 static const value_string nr_rrc_T_monitoringSlotPeriodicityAndOffset_vals[] = {
10151   {   0, "sl1" },
10152   {   1, "sl2" },
10153   {   2, "sl4" },
10154   {   3, "sl5" },
10155   {   4, "sl8" },
10156   {   5, "sl10" },
10157   {   6, "sl16" },
10158   {   7, "sl20" },
10159   {   8, "sl40" },
10160   {   9, "sl80" },
10161   {  10, "sl160" },
10162   {  11, "sl320" },
10163   {  12, "sl640" },
10164   {  13, "sl1280" },
10165   {  14, "sl2560" },
10166   { 0, NULL }
10167 };
10168
10169 static const per_choice_t T_monitoringSlotPeriodicityAndOffset_choice[] = {
10170   {   0, &hf_nr_rrc_sl1          , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
10171   {   1, &hf_nr_rrc_sl2          , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_1 },
10172   {   2, &hf_nr_rrc_sl4          , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_3 },
10173   {   3, &hf_nr_rrc_sl5          , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_4 },
10174   {   4, &hf_nr_rrc_sl8          , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_7 },
10175   {   5, &hf_nr_rrc_sl10         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_9 },
10176   {   6, &hf_nr_rrc_sl16         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_15 },
10177   {   7, &hf_nr_rrc_sl20         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_19 },
10178   {   8, &hf_nr_rrc_sl40         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_39 },
10179   {   9, &hf_nr_rrc_sl80         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_79 },
10180   {  10, &hf_nr_rrc_sl160        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_159 },
10181   {  11, &hf_nr_rrc_sl320        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_319 },
10182   {  12, &hf_nr_rrc_sl640        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_639 },
10183   {  13, &hf_nr_rrc_sl1280       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_1279 },
10184   {  14, &hf_nr_rrc_sl2560       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_2559 },
10185   { 0, NULL, 0, NULL }
10186 };
10187
10188 static int
10189 dissect_nr_rrc_T_monitoringSlotPeriodicityAndOffset(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10190   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
10191                                  ett_nr_rrc_T_monitoringSlotPeriodicityAndOffset, T_monitoringSlotPeriodicityAndOffset_choice,
10192                                  NULL);
10193
10194   return offset;
10195 }
10196
10197
10198
10199 static int
10200 dissect_nr_rrc_INTEGER_2_2559(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10201   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
10202                                                             2U, 2559U, NULL, FALSE);
10203
10204   return offset;
10205 }
10206
10207
10208
10209 static int
10210 dissect_nr_rrc_BIT_STRING_SIZE_14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10211   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
10212                                      14, 14, FALSE, NULL, NULL);
10213
10214   return offset;
10215 }
10216
10217
10218 static const value_string nr_rrc_T_aggregationLevel1_vals[] = {
10219   {   0, "n0" },
10220   {   1, "n1" },
10221   {   2, "n2" },
10222   {   3, "n3" },
10223   {   4, "n4" },
10224   {   5, "n5" },
10225   {   6, "n6" },
10226   {   7, "n8" },
10227   { 0, NULL }
10228 };
10229
10230
10231 static int
10232 dissect_nr_rrc_T_aggregationLevel1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10233   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
10234                                      8, NULL, FALSE, 0, NULL);
10235
10236   return offset;
10237 }
10238
10239
10240 static const value_string nr_rrc_T_aggregationLevel2_vals[] = {
10241   {   0, "n0" },
10242   {   1, "n1" },
10243   {   2, "n2" },
10244   {   3, "n3" },
10245   {   4, "n4" },
10246   {   5, "n5" },
10247   {   6, "n6" },
10248   {   7, "n8" },
10249   { 0, NULL }
10250 };
10251
10252
10253 static int
10254 dissect_nr_rrc_T_aggregationLevel2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10255   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
10256                                      8, NULL, FALSE, 0, NULL);
10257
10258   return offset;
10259 }
10260
10261
10262 static const value_string nr_rrc_T_aggregationLevel4_vals[] = {
10263   {   0, "n0" },
10264   {   1, "n1" },
10265   {   2, "n2" },
10266   {   3, "n3" },
10267   {   4, "n4" },
10268   {   5, "n5" },
10269   {   6, "n6" },
10270   {   7, "n8" },
10271   { 0, NULL }
10272 };
10273
10274
10275 static int
10276 dissect_nr_rrc_T_aggregationLevel4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10277   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
10278                                      8, NULL, FALSE, 0, NULL);
10279
10280   return offset;
10281 }
10282
10283
10284 static const value_string nr_rrc_T_aggregationLevel8_vals[] = {
10285   {   0, "n0" },
10286   {   1, "n1" },
10287   {   2, "n2" },
10288   {   3, "n3" },
10289   {   4, "n4" },
10290   {   5, "n5" },
10291   {   6, "n6" },
10292   {   7, "n8" },
10293   { 0, NULL }
10294 };
10295
10296
10297 static int
10298 dissect_nr_rrc_T_aggregationLevel8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10299   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
10300                                      8, NULL, FALSE, 0, NULL);
10301
10302   return offset;
10303 }
10304
10305
10306 static const value_string nr_rrc_T_aggregationLevel16_vals[] = {
10307   {   0, "n0" },
10308   {   1, "n1" },
10309   {   2, "n2" },
10310   {   3, "n3" },
10311   {   4, "n4" },
10312   {   5, "n5" },
10313   {   6, "n6" },
10314   {   7, "n8" },
10315   { 0, NULL }
10316 };
10317
10318
10319 static int
10320 dissect_nr_rrc_T_aggregationLevel16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10321   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
10322                                      8, NULL, FALSE, 0, NULL);
10323
10324   return offset;
10325 }
10326
10327
10328 static const per_sequence_t T_nrofCandidates_sequence[] = {
10329   { &hf_nr_rrc_aggregationLevel1, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_aggregationLevel1 },
10330   { &hf_nr_rrc_aggregationLevel2, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_aggregationLevel2 },
10331   { &hf_nr_rrc_aggregationLevel4, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_aggregationLevel4 },
10332   { &hf_nr_rrc_aggregationLevel8, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_aggregationLevel8 },
10333   { &hf_nr_rrc_aggregationLevel16, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_aggregationLevel16 },
10334   { NULL, 0, 0, NULL }
10335 };
10336
10337 static int
10338 dissect_nr_rrc_T_nrofCandidates(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10339   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10340                                    ett_nr_rrc_T_nrofCandidates, T_nrofCandidates_sequence);
10341
10342   return offset;
10343 }
10344
10345
10346 static const per_sequence_t T_dci_Format0_0_AndFormat1_0_sequence[] = {
10347   { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
10348 };
10349
10350 static int
10351 dissect_nr_rrc_T_dci_Format0_0_AndFormat1_0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10352   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10353                                    ett_nr_rrc_T_dci_Format0_0_AndFormat1_0, T_dci_Format0_0_AndFormat1_0_sequence);
10354
10355   return offset;
10356 }
10357
10358
10359 static const value_string nr_rrc_T_aggregationLevel1_01_vals[] = {
10360   {   0, "n1" },
10361   {   1, "n2" },
10362   { 0, NULL }
10363 };
10364
10365
10366 static int
10367 dissect_nr_rrc_T_aggregationLevel1_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10368   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
10369                                      2, NULL, FALSE, 0, NULL);
10370
10371   return offset;
10372 }
10373
10374
10375 static const value_string nr_rrc_T_aggregationLevel2_01_vals[] = {
10376   {   0, "n1" },
10377   {   1, "n2" },
10378   { 0, NULL }
10379 };
10380
10381
10382 static int
10383 dissect_nr_rrc_T_aggregationLevel2_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10384   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
10385                                      2, NULL, FALSE, 0, NULL);
10386
10387   return offset;
10388 }
10389
10390
10391 static const value_string nr_rrc_T_aggregationLevel4_01_vals[] = {
10392   {   0, "n1" },
10393   {   1, "n2" },
10394   { 0, NULL }
10395 };
10396
10397
10398 static int
10399 dissect_nr_rrc_T_aggregationLevel4_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10400   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
10401                                      2, NULL, FALSE, 0, NULL);
10402
10403   return offset;
10404 }
10405
10406
10407 static const value_string nr_rrc_T_aggregationLevel8_01_vals[] = {
10408   {   0, "n1" },
10409   {   1, "n2" },
10410   { 0, NULL }
10411 };
10412
10413
10414 static int
10415 dissect_nr_rrc_T_aggregationLevel8_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10416   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
10417                                      2, NULL, FALSE, 0, NULL);
10418
10419   return offset;
10420 }
10421
10422
10423 static const value_string nr_rrc_T_aggregationLevel16_01_vals[] = {
10424   {   0, "n1" },
10425   {   1, "n2" },
10426   { 0, NULL }
10427 };
10428
10429
10430 static int
10431 dissect_nr_rrc_T_aggregationLevel16_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10432   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
10433                                      2, NULL, FALSE, 0, NULL);
10434
10435   return offset;
10436 }
10437
10438
10439 static const per_sequence_t T_nrofCandidates_SFI_sequence[] = {
10440   { &hf_nr_rrc_aggregationLevel1_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_aggregationLevel1_01 },
10441   { &hf_nr_rrc_aggregationLevel2_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_aggregationLevel2_01 },
10442   { &hf_nr_rrc_aggregationLevel4_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_aggregationLevel4_01 },
10443   { &hf_nr_rrc_aggregationLevel8_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_aggregationLevel8_01 },
10444   { &hf_nr_rrc_aggregationLevel16_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_aggregationLevel16_01 },
10445   { NULL, 0, 0, NULL }
10446 };
10447
10448 static int
10449 dissect_nr_rrc_T_nrofCandidates_SFI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10450   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10451                                    ett_nr_rrc_T_nrofCandidates_SFI, T_nrofCandidates_SFI_sequence);
10452
10453   return offset;
10454 }
10455
10456
10457 static const per_sequence_t T_dci_Format2_0_sequence[] = {
10458   { &hf_nr_rrc_nrofCandidates_SFI, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_nrofCandidates_SFI },
10459   { NULL, 0, 0, NULL }
10460 };
10461
10462 static int
10463 dissect_nr_rrc_T_dci_Format2_0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10464   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10465                                    ett_nr_rrc_T_dci_Format2_0, T_dci_Format2_0_sequence);
10466
10467   return offset;
10468 }
10469
10470
10471 static const per_sequence_t T_dci_Format2_1_sequence[] = {
10472   { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
10473 };
10474
10475 static int
10476 dissect_nr_rrc_T_dci_Format2_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10477   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10478                                    ett_nr_rrc_T_dci_Format2_1, T_dci_Format2_1_sequence);
10479
10480   return offset;
10481 }
10482
10483
10484 static const per_sequence_t T_dci_Format2_2_sequence[] = {
10485   { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
10486 };
10487
10488 static int
10489 dissect_nr_rrc_T_dci_Format2_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10490   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10491                                    ett_nr_rrc_T_dci_Format2_2, T_dci_Format2_2_sequence);
10492
10493   return offset;
10494 }
10495
10496
10497 static const value_string nr_rrc_T_dummy1_vals[] = {
10498   {   0, "sl1" },
10499   {   1, "sl2" },
10500   {   2, "sl4" },
10501   {   3, "sl5" },
10502   {   4, "sl8" },
10503   {   5, "sl10" },
10504   {   6, "sl16" },
10505   {   7, "sl20" },
10506   { 0, NULL }
10507 };
10508
10509
10510 static int
10511 dissect_nr_rrc_T_dummy1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10512   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
10513                                      8, NULL, FALSE, 0, NULL);
10514
10515   return offset;
10516 }
10517
10518
10519 static const value_string nr_rrc_T_dummy2_vals[] = {
10520   {   0, "n1" },
10521   {   1, "n2" },
10522   { 0, NULL }
10523 };
10524
10525
10526 static int
10527 dissect_nr_rrc_T_dummy2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10528   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
10529                                      2, NULL, FALSE, 0, NULL);
10530
10531   return offset;
10532 }
10533
10534
10535 static const per_sequence_t T_dci_Format2_3_sequence[] = {
10536   { &hf_nr_rrc_dummy1       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_dummy1 },
10537   { &hf_nr_rrc_dummy2       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_dummy2 },
10538   { NULL, 0, 0, NULL }
10539 };
10540
10541 static int
10542 dissect_nr_rrc_T_dci_Format2_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10543   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10544                                    ett_nr_rrc_T_dci_Format2_3, T_dci_Format2_3_sequence);
10545
10546   return offset;
10547 }
10548
10549
10550 static const per_sequence_t T_common_sequence[] = {
10551   { &hf_nr_rrc_dci_Format0_0_AndFormat1_0, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_dci_Format0_0_AndFormat1_0 },
10552   { &hf_nr_rrc_dci_Format2_0, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_dci_Format2_0 },
10553   { &hf_nr_rrc_dci_Format2_1, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_dci_Format2_1 },
10554   { &hf_nr_rrc_dci_Format2_2, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_dci_Format2_2 },
10555   { &hf_nr_rrc_dci_Format2_3, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_dci_Format2_3 },
10556   { NULL, 0, 0, NULL }
10557 };
10558
10559 static int
10560 dissect_nr_rrc_T_common(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10561   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10562                                    ett_nr_rrc_T_common, T_common_sequence);
10563
10564   return offset;
10565 }
10566
10567
10568 static const value_string nr_rrc_T_dci_Formats_vals[] = {
10569   {   0, "formats0-0-And-1-0" },
10570   {   1, "formats0-1-And-1-1" },
10571   { 0, NULL }
10572 };
10573
10574
10575 static int
10576 dissect_nr_rrc_T_dci_Formats(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10577   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
10578                                      2, NULL, FALSE, 0, NULL);
10579
10580   return offset;
10581 }
10582
10583
10584 static const per_sequence_t T_ue_Specific_sequence[] = {
10585   { &hf_nr_rrc_dci_Formats  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_dci_Formats },
10586   { NULL, 0, 0, NULL }
10587 };
10588
10589 static int
10590 dissect_nr_rrc_T_ue_Specific(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10591   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10592                                    ett_nr_rrc_T_ue_Specific, T_ue_Specific_sequence);
10593
10594   return offset;
10595 }
10596
10597
10598 static const value_string nr_rrc_T_searchSpaceType_vals[] = {
10599   {   0, "common" },
10600   {   1, "ue-Specific" },
10601   { 0, NULL }
10602 };
10603
10604 static const per_choice_t T_searchSpaceType_choice[] = {
10605   {   0, &hf_nr_rrc_common       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_common },
10606   {   1, &hf_nr_rrc_ue_Specific  , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_ue_Specific },
10607   { 0, NULL, 0, NULL }
10608 };
10609
10610 static int
10611 dissect_nr_rrc_T_searchSpaceType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10612   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
10613                                  ett_nr_rrc_T_searchSpaceType, T_searchSpaceType_choice,
10614                                  NULL);
10615
10616   return offset;
10617 }
10618
10619
10620 static const per_sequence_t SearchSpace_sequence[] = {
10621   { &hf_nr_rrc_searchSpaceId, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SearchSpaceId },
10622   { &hf_nr_rrc_controlResourceSetId, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_ControlResourceSetId },
10623   { &hf_nr_rrc_monitoringSlotPeriodicityAndOffset, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_monitoringSlotPeriodicityAndOffset },
10624   { &hf_nr_rrc_duration_01  , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_2_2559 },
10625   { &hf_nr_rrc_monitoringSymbolsWithinSlot, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_BIT_STRING_SIZE_14 },
10626   { &hf_nr_rrc_nrofCandidates, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nrofCandidates },
10627   { &hf_nr_rrc_searchSpaceType, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_searchSpaceType },
10628   { NULL, 0, 0, NULL }
10629 };
10630
10631 static int
10632 dissect_nr_rrc_SearchSpace(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10633   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10634                                    ett_nr_rrc_SearchSpace, SearchSpace_sequence);
10635
10636   return offset;
10637 }
10638
10639
10640 static const per_sequence_t SEQUENCE_SIZE_1_4_OF_SearchSpace_sequence_of[1] = {
10641   { &hf_nr_rrc_commonSearchSpaceList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SearchSpace },
10642 };
10643
10644 static int
10645 dissect_nr_rrc_SEQUENCE_SIZE_1_4_OF_SearchSpace(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10646   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
10647                                                   ett_nr_rrc_SEQUENCE_SIZE_1_4_OF_SearchSpace, SEQUENCE_SIZE_1_4_OF_SearchSpace_sequence_of,
10648                                                   1, 4, FALSE);
10649
10650   return offset;
10651 }
10652
10653
10654 static const per_sequence_t PDCCH_ConfigCommon_sequence[] = {
10655   { &hf_nr_rrc_controlResourceSetZero, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ControlResourceSetZero },
10656   { &hf_nr_rrc_commonControlResourceSet, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ControlResourceSet },
10657   { &hf_nr_rrc_searchSpaceZero, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SearchSpaceZero },
10658   { &hf_nr_rrc_commonSearchSpaceList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_4_OF_SearchSpace },
10659   { &hf_nr_rrc_searchSpaceSIB1, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SearchSpaceId },
10660   { &hf_nr_rrc_searchSpaceOtherSystemInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SearchSpaceId },
10661   { &hf_nr_rrc_pagingSearchSpace, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SearchSpaceId },
10662   { &hf_nr_rrc_ra_SearchSpace, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SearchSpaceId },
10663   { NULL, 0, 0, NULL }
10664 };
10665
10666 static int
10667 dissect_nr_rrc_PDCCH_ConfigCommon(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10668   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10669                                    ett_nr_rrc_PDCCH_ConfigCommon, PDCCH_ConfigCommon_sequence);
10670
10671   return offset;
10672 }
10673
10674
10675 static const value_string nr_rrc_T_pdcch_ConfigCommon_vals[] = {
10676   {   0, "release" },
10677   {   1, "setup" },
10678   { 0, NULL }
10679 };
10680
10681 static const per_choice_t T_pdcch_ConfigCommon_choice[] = {
10682   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
10683   {   1, &hf_nr_rrc_setup_02     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_PDCCH_ConfigCommon },
10684   { 0, NULL, 0, NULL }
10685 };
10686
10687 static int
10688 dissect_nr_rrc_T_pdcch_ConfigCommon(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10689   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
10690                                  ett_nr_rrc_T_pdcch_ConfigCommon, T_pdcch_ConfigCommon_choice,
10691                                  NULL);
10692
10693   return offset;
10694 }
10695
10696
10697
10698 static int
10699 dissect_nr_rrc_INTEGER_0_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10700   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
10701                                                             0U, 32U, NULL, FALSE);
10702
10703   return offset;
10704 }
10705
10706
10707 static const value_string nr_rrc_T_mappingType_vals[] = {
10708   {   0, "typeA" },
10709   {   1, "typeB" },
10710   { 0, NULL }
10711 };
10712
10713
10714 static int
10715 dissect_nr_rrc_T_mappingType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10716   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
10717                                      2, NULL, FALSE, 0, NULL);
10718
10719   return offset;
10720 }
10721
10722
10723 static const per_sequence_t PDSCH_TimeDomainResourceAllocation_sequence[] = {
10724   { &hf_nr_rrc_k0           , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_32 },
10725   { &hf_nr_rrc_mappingType  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_mappingType },
10726   { &hf_nr_rrc_startSymbolAndLength, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_127 },
10727   { NULL, 0, 0, NULL }
10728 };
10729
10730 static int
10731 dissect_nr_rrc_PDSCH_TimeDomainResourceAllocation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10732   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10733                                    ett_nr_rrc_PDSCH_TimeDomainResourceAllocation, PDSCH_TimeDomainResourceAllocation_sequence);
10734
10735   return offset;
10736 }
10737
10738
10739 static const per_sequence_t PDSCH_TimeDomainResourceAllocationList_sequence_of[1] = {
10740   { &hf_nr_rrc_PDSCH_TimeDomainResourceAllocationList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PDSCH_TimeDomainResourceAllocation },
10741 };
10742
10743 static int
10744 dissect_nr_rrc_PDSCH_TimeDomainResourceAllocationList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10745   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
10746                                                   ett_nr_rrc_PDSCH_TimeDomainResourceAllocationList, PDSCH_TimeDomainResourceAllocationList_sequence_of,
10747                                                   1, maxNrofDL_Allocations, FALSE);
10748
10749   return offset;
10750 }
10751
10752
10753 static const per_sequence_t PDSCH_ConfigCommon_sequence[] = {
10754   { &hf_nr_rrc_pdsch_TimeDomainAllocationList_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_PDSCH_TimeDomainResourceAllocationList },
10755   { NULL, 0, 0, NULL }
10756 };
10757
10758 static int
10759 dissect_nr_rrc_PDSCH_ConfigCommon(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10760   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10761                                    ett_nr_rrc_PDSCH_ConfigCommon, PDSCH_ConfigCommon_sequence);
10762
10763   return offset;
10764 }
10765
10766
10767 static const value_string nr_rrc_T_pdsch_ConfigCommon_vals[] = {
10768   {   0, "release" },
10769   {   1, "setup" },
10770   { 0, NULL }
10771 };
10772
10773 static const per_choice_t T_pdsch_ConfigCommon_choice[] = {
10774   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
10775   {   1, &hf_nr_rrc_setup_03     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_PDSCH_ConfigCommon },
10776   { 0, NULL, 0, NULL }
10777 };
10778
10779 static int
10780 dissect_nr_rrc_T_pdsch_ConfigCommon(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10781   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
10782                                  ett_nr_rrc_T_pdsch_ConfigCommon, T_pdsch_ConfigCommon_choice,
10783                                  NULL);
10784
10785   return offset;
10786 }
10787
10788
10789 static const per_sequence_t BWP_DownlinkCommon_sequence[] = {
10790   { &hf_nr_rrc_genericParameters, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BWP },
10791   { &hf_nr_rrc_pdcch_ConfigCommon, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pdcch_ConfigCommon },
10792   { &hf_nr_rrc_pdsch_ConfigCommon, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pdsch_ConfigCommon },
10793   { NULL, 0, 0, NULL }
10794 };
10795
10796 static int
10797 dissect_nr_rrc_BWP_DownlinkCommon(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10798   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10799                                    ett_nr_rrc_BWP_DownlinkCommon, BWP_DownlinkCommon_sequence);
10800
10801   return offset;
10802 }
10803
10804
10805 static const value_string nr_rrc_T_modificationPeriodCoeff_vals[] = {
10806   {   0, "n2" },
10807   {   1, "n4" },
10808   {   2, "n8" },
10809   {   3, "n16" },
10810   { 0, NULL }
10811 };
10812
10813
10814 static int
10815 dissect_nr_rrc_T_modificationPeriodCoeff(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10816   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
10817                                      4, NULL, FALSE, 0, NULL);
10818
10819   return offset;
10820 }
10821
10822
10823 static const per_sequence_t BCCH_Config_sequence[] = {
10824   { &hf_nr_rrc_modificationPeriodCoeff, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_modificationPeriodCoeff },
10825   { NULL, 0, 0, NULL }
10826 };
10827
10828 static int
10829 dissect_nr_rrc_BCCH_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10830   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
10831                                    ett_nr_rrc_BCCH_Config, BCCH_Config_sequence);
10832
10833   return offset;
10834 }
10835
10836
10837 static const value_string nr_rrc_PagingCycle_vals[] = {
10838   {   0, "rf32" },
10839   {   1, "rf64" },
10840   {   2, "rf128" },
10841   {   3, "rf256" },
10842   { 0, NULL }
10843 };
10844
10845
10846 static int
10847 dissect_nr_rrc_PagingCycle(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10848   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
10849                                      4, NULL, FALSE, 0, NULL);
10850
10851   return offset;
10852 }
10853
10854
10855 static const value_string nr_rrc_T_nAndPagingFrameOffset_vals[] = {
10856   {   0, "oneT" },
10857   {   1, "halfT" },
10858   {   2, "quarterT" },
10859   {   3, "oneEighthT" },
10860   {   4, "oneSixteenthT" },
10861   { 0, NULL }
10862 };
10863
10864 static const per_choice_t T_nAndPagingFrameOffset_choice[] = {
10865   {   0, &hf_nr_rrc_oneT         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
10866   {   1, &hf_nr_rrc_halfT        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_1 },
10867   {   2, &hf_nr_rrc_quarterT     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_3 },
10868   {   3, &hf_nr_rrc_oneEighthT   , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_7 },
10869   {   4, &hf_nr_rrc_oneSixteenthT, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_15 },
10870   { 0, NULL, 0, NULL }
10871 };
10872
10873 static int
10874 dissect_nr_rrc_T_nAndPagingFrameOffset(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10875   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
10876                                  ett_nr_rrc_T_nAndPagingFrameOffset, T_nAndPagingFrameOffset_choice,
10877                                  NULL);
10878
10879   return offset;
10880 }
10881
10882
10883 static const value_string nr_rrc_T_ns_vals[] = {
10884   {   0, "four" },
10885   {   1, "two" },
10886   {   2, "one" },
10887   { 0, NULL }
10888 };
10889
10890
10891 static int
10892 dissect_nr_rrc_T_ns(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10893   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
10894                                      3, NULL, FALSE, 0, NULL);
10895
10896   return offset;
10897 }
10898
10899
10900
10901 static int
10902 dissect_nr_rrc_INTEGER_0_139(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10903   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
10904                                                             0U, 139U, NULL, FALSE);
10905
10906   return offset;
10907 }
10908
10909
10910 static const per_sequence_t T_sCS15KHZoneT_sequence_of[1] = {
10911   { &hf_nr_rrc_sCS15KHZoneT_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_139 },
10912 };
10913
10914 static int
10915 dissect_nr_rrc_T_sCS15KHZoneT(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10916   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
10917                                                   ett_nr_rrc_T_sCS15KHZoneT, T_sCS15KHZoneT_sequence_of,
10918                                                   1, 4, FALSE);
10919
10920   return offset;
10921 }
10922
10923
10924
10925 static int
10926 dissect_nr_rrc_INTEGER_0_279(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10927   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
10928                                                             0U, 279U, NULL, FALSE);
10929
10930   return offset;
10931 }
10932
10933
10934 static const per_sequence_t T_sCS30KHZoneT_SCS15KHZhalfT_sequence_of[1] = {
10935   { &hf_nr_rrc_sCS30KHZoneT_SCS15KHZhalfT_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_279 },
10936 };
10937
10938 static int
10939 dissect_nr_rrc_T_sCS30KHZoneT_SCS15KHZhalfT(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10940   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
10941                                                   ett_nr_rrc_T_sCS30KHZoneT_SCS15KHZhalfT, T_sCS30KHZoneT_SCS15KHZhalfT_sequence_of,
10942                                                   1, 4, FALSE);
10943
10944   return offset;
10945 }
10946
10947
10948
10949 static int
10950 dissect_nr_rrc_INTEGER_0_559(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10951   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
10952                                                             0U, 559U, NULL, FALSE);
10953
10954   return offset;
10955 }
10956
10957
10958 static const per_sequence_t T_sCS60KHZoneT_SCS30KHZhalfT_SCS15KHZquarterT_sequence_of[1] = {
10959   { &hf_nr_rrc_sCS60KHZoneT_SCS30KHZhalfT_SCS15KHZquarterT_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_559 },
10960 };
10961
10962 static int
10963 dissect_nr_rrc_T_sCS60KHZoneT_SCS30KHZhalfT_SCS15KHZquarterT(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10964   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
10965                                                   ett_nr_rrc_T_sCS60KHZoneT_SCS30KHZhalfT_SCS15KHZquarterT, T_sCS60KHZoneT_SCS30KHZhalfT_SCS15KHZquarterT_sequence_of,
10966                                                   1, 4, FALSE);
10967
10968   return offset;
10969 }
10970
10971
10972
10973 static int
10974 dissect_nr_rrc_INTEGER_0_1119(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10975   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
10976                                                             0U, 1119U, NULL, FALSE);
10977
10978   return offset;
10979 }
10980
10981
10982 static const per_sequence_t T_sCS120KHZoneT_SCS60KHZhalfT_SCS30KHZquarterT_SCS15KHZoneEighthT_sequence_of[1] = {
10983   { &hf_nr_rrc_sCS120KHZoneT_SCS60KHZhalfT_SCS30KHZquarterT_SCS15KHZoneEighthT_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_1119 },
10984 };
10985
10986 static int
10987 dissect_nr_rrc_T_sCS120KHZoneT_SCS60KHZhalfT_SCS30KHZquarterT_SCS15KHZoneEighthT(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10988   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
10989                                                   ett_nr_rrc_T_sCS120KHZoneT_SCS60KHZhalfT_SCS30KHZquarterT_SCS15KHZoneEighthT, T_sCS120KHZoneT_SCS60KHZhalfT_SCS30KHZquarterT_SCS15KHZoneEighthT_sequence_of,
10990                                                   1, 4, FALSE);
10991
10992   return offset;
10993 }
10994
10995
10996
10997 static int
10998 dissect_nr_rrc_INTEGER_0_2239(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
10999   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
11000                                                             0U, 2239U, NULL, FALSE);
11001
11002   return offset;
11003 }
11004
11005
11006 static const per_sequence_t T_sCS120KHZhalfT_SCS60KHZquarterT_SCS30KHZoneEighthT_SCS15KHZoneSixteenthT_sequence_of[1] = {
11007   { &hf_nr_rrc_sCS120KHZhalfT_SCS60KHZquarterT_SCS30KHZoneEighthT_SCS15KHZoneSixteenthT_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_2239 },
11008 };
11009
11010 static int
11011 dissect_nr_rrc_T_sCS120KHZhalfT_SCS60KHZquarterT_SCS30KHZoneEighthT_SCS15KHZoneSixteenthT(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11012   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
11013                                                   ett_nr_rrc_T_sCS120KHZhalfT_SCS60KHZquarterT_SCS30KHZoneEighthT_SCS15KHZoneSixteenthT, T_sCS120KHZhalfT_SCS60KHZquarterT_SCS30KHZoneEighthT_SCS15KHZoneSixteenthT_sequence_of,
11014                                                   1, 4, FALSE);
11015
11016   return offset;
11017 }
11018
11019
11020
11021 static int
11022 dissect_nr_rrc_INTEGER_0_4479(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11023   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
11024                                                             0U, 4479U, NULL, FALSE);
11025
11026   return offset;
11027 }
11028
11029
11030 static const per_sequence_t T_sCS120KHZquarterT_SCS60KHZoneEighthT_SCS30KHZoneSixteenthT_sequence_of[1] = {
11031   { &hf_nr_rrc_sCS120KHZquarterT_SCS60KHZoneEighthT_SCS30KHZoneSixteenthT_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_4479 },
11032 };
11033
11034 static int
11035 dissect_nr_rrc_T_sCS120KHZquarterT_SCS60KHZoneEighthT_SCS30KHZoneSixteenthT(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11036   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
11037                                                   ett_nr_rrc_T_sCS120KHZquarterT_SCS60KHZoneEighthT_SCS30KHZoneSixteenthT, T_sCS120KHZquarterT_SCS60KHZoneEighthT_SCS30KHZoneSixteenthT_sequence_of,
11038                                                   1, 4, FALSE);
11039
11040   return offset;
11041 }
11042
11043
11044
11045 static int
11046 dissect_nr_rrc_INTEGER_0_8959(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11047   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
11048                                                             0U, 8959U, NULL, FALSE);
11049
11050   return offset;
11051 }
11052
11053
11054 static const per_sequence_t T_sCS120KHZoneEighthT_SCS60KHZoneSixteenthT_sequence_of[1] = {
11055   { &hf_nr_rrc_sCS120KHZoneEighthT_SCS60KHZoneSixteenthT_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_8959 },
11056 };
11057
11058 static int
11059 dissect_nr_rrc_T_sCS120KHZoneEighthT_SCS60KHZoneSixteenthT(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11060   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
11061                                                   ett_nr_rrc_T_sCS120KHZoneEighthT_SCS60KHZoneSixteenthT, T_sCS120KHZoneEighthT_SCS60KHZoneSixteenthT_sequence_of,
11062                                                   1, 4, FALSE);
11063
11064   return offset;
11065 }
11066
11067
11068
11069 static int
11070 dissect_nr_rrc_INTEGER_0_17919(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11071   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
11072                                                             0U, 17919U, NULL, FALSE);
11073
11074   return offset;
11075 }
11076
11077
11078 static const per_sequence_t T_sCS120KHZoneSixteenthT_sequence_of[1] = {
11079   { &hf_nr_rrc_sCS120KHZoneSixteenthT_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_17919 },
11080 };
11081
11082 static int
11083 dissect_nr_rrc_T_sCS120KHZoneSixteenthT(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11084   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
11085                                                   ett_nr_rrc_T_sCS120KHZoneSixteenthT, T_sCS120KHZoneSixteenthT_sequence_of,
11086                                                   1, 4, FALSE);
11087
11088   return offset;
11089 }
11090
11091
11092 static const value_string nr_rrc_T_firstPDCCH_MonitoringOccasionOfPO_vals[] = {
11093   {   0, "sCS15KHZoneT" },
11094   {   1, "sCS30KHZoneT-SCS15KHZhalfT" },
11095   {   2, "sCS60KHZoneT-SCS30KHZhalfT-SCS15KHZquarterT" },
11096   {   3, "sCS120KHZoneT-SCS60KHZhalfT-SCS30KHZquarterT-SCS15KHZoneEighthT" },
11097   {   4, "sCS120KHZhalfT-SCS60KHZquarterT-SCS30KHZoneEighthT-SCS15KHZoneSixteenthT" },
11098   {   5, "sCS120KHZquarterT-SCS60KHZoneEighthT-SCS30KHZoneSixteenthT" },
11099   {   6, "sCS120KHZoneEighthT-SCS60KHZoneSixteenthT" },
11100   {   7, "sCS120KHZoneSixteenthT" },
11101   { 0, NULL }
11102 };
11103
11104 static const per_choice_t T_firstPDCCH_MonitoringOccasionOfPO_choice[] = {
11105   {   0, &hf_nr_rrc_sCS15KHZoneT , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_sCS15KHZoneT },
11106   {   1, &hf_nr_rrc_sCS30KHZoneT_SCS15KHZhalfT, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_sCS30KHZoneT_SCS15KHZhalfT },
11107   {   2, &hf_nr_rrc_sCS60KHZoneT_SCS30KHZhalfT_SCS15KHZquarterT, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_sCS60KHZoneT_SCS30KHZhalfT_SCS15KHZquarterT },
11108   {   3, &hf_nr_rrc_sCS120KHZoneT_SCS60KHZhalfT_SCS30KHZquarterT_SCS15KHZoneEighthT, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_sCS120KHZoneT_SCS60KHZhalfT_SCS30KHZquarterT_SCS15KHZoneEighthT },
11109   {   4, &hf_nr_rrc_sCS120KHZhalfT_SCS60KHZquarterT_SCS30KHZoneEighthT_SCS15KHZoneSixteenthT, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_sCS120KHZhalfT_SCS60KHZquarterT_SCS30KHZoneEighthT_SCS15KHZoneSixteenthT },
11110   {   5, &hf_nr_rrc_sCS120KHZquarterT_SCS60KHZoneEighthT_SCS30KHZoneSixteenthT, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_sCS120KHZquarterT_SCS60KHZoneEighthT_SCS30KHZoneSixteenthT },
11111   {   6, &hf_nr_rrc_sCS120KHZoneEighthT_SCS60KHZoneSixteenthT, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_sCS120KHZoneEighthT_SCS60KHZoneSixteenthT },
11112   {   7, &hf_nr_rrc_sCS120KHZoneSixteenthT, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_sCS120KHZoneSixteenthT },
11113   { 0, NULL, 0, NULL }
11114 };
11115
11116 static int
11117 dissect_nr_rrc_T_firstPDCCH_MonitoringOccasionOfPO(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11118   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
11119                                  ett_nr_rrc_T_firstPDCCH_MonitoringOccasionOfPO, T_firstPDCCH_MonitoringOccasionOfPO_choice,
11120                                  NULL);
11121
11122   return offset;
11123 }
11124
11125
11126 static const per_sequence_t PCCH_Config_sequence[] = {
11127   { &hf_nr_rrc_defaultPagingCycle, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PagingCycle },
11128   { &hf_nr_rrc_nAndPagingFrameOffset, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_nAndPagingFrameOffset },
11129   { &hf_nr_rrc_ns           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_ns },
11130   { &hf_nr_rrc_firstPDCCH_MonitoringOccasionOfPO, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_firstPDCCH_MonitoringOccasionOfPO },
11131   { NULL, 0, 0, NULL }
11132 };
11133
11134 static int
11135 dissect_nr_rrc_PCCH_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11136   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11137                                    ett_nr_rrc_PCCH_Config, PCCH_Config_sequence);
11138
11139   return offset;
11140 }
11141
11142
11143 static const per_sequence_t DownlinkConfigCommonSIB_sequence[] = {
11144   { &hf_nr_rrc_frequencyInfoDL_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FrequencyInfoDL_SIB },
11145   { &hf_nr_rrc_initialDownlinkBWP, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BWP_DownlinkCommon },
11146   { &hf_nr_rrc_bcch_Config  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BCCH_Config },
11147   { &hf_nr_rrc_pcch_Config  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PCCH_Config },
11148   { NULL, 0, 0, NULL }
11149 };
11150
11151 static int
11152 dissect_nr_rrc_DownlinkConfigCommonSIB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11153   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11154                                    ett_nr_rrc_DownlinkConfigCommonSIB, DownlinkConfigCommonSIB_sequence);
11155
11156   return offset;
11157 }
11158
11159
11160 static const value_string nr_rrc_T_frequencyShift7p5khz_01_vals[] = {
11161   {   0, "true" },
11162   { 0, NULL }
11163 };
11164
11165
11166 static int
11167 dissect_nr_rrc_T_frequencyShift7p5khz_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11168   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
11169                                      1, NULL, FALSE, 0, NULL);
11170
11171   return offset;
11172 }
11173
11174
11175 static const per_sequence_t FrequencyInfoUL_SIB_sequence[] = {
11176   { &hf_nr_rrc_frequencyBandList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_MultiFrequencyBandListNR_SIB },
11177   { &hf_nr_rrc_absoluteFrequencyPointA, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ARFCN_ValueNR },
11178   { &hf_nr_rrc_scs_SpecificCarrierList, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SEQUENCE_SIZE_1_maxSCSs_OF_SCS_SpecificCarrier },
11179   { &hf_nr_rrc_p_Max        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_P_Max },
11180   { &hf_nr_rrc_frequencyShift7p5khz_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_frequencyShift7p5khz_01 },
11181   { NULL, 0, 0, NULL }
11182 };
11183
11184 static int
11185 dissect_nr_rrc_FrequencyInfoUL_SIB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11186   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11187                                    ett_nr_rrc_FrequencyInfoUL_SIB, FrequencyInfoUL_SIB_sequence);
11188
11189   return offset;
11190 }
11191
11192
11193
11194 static int
11195 dissect_nr_rrc_INTEGER_1_63(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11196   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
11197                                                             1U, 63U, NULL, FALSE);
11198
11199   return offset;
11200 }
11201
11202
11203 static const value_string nr_rrc_T_oneEighth_vals[] = {
11204   {   0, "n4" },
11205   {   1, "n8" },
11206   {   2, "n12" },
11207   {   3, "n16" },
11208   {   4, "n20" },
11209   {   5, "n24" },
11210   {   6, "n28" },
11211   {   7, "n32" },
11212   {   8, "n36" },
11213   {   9, "n40" },
11214   {  10, "n44" },
11215   {  11, "n48" },
11216   {  12, "n52" },
11217   {  13, "n56" },
11218   {  14, "n60" },
11219   {  15, "n64" },
11220   { 0, NULL }
11221 };
11222
11223
11224 static int
11225 dissect_nr_rrc_T_oneEighth(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11226   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
11227                                      16, NULL, FALSE, 0, NULL);
11228
11229   return offset;
11230 }
11231
11232
11233 static const value_string nr_rrc_T_oneFourth_vals[] = {
11234   {   0, "n4" },
11235   {   1, "n8" },
11236   {   2, "n12" },
11237   {   3, "n16" },
11238   {   4, "n20" },
11239   {   5, "n24" },
11240   {   6, "n28" },
11241   {   7, "n32" },
11242   {   8, "n36" },
11243   {   9, "n40" },
11244   {  10, "n44" },
11245   {  11, "n48" },
11246   {  12, "n52" },
11247   {  13, "n56" },
11248   {  14, "n60" },
11249   {  15, "n64" },
11250   { 0, NULL }
11251 };
11252
11253
11254 static int
11255 dissect_nr_rrc_T_oneFourth(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11256   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
11257                                      16, NULL, FALSE, 0, NULL);
11258
11259   return offset;
11260 }
11261
11262
11263 static const value_string nr_rrc_T_oneHalf_vals[] = {
11264   {   0, "n4" },
11265   {   1, "n8" },
11266   {   2, "n12" },
11267   {   3, "n16" },
11268   {   4, "n20" },
11269   {   5, "n24" },
11270   {   6, "n28" },
11271   {   7, "n32" },
11272   {   8, "n36" },
11273   {   9, "n40" },
11274   {  10, "n44" },
11275   {  11, "n48" },
11276   {  12, "n52" },
11277   {  13, "n56" },
11278   {  14, "n60" },
11279   {  15, "n64" },
11280   { 0, NULL }
11281 };
11282
11283
11284 static int
11285 dissect_nr_rrc_T_oneHalf(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11286   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
11287                                      16, NULL, FALSE, 0, NULL);
11288
11289   return offset;
11290 }
11291
11292
11293 static const value_string nr_rrc_T_one_vals[] = {
11294   {   0, "n4" },
11295   {   1, "n8" },
11296   {   2, "n12" },
11297   {   3, "n16" },
11298   {   4, "n20" },
11299   {   5, "n24" },
11300   {   6, "n28" },
11301   {   7, "n32" },
11302   {   8, "n36" },
11303   {   9, "n40" },
11304   {  10, "n44" },
11305   {  11, "n48" },
11306   {  12, "n52" },
11307   {  13, "n56" },
11308   {  14, "n60" },
11309   {  15, "n64" },
11310   { 0, NULL }
11311 };
11312
11313
11314 static int
11315 dissect_nr_rrc_T_one(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11316   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
11317                                      16, NULL, FALSE, 0, NULL);
11318
11319   return offset;
11320 }
11321
11322
11323 static const value_string nr_rrc_T_two_01_vals[] = {
11324   {   0, "n4" },
11325   {   1, "n8" },
11326   {   2, "n12" },
11327   {   3, "n16" },
11328   {   4, "n20" },
11329   {   5, "n24" },
11330   {   6, "n28" },
11331   {   7, "n32" },
11332   { 0, NULL }
11333 };
11334
11335
11336 static int
11337 dissect_nr_rrc_T_two_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11338   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
11339                                      8, NULL, FALSE, 0, NULL);
11340
11341   return offset;
11342 }
11343
11344
11345
11346 static int
11347 dissect_nr_rrc_INTEGER_1_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11348   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
11349                                                             1U, 4U, NULL, FALSE);
11350
11351   return offset;
11352 }
11353
11354
11355 static const value_string nr_rrc_T_ssb_perRACH_OccasionAndCB_PreamblesPerSSB_vals[] = {
11356   {   0, "oneEighth" },
11357   {   1, "oneFourth" },
11358   {   2, "oneHalf" },
11359   {   3, "one" },
11360   {   4, "two" },
11361   {   5, "four" },
11362   {   6, "eight" },
11363   {   7, "sixteen" },
11364   { 0, NULL }
11365 };
11366
11367 static const per_choice_t T_ssb_perRACH_OccasionAndCB_PreamblesPerSSB_choice[] = {
11368   {   0, &hf_nr_rrc_oneEighth    , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_oneEighth },
11369   {   1, &hf_nr_rrc_oneFourth    , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_oneFourth },
11370   {   2, &hf_nr_rrc_oneHalf      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_oneHalf },
11371   {   3, &hf_nr_rrc_one_01       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_one },
11372   {   4, &hf_nr_rrc_two_01       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_two_01 },
11373   {   5, &hf_nr_rrc_four         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_1_16 },
11374   {   6, &hf_nr_rrc_eight        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_1_8 },
11375   {   7, &hf_nr_rrc_sixteen      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_1_4 },
11376   { 0, NULL, 0, NULL }
11377 };
11378
11379 static int
11380 dissect_nr_rrc_T_ssb_perRACH_OccasionAndCB_PreamblesPerSSB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11381   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
11382                                  ett_nr_rrc_T_ssb_perRACH_OccasionAndCB_PreamblesPerSSB, T_ssb_perRACH_OccasionAndCB_PreamblesPerSSB_choice,
11383                                  NULL);
11384
11385   return offset;
11386 }
11387
11388
11389 static const value_string nr_rrc_T_ra_Msg3SizeGroupA_vals[] = {
11390   {   0, "b56" },
11391   {   1, "b144" },
11392   {   2, "b208" },
11393   {   3, "b256" },
11394   {   4, "b282" },
11395   {   5, "b480" },
11396   {   6, "b640" },
11397   {   7, "b800" },
11398   {   8, "b1000" },
11399   {   9, "b72" },
11400   {  10, "spare6" },
11401   {  11, "spare5" },
11402   {  12, "spare4" },
11403   {  13, "spare3" },
11404   {  14, "spare2" },
11405   {  15, "spare1" },
11406   { 0, NULL }
11407 };
11408
11409
11410 static int
11411 dissect_nr_rrc_T_ra_Msg3SizeGroupA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11412   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
11413                                      16, NULL, FALSE, 0, NULL);
11414
11415   return offset;
11416 }
11417
11418
11419 static const value_string nr_rrc_T_messagePowerOffsetGroupB_vals[] = {
11420   {   0, "minusinfinity" },
11421   {   1, "dB0" },
11422   {   2, "dB5" },
11423   {   3, "dB8" },
11424   {   4, "dB10" },
11425   {   5, "dB12" },
11426   {   6, "dB15" },
11427   {   7, "dB18" },
11428   { 0, NULL }
11429 };
11430
11431
11432 static int
11433 dissect_nr_rrc_T_messagePowerOffsetGroupB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11434   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
11435                                      8, NULL, FALSE, 0, NULL);
11436
11437   return offset;
11438 }
11439
11440
11441
11442 static int
11443 dissect_nr_rrc_INTEGER_1_64(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11444   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
11445                                                             1U, 64U, NULL, FALSE);
11446
11447   return offset;
11448 }
11449
11450
11451 static const per_sequence_t T_groupBconfigured_sequence[] = {
11452   { &hf_nr_rrc_ra_Msg3SizeGroupA, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_ra_Msg3SizeGroupA },
11453   { &hf_nr_rrc_messagePowerOffsetGroupB, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_messagePowerOffsetGroupB },
11454   { &hf_nr_rrc_numberOfRA_PreamblesGroupA, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_64 },
11455   { NULL, 0, 0, NULL }
11456 };
11457
11458 static int
11459 dissect_nr_rrc_T_groupBconfigured(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11460   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11461                                    ett_nr_rrc_T_groupBconfigured, T_groupBconfigured_sequence);
11462
11463   return offset;
11464 }
11465
11466
11467 static const value_string nr_rrc_T_ra_ContentionResolutionTimer_vals[] = {
11468   {   0, "sf8" },
11469   {   1, "sf16" },
11470   {   2, "sf24" },
11471   {   3, "sf32" },
11472   {   4, "sf40" },
11473   {   5, "sf48" },
11474   {   6, "sf56" },
11475   {   7, "sf64" },
11476   { 0, NULL }
11477 };
11478
11479
11480 static int
11481 dissect_nr_rrc_T_ra_ContentionResolutionTimer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11482   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
11483                                      8, NULL, FALSE, 0, NULL);
11484
11485   return offset;
11486 }
11487
11488
11489
11490 static int
11491 dissect_nr_rrc_INTEGER_0_837(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11492   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
11493                                                             0U, 837U, NULL, FALSE);
11494
11495   return offset;
11496 }
11497
11498
11499
11500 static int
11501 dissect_nr_rrc_INTEGER_0_137(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11502   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
11503                                                             0U, 137U, NULL, FALSE);
11504
11505   return offset;
11506 }
11507
11508
11509 static const value_string nr_rrc_T_prach_RootSequenceIndex_vals[] = {
11510   {   0, "l839" },
11511   {   1, "l139" },
11512   { 0, NULL }
11513 };
11514
11515 static const per_choice_t T_prach_RootSequenceIndex_choice[] = {
11516   {   0, &hf_nr_rrc_l839         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_837 },
11517   {   1, &hf_nr_rrc_l139         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_137 },
11518   { 0, NULL, 0, NULL }
11519 };
11520
11521 static int
11522 dissect_nr_rrc_T_prach_RootSequenceIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11523   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
11524                                  ett_nr_rrc_T_prach_RootSequenceIndex, T_prach_RootSequenceIndex_choice,
11525                                  NULL);
11526
11527   return offset;
11528 }
11529
11530
11531 static const value_string nr_rrc_T_restrictedSetConfig_vals[] = {
11532   {   0, "unrestrictedSet" },
11533   {   1, "restrictedSetTypeA" },
11534   {   2, "restrictedSetTypeB" },
11535   { 0, NULL }
11536 };
11537
11538
11539 static int
11540 dissect_nr_rrc_T_restrictedSetConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11541   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
11542                                      3, NULL, FALSE, 0, NULL);
11543
11544   return offset;
11545 }
11546
11547
11548 static const value_string nr_rrc_T_msg3_transformPrecoder_vals[] = {
11549   {   0, "enabled" },
11550   { 0, NULL }
11551 };
11552
11553
11554 static int
11555 dissect_nr_rrc_T_msg3_transformPrecoder(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11556   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
11557                                      1, NULL, FALSE, 0, NULL);
11558
11559   return offset;
11560 }
11561
11562
11563 static const per_sequence_t RACH_ConfigCommon_sequence[] = {
11564   { &hf_nr_rrc_rach_ConfigGeneric, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RACH_ConfigGeneric },
11565   { &hf_nr_rrc_totalNumberOfRA_Preambles, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_63 },
11566   { &hf_nr_rrc_ssb_perRACH_OccasionAndCB_PreamblesPerSSB, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_ssb_perRACH_OccasionAndCB_PreamblesPerSSB },
11567   { &hf_nr_rrc_groupBconfigured, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_groupBconfigured },
11568   { &hf_nr_rrc_ra_ContentionResolutionTimer, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_ra_ContentionResolutionTimer },
11569   { &hf_nr_rrc_rsrp_ThresholdSSB, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_RSRP_Range },
11570   { &hf_nr_rrc_rsrp_ThresholdSSB_SUL, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_RSRP_Range },
11571   { &hf_nr_rrc_prach_RootSequenceIndex, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_prach_RootSequenceIndex },
11572   { &hf_nr_rrc_msg1_SubcarrierSpacing, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SubcarrierSpacing },
11573   { &hf_nr_rrc_restrictedSetConfig, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_restrictedSetConfig },
11574   { &hf_nr_rrc_msg3_transformPrecoder, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_msg3_transformPrecoder },
11575   { NULL, 0, 0, NULL }
11576 };
11577
11578 static int
11579 dissect_nr_rrc_RACH_ConfigCommon(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11580   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11581                                    ett_nr_rrc_RACH_ConfigCommon, RACH_ConfigCommon_sequence);
11582
11583   return offset;
11584 }
11585
11586
11587 static const value_string nr_rrc_T_rach_ConfigCommon_vals[] = {
11588   {   0, "release" },
11589   {   1, "setup" },
11590   { 0, NULL }
11591 };
11592
11593 static const per_choice_t T_rach_ConfigCommon_choice[] = {
11594   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
11595   {   1, &hf_nr_rrc_setup_08     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RACH_ConfigCommon },
11596   { 0, NULL, 0, NULL }
11597 };
11598
11599 static int
11600 dissect_nr_rrc_T_rach_ConfigCommon(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11601   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
11602                                  ett_nr_rrc_T_rach_ConfigCommon, T_rach_ConfigCommon_choice,
11603                                  NULL);
11604
11605   return offset;
11606 }
11607
11608
11609 static const value_string nr_rrc_T_groupHoppingEnabledTransformPrecoding_vals[] = {
11610   {   0, "enabled" },
11611   { 0, NULL }
11612 };
11613
11614
11615 static int
11616 dissect_nr_rrc_T_groupHoppingEnabledTransformPrecoding(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11617   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
11618                                      1, NULL, FALSE, 0, NULL);
11619
11620   return offset;
11621 }
11622
11623
11624 static const value_string nr_rrc_T_mappingType_01_vals[] = {
11625   {   0, "typeA" },
11626   {   1, "typeB" },
11627   { 0, NULL }
11628 };
11629
11630
11631 static int
11632 dissect_nr_rrc_T_mappingType_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11633   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
11634                                      2, NULL, FALSE, 0, NULL);
11635
11636   return offset;
11637 }
11638
11639
11640 static const per_sequence_t PUSCH_TimeDomainResourceAllocation_sequence[] = {
11641   { &hf_nr_rrc_k2           , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_32 },
11642   { &hf_nr_rrc_mappingType_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_mappingType_01 },
11643   { &hf_nr_rrc_startSymbolAndLength, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_127 },
11644   { NULL, 0, 0, NULL }
11645 };
11646
11647 static int
11648 dissect_nr_rrc_PUSCH_TimeDomainResourceAllocation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11649   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11650                                    ett_nr_rrc_PUSCH_TimeDomainResourceAllocation, PUSCH_TimeDomainResourceAllocation_sequence);
11651
11652   return offset;
11653 }
11654
11655
11656 static const per_sequence_t PUSCH_TimeDomainResourceAllocationList_sequence_of[1] = {
11657   { &hf_nr_rrc_PUSCH_TimeDomainResourceAllocationList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PUSCH_TimeDomainResourceAllocation },
11658 };
11659
11660 static int
11661 dissect_nr_rrc_PUSCH_TimeDomainResourceAllocationList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11662   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
11663                                                   ett_nr_rrc_PUSCH_TimeDomainResourceAllocationList, PUSCH_TimeDomainResourceAllocationList_sequence_of,
11664                                                   1, maxNrofUL_Allocations, FALSE);
11665
11666   return offset;
11667 }
11668
11669
11670
11671 static int
11672 dissect_nr_rrc_INTEGER_M1_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11673   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
11674                                                             -1, 6U, NULL, FALSE);
11675
11676   return offset;
11677 }
11678
11679
11680
11681 static int
11682 dissect_nr_rrc_INTEGER_M202_24(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11683   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
11684                                                             -202, 24U, NULL, FALSE);
11685
11686   return offset;
11687 }
11688
11689
11690 static const per_sequence_t PUSCH_ConfigCommon_sequence[] = {
11691   { &hf_nr_rrc_groupHoppingEnabledTransformPrecoding, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_groupHoppingEnabledTransformPrecoding },
11692   { &hf_nr_rrc_pusch_TimeDomainAllocationList_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_PUSCH_TimeDomainResourceAllocationList },
11693   { &hf_nr_rrc_msg3_DeltaPreamble, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_M1_6 },
11694   { &hf_nr_rrc_p0_NominalWithGrant, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_M202_24 },
11695   { NULL, 0, 0, NULL }
11696 };
11697
11698 static int
11699 dissect_nr_rrc_PUSCH_ConfigCommon(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11700   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11701                                    ett_nr_rrc_PUSCH_ConfigCommon, PUSCH_ConfigCommon_sequence);
11702
11703   return offset;
11704 }
11705
11706
11707 static const value_string nr_rrc_T_pusch_ConfigCommon_vals[] = {
11708   {   0, "release" },
11709   {   1, "setup" },
11710   { 0, NULL }
11711 };
11712
11713 static const per_choice_t T_pusch_ConfigCommon_choice[] = {
11714   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
11715   {   1, &hf_nr_rrc_setup_09     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_PUSCH_ConfigCommon },
11716   { 0, NULL, 0, NULL }
11717 };
11718
11719 static int
11720 dissect_nr_rrc_T_pusch_ConfigCommon(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11721   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
11722                                  ett_nr_rrc_T_pusch_ConfigCommon, T_pusch_ConfigCommon_choice,
11723                                  NULL);
11724
11725   return offset;
11726 }
11727
11728
11729 static const value_string nr_rrc_T_pucch_GroupHopping_vals[] = {
11730   {   0, "neither" },
11731   {   1, "enable" },
11732   {   2, "disable" },
11733   { 0, NULL }
11734 };
11735
11736
11737 static int
11738 dissect_nr_rrc_T_pucch_GroupHopping(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11739   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
11740                                      3, NULL, FALSE, 0, NULL);
11741
11742   return offset;
11743 }
11744
11745
11746 static const per_sequence_t PUCCH_ConfigCommon_sequence[] = {
11747   { &hf_nr_rrc_pucch_ResourceCommon, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_15 },
11748   { &hf_nr_rrc_pucch_GroupHopping, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_pucch_GroupHopping },
11749   { &hf_nr_rrc_hoppingId    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_1023 },
11750   { &hf_nr_rrc_p0_nominal   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_M202_24 },
11751   { NULL, 0, 0, NULL }
11752 };
11753
11754 static int
11755 dissect_nr_rrc_PUCCH_ConfigCommon(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11756   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11757                                    ett_nr_rrc_PUCCH_ConfigCommon, PUCCH_ConfigCommon_sequence);
11758
11759   return offset;
11760 }
11761
11762
11763 static const value_string nr_rrc_T_pucch_ConfigCommon_vals[] = {
11764   {   0, "release" },
11765   {   1, "setup" },
11766   { 0, NULL }
11767 };
11768
11769 static const per_choice_t T_pucch_ConfigCommon_choice[] = {
11770   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
11771   {   1, &hf_nr_rrc_setup_10     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_PUCCH_ConfigCommon },
11772   { 0, NULL, 0, NULL }
11773 };
11774
11775 static int
11776 dissect_nr_rrc_T_pucch_ConfigCommon(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11777   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
11778                                  ett_nr_rrc_T_pucch_ConfigCommon, T_pucch_ConfigCommon_choice,
11779                                  NULL);
11780
11781   return offset;
11782 }
11783
11784
11785 static const per_sequence_t BWP_UplinkCommon_sequence[] = {
11786   { &hf_nr_rrc_genericParameters, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BWP },
11787   { &hf_nr_rrc_rach_ConfigCommon, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_rach_ConfigCommon },
11788   { &hf_nr_rrc_pusch_ConfigCommon, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pusch_ConfigCommon },
11789   { &hf_nr_rrc_pucch_ConfigCommon, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pucch_ConfigCommon },
11790   { NULL, 0, 0, NULL }
11791 };
11792
11793 static int
11794 dissect_nr_rrc_BWP_UplinkCommon(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11795   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11796                                    ett_nr_rrc_BWP_UplinkCommon, BWP_UplinkCommon_sequence);
11797
11798   return offset;
11799 }
11800
11801
11802 static const value_string nr_rrc_TimeAlignmentTimer_vals[] = {
11803   {   0, "ms500" },
11804   {   1, "ms750" },
11805   {   2, "ms1280" },
11806   {   3, "ms1920" },
11807   {   4, "ms2560" },
11808   {   5, "ms5120" },
11809   {   6, "ms10240" },
11810   {   7, "infinity" },
11811   { 0, NULL }
11812 };
11813
11814
11815 static int
11816 dissect_nr_rrc_TimeAlignmentTimer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11817   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
11818                                      8, NULL, FALSE, 0, NULL);
11819
11820   return offset;
11821 }
11822
11823
11824 static const per_sequence_t UplinkConfigCommonSIB_sequence[] = {
11825   { &hf_nr_rrc_frequencyInfoUL_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FrequencyInfoUL_SIB },
11826   { &hf_nr_rrc_initialUplinkBWP_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BWP_UplinkCommon },
11827   { &hf_nr_rrc_timeAlignmentTimerCommon, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_TimeAlignmentTimer },
11828   { NULL, 0, 0, NULL }
11829 };
11830
11831 static int
11832 dissect_nr_rrc_UplinkConfigCommonSIB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11833   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11834                                    ett_nr_rrc_UplinkConfigCommonSIB, UplinkConfigCommonSIB_sequence);
11835
11836   return offset;
11837 }
11838
11839
11840 static const value_string nr_rrc_T_n_TimingAdvanceOffset_01_vals[] = {
11841   {   0, "n0" },
11842   {   1, "n25560" },
11843   {   2, "n39936" },
11844   { 0, NULL }
11845 };
11846
11847
11848 static int
11849 dissect_nr_rrc_T_n_TimingAdvanceOffset_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11850   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
11851                                      3, NULL, FALSE, 0, NULL);
11852
11853   return offset;
11854 }
11855
11856
11857 static const per_sequence_t T_ssb_PositionsInBurst_01_sequence[] = {
11858   { &hf_nr_rrc_inOneGroup   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BIT_STRING_SIZE_8 },
11859   { &hf_nr_rrc_groupPresence, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_BIT_STRING_SIZE_8 },
11860   { NULL, 0, 0, NULL }
11861 };
11862
11863 static int
11864 dissect_nr_rrc_T_ssb_PositionsInBurst_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11865   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11866                                    ett_nr_rrc_T_ssb_PositionsInBurst_01, T_ssb_PositionsInBurst_01_sequence);
11867
11868   return offset;
11869 }
11870
11871
11872 static const value_string nr_rrc_T_ssb_PeriodicityServingCell_vals[] = {
11873   {   0, "ms5" },
11874   {   1, "ms10" },
11875   {   2, "ms20" },
11876   {   3, "ms40" },
11877   {   4, "ms80" },
11878   {   5, "ms160" },
11879   { 0, NULL }
11880 };
11881
11882
11883 static int
11884 dissect_nr_rrc_T_ssb_PeriodicityServingCell(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11885   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
11886                                      6, NULL, FALSE, 0, NULL);
11887
11888   return offset;
11889 }
11890
11891
11892 static const value_string nr_rrc_T_dl_UL_TransmissionPeriodicity_vals[] = {
11893   {   0, "ms0p5" },
11894   {   1, "ms0p625" },
11895   {   2, "ms1" },
11896   {   3, "ms1p25" },
11897   {   4, "ms2" },
11898   {   5, "ms2p5" },
11899   {   6, "ms5" },
11900   {   7, "ms10" },
11901   { 0, NULL }
11902 };
11903
11904
11905 static int
11906 dissect_nr_rrc_T_dl_UL_TransmissionPeriodicity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11907   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
11908                                      8, NULL, FALSE, 0, NULL);
11909
11910   return offset;
11911 }
11912
11913
11914
11915 static int
11916 dissect_nr_rrc_INTEGER_0_maxNrofSlots(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11917   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
11918                                                             0U, maxNrofSlots, NULL, FALSE);
11919
11920   return offset;
11921 }
11922
11923
11924
11925 static int
11926 dissect_nr_rrc_INTEGER_0_maxNrofSymbols_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11927   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
11928                                                             0U, maxNrofSymbols_1, NULL, FALSE);
11929
11930   return offset;
11931 }
11932
11933
11934 static const value_string nr_rrc_T_dl_UL_TransmissionPeriodicity_v1530_vals[] = {
11935   {   0, "ms3" },
11936   {   1, "ms4" },
11937   { 0, NULL }
11938 };
11939
11940
11941 static int
11942 dissect_nr_rrc_T_dl_UL_TransmissionPeriodicity_v1530(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11943   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
11944                                      2, NULL, FALSE, 0, NULL);
11945
11946   return offset;
11947 }
11948
11949
11950 static const per_sequence_t TDD_UL_DL_Pattern_eag_1_sequence[] = {
11951   { &hf_nr_rrc_dl_UL_TransmissionPeriodicity_v1530, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_dl_UL_TransmissionPeriodicity_v1530 },
11952   { NULL, 0, 0, NULL }
11953 };
11954
11955 static int
11956 dissect_nr_rrc_TDD_UL_DL_Pattern_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11957   offset = dissect_per_sequence_eag(tvb, offset, actx, tree, TDD_UL_DL_Pattern_eag_1_sequence);
11958
11959   return offset;
11960 }
11961
11962
11963 static const per_sequence_t TDD_UL_DL_Pattern_sequence[] = {
11964   { &hf_nr_rrc_dl_UL_TransmissionPeriodicity, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_dl_UL_TransmissionPeriodicity },
11965   { &hf_nr_rrc_nrofDownlinkSlots, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_maxNrofSlots },
11966   { &hf_nr_rrc_nrofDownlinkSymbols, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_maxNrofSymbols_1 },
11967   { &hf_nr_rrc_nrofUplinkSlots, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_maxNrofSlots },
11968   { &hf_nr_rrc_nrofUplinkSymbols, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_maxNrofSymbols_1 },
11969   { &dummy_hf_nr_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_nr_rrc_TDD_UL_DL_Pattern_eag_1 },
11970   { NULL, 0, 0, NULL }
11971 };
11972
11973 static int
11974 dissect_nr_rrc_TDD_UL_DL_Pattern(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11975   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11976                                    ett_nr_rrc_TDD_UL_DL_Pattern, TDD_UL_DL_Pattern_sequence);
11977
11978   return offset;
11979 }
11980
11981
11982 static const per_sequence_t TDD_UL_DL_ConfigCommon_sequence[] = {
11983   { &hf_nr_rrc_referenceSubcarrierSpacing, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SubcarrierSpacing },
11984   { &hf_nr_rrc_pattern1_01  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_TDD_UL_DL_Pattern },
11985   { &hf_nr_rrc_pattern2     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_TDD_UL_DL_Pattern },
11986   { NULL, 0, 0, NULL }
11987 };
11988
11989 static int
11990 dissect_nr_rrc_TDD_UL_DL_ConfigCommon(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
11991   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
11992                                    ett_nr_rrc_TDD_UL_DL_ConfigCommon, TDD_UL_DL_ConfigCommon_sequence);
11993
11994   return offset;
11995 }
11996
11997
11998
11999 static int
12000 dissect_nr_rrc_INTEGER_M60_50(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12001   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
12002                                                             -60, 50U, NULL, FALSE);
12003
12004   return offset;
12005 }
12006
12007
12008 static const per_sequence_t ServingCellConfigCommonSIB_sequence[] = {
12009   { &hf_nr_rrc_downlinkConfigCommon_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_DownlinkConfigCommonSIB },
12010   { &hf_nr_rrc_uplinkConfigCommon_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_UplinkConfigCommonSIB },
12011   { &hf_nr_rrc_supplementaryUplink_02, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_UplinkConfigCommonSIB },
12012   { &hf_nr_rrc_n_TimingAdvanceOffset_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_n_TimingAdvanceOffset_01 },
12013   { &hf_nr_rrc_ssb_PositionsInBurst_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_ssb_PositionsInBurst_01 },
12014   { &hf_nr_rrc_ssb_PeriodicityServingCell, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_ssb_PeriodicityServingCell },
12015   { &hf_nr_rrc_tdd_UL_DL_ConfigurationCommon, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_TDD_UL_DL_ConfigCommon },
12016   { &hf_nr_rrc_ss_PBCH_BlockPower, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_M60_50 },
12017   { NULL, 0, 0, NULL }
12018 };
12019
12020 static int
12021 dissect_nr_rrc_ServingCellConfigCommonSIB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12022   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12023                                    ett_nr_rrc_ServingCellConfigCommonSIB, ServingCellConfigCommonSIB_sequence);
12024
12025   return offset;
12026 }
12027
12028
12029 static const value_string nr_rrc_T_ims_EmergencySupport_vals[] = {
12030   {   0, "true" },
12031   { 0, NULL }
12032 };
12033
12034
12035 static int
12036 dissect_nr_rrc_T_ims_EmergencySupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12037   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
12038                                      1, NULL, FALSE, 0, NULL);
12039
12040   return offset;
12041 }
12042
12043
12044 static const value_string nr_rrc_T_eCallOverIMS_Support_vals[] = {
12045   {   0, "true" },
12046   { 0, NULL }
12047 };
12048
12049
12050 static int
12051 dissect_nr_rrc_T_eCallOverIMS_Support(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12052   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
12053                                      1, NULL, FALSE, 0, NULL);
12054
12055   return offset;
12056 }
12057
12058
12059 static const value_string nr_rrc_T_t300_vals[] = {
12060   {   0, "ms100" },
12061   {   1, "ms200" },
12062   {   2, "ms300" },
12063   {   3, "ms400" },
12064   {   4, "ms600" },
12065   {   5, "ms1000" },
12066   {   6, "ms1500" },
12067   {   7, "ms2000" },
12068   { 0, NULL }
12069 };
12070
12071
12072 static int
12073 dissect_nr_rrc_T_t300(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12074   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
12075                                      8, NULL, FALSE, 0, NULL);
12076
12077   return offset;
12078 }
12079
12080
12081 static const value_string nr_rrc_T_t301_vals[] = {
12082   {   0, "ms100" },
12083   {   1, "ms200" },
12084   {   2, "ms300" },
12085   {   3, "ms400" },
12086   {   4, "ms600" },
12087   {   5, "ms1000" },
12088   {   6, "ms1500" },
12089   {   7, "ms2000" },
12090   { 0, NULL }
12091 };
12092
12093
12094 static int
12095 dissect_nr_rrc_T_t301(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12096   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
12097                                      8, NULL, FALSE, 0, NULL);
12098
12099   return offset;
12100 }
12101
12102
12103 static const value_string nr_rrc_T_t310_01_vals[] = {
12104   {   0, "ms0" },
12105   {   1, "ms50" },
12106   {   2, "ms100" },
12107   {   3, "ms200" },
12108   {   4, "ms500" },
12109   {   5, "ms1000" },
12110   {   6, "ms2000" },
12111   { 0, NULL }
12112 };
12113
12114
12115 static int
12116 dissect_nr_rrc_T_t310_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12117   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
12118                                      7, NULL, FALSE, 0, NULL);
12119
12120   return offset;
12121 }
12122
12123
12124 static const value_string nr_rrc_T_n310_01_vals[] = {
12125   {   0, "n1" },
12126   {   1, "n2" },
12127   {   2, "n3" },
12128   {   3, "n4" },
12129   {   4, "n6" },
12130   {   5, "n8" },
12131   {   6, "n10" },
12132   {   7, "n20" },
12133   { 0, NULL }
12134 };
12135
12136
12137 static int
12138 dissect_nr_rrc_T_n310_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12139   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
12140                                      8, NULL, FALSE, 0, NULL);
12141
12142   return offset;
12143 }
12144
12145
12146 static const value_string nr_rrc_T_t311_vals[] = {
12147   {   0, "ms1000" },
12148   {   1, "ms3000" },
12149   {   2, "ms5000" },
12150   {   3, "ms10000" },
12151   {   4, "ms15000" },
12152   {   5, "ms20000" },
12153   {   6, "ms30000" },
12154   { 0, NULL }
12155 };
12156
12157
12158 static int
12159 dissect_nr_rrc_T_t311(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12160   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
12161                                      7, NULL, FALSE, 0, NULL);
12162
12163   return offset;
12164 }
12165
12166
12167 static const value_string nr_rrc_T_n311_01_vals[] = {
12168   {   0, "n1" },
12169   {   1, "n2" },
12170   {   2, "n3" },
12171   {   3, "n4" },
12172   {   4, "n5" },
12173   {   5, "n6" },
12174   {   6, "n8" },
12175   {   7, "n10" },
12176   { 0, NULL }
12177 };
12178
12179
12180 static int
12181 dissect_nr_rrc_T_n311_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12182   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
12183                                      8, NULL, FALSE, 0, NULL);
12184
12185   return offset;
12186 }
12187
12188
12189 static const value_string nr_rrc_T_t319_vals[] = {
12190   {   0, "ms100" },
12191   {   1, "ms200" },
12192   {   2, "ms300" },
12193   {   3, "ms400" },
12194   {   4, "ms600" },
12195   {   5, "ms1000" },
12196   {   6, "ms1500" },
12197   {   7, "ms2000" },
12198   { 0, NULL }
12199 };
12200
12201
12202 static int
12203 dissect_nr_rrc_T_t319(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12204   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
12205                                      8, NULL, FALSE, 0, NULL);
12206
12207   return offset;
12208 }
12209
12210
12211 static const per_sequence_t UE_TimersAndConstants_sequence[] = {
12212   { &hf_nr_rrc_t300         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_t300 },
12213   { &hf_nr_rrc_t301         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_t301 },
12214   { &hf_nr_rrc_t310_01      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_t310_01 },
12215   { &hf_nr_rrc_n310_01      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_n310_01 },
12216   { &hf_nr_rrc_t311         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_t311 },
12217   { &hf_nr_rrc_n311_01      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_n311_01 },
12218   { &hf_nr_rrc_t319         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_t319 },
12219   { NULL, 0, 0, NULL }
12220 };
12221
12222 static int
12223 dissect_nr_rrc_UE_TimersAndConstants(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12224   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12225                                    ett_nr_rrc_UE_TimersAndConstants, UE_TimersAndConstants_sequence);
12226
12227   return offset;
12228 }
12229
12230
12231
12232 static int
12233 dissect_nr_rrc_INTEGER_1_maxAccessCat_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12234   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
12235                                                             1U, maxAccessCat_1, NULL, FALSE);
12236
12237   return offset;
12238 }
12239
12240
12241
12242 static int
12243 dissect_nr_rrc_UAC_BarringInfoSetIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12244   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
12245                                                             1U, maxBarringInfoSet, NULL, FALSE);
12246
12247   return offset;
12248 }
12249
12250
12251 static const per_sequence_t UAC_BarringPerCat_sequence[] = {
12252   { &hf_nr_rrc_accessCategory, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_maxAccessCat_1 },
12253   { &hf_nr_rrc_uac_barringInfoSetIndex, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_UAC_BarringInfoSetIndex },
12254   { NULL, 0, 0, NULL }
12255 };
12256
12257 static int
12258 dissect_nr_rrc_UAC_BarringPerCat(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12259   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12260                                    ett_nr_rrc_UAC_BarringPerCat, UAC_BarringPerCat_sequence);
12261
12262   return offset;
12263 }
12264
12265
12266 static const per_sequence_t UAC_BarringPerCatList_sequence_of[1] = {
12267   { &hf_nr_rrc_UAC_BarringPerCatList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_UAC_BarringPerCat },
12268 };
12269
12270 static int
12271 dissect_nr_rrc_UAC_BarringPerCatList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12272   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
12273                                                   ett_nr_rrc_UAC_BarringPerCatList, UAC_BarringPerCatList_sequence_of,
12274                                                   1, maxAccessCat_1, FALSE);
12275
12276   return offset;
12277 }
12278
12279
12280
12281 static int
12282 dissect_nr_rrc_INTEGER_1_maxPLMN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12283   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
12284                                                             1U, maxPLMN, NULL, FALSE);
12285
12286   return offset;
12287 }
12288
12289
12290 static const per_sequence_t SEQUENCE_SIZE_maxAccessCat_1_OF_UAC_BarringInfoSetIndex_sequence_of[1] = {
12291   { &hf_nr_rrc_uac_ImplicitACBarringList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_UAC_BarringInfoSetIndex },
12292 };
12293
12294 static int
12295 dissect_nr_rrc_SEQUENCE_SIZE_maxAccessCat_1_OF_UAC_BarringInfoSetIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12296   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
12297                                                   ett_nr_rrc_SEQUENCE_SIZE_maxAccessCat_1_OF_UAC_BarringInfoSetIndex, SEQUENCE_SIZE_maxAccessCat_1_OF_UAC_BarringInfoSetIndex_sequence_of,
12298                                                   maxAccessCat_1, maxAccessCat_1, FALSE);
12299
12300   return offset;
12301 }
12302
12303
12304 static const value_string nr_rrc_T_uac_ACBarringListType_vals[] = {
12305   {   0, "uac-ImplicitACBarringList" },
12306   {   1, "uac-ExplicitACBarringList" },
12307   { 0, NULL }
12308 };
12309
12310 static const per_choice_t T_uac_ACBarringListType_choice[] = {
12311   {   0, &hf_nr_rrc_uac_ImplicitACBarringList, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SEQUENCE_SIZE_maxAccessCat_1_OF_UAC_BarringInfoSetIndex },
12312   {   1, &hf_nr_rrc_uac_ExplicitACBarringList, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_UAC_BarringPerCatList },
12313   { 0, NULL, 0, NULL }
12314 };
12315
12316 static int
12317 dissect_nr_rrc_T_uac_ACBarringListType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12318   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
12319                                  ett_nr_rrc_T_uac_ACBarringListType, T_uac_ACBarringListType_choice,
12320                                  NULL);
12321
12322   return offset;
12323 }
12324
12325
12326 static const per_sequence_t UAC_BarringPerPLMN_sequence[] = {
12327   { &hf_nr_rrc_plmn_IdentityIndex, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_maxPLMN },
12328   { &hf_nr_rrc_uac_ACBarringListType, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_uac_ACBarringListType },
12329   { NULL, 0, 0, NULL }
12330 };
12331
12332 static int
12333 dissect_nr_rrc_UAC_BarringPerPLMN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12334   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12335                                    ett_nr_rrc_UAC_BarringPerPLMN, UAC_BarringPerPLMN_sequence);
12336
12337   return offset;
12338 }
12339
12340
12341 static const per_sequence_t UAC_BarringPerPLMN_List_sequence_of[1] = {
12342   { &hf_nr_rrc_UAC_BarringPerPLMN_List_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_UAC_BarringPerPLMN },
12343 };
12344
12345 static int
12346 dissect_nr_rrc_UAC_BarringPerPLMN_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12347   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
12348                                                   ett_nr_rrc_UAC_BarringPerPLMN_List, UAC_BarringPerPLMN_List_sequence_of,
12349                                                   1, maxPLMN, FALSE);
12350
12351   return offset;
12352 }
12353
12354
12355 static const value_string nr_rrc_T_uac_BarringFactor_vals[] = {
12356   {   0, "p00" },
12357   {   1, "p05" },
12358   {   2, "p10" },
12359   {   3, "p15" },
12360   {   4, "p20" },
12361   {   5, "p25" },
12362   {   6, "p30" },
12363   {   7, "p40" },
12364   {   8, "p50" },
12365   {   9, "p60" },
12366   {  10, "p70" },
12367   {  11, "p75" },
12368   {  12, "p80" },
12369   {  13, "p85" },
12370   {  14, "p90" },
12371   {  15, "p95" },
12372   { 0, NULL }
12373 };
12374
12375
12376 static int
12377 dissect_nr_rrc_T_uac_BarringFactor(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12378   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
12379                                      16, NULL, FALSE, 0, NULL);
12380
12381   return offset;
12382 }
12383
12384
12385 static const value_string nr_rrc_T_uac_BarringTime_vals[] = {
12386   {   0, "s4" },
12387   {   1, "s8" },
12388   {   2, "s16" },
12389   {   3, "s32" },
12390   {   4, "s64" },
12391   {   5, "s128" },
12392   {   6, "s256" },
12393   {   7, "s512" },
12394   { 0, NULL }
12395 };
12396
12397
12398 static int
12399 dissect_nr_rrc_T_uac_BarringTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12400   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
12401                                      8, NULL, FALSE, 0, NULL);
12402
12403   return offset;
12404 }
12405
12406
12407
12408 static int
12409 dissect_nr_rrc_BIT_STRING_SIZE_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12410   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
12411                                      7, 7, FALSE, NULL, NULL);
12412
12413   return offset;
12414 }
12415
12416
12417 static const per_sequence_t UAC_BarringInfoSet_sequence[] = {
12418   { &hf_nr_rrc_uac_BarringFactor, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_uac_BarringFactor },
12419   { &hf_nr_rrc_uac_BarringTime, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_uac_BarringTime },
12420   { &hf_nr_rrc_uac_BarringForAccessIdentity, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BIT_STRING_SIZE_7 },
12421   { NULL, 0, 0, NULL }
12422 };
12423
12424 static int
12425 dissect_nr_rrc_UAC_BarringInfoSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12426   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12427                                    ett_nr_rrc_UAC_BarringInfoSet, UAC_BarringInfoSet_sequence);
12428
12429   return offset;
12430 }
12431
12432
12433 static const per_sequence_t UAC_BarringInfoSetList_sequence_of[1] = {
12434   { &hf_nr_rrc_UAC_BarringInfoSetList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_UAC_BarringInfoSet },
12435 };
12436
12437 static int
12438 dissect_nr_rrc_UAC_BarringInfoSetList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12439   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
12440                                                   ett_nr_rrc_UAC_BarringInfoSetList, UAC_BarringInfoSetList_sequence_of,
12441                                                   1, maxBarringInfoSet, FALSE);
12442
12443   return offset;
12444 }
12445
12446
12447 static const value_string nr_rrc_UAC_AccessCategory1_SelectionAssistanceInfo_vals[] = {
12448   {   0, "a" },
12449   {   1, "b" },
12450   {   2, "c" },
12451   { 0, NULL }
12452 };
12453
12454
12455 static int
12456 dissect_nr_rrc_UAC_AccessCategory1_SelectionAssistanceInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12457   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
12458                                      3, NULL, FALSE, 0, NULL);
12459
12460   return offset;
12461 }
12462
12463
12464 static const per_sequence_t SEQUENCE_SIZE_2_maxPLMN_OF_UAC_AccessCategory1_SelectionAssistanceInfo_sequence_of[1] = {
12465   { &hf_nr_rrc_individualPLMNList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_UAC_AccessCategory1_SelectionAssistanceInfo },
12466 };
12467
12468 static int
12469 dissect_nr_rrc_SEQUENCE_SIZE_2_maxPLMN_OF_UAC_AccessCategory1_SelectionAssistanceInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12470   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
12471                                                   ett_nr_rrc_SEQUENCE_SIZE_2_maxPLMN_OF_UAC_AccessCategory1_SelectionAssistanceInfo, SEQUENCE_SIZE_2_maxPLMN_OF_UAC_AccessCategory1_SelectionAssistanceInfo_sequence_of,
12472                                                   2, maxPLMN, FALSE);
12473
12474   return offset;
12475 }
12476
12477
12478 static const value_string nr_rrc_T_uac_AccessCategory1_SelectionAssistanceInfo_vals[] = {
12479   {   0, "plmnCommon" },
12480   {   1, "individualPLMNList" },
12481   { 0, NULL }
12482 };
12483
12484 static const per_choice_t T_uac_AccessCategory1_SelectionAssistanceInfo_choice[] = {
12485   {   0, &hf_nr_rrc_plmnCommon   , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_UAC_AccessCategory1_SelectionAssistanceInfo },
12486   {   1, &hf_nr_rrc_individualPLMNList, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SEQUENCE_SIZE_2_maxPLMN_OF_UAC_AccessCategory1_SelectionAssistanceInfo },
12487   { 0, NULL, 0, NULL }
12488 };
12489
12490 static int
12491 dissect_nr_rrc_T_uac_AccessCategory1_SelectionAssistanceInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12492   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
12493                                  ett_nr_rrc_T_uac_AccessCategory1_SelectionAssistanceInfo, T_uac_AccessCategory1_SelectionAssistanceInfo_choice,
12494                                  NULL);
12495
12496   return offset;
12497 }
12498
12499
12500 static const per_sequence_t T_uac_BarringInfo_sequence[] = {
12501   { &hf_nr_rrc_uac_BarringForCommon, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_UAC_BarringPerCatList },
12502   { &hf_nr_rrc_uac_BarringPerPLMN_List, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_UAC_BarringPerPLMN_List },
12503   { &hf_nr_rrc_uac_BarringInfoSetList, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_UAC_BarringInfoSetList },
12504   { &hf_nr_rrc_uac_AccessCategory1_SelectionAssistanceInfo, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_uac_AccessCategory1_SelectionAssistanceInfo },
12505   { NULL, 0, 0, NULL }
12506 };
12507
12508 static int
12509 dissect_nr_rrc_T_uac_BarringInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12510   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12511                                    ett_nr_rrc_T_uac_BarringInfo, T_uac_BarringInfo_sequence);
12512
12513   return offset;
12514 }
12515
12516
12517 static const value_string nr_rrc_T_useFullResumeID_vals[] = {
12518   {   0, "true" },
12519   { 0, NULL }
12520 };
12521
12522
12523 static int
12524 dissect_nr_rrc_T_useFullResumeID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12525   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
12526                                      1, NULL, FALSE, 0, NULL);
12527
12528   return offset;
12529 }
12530
12531
12532 static const per_sequence_t T_nonCriticalExtension_27_sequence[] = {
12533   { NULL, 0, 0, NULL }
12534 };
12535
12536 static int
12537 dissect_nr_rrc_T_nonCriticalExtension_27(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12538   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12539                                    ett_nr_rrc_T_nonCriticalExtension_27, T_nonCriticalExtension_27_sequence);
12540
12541   return offset;
12542 }
12543
12544
12545 static const per_sequence_t SIB1_sequence[] = {
12546   { &hf_nr_rrc_cellSelectionInfo, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_cellSelectionInfo },
12547   { &hf_nr_rrc_cellAccessRelatedInfo, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CellAccessRelatedInfo },
12548   { &hf_nr_rrc_connEstFailureControl, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_ConnEstFailureControl },
12549   { &hf_nr_rrc_si_SchedulingInfo, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SI_SchedulingInfo },
12550   { &hf_nr_rrc_servingCellConfigCommon, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_ServingCellConfigCommonSIB },
12551   { &hf_nr_rrc_ims_EmergencySupport, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_ims_EmergencySupport },
12552   { &hf_nr_rrc_eCallOverIMS_Support, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_eCallOverIMS_Support },
12553   { &hf_nr_rrc_ue_TimersAndConstants, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_UE_TimersAndConstants },
12554   { &hf_nr_rrc_uac_BarringInfo, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_uac_BarringInfo },
12555   { &hf_nr_rrc_useFullResumeID, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_useFullResumeID },
12556   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
12557   { &hf_nr_rrc_nonCriticalExtension_29, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_27 },
12558   { NULL, 0, 0, NULL }
12559 };
12560
12561 static int
12562 dissect_nr_rrc_SIB1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12563   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SIB1");
12564
12565   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12566                                    ett_nr_rrc_SIB1, SIB1_sequence);
12567
12568   return offset;
12569 }
12570
12571
12572 static const value_string nr_rrc_T_c1_07_vals[] = {
12573   {   0, "systemInformation" },
12574   {   1, "systemInformationBlockType1" },
12575   { 0, NULL }
12576 };
12577
12578 static const per_choice_t T_c1_07_choice[] = {
12579   {   0, &hf_nr_rrc_systemInformation, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SystemInformation },
12580   {   1, &hf_nr_rrc_systemInformationBlockType1, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SIB1 },
12581   { 0, NULL, 0, NULL }
12582 };
12583
12584 static int
12585 dissect_nr_rrc_T_c1_07(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12586   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
12587                                  ett_nr_rrc_T_c1_07, T_c1_07_choice,
12588                                  NULL);
12589
12590   return offset;
12591 }
12592
12593
12594 static const per_sequence_t T_messageClassExtension_01_sequence[] = {
12595   { NULL, 0, 0, NULL }
12596 };
12597
12598 static int
12599 dissect_nr_rrc_T_messageClassExtension_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12600   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12601                                    ett_nr_rrc_T_messageClassExtension_01, T_messageClassExtension_01_sequence);
12602
12603   return offset;
12604 }
12605
12606
12607 static const value_string nr_rrc_BCCH_DL_SCH_MessageType_vals[] = {
12608   {   0, "c1" },
12609   {   1, "messageClassExtension" },
12610   { 0, NULL }
12611 };
12612
12613 static const per_choice_t BCCH_DL_SCH_MessageType_choice[] = {
12614   {   0, &hf_nr_rrc_c1_07        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_c1_07 },
12615   {   1, &hf_nr_rrc_messageClassExtension_01, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_messageClassExtension_01 },
12616   { 0, NULL, 0, NULL }
12617 };
12618
12619 static int
12620 dissect_nr_rrc_BCCH_DL_SCH_MessageType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12621   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
12622                                  ett_nr_rrc_BCCH_DL_SCH_MessageType, BCCH_DL_SCH_MessageType_choice,
12623                                  NULL);
12624
12625   return offset;
12626 }
12627
12628
12629 static const per_sequence_t BCCH_DL_SCH_Message_sequence[] = {
12630   { &hf_nr_rrc_message_01   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BCCH_DL_SCH_MessageType },
12631   { NULL, 0, 0, NULL }
12632 };
12633
12634 static int
12635 dissect_nr_rrc_BCCH_DL_SCH_Message(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12636   proto_item *ti;
12637
12638   col_set_str(actx->pinfo->cinfo, COL_PROTOCOL, "NR RRC");
12639   col_clear(actx->pinfo->cinfo, COL_INFO);
12640
12641   ti = proto_tree_add_item(tree, proto_nr_rrc, tvb, 0, -1, ENC_NA);
12642   tree = proto_item_add_subtree(ti, ett_nr_rrc);
12643
12644   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12645                                    ett_nr_rrc_BCCH_DL_SCH_Message, BCCH_DL_SCH_Message_sequence);
12646
12647   return offset;
12648 }
12649
12650
12651
12652 static int
12653 dissect_nr_rrc_RejectWaitTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12654   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
12655                                                             1U, 16U, NULL, FALSE);
12656
12657   return offset;
12658 }
12659
12660
12661 static const per_sequence_t T_nonCriticalExtension_18_sequence[] = {
12662   { NULL, 0, 0, NULL }
12663 };
12664
12665 static int
12666 dissect_nr_rrc_T_nonCriticalExtension_18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12667   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12668                                    ett_nr_rrc_T_nonCriticalExtension_18, T_nonCriticalExtension_18_sequence);
12669
12670   return offset;
12671 }
12672
12673
12674 static const per_sequence_t RRCReject_IEs_sequence[] = {
12675   { &hf_nr_rrc_waitTime     , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_RejectWaitTime },
12676   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
12677   { &hf_nr_rrc_nonCriticalExtension_20, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_18 },
12678   { NULL, 0, 0, NULL }
12679 };
12680
12681 static int
12682 dissect_nr_rrc_RRCReject_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12683   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12684                                    ett_nr_rrc_RRCReject_IEs, RRCReject_IEs_sequence);
12685
12686   return offset;
12687 }
12688
12689
12690 static const per_sequence_t T_criticalExtensionsFuture_17_sequence[] = {
12691   { NULL, 0, 0, NULL }
12692 };
12693
12694 static int
12695 dissect_nr_rrc_T_criticalExtensionsFuture_17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12696   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12697                                    ett_nr_rrc_T_criticalExtensionsFuture_17, T_criticalExtensionsFuture_17_sequence);
12698
12699   return offset;
12700 }
12701
12702
12703 static const value_string nr_rrc_T_criticalExtensions_17_vals[] = {
12704   {   0, "rrcReject" },
12705   {   1, "criticalExtensionsFuture" },
12706   { 0, NULL }
12707 };
12708
12709 static const per_choice_t T_criticalExtensions_17_choice[] = {
12710   {   0, &hf_nr_rrc_rrcReject_01 , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RRCReject_IEs },
12711   {   1, &hf_nr_rrc_criticalExtensionsFuture_17, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_17 },
12712   { 0, NULL, 0, NULL }
12713 };
12714
12715 static int
12716 dissect_nr_rrc_T_criticalExtensions_17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12717   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
12718                                  ett_nr_rrc_T_criticalExtensions_17, T_criticalExtensions_17_choice,
12719                                  NULL);
12720
12721   return offset;
12722 }
12723
12724
12725 static const per_sequence_t RRCReject_sequence[] = {
12726   { &hf_nr_rrc_criticalExtensions_17, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_17 },
12727   { NULL, 0, 0, NULL }
12728 };
12729
12730 static int
12731 dissect_nr_rrc_RRCReject(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12732   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRC Reject");
12733
12734   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12735                                    ett_nr_rrc_RRCReject, RRCReject_sequence);
12736
12737   return offset;
12738 }
12739
12740
12741
12742 static int
12743 dissect_nr_rrc_RRC_TransactionIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12744   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
12745                                                             0U, 3U, NULL, FALSE);
12746
12747   return offset;
12748 }
12749
12750
12751
12752 static int
12753 dissect_nr_rrc_SRB_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12754   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
12755                                                             1U, 3U, NULL, FALSE);
12756
12757   return offset;
12758 }
12759
12760
12761 static const value_string nr_rrc_T_reestablishPDCP_vals[] = {
12762   {   0, "true" },
12763   { 0, NULL }
12764 };
12765
12766
12767 static int
12768 dissect_nr_rrc_T_reestablishPDCP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12769   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
12770                                      1, NULL, FALSE, 0, NULL);
12771
12772   return offset;
12773 }
12774
12775
12776 static const value_string nr_rrc_T_discardOnPDCP_vals[] = {
12777   {   0, "true" },
12778   { 0, NULL }
12779 };
12780
12781
12782 static int
12783 dissect_nr_rrc_T_discardOnPDCP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12784   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
12785                                      1, NULL, FALSE, 0, NULL);
12786
12787   return offset;
12788 }
12789
12790
12791 static const value_string nr_rrc_T_discardTimer_vals[] = {
12792   {   0, "ms10" },
12793   {   1, "ms20" },
12794   {   2, "ms30" },
12795   {   3, "ms40" },
12796   {   4, "ms50" },
12797   {   5, "ms60" },
12798   {   6, "ms75" },
12799   {   7, "ms100" },
12800   {   8, "ms150" },
12801   {   9, "ms200" },
12802   {  10, "ms250" },
12803   {  11, "ms300" },
12804   {  12, "ms500" },
12805   {  13, "ms750" },
12806   {  14, "ms1500" },
12807   {  15, "infinity" },
12808   { 0, NULL }
12809 };
12810
12811
12812 static int
12813 dissect_nr_rrc_T_discardTimer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12814   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
12815                                      16, NULL, FALSE, 0, NULL);
12816
12817   return offset;
12818 }
12819
12820
12821 static const value_string nr_rrc_T_pdcp_SN_SizeUL_vals[] = {
12822   {   0, "len12bits" },
12823   {   1, "len18bits" },
12824   { 0, NULL }
12825 };
12826
12827
12828 static int
12829 dissect_nr_rrc_T_pdcp_SN_SizeUL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12830   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
12831                                      2, NULL, FALSE, 0, NULL);
12832
12833   return offset;
12834 }
12835
12836
12837 static const value_string nr_rrc_T_pdcp_SN_SizeDL_vals[] = {
12838   {   0, "len12bits" },
12839   {   1, "len18bits" },
12840   { 0, NULL }
12841 };
12842
12843
12844 static int
12845 dissect_nr_rrc_T_pdcp_SN_SizeDL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12846   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
12847                                      2, NULL, FALSE, 0, NULL);
12848
12849   return offset;
12850 }
12851
12852
12853
12854 static int
12855 dissect_nr_rrc_INTEGER_1_16383(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12856   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
12857                                                             1U, 16383U, NULL, FALSE);
12858
12859   return offset;
12860 }
12861
12862
12863 static const per_sequence_t T_profiles_sequence[] = {
12864   { &hf_nr_rrc_profile0x0001, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
12865   { &hf_nr_rrc_profile0x0002, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
12866   { &hf_nr_rrc_profile0x0003, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
12867   { &hf_nr_rrc_profile0x0004, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
12868   { &hf_nr_rrc_profile0x0006, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
12869   { &hf_nr_rrc_profile0x0101, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
12870   { &hf_nr_rrc_profile0x0102, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
12871   { &hf_nr_rrc_profile0x0103, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
12872   { &hf_nr_rrc_profile0x0104, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
12873   { NULL, 0, 0, NULL }
12874 };
12875
12876 static int
12877 dissect_nr_rrc_T_profiles(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12878   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12879                                    ett_nr_rrc_T_profiles, T_profiles_sequence);
12880
12881   return offset;
12882 }
12883
12884
12885 static const value_string nr_rrc_T_drb_ContinueROHC_vals[] = {
12886   {   0, "true" },
12887   { 0, NULL }
12888 };
12889
12890
12891 static int
12892 dissect_nr_rrc_T_drb_ContinueROHC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12893   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
12894                                      1, NULL, FALSE, 0, NULL);
12895
12896   return offset;
12897 }
12898
12899
12900 static const per_sequence_t T_rohc_sequence[] = {
12901   { &hf_nr_rrc_maxCID       , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_16383 },
12902   { &hf_nr_rrc_profiles     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_profiles },
12903   { &hf_nr_rrc_drb_ContinueROHC, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_drb_ContinueROHC },
12904   { NULL, 0, 0, NULL }
12905 };
12906
12907 static int
12908 dissect_nr_rrc_T_rohc(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12909   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12910                                    ett_nr_rrc_T_rohc, T_rohc_sequence);
12911
12912   return offset;
12913 }
12914
12915
12916 static const per_sequence_t T_profiles_01_sequence[] = {
12917   { &hf_nr_rrc_profile0x0006, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
12918   { NULL, 0, 0, NULL }
12919 };
12920
12921 static int
12922 dissect_nr_rrc_T_profiles_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12923   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12924                                    ett_nr_rrc_T_profiles_01, T_profiles_01_sequence);
12925
12926   return offset;
12927 }
12928
12929
12930 static const value_string nr_rrc_T_drb_ContinueROHC_01_vals[] = {
12931   {   0, "true" },
12932   { 0, NULL }
12933 };
12934
12935
12936 static int
12937 dissect_nr_rrc_T_drb_ContinueROHC_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12938   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
12939                                      1, NULL, FALSE, 0, NULL);
12940
12941   return offset;
12942 }
12943
12944
12945 static const per_sequence_t T_uplinkOnlyROHC_sequence[] = {
12946   { &hf_nr_rrc_maxCID       , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_16383 },
12947   { &hf_nr_rrc_profiles_01  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_profiles_01 },
12948   { &hf_nr_rrc_drb_ContinueROHC_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_drb_ContinueROHC_01 },
12949   { NULL, 0, 0, NULL }
12950 };
12951
12952 static int
12953 dissect_nr_rrc_T_uplinkOnlyROHC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12954   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
12955                                    ett_nr_rrc_T_uplinkOnlyROHC, T_uplinkOnlyROHC_sequence);
12956
12957   return offset;
12958 }
12959
12960
12961 static const value_string nr_rrc_T_headerCompression_vals[] = {
12962   {   0, "notUsed" },
12963   {   1, "rohc" },
12964   {   2, "uplinkOnlyROHC" },
12965   { 0, NULL }
12966 };
12967
12968 static const per_choice_t T_headerCompression_choice[] = {
12969   {   0, &hf_nr_rrc_notUsed      , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_NULL },
12970   {   1, &hf_nr_rrc_rohc         , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_T_rohc },
12971   {   2, &hf_nr_rrc_uplinkOnlyROHC, ASN1_EXTENSION_ROOT    , dissect_nr_rrc_T_uplinkOnlyROHC },
12972   { 0, NULL, 0, NULL }
12973 };
12974
12975 static int
12976 dissect_nr_rrc_T_headerCompression(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12977   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
12978                                  ett_nr_rrc_T_headerCompression, T_headerCompression_choice,
12979                                  NULL);
12980
12981   return offset;
12982 }
12983
12984
12985 static const value_string nr_rrc_T_integrityProtection_vals[] = {
12986   {   0, "enabled" },
12987   { 0, NULL }
12988 };
12989
12990
12991 static int
12992 dissect_nr_rrc_T_integrityProtection(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
12993   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
12994                                      1, NULL, FALSE, 0, NULL);
12995
12996   return offset;
12997 }
12998
12999
13000 static const value_string nr_rrc_T_statusReportRequired_vals[] = {
13001   {   0, "true" },
13002   { 0, NULL }
13003 };
13004
13005
13006 static int
13007 dissect_nr_rrc_T_statusReportRequired(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13008   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
13009                                      1, NULL, FALSE, 0, NULL);
13010
13011   return offset;
13012 }
13013
13014
13015 static const value_string nr_rrc_T_outOfOrderDelivery_vals[] = {
13016   {   0, "true" },
13017   { 0, NULL }
13018 };
13019
13020
13021 static int
13022 dissect_nr_rrc_T_outOfOrderDelivery(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13023   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
13024                                      1, NULL, FALSE, 0, NULL);
13025
13026   return offset;
13027 }
13028
13029
13030 static const per_sequence_t T_drb_sequence[] = {
13031   { &hf_nr_rrc_discardTimer , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_discardTimer },
13032   { &hf_nr_rrc_pdcp_SN_SizeUL, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_pdcp_SN_SizeUL },
13033   { &hf_nr_rrc_pdcp_SN_SizeDL, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_pdcp_SN_SizeDL },
13034   { &hf_nr_rrc_headerCompression, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_headerCompression },
13035   { &hf_nr_rrc_integrityProtection, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_integrityProtection },
13036   { &hf_nr_rrc_statusReportRequired, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_statusReportRequired },
13037   { &hf_nr_rrc_outOfOrderDelivery, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_outOfOrderDelivery },
13038   { NULL, 0, 0, NULL }
13039 };
13040
13041 static int
13042 dissect_nr_rrc_T_drb(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13043   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13044                                    ett_nr_rrc_T_drb, T_drb_sequence);
13045
13046   return offset;
13047 }
13048
13049
13050
13051 static int
13052 dissect_nr_rrc_CellGroupId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13053   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
13054                                                             0U, maxSecondaryCellGroups, NULL, FALSE);
13055
13056   return offset;
13057 }
13058
13059
13060
13061 static int
13062 dissect_nr_rrc_LogicalChannelIdentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13063   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
13064                                                             1U, maxLC_ID, NULL, FALSE);
13065
13066   return offset;
13067 }
13068
13069
13070 static const per_sequence_t T_primaryPath_sequence[] = {
13071   { &hf_nr_rrc_cellGroup    , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_CellGroupId },
13072   { &hf_nr_rrc_logicalChannel, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_LogicalChannelIdentity },
13073   { NULL, 0, 0, NULL }
13074 };
13075
13076 static int
13077 dissect_nr_rrc_T_primaryPath(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13078   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13079                                    ett_nr_rrc_T_primaryPath, T_primaryPath_sequence);
13080
13081   return offset;
13082 }
13083
13084
13085 static const value_string nr_rrc_UL_DataSplitThreshold_vals[] = {
13086   {   0, "b0" },
13087   {   1, "b100" },
13088   {   2, "b200" },
13089   {   3, "b400" },
13090   {   4, "b800" },
13091   {   5, "b1600" },
13092   {   6, "b3200" },
13093   {   7, "b6400" },
13094   {   8, "b12800" },
13095   {   9, "b25600" },
13096   {  10, "b51200" },
13097   {  11, "b102400" },
13098   {  12, "b204800" },
13099   {  13, "b409600" },
13100   {  14, "b819200" },
13101   {  15, "b1228800" },
13102   {  16, "b1638400" },
13103   {  17, "b2457600" },
13104   {  18, "b3276800" },
13105   {  19, "b4096000" },
13106   {  20, "b4915200" },
13107   {  21, "b5734400" },
13108   {  22, "b6553600" },
13109   {  23, "infinity" },
13110   {  24, "spare8" },
13111   {  25, "spare7" },
13112   {  26, "spare6" },
13113   {  27, "spare5" },
13114   {  28, "spare4" },
13115   {  29, "spare3" },
13116   {  30, "spare2" },
13117   {  31, "spare1" },
13118   { 0, NULL }
13119 };
13120
13121 static value_string_ext nr_rrc_UL_DataSplitThreshold_vals_ext = VALUE_STRING_EXT_INIT(nr_rrc_UL_DataSplitThreshold_vals);
13122
13123
13124 static int
13125 dissect_nr_rrc_UL_DataSplitThreshold(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13126   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
13127                                      32, NULL, FALSE, 0, NULL);
13128
13129   return offset;
13130 }
13131
13132
13133 static const per_sequence_t T_moreThanOneRLC_sequence[] = {
13134   { &hf_nr_rrc_primaryPath  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_primaryPath },
13135   { &hf_nr_rrc_ul_DataSplitThreshold, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_UL_DataSplitThreshold },
13136   { &hf_nr_rrc_pdcp_Duplication, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_BOOLEAN },
13137   { NULL, 0, 0, NULL }
13138 };
13139
13140 static int
13141 dissect_nr_rrc_T_moreThanOneRLC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13142   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13143                                    ett_nr_rrc_T_moreThanOneRLC, T_moreThanOneRLC_sequence);
13144
13145   return offset;
13146 }
13147
13148
13149 static const value_string nr_rrc_T_t_Reordering_vals[] = {
13150   {   0, "ms0" },
13151   {   1, "ms1" },
13152   {   2, "ms2" },
13153   {   3, "ms4" },
13154   {   4, "ms5" },
13155   {   5, "ms8" },
13156   {   6, "ms10" },
13157   {   7, "ms15" },
13158   {   8, "ms20" },
13159   {   9, "ms30" },
13160   {  10, "ms40" },
13161   {  11, "ms50" },
13162   {  12, "ms60" },
13163   {  13, "ms80" },
13164   {  14, "ms100" },
13165   {  15, "ms120" },
13166   {  16, "ms140" },
13167   {  17, "ms160" },
13168   {  18, "ms180" },
13169   {  19, "ms200" },
13170   {  20, "ms220" },
13171   {  21, "ms240" },
13172   {  22, "ms260" },
13173   {  23, "ms280" },
13174   {  24, "ms300" },
13175   {  25, "ms500" },
13176   {  26, "ms750" },
13177   {  27, "ms1000" },
13178   {  28, "ms1250" },
13179   {  29, "ms1500" },
13180   {  30, "ms1750" },
13181   {  31, "ms2000" },
13182   {  32, "ms2250" },
13183   {  33, "ms2500" },
13184   {  34, "ms2750" },
13185   {  35, "ms3000" },
13186   {  36, "spare28" },
13187   {  37, "spare27" },
13188   {  38, "spare26" },
13189   {  39, "spare25" },
13190   {  40, "spare24" },
13191   {  41, "spare23" },
13192   {  42, "spare22" },
13193   {  43, "spare21" },
13194   {  44, "spare20" },
13195   {  45, "spare19" },
13196   {  46, "spare18" },
13197   {  47, "spare17" },
13198   {  48, "spare16" },
13199   {  49, "spare15" },
13200   {  50, "spare14" },
13201   {  51, "spare13" },
13202   {  52, "spare12" },
13203   {  53, "spare11" },
13204   {  54, "spare10" },
13205   {  55, "spare09" },
13206   {  56, "spare08" },
13207   {  57, "spare07" },
13208   {  58, "spare06" },
13209   {  59, "spare05" },
13210   {  60, "spare04" },
13211   {  61, "spare03" },
13212   {  62, "spare02" },
13213   {  63, "spare01" },
13214   { 0, NULL }
13215 };
13216
13217 static value_string_ext nr_rrc_T_t_Reordering_vals_ext = VALUE_STRING_EXT_INIT(nr_rrc_T_t_Reordering_vals);
13218
13219
13220 static int
13221 dissect_nr_rrc_T_t_Reordering(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13222   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
13223                                      64, NULL, FALSE, 0, NULL);
13224
13225   return offset;
13226 }
13227
13228
13229 static const value_string nr_rrc_T_cipheringDisabled_vals[] = {
13230   {   0, "true" },
13231   { 0, NULL }
13232 };
13233
13234
13235 static int
13236 dissect_nr_rrc_T_cipheringDisabled(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13237   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
13238                                      1, NULL, FALSE, 0, NULL);
13239
13240   return offset;
13241 }
13242
13243
13244 static const per_sequence_t PDCP_Config_eag_1_sequence[] = {
13245   { &hf_nr_rrc_cipheringDisabled, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_cipheringDisabled },
13246   { NULL, 0, 0, NULL }
13247 };
13248
13249 static int
13250 dissect_nr_rrc_PDCP_Config_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13251   offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PDCP_Config_eag_1_sequence);
13252
13253   return offset;
13254 }
13255
13256
13257 static const per_sequence_t PDCP_Config_sequence[] = {
13258   { &hf_nr_rrc_drb          , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_drb },
13259   { &hf_nr_rrc_moreThanOneRLC, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_moreThanOneRLC },
13260   { &hf_nr_rrc_t_Reordering , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_t_Reordering },
13261   { &dummy_hf_nr_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_nr_rrc_PDCP_Config_eag_1 },
13262   { NULL, 0, 0, NULL }
13263 };
13264
13265 static int
13266 dissect_nr_rrc_PDCP_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13267   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13268                                    ett_nr_rrc_PDCP_Config, PDCP_Config_sequence);
13269
13270   return offset;
13271 }
13272
13273
13274 static const per_sequence_t SRB_ToAddMod_sequence[] = {
13275   { &hf_nr_rrc_srb_Identity , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SRB_Identity },
13276   { &hf_nr_rrc_reestablishPDCP, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_reestablishPDCP },
13277   { &hf_nr_rrc_discardOnPDCP, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_discardOnPDCP },
13278   { &hf_nr_rrc_pdcp_Config  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_PDCP_Config },
13279   { NULL, 0, 0, NULL }
13280 };
13281
13282 static int
13283 dissect_nr_rrc_SRB_ToAddMod(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13284   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13285                                    ett_nr_rrc_SRB_ToAddMod, SRB_ToAddMod_sequence);
13286
13287   return offset;
13288 }
13289
13290
13291 static const per_sequence_t SRB_ToAddModList_sequence_of[1] = {
13292   { &hf_nr_rrc_SRB_ToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SRB_ToAddMod },
13293 };
13294
13295 static int
13296 dissect_nr_rrc_SRB_ToAddModList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13297   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
13298                                                   ett_nr_rrc_SRB_ToAddModList, SRB_ToAddModList_sequence_of,
13299                                                   1, 2, FALSE);
13300
13301   return offset;
13302 }
13303
13304
13305 static const value_string nr_rrc_T_srb3_ToRelease_vals[] = {
13306   {   0, "true" },
13307   { 0, NULL }
13308 };
13309
13310
13311 static int
13312 dissect_nr_rrc_T_srb3_ToRelease(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13313   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
13314                                      1, NULL, FALSE, 0, NULL);
13315
13316   return offset;
13317 }
13318
13319
13320
13321 static int
13322 dissect_nr_rrc_PDU_SessionID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13323   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
13324                                                             0U, 255U, NULL, FALSE);
13325
13326   return offset;
13327 }
13328
13329
13330 static const value_string nr_rrc_T_sdap_HeaderDL_vals[] = {
13331   {   0, "present" },
13332   {   1, "absent" },
13333   { 0, NULL }
13334 };
13335
13336
13337 static int
13338 dissect_nr_rrc_T_sdap_HeaderDL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13339   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
13340                                      2, NULL, FALSE, 0, NULL);
13341
13342   return offset;
13343 }
13344
13345
13346 static const value_string nr_rrc_T_sdap_HeaderUL_vals[] = {
13347   {   0, "present" },
13348   {   1, "absent" },
13349   { 0, NULL }
13350 };
13351
13352
13353 static int
13354 dissect_nr_rrc_T_sdap_HeaderUL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13355   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
13356                                      2, NULL, FALSE, 0, NULL);
13357
13358   return offset;
13359 }
13360
13361
13362
13363 static int
13364 dissect_nr_rrc_QFI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13365   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
13366                                                             0U, maxQFI, NULL, FALSE);
13367
13368   return offset;
13369 }
13370
13371
13372 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofQFIs_OF_QFI_sequence_of[1] = {
13373   { &hf_nr_rrc_mappedQoS_FlowsToAdd_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_QFI },
13374 };
13375
13376 static int
13377 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofQFIs_OF_QFI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13378   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
13379                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofQFIs_OF_QFI, SEQUENCE_SIZE_1_maxNrofQFIs_OF_QFI_sequence_of,
13380                                                   1, maxNrofQFIs, FALSE);
13381
13382   return offset;
13383 }
13384
13385
13386 static const per_sequence_t SDAP_Config_sequence[] = {
13387   { &hf_nr_rrc_pdu_Session  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PDU_SessionID },
13388   { &hf_nr_rrc_sdap_HeaderDL, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_sdap_HeaderDL },
13389   { &hf_nr_rrc_sdap_HeaderUL, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_sdap_HeaderUL },
13390   { &hf_nr_rrc_defaultDRB   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
13391   { &hf_nr_rrc_mappedQoS_FlowsToAdd, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofQFIs_OF_QFI },
13392   { &hf_nr_rrc_mappedQoS_FlowsToRelease, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofQFIs_OF_QFI },
13393   { NULL, 0, 0, NULL }
13394 };
13395
13396 static int
13397 dissect_nr_rrc_SDAP_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13398   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13399                                    ett_nr_rrc_SDAP_Config, SDAP_Config_sequence);
13400
13401   return offset;
13402 }
13403
13404
13405 static const value_string nr_rrc_T_cnAssociation_vals[] = {
13406   {   0, "eps-BearerIdentity" },
13407   {   1, "sdap-Config" },
13408   { 0, NULL }
13409 };
13410
13411 static const per_choice_t T_cnAssociation_choice[] = {
13412   {   0, &hf_nr_rrc_eps_BearerIdentity, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_15 },
13413   {   1, &hf_nr_rrc_sdap_Config  , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SDAP_Config },
13414   { 0, NULL, 0, NULL }
13415 };
13416
13417 static int
13418 dissect_nr_rrc_T_cnAssociation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13419   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
13420                                  ett_nr_rrc_T_cnAssociation, T_cnAssociation_choice,
13421                                  NULL);
13422
13423   return offset;
13424 }
13425
13426
13427
13428 static int
13429 dissect_nr_rrc_DRB_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13430   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
13431                                                             1U, 32U, NULL, FALSE);
13432
13433   return offset;
13434 }
13435
13436
13437 static const value_string nr_rrc_T_reestablishPDCP_01_vals[] = {
13438   {   0, "true" },
13439   { 0, NULL }
13440 };
13441
13442
13443 static int
13444 dissect_nr_rrc_T_reestablishPDCP_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13445   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
13446                                      1, NULL, FALSE, 0, NULL);
13447
13448   return offset;
13449 }
13450
13451
13452 static const value_string nr_rrc_T_recoverPDCP_vals[] = {
13453   {   0, "true" },
13454   { 0, NULL }
13455 };
13456
13457
13458 static int
13459 dissect_nr_rrc_T_recoverPDCP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13460   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
13461                                      1, NULL, FALSE, 0, NULL);
13462
13463   return offset;
13464 }
13465
13466
13467 static const per_sequence_t DRB_ToAddMod_sequence[] = {
13468   { &hf_nr_rrc_cnAssociation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_cnAssociation },
13469   { &hf_nr_rrc_drb_Identity , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_DRB_Identity },
13470   { &hf_nr_rrc_reestablishPDCP_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_reestablishPDCP_01 },
13471   { &hf_nr_rrc_recoverPDCP  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_recoverPDCP },
13472   { &hf_nr_rrc_pdcp_Config  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_PDCP_Config },
13473   { NULL, 0, 0, NULL }
13474 };
13475
13476 static int
13477 dissect_nr_rrc_DRB_ToAddMod(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13478   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13479                                    ett_nr_rrc_DRB_ToAddMod, DRB_ToAddMod_sequence);
13480
13481   return offset;
13482 }
13483
13484
13485 static const per_sequence_t DRB_ToAddModList_sequence_of[1] = {
13486   { &hf_nr_rrc_DRB_ToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_DRB_ToAddMod },
13487 };
13488
13489 static int
13490 dissect_nr_rrc_DRB_ToAddModList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13491   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
13492                                                   ett_nr_rrc_DRB_ToAddModList, DRB_ToAddModList_sequence_of,
13493                                                   1, maxDRB, FALSE);
13494
13495   return offset;
13496 }
13497
13498
13499 static const per_sequence_t DRB_ToReleaseList_sequence_of[1] = {
13500   { &hf_nr_rrc_DRB_ToReleaseList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_DRB_Identity },
13501 };
13502
13503 static int
13504 dissect_nr_rrc_DRB_ToReleaseList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13505   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
13506                                                   ett_nr_rrc_DRB_ToReleaseList, DRB_ToReleaseList_sequence_of,
13507                                                   1, maxDRB, FALSE);
13508
13509   return offset;
13510 }
13511
13512
13513 static const value_string nr_rrc_CipheringAlgorithm_vals[] = {
13514   {   0, "nea0" },
13515   {   1, "nea1" },
13516   {   2, "nea2" },
13517   {   3, "nea3" },
13518   {   4, "spare4" },
13519   {   5, "spare3" },
13520   {   6, "spare2" },
13521   {   7, "spare1" },
13522   { 0, NULL }
13523 };
13524
13525
13526 static int
13527 dissect_nr_rrc_CipheringAlgorithm(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13528   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
13529                                      8, NULL, TRUE, 0, NULL);
13530
13531   return offset;
13532 }
13533
13534
13535 static const value_string nr_rrc_IntegrityProtAlgorithm_vals[] = {
13536   {   0, "nia0" },
13537   {   1, "nia1" },
13538   {   2, "nia2" },
13539   {   3, "nia3" },
13540   {   4, "spare4" },
13541   {   5, "spare3" },
13542   {   6, "spare2" },
13543   {   7, "spare1" },
13544   { 0, NULL }
13545 };
13546
13547
13548 static int
13549 dissect_nr_rrc_IntegrityProtAlgorithm(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13550   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
13551                                      8, NULL, TRUE, 0, NULL);
13552
13553   return offset;
13554 }
13555
13556
13557 static const per_sequence_t SecurityAlgorithmConfig_sequence[] = {
13558   { &hf_nr_rrc_cipheringAlgorithm, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CipheringAlgorithm },
13559   { &hf_nr_rrc_integrityProtAlgorithm, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_IntegrityProtAlgorithm },
13560   { NULL, 0, 0, NULL }
13561 };
13562
13563 static int
13564 dissect_nr_rrc_SecurityAlgorithmConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13565   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13566                                    ett_nr_rrc_SecurityAlgorithmConfig, SecurityAlgorithmConfig_sequence);
13567
13568   return offset;
13569 }
13570
13571
13572 static const value_string nr_rrc_T_keyToUse_vals[] = {
13573   {   0, "master" },
13574   {   1, "secondary" },
13575   { 0, NULL }
13576 };
13577
13578
13579 static int
13580 dissect_nr_rrc_T_keyToUse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13581   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
13582                                      2, NULL, FALSE, 0, NULL);
13583
13584   return offset;
13585 }
13586
13587
13588 static const per_sequence_t SecurityConfig_sequence[] = {
13589   { &hf_nr_rrc_securityAlgorithmConfig, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SecurityAlgorithmConfig },
13590   { &hf_nr_rrc_keyToUse     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_keyToUse },
13591   { NULL, 0, 0, NULL }
13592 };
13593
13594 static int
13595 dissect_nr_rrc_SecurityConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13596   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13597                                    ett_nr_rrc_SecurityConfig, SecurityConfig_sequence);
13598
13599   return offset;
13600 }
13601
13602
13603 static const per_sequence_t RadioBearerConfig_sequence[] = {
13604   { &hf_nr_rrc_srb_ToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SRB_ToAddModList },
13605   { &hf_nr_rrc_srb3_ToRelease, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_srb3_ToRelease },
13606   { &hf_nr_rrc_drb_ToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_DRB_ToAddModList },
13607   { &hf_nr_rrc_drb_ToReleaseList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_DRB_ToReleaseList },
13608   { &hf_nr_rrc_securityConfig, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SecurityConfig },
13609   { NULL, 0, 0, NULL }
13610 };
13611
13612 static int
13613 dissect_nr_rrc_RadioBearerConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13614   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13615                                    ett_nr_rrc_RadioBearerConfig, RadioBearerConfig_sequence);
13616
13617   return offset;
13618 }
13619
13620
13621
13622 static int
13623 dissect_nr_rrc_T_masterCellGroup_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13624   offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index,
13625                                                                 NO_BOUND, NO_BOUND, FALSE, dissect_nr_rrc_CellGroupConfig_PDU);
13626
13627   return offset;
13628 }
13629
13630
13631 static const per_sequence_t T_nonCriticalExtension_22_sequence[] = {
13632   { NULL, 0, 0, NULL }
13633 };
13634
13635 static int
13636 dissect_nr_rrc_T_nonCriticalExtension_22(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13637   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13638                                    ett_nr_rrc_T_nonCriticalExtension_22, T_nonCriticalExtension_22_sequence);
13639
13640   return offset;
13641 }
13642
13643
13644 static const per_sequence_t RRCSetup_IEs_sequence[] = {
13645   { &hf_nr_rrc_radioBearerConfig, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RadioBearerConfig },
13646   { &hf_nr_rrc_masterCellGroup_02, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_masterCellGroup_02 },
13647   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
13648   { &hf_nr_rrc_nonCriticalExtension_24, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_22 },
13649   { NULL, 0, 0, NULL }
13650 };
13651
13652 static int
13653 dissect_nr_rrc_RRCSetup_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13654   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13655                                    ett_nr_rrc_RRCSetup_IEs, RRCSetup_IEs_sequence);
13656
13657   return offset;
13658 }
13659
13660
13661 static const per_sequence_t T_criticalExtensionsFuture_21_sequence[] = {
13662   { NULL, 0, 0, NULL }
13663 };
13664
13665 static int
13666 dissect_nr_rrc_T_criticalExtensionsFuture_21(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13667   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13668                                    ett_nr_rrc_T_criticalExtensionsFuture_21, T_criticalExtensionsFuture_21_sequence);
13669
13670   return offset;
13671 }
13672
13673
13674 static const value_string nr_rrc_T_criticalExtensions_21_vals[] = {
13675   {   0, "rrcSetup" },
13676   {   1, "criticalExtensionsFuture" },
13677   { 0, NULL }
13678 };
13679
13680 static const per_choice_t T_criticalExtensions_21_choice[] = {
13681   {   0, &hf_nr_rrc_rrcSetup_01  , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RRCSetup_IEs },
13682   {   1, &hf_nr_rrc_criticalExtensionsFuture_21, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_21 },
13683   { 0, NULL, 0, NULL }
13684 };
13685
13686 static int
13687 dissect_nr_rrc_T_criticalExtensions_21(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13688   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
13689                                  ett_nr_rrc_T_criticalExtensions_21, T_criticalExtensions_21_choice,
13690                                  NULL);
13691
13692   return offset;
13693 }
13694
13695
13696 static const per_sequence_t RRCSetup_sequence[] = {
13697   { &hf_nr_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RRC_TransactionIdentifier },
13698   { &hf_nr_rrc_criticalExtensions_21, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_21 },
13699   { NULL, 0, 0, NULL }
13700 };
13701
13702 static int
13703 dissect_nr_rrc_RRCSetup(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13704   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRC Setup");
13705
13706   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13707                                    ett_nr_rrc_RRCSetup, RRCSetup_sequence);
13708
13709   return offset;
13710 }
13711
13712
13713 static const value_string nr_rrc_T_c1_08_vals[] = {
13714   {   0, "rrcReject" },
13715   {   1, "rrcSetup" },
13716   {   2, "spare2" },
13717   {   3, "spare1" },
13718   { 0, NULL }
13719 };
13720
13721 static const per_choice_t T_c1_08_choice[] = {
13722   {   0, &hf_nr_rrc_rrcReject    , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RRCReject },
13723   {   1, &hf_nr_rrc_rrcSetup     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RRCSetup },
13724   {   2, &hf_nr_rrc_spare2       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
13725   {   3, &hf_nr_rrc_spare1       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
13726   { 0, NULL, 0, NULL }
13727 };
13728
13729 static int
13730 dissect_nr_rrc_T_c1_08(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13731   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
13732                                  ett_nr_rrc_T_c1_08, T_c1_08_choice,
13733                                  NULL);
13734
13735   return offset;
13736 }
13737
13738
13739 static const per_sequence_t T_messageClassExtension_02_sequence[] = {
13740   { NULL, 0, 0, NULL }
13741 };
13742
13743 static int
13744 dissect_nr_rrc_T_messageClassExtension_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13745   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13746                                    ett_nr_rrc_T_messageClassExtension_02, T_messageClassExtension_02_sequence);
13747
13748   return offset;
13749 }
13750
13751
13752 static const value_string nr_rrc_DL_CCCH_MessageType_vals[] = {
13753   {   0, "c1" },
13754   {   1, "messageClassExtension" },
13755   { 0, NULL }
13756 };
13757
13758 static const per_choice_t DL_CCCH_MessageType_choice[] = {
13759   {   0, &hf_nr_rrc_c1_08        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_c1_08 },
13760   {   1, &hf_nr_rrc_messageClassExtension_02, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_messageClassExtension_02 },
13761   { 0, NULL, 0, NULL }
13762 };
13763
13764 static int
13765 dissect_nr_rrc_DL_CCCH_MessageType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13766   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
13767                                  ett_nr_rrc_DL_CCCH_MessageType, DL_CCCH_MessageType_choice,
13768                                  NULL);
13769
13770   return offset;
13771 }
13772
13773
13774 static const per_sequence_t DL_CCCH_Message_sequence[] = {
13775   { &hf_nr_rrc_message_02   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_DL_CCCH_MessageType },
13776   { NULL, 0, 0, NULL }
13777 };
13778
13779 static int
13780 dissect_nr_rrc_DL_CCCH_Message(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13781   proto_item *ti;
13782
13783   col_set_str(actx->pinfo->cinfo, COL_PROTOCOL, "NR RRC");
13784   col_clear(actx->pinfo->cinfo, COL_INFO);
13785
13786   actx->pinfo->link_dir = P2P_DIR_DL;
13787
13788   ti = proto_tree_add_item(tree, proto_nr_rrc, tvb, 0, -1, ENC_NA);
13789   tree = proto_item_add_subtree(ti, ett_nr_rrc);
13790
13791   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13792                                    ett_nr_rrc_DL_CCCH_Message, DL_CCCH_Message_sequence);
13793
13794   return offset;
13795 }
13796
13797
13798
13799 static int
13800 dissect_nr_rrc_T_secondaryCellGroup(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13801   offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index,
13802                                                                 NO_BOUND, NO_BOUND, FALSE, dissect_nr_rrc_CellGroupConfig_PDU);
13803
13804   return offset;
13805 }
13806
13807
13808
13809 static int
13810 dissect_nr_rrc_MeasObjectId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13811   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
13812                                                             1U, maxNrofObjectId, NULL, FALSE);
13813
13814   return offset;
13815 }
13816
13817
13818 static const per_sequence_t MeasObjectToRemoveList_sequence_of[1] = {
13819   { &hf_nr_rrc_MeasObjectToRemoveList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasObjectId },
13820 };
13821
13822 static int
13823 dissect_nr_rrc_MeasObjectToRemoveList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13824   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
13825                                                   ett_nr_rrc_MeasObjectToRemoveList, MeasObjectToRemoveList_sequence_of,
13826                                                   1, maxNrofObjectId, FALSE);
13827
13828   return offset;
13829 }
13830
13831
13832 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofPCIsPerSMTC_OF_PhysCellId_sequence_of[1] = {
13833   { &hf_nr_rrc_pci_List_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PhysCellId },
13834 };
13835
13836 static int
13837 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofPCIsPerSMTC_OF_PhysCellId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13838   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
13839                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPCIsPerSMTC_OF_PhysCellId, SEQUENCE_SIZE_1_maxNrofPCIsPerSMTC_OF_PhysCellId_sequence_of,
13840                                                   1, maxNrofPCIsPerSMTC, FALSE);
13841
13842   return offset;
13843 }
13844
13845
13846 static const value_string nr_rrc_T_periodicity_02_vals[] = {
13847   {   0, "sf5" },
13848   {   1, "sf10" },
13849   {   2, "sf20" },
13850   {   3, "sf40" },
13851   {   4, "sf80" },
13852   {   5, "spare3" },
13853   {   6, "spare2" },
13854   {   7, "spare1" },
13855   { 0, NULL }
13856 };
13857
13858
13859 static int
13860 dissect_nr_rrc_T_periodicity_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13861   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
13862                                      8, NULL, FALSE, 0, NULL);
13863
13864   return offset;
13865 }
13866
13867
13868 static const per_sequence_t SSB_MTC2_sequence[] = {
13869   { &hf_nr_rrc_pci_List     , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofPCIsPerSMTC_OF_PhysCellId },
13870   { &hf_nr_rrc_periodicity_02, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_periodicity_02 },
13871   { NULL, 0, 0, NULL }
13872 };
13873
13874 static int
13875 dissect_nr_rrc_SSB_MTC2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13876   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13877                                    ett_nr_rrc_SSB_MTC2, SSB_MTC2_sequence);
13878
13879   return offset;
13880 }
13881
13882
13883 static const value_string nr_rrc_T_ssb_ToMeasure_vals[] = {
13884   {   0, "release" },
13885   {   1, "setup" },
13886   { 0, NULL }
13887 };
13888
13889 static const per_choice_t T_ssb_ToMeasure_choice[] = {
13890   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
13891   {   1, &hf_nr_rrc_setup_27     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SSB_ToMeasure },
13892   { 0, NULL, 0, NULL }
13893 };
13894
13895 static int
13896 dissect_nr_rrc_T_ssb_ToMeasure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13897   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
13898                                  ett_nr_rrc_T_ssb_ToMeasure, T_ssb_ToMeasure_choice,
13899                                  NULL);
13900
13901   return offset;
13902 }
13903
13904
13905 static const per_sequence_t SSB_ConfigMobility_sequence[] = {
13906   { &hf_nr_rrc_ssb_ToMeasure_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_ssb_ToMeasure },
13907   { &hf_nr_rrc_deriveSSB_IndexFromCell, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
13908   { &hf_nr_rrc_ss_RSSI_Measurement, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SS_RSSI_Measurement },
13909   { NULL, 0, 0, NULL }
13910 };
13911
13912 static int
13913 dissect_nr_rrc_SSB_ConfigMobility(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13914   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13915                                    ett_nr_rrc_SSB_ConfigMobility, SSB_ConfigMobility_sequence);
13916
13917   return offset;
13918 }
13919
13920
13921 static const value_string nr_rrc_T_nrofPRBs_vals[] = {
13922   {   0, "size24" },
13923   {   1, "size48" },
13924   {   2, "size96" },
13925   {   3, "size192" },
13926   {   4, "size264" },
13927   { 0, NULL }
13928 };
13929
13930
13931 static int
13932 dissect_nr_rrc_T_nrofPRBs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13933   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
13934                                      5, NULL, FALSE, 0, NULL);
13935
13936   return offset;
13937 }
13938
13939
13940
13941 static int
13942 dissect_nr_rrc_INTEGER_0_2169(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13943   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
13944                                                             0U, 2169U, NULL, FALSE);
13945
13946   return offset;
13947 }
13948
13949
13950 static const per_sequence_t T_csi_rs_MeasurementBW_sequence[] = {
13951   { &hf_nr_rrc_nrofPRBs     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_nrofPRBs },
13952   { &hf_nr_rrc_startPRB     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_2169 },
13953   { NULL, 0, 0, NULL }
13954 };
13955
13956 static int
13957 dissect_nr_rrc_T_csi_rs_MeasurementBW(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13958   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
13959                                    ett_nr_rrc_T_csi_rs_MeasurementBW, T_csi_rs_MeasurementBW_sequence);
13960
13961   return offset;
13962 }
13963
13964
13965 static const value_string nr_rrc_T_density_vals[] = {
13966   {   0, "d1" },
13967   {   1, "d3" },
13968   { 0, NULL }
13969 };
13970
13971
13972 static int
13973 dissect_nr_rrc_T_density(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
13974   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
13975                                      2, NULL, FALSE, 0, NULL);
13976
13977   return offset;
13978 }
13979
13980
13981 static const value_string nr_rrc_T_slotConfig_vals[] = {
13982   {   0, "ms4" },
13983   {   1, "ms5" },
13984   {   2, "ms10" },
13985   {   3, "ms20" },
13986   {   4, "ms40" },
13987   { 0, NULL }
13988 };
13989
13990 static const per_choice_t T_slotConfig_choice[] = {
13991   {   0, &hf_nr_rrc_ms4          , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_31 },
13992   {   1, &hf_nr_rrc_ms5          , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_39 },
13993   {   2, &hf_nr_rrc_ms10_01      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_79 },
13994   {   3, &hf_nr_rrc_ms20_01      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_159 },
13995   {   4, &hf_nr_rrc_ms40_01      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_319 },
13996   { 0, NULL, 0, NULL }
13997 };
13998
13999 static int
14000 dissect_nr_rrc_T_slotConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14001   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
14002                                  ett_nr_rrc_T_slotConfig, T_slotConfig_choice,
14003                                  NULL);
14004
14005   return offset;
14006 }
14007
14008
14009 static const per_sequence_t T_associatedSSB_sequence[] = {
14010   { &hf_nr_rrc_ssb_Index    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SSB_Index },
14011   { &hf_nr_rrc_isQuasiColocated, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
14012   { NULL, 0, 0, NULL }
14013 };
14014
14015 static int
14016 dissect_nr_rrc_T_associatedSSB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14017   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
14018                                    ett_nr_rrc_T_associatedSSB, T_associatedSSB_sequence);
14019
14020   return offset;
14021 }
14022
14023
14024
14025 static int
14026 dissect_nr_rrc_BIT_STRING_SIZE_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14027   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
14028                                      12, 12, FALSE, NULL, NULL);
14029
14030   return offset;
14031 }
14032
14033
14034 static const value_string nr_rrc_T_frequencyDomainAllocation_vals[] = {
14035   {   0, "row1" },
14036   {   1, "row2" },
14037   { 0, NULL }
14038 };
14039
14040 static const per_choice_t T_frequencyDomainAllocation_choice[] = {
14041   {   0, &hf_nr_rrc_row1         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_4 },
14042   {   1, &hf_nr_rrc_row2         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_12 },
14043   { 0, NULL, 0, NULL }
14044 };
14045
14046 static int
14047 dissect_nr_rrc_T_frequencyDomainAllocation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14048   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
14049                                  ett_nr_rrc_T_frequencyDomainAllocation, T_frequencyDomainAllocation_choice,
14050                                  NULL);
14051
14052   return offset;
14053 }
14054
14055
14056
14057 static int
14058 dissect_nr_rrc_INTEGER_0_13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14059   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
14060                                                             0U, 13U, NULL, FALSE);
14061
14062   return offset;
14063 }
14064
14065
14066 static const per_sequence_t CSI_RS_Resource_Mobility_sequence[] = {
14067   { &hf_nr_rrc_csi_RS_Index , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_RS_Index },
14068   { &hf_nr_rrc_slotConfig   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_slotConfig },
14069   { &hf_nr_rrc_associatedSSB, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_associatedSSB },
14070   { &hf_nr_rrc_frequencyDomainAllocation_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_frequencyDomainAllocation },
14071   { &hf_nr_rrc_firstOFDMSymbolInTimeDomain, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_13 },
14072   { &hf_nr_rrc_sequenceGenerationConfig, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_1023 },
14073   { NULL, 0, 0, NULL }
14074 };
14075
14076 static int
14077 dissect_nr_rrc_CSI_RS_Resource_Mobility(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14078   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
14079                                    ett_nr_rrc_CSI_RS_Resource_Mobility, CSI_RS_Resource_Mobility_sequence);
14080
14081   return offset;
14082 }
14083
14084
14085 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofCSI_RS_ResourcesRRM_OF_CSI_RS_Resource_Mobility_sequence_of[1] = {
14086   { &hf_nr_rrc_csi_rs_ResourceList_Mobility_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_RS_Resource_Mobility },
14087 };
14088
14089 static int
14090 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_RS_ResourcesRRM_OF_CSI_RS_Resource_Mobility(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14091   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
14092                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_RS_ResourcesRRM_OF_CSI_RS_Resource_Mobility, SEQUENCE_SIZE_1_maxNrofCSI_RS_ResourcesRRM_OF_CSI_RS_Resource_Mobility_sequence_of,
14093                                                   1, maxNrofCSI_RS_ResourcesRRM, FALSE);
14094
14095   return offset;
14096 }
14097
14098
14099 static const per_sequence_t CSI_RS_CellMobility_sequence[] = {
14100   { &hf_nr_rrc_cellId       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PhysCellId },
14101   { &hf_nr_rrc_csi_rs_MeasurementBW, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_csi_rs_MeasurementBW },
14102   { &hf_nr_rrc_density      , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_density },
14103   { &hf_nr_rrc_csi_rs_ResourceList_Mobility, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_RS_ResourcesRRM_OF_CSI_RS_Resource_Mobility },
14104   { NULL, 0, 0, NULL }
14105 };
14106
14107 static int
14108 dissect_nr_rrc_CSI_RS_CellMobility(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14109   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
14110                                    ett_nr_rrc_CSI_RS_CellMobility, CSI_RS_CellMobility_sequence);
14111
14112   return offset;
14113 }
14114
14115
14116 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofCSI_RS_CellsRRM_OF_CSI_RS_CellMobility_sequence_of[1] = {
14117   { &hf_nr_rrc_csi_RS_CellList_Mobility_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_RS_CellMobility },
14118 };
14119
14120 static int
14121 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_RS_CellsRRM_OF_CSI_RS_CellMobility(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14122   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
14123                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_RS_CellsRRM_OF_CSI_RS_CellMobility, SEQUENCE_SIZE_1_maxNrofCSI_RS_CellsRRM_OF_CSI_RS_CellMobility_sequence_of,
14124                                                   1, maxNrofCSI_RS_CellsRRM, FALSE);
14125
14126   return offset;
14127 }
14128
14129
14130 static const per_sequence_t CSI_RS_ResourceConfigMobility_eag_1_sequence[] = {
14131   { &hf_nr_rrc_refServCellIndex_v1530, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_ServCellIndex },
14132   { NULL, 0, 0, NULL }
14133 };
14134
14135 static int
14136 dissect_nr_rrc_CSI_RS_ResourceConfigMobility_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14137   offset = dissect_per_sequence_eag(tvb, offset, actx, tree, CSI_RS_ResourceConfigMobility_eag_1_sequence);
14138
14139   return offset;
14140 }
14141
14142
14143 static const per_sequence_t CSI_RS_ResourceConfigMobility_sequence[] = {
14144   { &hf_nr_rrc_subcarrierSpacing, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SubcarrierSpacing },
14145   { &hf_nr_rrc_csi_RS_CellList_Mobility, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_RS_CellsRRM_OF_CSI_RS_CellMobility },
14146   { &dummy_hf_nr_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_RS_ResourceConfigMobility_eag_1 },
14147   { NULL, 0, 0, NULL }
14148 };
14149
14150 static int
14151 dissect_nr_rrc_CSI_RS_ResourceConfigMobility(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14152   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
14153                                    ett_nr_rrc_CSI_RS_ResourceConfigMobility, CSI_RS_ResourceConfigMobility_sequence);
14154
14155   return offset;
14156 }
14157
14158
14159 static const value_string nr_rrc_T_csi_rs_ResourceConfigMobility_vals[] = {
14160   {   0, "release" },
14161   {   1, "setup" },
14162   { 0, NULL }
14163 };
14164
14165 static const per_choice_t T_csi_rs_ResourceConfigMobility_choice[] = {
14166   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
14167   {   1, &hf_nr_rrc_setup_26     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_CSI_RS_ResourceConfigMobility },
14168   { 0, NULL, 0, NULL }
14169 };
14170
14171 static int
14172 dissect_nr_rrc_T_csi_rs_ResourceConfigMobility(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14173   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
14174                                  ett_nr_rrc_T_csi_rs_ResourceConfigMobility, T_csi_rs_ResourceConfigMobility_choice,
14175                                  NULL);
14176
14177   return offset;
14178 }
14179
14180
14181 static const per_sequence_t ReferenceSignalConfig_sequence[] = {
14182   { &hf_nr_rrc_ssb_ConfigMobility, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SSB_ConfigMobility },
14183   { &hf_nr_rrc_csi_rs_ResourceConfigMobility, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_csi_rs_ResourceConfigMobility },
14184   { NULL, 0, 0, NULL }
14185 };
14186
14187 static int
14188 dissect_nr_rrc_ReferenceSignalConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14189   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
14190                                    ett_nr_rrc_ReferenceSignalConfig, ReferenceSignalConfig_sequence);
14191
14192   return offset;
14193 }
14194
14195
14196
14197 static int
14198 dissect_nr_rrc_INTEGER_2_maxNrofCSI_RS_ResourcesToAverage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14199   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
14200                                                             2U, maxNrofCSI_RS_ResourcesToAverage, NULL, FALSE);
14201
14202   return offset;
14203 }
14204
14205
14206
14207 static int
14208 dissect_nr_rrc_INTEGER_1_maxNrofQuantityConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14209   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
14210                                                             1U, maxNrofQuantityConfig, NULL, FALSE);
14211
14212   return offset;
14213 }
14214
14215
14216 static const per_sequence_t Q_OffsetRangeList_sequence[] = {
14217   { &hf_nr_rrc_rsrpOffsetSSB, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_Q_OffsetRange },
14218   { &hf_nr_rrc_rsrqOffsetSSB, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_Q_OffsetRange },
14219   { &hf_nr_rrc_sinrOffsetSSB, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_Q_OffsetRange },
14220   { &hf_nr_rrc_rsrpOffsetCSI_RS, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_Q_OffsetRange },
14221   { &hf_nr_rrc_rsrqOffsetCSI_RS, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_Q_OffsetRange },
14222   { &hf_nr_rrc_sinrOffsetCSI_RS, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_Q_OffsetRange },
14223   { NULL, 0, 0, NULL }
14224 };
14225
14226 static int
14227 dissect_nr_rrc_Q_OffsetRangeList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14228   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
14229                                    ett_nr_rrc_Q_OffsetRangeList, Q_OffsetRangeList_sequence);
14230
14231   return offset;
14232 }
14233
14234
14235 static const per_sequence_t PCI_List_sequence_of[1] = {
14236   { &hf_nr_rrc_PCI_List_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PhysCellId },
14237 };
14238
14239 static int
14240 dissect_nr_rrc_PCI_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14241   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
14242                                                   ett_nr_rrc_PCI_List, PCI_List_sequence_of,
14243                                                   1, maxNrofCellMeas, FALSE);
14244
14245   return offset;
14246 }
14247
14248
14249 static const per_sequence_t CellsToAddMod_sequence[] = {
14250   { &hf_nr_rrc_physCellId   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PhysCellId },
14251   { &hf_nr_rrc_cellIndividualOffset_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_Q_OffsetRangeList },
14252   { NULL, 0, 0, NULL }
14253 };
14254
14255 static int
14256 dissect_nr_rrc_CellsToAddMod(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14257   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
14258                                    ett_nr_rrc_CellsToAddMod, CellsToAddMod_sequence);
14259
14260   return offset;
14261 }
14262
14263
14264 static const per_sequence_t CellsToAddModList_sequence_of[1] = {
14265   { &hf_nr_rrc_CellsToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CellsToAddMod },
14266 };
14267
14268 static int
14269 dissect_nr_rrc_CellsToAddModList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14270   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
14271                                                   ett_nr_rrc_CellsToAddModList, CellsToAddModList_sequence_of,
14272                                                   1, maxNrofCellMeas, FALSE);
14273
14274   return offset;
14275 }
14276
14277
14278
14279 static int
14280 dissect_nr_rrc_PCI_RangeIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14281   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
14282                                                             1U, maxNrofPCI_Ranges, NULL, FALSE);
14283
14284   return offset;
14285 }
14286
14287
14288 static const per_sequence_t PCI_RangeIndexList_sequence_of[1] = {
14289   { &hf_nr_rrc_PCI_RangeIndexList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PCI_RangeIndex },
14290 };
14291
14292 static int
14293 dissect_nr_rrc_PCI_RangeIndexList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14294   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
14295                                                   ett_nr_rrc_PCI_RangeIndexList, PCI_RangeIndexList_sequence_of,
14296                                                   1, maxNrofPCI_Ranges, FALSE);
14297
14298   return offset;
14299 }
14300
14301
14302 static const per_sequence_t PCI_RangeElement_sequence[] = {
14303   { &hf_nr_rrc_pci_RangeIndex, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PCI_RangeIndex },
14304   { &hf_nr_rrc_pci_Range    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PCI_Range },
14305   { NULL, 0, 0, NULL }
14306 };
14307
14308 static int
14309 dissect_nr_rrc_PCI_RangeElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14310   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
14311                                    ett_nr_rrc_PCI_RangeElement, PCI_RangeElement_sequence);
14312
14313   return offset;
14314 }
14315
14316
14317 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofPCI_Ranges_OF_PCI_RangeElement_sequence_of[1] = {
14318   { &hf_nr_rrc_blackCellsToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PCI_RangeElement },
14319 };
14320
14321 static int
14322 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofPCI_Ranges_OF_PCI_RangeElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14323   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
14324                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPCI_Ranges_OF_PCI_RangeElement, SEQUENCE_SIZE_1_maxNrofPCI_Ranges_OF_PCI_RangeElement_sequence_of,
14325                                                   1, maxNrofPCI_Ranges, FALSE);
14326
14327   return offset;
14328 }
14329
14330
14331 static const value_string nr_rrc_T_measCycleSCell_v1530_vals[] = {
14332   {   0, "sf160" },
14333   {   1, "sf256" },
14334   {   2, "sf320" },
14335   {   3, "sf512" },
14336   {   4, "sf640" },
14337   {   5, "sf1024" },
14338   {   6, "sf1280" },
14339   { 0, NULL }
14340 };
14341
14342
14343 static int
14344 dissect_nr_rrc_T_measCycleSCell_v1530(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14345   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
14346                                      7, NULL, FALSE, 0, NULL);
14347
14348   return offset;
14349 }
14350
14351
14352 static const per_sequence_t MeasObjectNR_eag_1_sequence[] = {
14353   { &hf_nr_rrc_freqBandIndicatorNR_v1530, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_FreqBandIndicatorNR },
14354   { &hf_nr_rrc_measCycleSCell_v1530, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_measCycleSCell_v1530 },
14355   { NULL, 0, 0, NULL }
14356 };
14357
14358 static int
14359 dissect_nr_rrc_MeasObjectNR_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14360   offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasObjectNR_eag_1_sequence);
14361
14362   return offset;
14363 }
14364
14365
14366 static const per_sequence_t MeasObjectNR_sequence[] = {
14367   { &hf_nr_rrc_ssbFrequency , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ARFCN_ValueNR },
14368   { &hf_nr_rrc_ssbSubcarrierSpacing, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SubcarrierSpacing },
14369   { &hf_nr_rrc_smtc1        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SSB_MTC },
14370   { &hf_nr_rrc_smtc2        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SSB_MTC2 },
14371   { &hf_nr_rrc_refFreqCSI_RS, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ARFCN_ValueNR },
14372   { &hf_nr_rrc_referenceSignalConfig, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ReferenceSignalConfig },
14373   { &hf_nr_rrc_absThreshSS_BlocksConsolidation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ThresholdNR },
14374   { &hf_nr_rrc_absThreshCSI_RS_Consolidation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ThresholdNR },
14375   { &hf_nr_rrc_nrofSS_BlocksToAverage, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_2_maxNrofSS_BlocksToAverage },
14376   { &hf_nr_rrc_nrofCSI_RS_ResourcesToAverage, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_2_maxNrofCSI_RS_ResourcesToAverage },
14377   { &hf_nr_rrc_quantityConfigIndex, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_maxNrofQuantityConfig },
14378   { &hf_nr_rrc_offsetMO     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_Q_OffsetRangeList },
14379   { &hf_nr_rrc_cellsToRemoveList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_PCI_List },
14380   { &hf_nr_rrc_cellsToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_CellsToAddModList },
14381   { &hf_nr_rrc_blackCellsToRemoveList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_PCI_RangeIndexList },
14382   { &hf_nr_rrc_blackCellsToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofPCI_Ranges_OF_PCI_RangeElement },
14383   { &hf_nr_rrc_whiteCellsToRemoveList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_PCI_RangeIndexList },
14384   { &hf_nr_rrc_whiteCellsToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofPCI_Ranges_OF_PCI_RangeElement },
14385   { &dummy_hf_nr_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasObjectNR_eag_1 },
14386   { NULL, 0, 0, NULL }
14387 };
14388
14389 static int
14390 dissect_nr_rrc_MeasObjectNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14391   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
14392                                    ett_nr_rrc_MeasObjectNR, MeasObjectNR_sequence);
14393
14394   return offset;
14395 }
14396
14397
14398
14399 static int
14400 dissect_nr_rrc_EUTRA_CellIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14401   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
14402                                                             1U, maxCellMeasEUTRA, NULL, FALSE);
14403
14404   return offset;
14405 }
14406
14407
14408 static const per_sequence_t EUTRA_CellIndexList_sequence_of[1] = {
14409   { &hf_nr_rrc_EUTRA_CellIndexList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_EUTRA_CellIndex },
14410 };
14411
14412 static int
14413 dissect_nr_rrc_EUTRA_CellIndexList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14414   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
14415                                                   ett_nr_rrc_EUTRA_CellIndexList, EUTRA_CellIndexList_sequence_of,
14416                                                   1, maxCellMeasEUTRA, FALSE);
14417
14418   return offset;
14419 }
14420
14421
14422 static const per_sequence_t EUTRA_Cell_sequence[] = {
14423   { &hf_nr_rrc_cellIndexEUTRA, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_EUTRA_CellIndex },
14424   { &hf_nr_rrc_physCellId_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_EUTRA_PhysCellId },
14425   { &hf_nr_rrc_cellIndividualOffset, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_EUTRA_Q_OffsetRange },
14426   { NULL, 0, 0, NULL }
14427 };
14428
14429 static int
14430 dissect_nr_rrc_EUTRA_Cell(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14431   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
14432                                    ett_nr_rrc_EUTRA_Cell, EUTRA_Cell_sequence);
14433
14434   return offset;
14435 }
14436
14437
14438 static const per_sequence_t SEQUENCE_SIZE_1_maxCellMeasEUTRA_OF_EUTRA_Cell_sequence_of[1] = {
14439   { &hf_nr_rrc_cellsToAddModListEUTRAN_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_EUTRA_Cell },
14440 };
14441
14442 static int
14443 dissect_nr_rrc_SEQUENCE_SIZE_1_maxCellMeasEUTRA_OF_EUTRA_Cell(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14444   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
14445                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxCellMeasEUTRA_OF_EUTRA_Cell, SEQUENCE_SIZE_1_maxCellMeasEUTRA_OF_EUTRA_Cell_sequence_of,
14446                                                   1, maxCellMeasEUTRA, FALSE);
14447
14448   return offset;
14449 }
14450
14451
14452 static const per_sequence_t EUTRA_BlackCell_sequence[] = {
14453   { &hf_nr_rrc_cellIndexEUTRA, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_EUTRA_CellIndex },
14454   { &hf_nr_rrc_physCellIdRange, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_EUTRA_PhysCellIdRange },
14455   { NULL, 0, 0, NULL }
14456 };
14457
14458 static int
14459 dissect_nr_rrc_EUTRA_BlackCell(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14460   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
14461                                    ett_nr_rrc_EUTRA_BlackCell, EUTRA_BlackCell_sequence);
14462
14463   return offset;
14464 }
14465
14466
14467 static const per_sequence_t SEQUENCE_SIZE_1_maxCellMeasEUTRA_OF_EUTRA_BlackCell_sequence_of[1] = {
14468   { &hf_nr_rrc_blackCellsToAddModListEUTRAN_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_EUTRA_BlackCell },
14469 };
14470
14471 static int
14472 dissect_nr_rrc_SEQUENCE_SIZE_1_maxCellMeasEUTRA_OF_EUTRA_BlackCell(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14473   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
14474                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxCellMeasEUTRA_OF_EUTRA_BlackCell, SEQUENCE_SIZE_1_maxCellMeasEUTRA_OF_EUTRA_BlackCell_sequence_of,
14475                                                   1, maxCellMeasEUTRA, FALSE);
14476
14477   return offset;
14478 }
14479
14480
14481 static const per_sequence_t MeasObjectEUTRA_sequence[] = {
14482   { &hf_nr_rrc_carrierFreq_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ARFCN_ValueEUTRA },
14483   { &hf_nr_rrc_allowedMeasBandwidth, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_EUTRA_AllowedMeasBandwidth },
14484   { &hf_nr_rrc_cellsToRemoveListEUTRAN, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_EUTRA_CellIndexList },
14485   { &hf_nr_rrc_cellsToAddModListEUTRAN, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxCellMeasEUTRA_OF_EUTRA_Cell },
14486   { &hf_nr_rrc_blackCellsToRemoveListEUTRAN, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_EUTRA_CellIndexList },
14487   { &hf_nr_rrc_blackCellsToAddModListEUTRAN, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxCellMeasEUTRA_OF_EUTRA_BlackCell },
14488   { &hf_nr_rrc_eutra_PresenceAntennaPort1, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_EUTRA_PresenceAntennaPort1 },
14489   { &hf_nr_rrc_eutra_Q_OffsetRange, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_EUTRA_Q_OffsetRange },
14490   { &hf_nr_rrc_widebandRSRQ_Meas, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
14491   { NULL, 0, 0, NULL }
14492 };
14493
14494 static int
14495 dissect_nr_rrc_MeasObjectEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14496   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
14497                                    ett_nr_rrc_MeasObjectEUTRA, MeasObjectEUTRA_sequence);
14498
14499   return offset;
14500 }
14501
14502
14503 static const value_string nr_rrc_T_measObject_vals[] = {
14504   {   0, "measObjectNR" },
14505   {   1, "measObjectEUTRA" },
14506   { 0, NULL }
14507 };
14508
14509 static const per_choice_t T_measObject_choice[] = {
14510   {   0, &hf_nr_rrc_measObjectNR , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_MeasObjectNR },
14511   {   1, &hf_nr_rrc_measObjectEUTRA, ASN1_NOT_EXTENSION_ROOT, dissect_nr_rrc_MeasObjectEUTRA },
14512   { 0, NULL, 0, NULL }
14513 };
14514
14515 static int
14516 dissect_nr_rrc_T_measObject(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14517   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
14518                                  ett_nr_rrc_T_measObject, T_measObject_choice,
14519                                  NULL);
14520
14521   return offset;
14522 }
14523
14524
14525 static const per_sequence_t MeasObjectToAddMod_sequence[] = {
14526   { &hf_nr_rrc_measObjectId , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasObjectId },
14527   { &hf_nr_rrc_measObject   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_measObject },
14528   { NULL, 0, 0, NULL }
14529 };
14530
14531 static int
14532 dissect_nr_rrc_MeasObjectToAddMod(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14533   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
14534                                    ett_nr_rrc_MeasObjectToAddMod, MeasObjectToAddMod_sequence);
14535
14536   return offset;
14537 }
14538
14539
14540 static const per_sequence_t MeasObjectToAddModList_sequence_of[1] = {
14541   { &hf_nr_rrc_MeasObjectToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasObjectToAddMod },
14542 };
14543
14544 static int
14545 dissect_nr_rrc_MeasObjectToAddModList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14546   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
14547                                                   ett_nr_rrc_MeasObjectToAddModList, MeasObjectToAddModList_sequence_of,
14548                                                   1, maxNrofObjectId, FALSE);
14549
14550   return offset;
14551 }
14552
14553
14554
14555 static int
14556 dissect_nr_rrc_ReportConfigId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14557   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
14558                                                             1U, maxReportConfigId, NULL, FALSE);
14559
14560   return offset;
14561 }
14562
14563
14564 static const per_sequence_t ReportConfigToRemoveList_sequence_of[1] = {
14565   { &hf_nr_rrc_ReportConfigToRemoveList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ReportConfigId },
14566 };
14567
14568 static int
14569 dissect_nr_rrc_ReportConfigToRemoveList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14570   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
14571                                                   ett_nr_rrc_ReportConfigToRemoveList, ReportConfigToRemoveList_sequence_of,
14572                                                   1, maxReportConfigId, FALSE);
14573
14574   return offset;
14575 }
14576
14577
14578 static const value_string nr_rrc_NR_RS_Type_vals[] = {
14579   {   0, "ssb" },
14580   {   1, "csi-rs" },
14581   { 0, NULL }
14582 };
14583
14584
14585 static int
14586 dissect_nr_rrc_NR_RS_Type(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14587   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
14588                                      2, NULL, FALSE, 0, NULL);
14589
14590   return offset;
14591 }
14592
14593
14594 static const value_string nr_rrc_ReportInterval_vals[] = {
14595   {   0, "ms120" },
14596   {   1, "ms240" },
14597   {   2, "ms480" },
14598   {   3, "ms640" },
14599   {   4, "ms1024" },
14600   {   5, "ms2048" },
14601   {   6, "ms5120" },
14602   {   7, "ms10240" },
14603   {   8, "ms20480" },
14604   {   9, "ms40960" },
14605   {  10, "min1" },
14606   {  11, "min6" },
14607   {  12, "min12" },
14608   {  13, "min30" },
14609   { 0, NULL }
14610 };
14611
14612
14613 static int
14614 dissect_nr_rrc_ReportInterval(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14615   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
14616                                      14, NULL, FALSE, 0, NULL);
14617
14618   return offset;
14619 }
14620
14621
14622 static const value_string nr_rrc_T_reportAmount_03_vals[] = {
14623   {   0, "r1" },
14624   {   1, "r2" },
14625   {   2, "r4" },
14626   {   3, "r8" },
14627   {   4, "r16" },
14628   {   5, "r32" },
14629   {   6, "r64" },
14630   {   7, "infinity" },
14631   { 0, NULL }
14632 };
14633
14634
14635 static int
14636 dissect_nr_rrc_T_reportAmount_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14637   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
14638                                      8, NULL, FALSE, 0, NULL);
14639
14640   return offset;
14641 }
14642
14643
14644 static const per_sequence_t MeasReportQuantity_sequence[] = {
14645   { &hf_nr_rrc_rsrp_03      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
14646   { &hf_nr_rrc_rsrq_03      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
14647   { &hf_nr_rrc_sinr_03      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
14648   { NULL, 0, 0, NULL }
14649 };
14650
14651 static int
14652 dissect_nr_rrc_MeasReportQuantity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14653   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
14654                                    ett_nr_rrc_MeasReportQuantity, MeasReportQuantity_sequence);
14655
14656   return offset;
14657 }
14658
14659
14660
14661 static int
14662 dissect_nr_rrc_INTEGER_1_maxCellReport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14663   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
14664                                                             1U, maxCellReport, NULL, FALSE);
14665
14666   return offset;
14667 }
14668
14669
14670
14671 static int
14672 dissect_nr_rrc_INTEGER_1_maxNrofIndexesToReport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14673   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
14674                                                             1U, maxNrofIndexesToReport, NULL, FALSE);
14675
14676   return offset;
14677 }
14678
14679
14680 static const per_sequence_t PeriodicalReportConfig_sequence[] = {
14681   { &hf_nr_rrc_rsType       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_NR_RS_Type },
14682   { &hf_nr_rrc_reportInterval, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ReportInterval },
14683   { &hf_nr_rrc_reportAmount_03, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_reportAmount_03 },
14684   { &hf_nr_rrc_reportQuantityCell, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasReportQuantity },
14685   { &hf_nr_rrc_maxReportCells, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_maxCellReport },
14686   { &hf_nr_rrc_reportQuantityRsIndexes, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_MeasReportQuantity },
14687   { &hf_nr_rrc_maxNrofRsIndexesToReport, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_maxNrofIndexesToReport },
14688   { &hf_nr_rrc_includeBeamMeasurements, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
14689   { &hf_nr_rrc_useWhiteCellList, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
14690   { NULL, 0, 0, NULL }
14691 };
14692
14693 static int
14694 dissect_nr_rrc_PeriodicalReportConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14695   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
14696                                    ett_nr_rrc_PeriodicalReportConfig, PeriodicalReportConfig_sequence);
14697
14698   return offset;
14699 }
14700
14701
14702 static const value_string nr_rrc_MeasTriggerQuantity_vals[] = {
14703   {   0, "rsrp" },
14704   {   1, "rsrq" },
14705   {   2, "sinr" },
14706   { 0, NULL }
14707 };
14708
14709 static const per_choice_t MeasTriggerQuantity_choice[] = {
14710   {   0, &hf_nr_rrc_rsrp         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RSRP_Range },
14711   {   1, &hf_nr_rrc_rsrq         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RSRQ_Range },
14712   {   2, &hf_nr_rrc_sinr         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SINR_Range },
14713   { 0, NULL, 0, NULL }
14714 };
14715
14716 static int
14717 dissect_nr_rrc_MeasTriggerQuantity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14718   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
14719                                  ett_nr_rrc_MeasTriggerQuantity, MeasTriggerQuantity_choice,
14720                                  NULL);
14721
14722   return offset;
14723 }
14724
14725
14726
14727 static int
14728 dissect_nr_rrc_Hysteresis(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14729   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
14730                                                             0U, 30U, NULL, FALSE);
14731
14732   return offset;
14733 }
14734
14735
14736 static const value_string nr_rrc_TimeToTrigger_vals[] = {
14737   {   0, "ms0" },
14738   {   1, "ms40" },
14739   {   2, "ms64" },
14740   {   3, "ms80" },
14741   {   4, "ms100" },
14742   {   5, "ms128" },
14743   {   6, "ms160" },
14744   {   7, "ms256" },
14745   {   8, "ms320" },
14746   {   9, "ms480" },
14747   {  10, "ms512" },
14748   {  11, "ms640" },
14749   {  12, "ms1024" },
14750   {  13, "ms1280" },
14751   {  14, "ms2560" },
14752   {  15, "ms5120" },
14753   { 0, NULL }
14754 };
14755
14756
14757 static int
14758 dissect_nr_rrc_TimeToTrigger(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14759   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
14760                                      16, NULL, FALSE, 0, NULL);
14761
14762   return offset;
14763 }
14764
14765
14766 static const per_sequence_t T_eventA1_sequence[] = {
14767   { &hf_nr_rrc_a1_Threshold , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasTriggerQuantity },
14768   { &hf_nr_rrc_reportOnLeave, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
14769   { &hf_nr_rrc_hysteresis   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_Hysteresis },
14770   { &hf_nr_rrc_timeToTrigger, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_TimeToTrigger },
14771   { NULL, 0, 0, NULL }
14772 };
14773
14774 static int
14775 dissect_nr_rrc_T_eventA1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14776   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
14777                                    ett_nr_rrc_T_eventA1, T_eventA1_sequence);
14778
14779   return offset;
14780 }
14781
14782
14783 static const per_sequence_t T_eventA2_sequence[] = {
14784   { &hf_nr_rrc_a2_Threshold , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasTriggerQuantity },
14785   { &hf_nr_rrc_reportOnLeave, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
14786   { &hf_nr_rrc_hysteresis   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_Hysteresis },
14787   { &hf_nr_rrc_timeToTrigger, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_TimeToTrigger },
14788   { NULL, 0, 0, NULL }
14789 };
14790
14791 static int
14792 dissect_nr_rrc_T_eventA2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14793   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
14794                                    ett_nr_rrc_T_eventA2, T_eventA2_sequence);
14795
14796   return offset;
14797 }
14798
14799
14800
14801 static int
14802 dissect_nr_rrc_INTEGER_M30_30(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14803   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
14804                                                             -30, 30U, NULL, FALSE);
14805
14806   return offset;
14807 }
14808
14809
14810 static const value_string nr_rrc_MeasTriggerQuantityOffset_vals[] = {
14811   {   0, "rsrp" },
14812   {   1, "rsrq" },
14813   {   2, "sinr" },
14814   { 0, NULL }
14815 };
14816
14817 static const per_choice_t MeasTriggerQuantityOffset_choice[] = {
14818   {   0, &hf_nr_rrc_rsrp_02      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_M30_30 },
14819   {   1, &hf_nr_rrc_rsrq_02      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_M30_30 },
14820   {   2, &hf_nr_rrc_sinr_02      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_M30_30 },
14821   { 0, NULL, 0, NULL }
14822 };
14823
14824 static int
14825 dissect_nr_rrc_MeasTriggerQuantityOffset(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14826   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
14827                                  ett_nr_rrc_MeasTriggerQuantityOffset, MeasTriggerQuantityOffset_choice,
14828                                  NULL);
14829
14830   return offset;
14831 }
14832
14833
14834 static const per_sequence_t T_eventA3_sequence[] = {
14835   { &hf_nr_rrc_a3_Offset    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasTriggerQuantityOffset },
14836   { &hf_nr_rrc_reportOnLeave, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
14837   { &hf_nr_rrc_hysteresis   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_Hysteresis },
14838   { &hf_nr_rrc_timeToTrigger, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_TimeToTrigger },
14839   { &hf_nr_rrc_useWhiteCellList, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
14840   { NULL, 0, 0, NULL }
14841 };
14842
14843 static int
14844 dissect_nr_rrc_T_eventA3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14845   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
14846                                    ett_nr_rrc_T_eventA3, T_eventA3_sequence);
14847
14848   return offset;
14849 }
14850
14851
14852 static const per_sequence_t T_eventA4_sequence[] = {
14853   { &hf_nr_rrc_a4_Threshold , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasTriggerQuantity },
14854   { &hf_nr_rrc_reportOnLeave, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
14855   { &hf_nr_rrc_hysteresis   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_Hysteresis },
14856   { &hf_nr_rrc_timeToTrigger, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_TimeToTrigger },
14857   { &hf_nr_rrc_useWhiteCellList, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
14858   { NULL, 0, 0, NULL }
14859 };
14860
14861 static int
14862 dissect_nr_rrc_T_eventA4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14863   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
14864                                    ett_nr_rrc_T_eventA4, T_eventA4_sequence);
14865
14866   return offset;
14867 }
14868
14869
14870 static const per_sequence_t T_eventA5_sequence[] = {
14871   { &hf_nr_rrc_a5_Threshold1, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasTriggerQuantity },
14872   { &hf_nr_rrc_a5_Threshold2, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasTriggerQuantity },
14873   { &hf_nr_rrc_reportOnLeave, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
14874   { &hf_nr_rrc_hysteresis   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_Hysteresis },
14875   { &hf_nr_rrc_timeToTrigger, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_TimeToTrigger },
14876   { &hf_nr_rrc_useWhiteCellList, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
14877   { NULL, 0, 0, NULL }
14878 };
14879
14880 static int
14881 dissect_nr_rrc_T_eventA5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14882   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
14883                                    ett_nr_rrc_T_eventA5, T_eventA5_sequence);
14884
14885   return offset;
14886 }
14887
14888
14889 static const per_sequence_t T_eventA6_sequence[] = {
14890   { &hf_nr_rrc_a6_Offset    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasTriggerQuantityOffset },
14891   { &hf_nr_rrc_reportOnLeave, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
14892   { &hf_nr_rrc_hysteresis   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_Hysteresis },
14893   { &hf_nr_rrc_timeToTrigger, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_TimeToTrigger },
14894   { &hf_nr_rrc_useWhiteCellList, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
14895   { NULL, 0, 0, NULL }
14896 };
14897
14898 static int
14899 dissect_nr_rrc_T_eventA6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14900   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
14901                                    ett_nr_rrc_T_eventA6, T_eventA6_sequence);
14902
14903   return offset;
14904 }
14905
14906
14907 static const value_string nr_rrc_T_eventId_01_vals[] = {
14908   {   0, "eventA1" },
14909   {   1, "eventA2" },
14910   {   2, "eventA3" },
14911   {   3, "eventA4" },
14912   {   4, "eventA5" },
14913   {   5, "eventA6" },
14914   { 0, NULL }
14915 };
14916
14917 static const per_choice_t T_eventId_01_choice[] = {
14918   {   0, &hf_nr_rrc_eventA1      , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_T_eventA1 },
14919   {   1, &hf_nr_rrc_eventA2      , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_T_eventA2 },
14920   {   2, &hf_nr_rrc_eventA3      , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_T_eventA3 },
14921   {   3, &hf_nr_rrc_eventA4      , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_T_eventA4 },
14922   {   4, &hf_nr_rrc_eventA5      , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_T_eventA5 },
14923   {   5, &hf_nr_rrc_eventA6      , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_T_eventA6 },
14924   { 0, NULL, 0, NULL }
14925 };
14926
14927 static int
14928 dissect_nr_rrc_T_eventId_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14929   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
14930                                  ett_nr_rrc_T_eventId_01, T_eventId_01_choice,
14931                                  NULL);
14932
14933   return offset;
14934 }
14935
14936
14937 static const value_string nr_rrc_T_reportAmount_02_vals[] = {
14938   {   0, "r1" },
14939   {   1, "r2" },
14940   {   2, "r4" },
14941   {   3, "r8" },
14942   {   4, "r16" },
14943   {   5, "r32" },
14944   {   6, "r64" },
14945   {   7, "infinity" },
14946   { 0, NULL }
14947 };
14948
14949
14950 static int
14951 dissect_nr_rrc_T_reportAmount_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14952   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
14953                                      8, NULL, FALSE, 0, NULL);
14954
14955   return offset;
14956 }
14957
14958
14959 static const value_string nr_rrc_T_reportAddNeighMeas_vals[] = {
14960   {   0, "setup" },
14961   { 0, NULL }
14962 };
14963
14964
14965 static int
14966 dissect_nr_rrc_T_reportAddNeighMeas(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14967   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
14968                                      1, NULL, FALSE, 0, NULL);
14969
14970   return offset;
14971 }
14972
14973
14974 static const per_sequence_t EventTriggerConfig_sequence[] = {
14975   { &hf_nr_rrc_eventId_01   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_eventId_01 },
14976   { &hf_nr_rrc_rsType       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_NR_RS_Type },
14977   { &hf_nr_rrc_reportInterval, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ReportInterval },
14978   { &hf_nr_rrc_reportAmount_02, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_reportAmount_02 },
14979   { &hf_nr_rrc_reportQuantityCell, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasReportQuantity },
14980   { &hf_nr_rrc_maxReportCells, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_maxCellReport },
14981   { &hf_nr_rrc_reportQuantityRsIndexes, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_MeasReportQuantity },
14982   { &hf_nr_rrc_maxNrofRSIndexesToReport, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_maxNrofIndexesToReport },
14983   { &hf_nr_rrc_includeBeamMeasurements, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
14984   { &hf_nr_rrc_reportAddNeighMeas, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_reportAddNeighMeas },
14985   { NULL, 0, 0, NULL }
14986 };
14987
14988 static int
14989 dissect_nr_rrc_EventTriggerConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
14990   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
14991                                    ett_nr_rrc_EventTriggerConfig, EventTriggerConfig_sequence);
14992
14993   return offset;
14994 }
14995
14996
14997 static const per_sequence_t ReportCGI_sequence[] = {
14998   { &hf_nr_rrc_cellForWhichToReportCGI_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PhysCellId },
14999   { NULL, 0, 0, NULL }
15000 };
15001
15002 static int
15003 dissect_nr_rrc_ReportCGI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15004   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
15005                                    ett_nr_rrc_ReportCGI, ReportCGI_sequence);
15006
15007   return offset;
15008 }
15009
15010
15011 static const value_string nr_rrc_T_reportType_01_vals[] = {
15012   {   0, "periodical" },
15013   {   1, "eventTriggered" },
15014   {   2, "reportCGI" },
15015   { 0, NULL }
15016 };
15017
15018 static const per_choice_t T_reportType_01_choice[] = {
15019   {   0, &hf_nr_rrc_periodical_01, ASN1_EXTENSION_ROOT    , dissect_nr_rrc_PeriodicalReportConfig },
15020   {   1, &hf_nr_rrc_eventTriggered_01, ASN1_EXTENSION_ROOT    , dissect_nr_rrc_EventTriggerConfig },
15021   {   2, &hf_nr_rrc_reportCGI_01 , ASN1_NOT_EXTENSION_ROOT, dissect_nr_rrc_ReportCGI },
15022   { 0, NULL, 0, NULL }
15023 };
15024
15025 static int
15026 dissect_nr_rrc_T_reportType_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15027   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
15028                                  ett_nr_rrc_T_reportType_01, T_reportType_01_choice,
15029                                  NULL);
15030
15031   return offset;
15032 }
15033
15034
15035 static const per_sequence_t ReportConfigNR_sequence[] = {
15036   { &hf_nr_rrc_reportType_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_reportType_01 },
15037   { NULL, 0, 0, NULL }
15038 };
15039
15040 static int
15041 dissect_nr_rrc_ReportConfigNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15042   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
15043                                    ett_nr_rrc_ReportConfigNR, ReportConfigNR_sequence);
15044
15045   return offset;
15046 }
15047
15048
15049 static const value_string nr_rrc_T_reportAmount_01_vals[] = {
15050   {   0, "r1" },
15051   {   1, "r2" },
15052   {   2, "r4" },
15053   {   3, "r8" },
15054   {   4, "r16" },
15055   {   5, "r32" },
15056   {   6, "r64" },
15057   {   7, "infinity" },
15058   { 0, NULL }
15059 };
15060
15061
15062 static int
15063 dissect_nr_rrc_T_reportAmount_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15064   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
15065                                      8, NULL, FALSE, 0, NULL);
15066
15067   return offset;
15068 }
15069
15070
15071 static const per_sequence_t PeriodicalReportConfigInterRAT_sequence[] = {
15072   { &hf_nr_rrc_reportInterval, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ReportInterval },
15073   { &hf_nr_rrc_reportAmount_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_reportAmount_01 },
15074   { &hf_nr_rrc_reportQuantity_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasReportQuantity },
15075   { &hf_nr_rrc_maxReportCells, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_maxCellReport },
15076   { NULL, 0, 0, NULL }
15077 };
15078
15079 static int
15080 dissect_nr_rrc_PeriodicalReportConfigInterRAT(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15081   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
15082                                    ett_nr_rrc_PeriodicalReportConfigInterRAT, PeriodicalReportConfigInterRAT_sequence);
15083
15084   return offset;
15085 }
15086
15087
15088
15089 static int
15090 dissect_nr_rrc_RSRP_RangeEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15091   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
15092                                                             0U, 97U, NULL, FALSE);
15093
15094   return offset;
15095 }
15096
15097
15098
15099 static int
15100 dissect_nr_rrc_RSRQ_RangeEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15101   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
15102                                                             0U, 34U, NULL, FALSE);
15103
15104   return offset;
15105 }
15106
15107
15108
15109 static int
15110 dissect_nr_rrc_SINR_RangeEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15111   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
15112                                                             0U, 127U, NULL, FALSE);
15113
15114   return offset;
15115 }
15116
15117
15118 static const value_string nr_rrc_MeasTriggerQuantityEUTRA_vals[] = {
15119   {   0, "rsrp" },
15120   {   1, "rsrq" },
15121   {   2, "sinr" },
15122   { 0, NULL }
15123 };
15124
15125 static const per_choice_t MeasTriggerQuantityEUTRA_choice[] = {
15126   {   0, &hf_nr_rrc_rsrp_01      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RSRP_RangeEUTRA },
15127   {   1, &hf_nr_rrc_rsrq_01      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RSRQ_RangeEUTRA },
15128   {   2, &hf_nr_rrc_sinr_01      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SINR_RangeEUTRA },
15129   { 0, NULL, 0, NULL }
15130 };
15131
15132 static int
15133 dissect_nr_rrc_MeasTriggerQuantityEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15134   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
15135                                  ett_nr_rrc_MeasTriggerQuantityEUTRA, MeasTriggerQuantityEUTRA_choice,
15136                                  NULL);
15137
15138   return offset;
15139 }
15140
15141
15142 static const per_sequence_t T_eventB1_sequence[] = {
15143   { &hf_nr_rrc_b1_ThresholdEUTRA, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasTriggerQuantityEUTRA },
15144   { &hf_nr_rrc_reportOnLeave, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
15145   { &hf_nr_rrc_hysteresis   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_Hysteresis },
15146   { &hf_nr_rrc_timeToTrigger, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_TimeToTrigger },
15147   { NULL, 0, 0, NULL }
15148 };
15149
15150 static int
15151 dissect_nr_rrc_T_eventB1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15152   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
15153                                    ett_nr_rrc_T_eventB1, T_eventB1_sequence);
15154
15155   return offset;
15156 }
15157
15158
15159 static const per_sequence_t T_eventB2_sequence[] = {
15160   { &hf_nr_rrc_b2_Threshold1, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasTriggerQuantity },
15161   { &hf_nr_rrc_b2_Threshold2EUTRA, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasTriggerQuantityEUTRA },
15162   { &hf_nr_rrc_reportOnLeave, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
15163   { &hf_nr_rrc_hysteresis   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_Hysteresis },
15164   { &hf_nr_rrc_timeToTrigger, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_TimeToTrigger },
15165   { NULL, 0, 0, NULL }
15166 };
15167
15168 static int
15169 dissect_nr_rrc_T_eventB2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15170   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
15171                                    ett_nr_rrc_T_eventB2, T_eventB2_sequence);
15172
15173   return offset;
15174 }
15175
15176
15177 static const value_string nr_rrc_T_eventId_vals[] = {
15178   {   0, "eventB1" },
15179   {   1, "eventB2" },
15180   { 0, NULL }
15181 };
15182
15183 static const per_choice_t T_eventId_choice[] = {
15184   {   0, &hf_nr_rrc_eventB1      , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_T_eventB1 },
15185   {   1, &hf_nr_rrc_eventB2      , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_T_eventB2 },
15186   { 0, NULL, 0, NULL }
15187 };
15188
15189 static int
15190 dissect_nr_rrc_T_eventId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15191   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
15192                                  ett_nr_rrc_T_eventId, T_eventId_choice,
15193                                  NULL);
15194
15195   return offset;
15196 }
15197
15198
15199 static const value_string nr_rrc_T_reportAmount_vals[] = {
15200   {   0, "r1" },
15201   {   1, "r2" },
15202   {   2, "r4" },
15203   {   3, "r8" },
15204   {   4, "r16" },
15205   {   5, "r32" },
15206   {   6, "r64" },
15207   {   7, "infinity" },
15208   { 0, NULL }
15209 };
15210
15211
15212 static int
15213 dissect_nr_rrc_T_reportAmount(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15214   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
15215                                      8, NULL, FALSE, 0, NULL);
15216
15217   return offset;
15218 }
15219
15220
15221 static const per_sequence_t EventTriggerConfigInterRAT_sequence[] = {
15222   { &hf_nr_rrc_eventId      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_eventId },
15223   { &hf_nr_rrc_rsType       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_NR_RS_Type },
15224   { &hf_nr_rrc_reportInterval, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ReportInterval },
15225   { &hf_nr_rrc_reportAmount , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_reportAmount },
15226   { &hf_nr_rrc_reportQuantity_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasReportQuantity },
15227   { &hf_nr_rrc_maxReportCells, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_maxCellReport },
15228   { NULL, 0, 0, NULL }
15229 };
15230
15231 static int
15232 dissect_nr_rrc_EventTriggerConfigInterRAT(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15233   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
15234                                    ett_nr_rrc_EventTriggerConfigInterRAT, EventTriggerConfigInterRAT_sequence);
15235
15236   return offset;
15237 }
15238
15239
15240 static const per_sequence_t ReportCGI_EUTRA_sequence[] = {
15241   { &hf_nr_rrc_cellForWhichToReportCGI, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_EUTRA_PhysCellId },
15242   { NULL, 0, 0, NULL }
15243 };
15244
15245 static int
15246 dissect_nr_rrc_ReportCGI_EUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15247   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
15248                                    ett_nr_rrc_ReportCGI_EUTRA, ReportCGI_EUTRA_sequence);
15249
15250   return offset;
15251 }
15252
15253
15254 static const value_string nr_rrc_T_reportType_vals[] = {
15255   {   0, "periodical" },
15256   {   1, "eventTriggered" },
15257   {   2, "reportCGI" },
15258   { 0, NULL }
15259 };
15260
15261 static const per_choice_t T_reportType_choice[] = {
15262   {   0, &hf_nr_rrc_periodical   , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_PeriodicalReportConfigInterRAT },
15263   {   1, &hf_nr_rrc_eventTriggered, ASN1_EXTENSION_ROOT    , dissect_nr_rrc_EventTriggerConfigInterRAT },
15264   {   2, &hf_nr_rrc_reportCGI    , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_ReportCGI_EUTRA },
15265   { 0, NULL, 0, NULL }
15266 };
15267
15268 static int
15269 dissect_nr_rrc_T_reportType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15270   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
15271                                  ett_nr_rrc_T_reportType, T_reportType_choice,
15272                                  NULL);
15273
15274   return offset;
15275 }
15276
15277
15278 static const per_sequence_t ReportConfigInterRAT_sequence[] = {
15279   { &hf_nr_rrc_reportType   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_reportType },
15280   { NULL, 0, 0, NULL }
15281 };
15282
15283 static int
15284 dissect_nr_rrc_ReportConfigInterRAT(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15285   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
15286                                    ett_nr_rrc_ReportConfigInterRAT, ReportConfigInterRAT_sequence);
15287
15288   return offset;
15289 }
15290
15291
15292 static const value_string nr_rrc_T_reportConfig_vals[] = {
15293   {   0, "reportConfigNR" },
15294   {   1, "reportConfigInterRAT" },
15295   { 0, NULL }
15296 };
15297
15298 static const per_choice_t T_reportConfig_choice[] = {
15299   {   0, &hf_nr_rrc_reportConfigNR, ASN1_EXTENSION_ROOT    , dissect_nr_rrc_ReportConfigNR },
15300   {   1, &hf_nr_rrc_reportConfigInterRAT, ASN1_NOT_EXTENSION_ROOT, dissect_nr_rrc_ReportConfigInterRAT },
15301   { 0, NULL, 0, NULL }
15302 };
15303
15304 static int
15305 dissect_nr_rrc_T_reportConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15306   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
15307                                  ett_nr_rrc_T_reportConfig, T_reportConfig_choice,
15308                                  NULL);
15309
15310   return offset;
15311 }
15312
15313
15314 static const per_sequence_t ReportConfigToAddMod_sequence[] = {
15315   { &hf_nr_rrc_reportConfigId_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ReportConfigId },
15316   { &hf_nr_rrc_reportConfig , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_reportConfig },
15317   { NULL, 0, 0, NULL }
15318 };
15319
15320 static int
15321 dissect_nr_rrc_ReportConfigToAddMod(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15322   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
15323                                    ett_nr_rrc_ReportConfigToAddMod, ReportConfigToAddMod_sequence);
15324
15325   return offset;
15326 }
15327
15328
15329 static const per_sequence_t ReportConfigToAddModList_sequence_of[1] = {
15330   { &hf_nr_rrc_ReportConfigToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ReportConfigToAddMod },
15331 };
15332
15333 static int
15334 dissect_nr_rrc_ReportConfigToAddModList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15335   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
15336                                                   ett_nr_rrc_ReportConfigToAddModList, ReportConfigToAddModList_sequence_of,
15337                                                   1, maxReportConfigId, FALSE);
15338
15339   return offset;
15340 }
15341
15342
15343
15344 static int
15345 dissect_nr_rrc_MeasId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15346   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
15347                                                             1U, maxNrofMeasId, NULL, FALSE);
15348
15349   return offset;
15350 }
15351
15352
15353 static const per_sequence_t MeasIdToRemoveList_sequence_of[1] = {
15354   { &hf_nr_rrc_MeasIdToRemoveList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasId },
15355 };
15356
15357 static int
15358 dissect_nr_rrc_MeasIdToRemoveList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15359   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
15360                                                   ett_nr_rrc_MeasIdToRemoveList, MeasIdToRemoveList_sequence_of,
15361                                                   1, maxNrofMeasId, FALSE);
15362
15363   return offset;
15364 }
15365
15366
15367 static const per_sequence_t MeasIdToAddMod_sequence[] = {
15368   { &hf_nr_rrc_measId       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasId },
15369   { &hf_nr_rrc_measObjectId , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasObjectId },
15370   { &hf_nr_rrc_reportConfigId_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ReportConfigId },
15371   { NULL, 0, 0, NULL }
15372 };
15373
15374 static int
15375 dissect_nr_rrc_MeasIdToAddMod(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15376   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
15377                                    ett_nr_rrc_MeasIdToAddMod, MeasIdToAddMod_sequence);
15378
15379   return offset;
15380 }
15381
15382
15383 static const per_sequence_t MeasIdToAddModList_sequence_of[1] = {
15384   { &hf_nr_rrc_MeasIdToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasIdToAddMod },
15385 };
15386
15387 static int
15388 dissect_nr_rrc_MeasIdToAddModList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15389   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
15390                                                   ett_nr_rrc_MeasIdToAddModList, MeasIdToAddModList_sequence_of,
15391                                                   1, maxNrofMeasId, FALSE);
15392
15393   return offset;
15394 }
15395
15396
15397 static const value_string nr_rrc_T_s_MeasureConfig_vals[] = {
15398   {   0, "ssb-RSRP" },
15399   {   1, "csi-RSRP" },
15400   { 0, NULL }
15401 };
15402
15403 static const per_choice_t T_s_MeasureConfig_choice[] = {
15404   {   0, &hf_nr_rrc_ssb_RSRP     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RSRP_Range },
15405   {   1, &hf_nr_rrc_csi_RSRP     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RSRP_Range },
15406   { 0, NULL, 0, NULL }
15407 };
15408
15409 static int
15410 dissect_nr_rrc_T_s_MeasureConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15411   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
15412                                  ett_nr_rrc_T_s_MeasureConfig, T_s_MeasureConfig_choice,
15413                                  NULL);
15414
15415   return offset;
15416 }
15417
15418
15419 static const value_string nr_rrc_FilterCoefficient_vals[] = {
15420   {   0, "fc0" },
15421   {   1, "fc1" },
15422   {   2, "fc2" },
15423   {   3, "fc3" },
15424   {   4, "fc4" },
15425   {   5, "fc5" },
15426   {   6, "fc6" },
15427   {   7, "fc7" },
15428   {   8, "fc8" },
15429   {   9, "fc9" },
15430   {  10, "fc11" },
15431   {  11, "fc13" },
15432   {  12, "fc15" },
15433   {  13, "fc17" },
15434   {  14, "fc19" },
15435   {  15, "spare1" },
15436   { 0, NULL }
15437 };
15438
15439
15440 static int
15441 dissect_nr_rrc_FilterCoefficient(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15442   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
15443                                      16, NULL, TRUE, 0, NULL);
15444
15445   return offset;
15446 }
15447
15448
15449 static const per_sequence_t FilterConfig_sequence[] = {
15450   { &hf_nr_rrc_filterCoefficientRSRP, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_FilterCoefficient },
15451   { &hf_nr_rrc_filterCoefficientRSRQ, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_FilterCoefficient },
15452   { &hf_nr_rrc_filterCoefficientRS_SINR, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_FilterCoefficient },
15453   { NULL, 0, 0, NULL }
15454 };
15455
15456 static int
15457 dissect_nr_rrc_FilterConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15458   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
15459                                    ett_nr_rrc_FilterConfig, FilterConfig_sequence);
15460
15461   return offset;
15462 }
15463
15464
15465 static const per_sequence_t QuantityConfigRS_sequence[] = {
15466   { &hf_nr_rrc_ssb_FilterConfig, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FilterConfig },
15467   { &hf_nr_rrc_cs_RS_FilterConfig, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FilterConfig },
15468   { NULL, 0, 0, NULL }
15469 };
15470
15471 static int
15472 dissect_nr_rrc_QuantityConfigRS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15473   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
15474                                    ett_nr_rrc_QuantityConfigRS, QuantityConfigRS_sequence);
15475
15476   return offset;
15477 }
15478
15479
15480 static const per_sequence_t QuantityConfigNR_sequence[] = {
15481   { &hf_nr_rrc_quantityConfigCell, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_QuantityConfigRS },
15482   { &hf_nr_rrc_quantityConfigRS_Index, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_QuantityConfigRS },
15483   { NULL, 0, 0, NULL }
15484 };
15485
15486 static int
15487 dissect_nr_rrc_QuantityConfigNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15488   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
15489                                    ett_nr_rrc_QuantityConfigNR, QuantityConfigNR_sequence);
15490
15491   return offset;
15492 }
15493
15494
15495 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofQuantityConfig_OF_QuantityConfigNR_sequence_of[1] = {
15496   { &hf_nr_rrc_quantityConfigNR_List_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_QuantityConfigNR },
15497 };
15498
15499 static int
15500 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofQuantityConfig_OF_QuantityConfigNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15501   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
15502                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofQuantityConfig_OF_QuantityConfigNR, SEQUENCE_SIZE_1_maxNrofQuantityConfig_OF_QuantityConfigNR_sequence_of,
15503                                                   1, maxNrofQuantityConfig, FALSE);
15504
15505   return offset;
15506 }
15507
15508
15509 static const per_sequence_t QuantityConfig_eag_1_sequence[] = {
15510   { &hf_nr_rrc_quantityConfigEUTRA, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_FilterConfig },
15511   { NULL, 0, 0, NULL }
15512 };
15513
15514 static int
15515 dissect_nr_rrc_QuantityConfig_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15516   offset = dissect_per_sequence_eag(tvb, offset, actx, tree, QuantityConfig_eag_1_sequence);
15517
15518   return offset;
15519 }
15520
15521
15522 static const per_sequence_t QuantityConfig_sequence[] = {
15523   { &hf_nr_rrc_quantityConfigNR_List, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofQuantityConfig_OF_QuantityConfigNR },
15524   { &dummy_hf_nr_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_nr_rrc_QuantityConfig_eag_1 },
15525   { NULL, 0, 0, NULL }
15526 };
15527
15528 static int
15529 dissect_nr_rrc_QuantityConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15530   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
15531                                    ett_nr_rrc_QuantityConfig, QuantityConfig_sequence);
15532
15533   return offset;
15534 }
15535
15536
15537 static const value_string nr_rrc_T_gapFR2_vals[] = {
15538   {   0, "release" },
15539   {   1, "setup" },
15540   { 0, NULL }
15541 };
15542
15543 static const per_choice_t T_gapFR2_choice[] = {
15544   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
15545   {   1, &hf_nr_rrc_setup        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_GapConfig },
15546   { 0, NULL, 0, NULL }
15547 };
15548
15549 static int
15550 dissect_nr_rrc_T_gapFR2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15551   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
15552                                  ett_nr_rrc_T_gapFR2, T_gapFR2_choice,
15553                                  NULL);
15554
15555   return offset;
15556 }
15557
15558
15559 static const value_string nr_rrc_T_gapFR1_vals[] = {
15560   {   0, "release" },
15561   {   1, "setup" },
15562   { 0, NULL }
15563 };
15564
15565 static const per_choice_t T_gapFR1_choice[] = {
15566   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
15567   {   1, &hf_nr_rrc_setup        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_GapConfig },
15568   { 0, NULL, 0, NULL }
15569 };
15570
15571 static int
15572 dissect_nr_rrc_T_gapFR1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15573   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
15574                                  ett_nr_rrc_T_gapFR1, T_gapFR1_choice,
15575                                  NULL);
15576
15577   return offset;
15578 }
15579
15580
15581 static const value_string nr_rrc_T_gapUE_vals[] = {
15582   {   0, "release" },
15583   {   1, "setup" },
15584   { 0, NULL }
15585 };
15586
15587 static const per_choice_t T_gapUE_choice[] = {
15588   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
15589   {   1, &hf_nr_rrc_setup        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_GapConfig },
15590   { 0, NULL, 0, NULL }
15591 };
15592
15593 static int
15594 dissect_nr_rrc_T_gapUE(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15595   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
15596                                  ett_nr_rrc_T_gapUE, T_gapUE_choice,
15597                                  NULL);
15598
15599   return offset;
15600 }
15601
15602
15603 static const per_sequence_t MeasGapConfig_eag_1_sequence[] = {
15604   { &hf_nr_rrc_gapFR1       , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_gapFR1 },
15605   { &hf_nr_rrc_gapUE        , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_gapUE },
15606   { NULL, 0, 0, NULL }
15607 };
15608
15609 static int
15610 dissect_nr_rrc_MeasGapConfig_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15611   offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasGapConfig_eag_1_sequence);
15612
15613   return offset;
15614 }
15615
15616
15617 static const per_sequence_t MeasGapConfig_sequence[] = {
15618   { &hf_nr_rrc_gapFR2       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_gapFR2 },
15619   { &dummy_hf_nr_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasGapConfig_eag_1 },
15620   { NULL, 0, 0, NULL }
15621 };
15622
15623 static int
15624 dissect_nr_rrc_MeasGapConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15625   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
15626                                    ett_nr_rrc_MeasGapConfig, MeasGapConfig_sequence);
15627
15628   return offset;
15629 }
15630
15631
15632 static const value_string nr_rrc_MeasGapSharingScheme_vals[] = {
15633   {   0, "scheme00" },
15634   {   1, "scheme01" },
15635   {   2, "scheme10" },
15636   {   3, "scheme11" },
15637   { 0, NULL }
15638 };
15639
15640
15641 static int
15642 dissect_nr_rrc_MeasGapSharingScheme(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15643   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
15644                                      4, NULL, FALSE, 0, NULL);
15645
15646   return offset;
15647 }
15648
15649
15650 static const value_string nr_rrc_T_gapSharingFR2_vals[] = {
15651   {   0, "release" },
15652   {   1, "setup" },
15653   { 0, NULL }
15654 };
15655
15656 static const per_choice_t T_gapSharingFR2_choice[] = {
15657   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
15658   {   1, &hf_nr_rrc_setup_25     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_MeasGapSharingScheme },
15659   { 0, NULL, 0, NULL }
15660 };
15661
15662 static int
15663 dissect_nr_rrc_T_gapSharingFR2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15664   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
15665                                  ett_nr_rrc_T_gapSharingFR2, T_gapSharingFR2_choice,
15666                                  NULL);
15667
15668   return offset;
15669 }
15670
15671
15672 static const value_string nr_rrc_T_gapSharingFR1_vals[] = {
15673   {   0, "release" },
15674   {   1, "setup" },
15675   { 0, NULL }
15676 };
15677
15678 static const per_choice_t T_gapSharingFR1_choice[] = {
15679   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
15680   {   1, &hf_nr_rrc_setup_25     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_MeasGapSharingScheme },
15681   { 0, NULL, 0, NULL }
15682 };
15683
15684 static int
15685 dissect_nr_rrc_T_gapSharingFR1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15686   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
15687                                  ett_nr_rrc_T_gapSharingFR1, T_gapSharingFR1_choice,
15688                                  NULL);
15689
15690   return offset;
15691 }
15692
15693
15694 static const value_string nr_rrc_T_gapSharingUE_vals[] = {
15695   {   0, "release" },
15696   {   1, "setup" },
15697   { 0, NULL }
15698 };
15699
15700 static const per_choice_t T_gapSharingUE_choice[] = {
15701   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
15702   {   1, &hf_nr_rrc_setup_25     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_MeasGapSharingScheme },
15703   { 0, NULL, 0, NULL }
15704 };
15705
15706 static int
15707 dissect_nr_rrc_T_gapSharingUE(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15708   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
15709                                  ett_nr_rrc_T_gapSharingUE, T_gapSharingUE_choice,
15710                                  NULL);
15711
15712   return offset;
15713 }
15714
15715
15716 static const per_sequence_t MeasGapSharingConfig_eag_1_sequence[] = {
15717   { &hf_nr_rrc_gapSharingFR1, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_gapSharingFR1 },
15718   { &hf_nr_rrc_gapSharingUE , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_gapSharingUE },
15719   { NULL, 0, 0, NULL }
15720 };
15721
15722 static int
15723 dissect_nr_rrc_MeasGapSharingConfig_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15724   offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasGapSharingConfig_eag_1_sequence);
15725
15726   return offset;
15727 }
15728
15729
15730 static const per_sequence_t MeasGapSharingConfig_sequence[] = {
15731   { &hf_nr_rrc_gapSharingFR2, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_gapSharingFR2 },
15732   { &dummy_hf_nr_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasGapSharingConfig_eag_1 },
15733   { NULL, 0, 0, NULL }
15734 };
15735
15736 static int
15737 dissect_nr_rrc_MeasGapSharingConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15738   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
15739                                    ett_nr_rrc_MeasGapSharingConfig, MeasGapSharingConfig_sequence);
15740
15741   return offset;
15742 }
15743
15744
15745 static const per_sequence_t MeasConfig_sequence[] = {
15746   { &hf_nr_rrc_measObjectToRemoveList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_MeasObjectToRemoveList },
15747   { &hf_nr_rrc_measObjectToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_MeasObjectToAddModList },
15748   { &hf_nr_rrc_reportConfigToRemoveList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ReportConfigToRemoveList },
15749   { &hf_nr_rrc_reportConfigToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ReportConfigToAddModList },
15750   { &hf_nr_rrc_measIdToRemoveList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_MeasIdToRemoveList },
15751   { &hf_nr_rrc_measIdToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_MeasIdToAddModList },
15752   { &hf_nr_rrc_s_MeasureConfig, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_s_MeasureConfig },
15753   { &hf_nr_rrc_quantityConfig, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_QuantityConfig },
15754   { &hf_nr_rrc_measGapConfig_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_MeasGapConfig },
15755   { &hf_nr_rrc_measGapSharingConfig, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_MeasGapSharingConfig },
15756   { NULL, 0, 0, NULL }
15757 };
15758
15759 static int
15760 dissect_nr_rrc_MeasConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15761   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
15762                                    ett_nr_rrc_MeasConfig, MeasConfig_sequence);
15763
15764   return offset;
15765 }
15766
15767
15768
15769 static int
15770 dissect_nr_rrc_T_masterCellGroup(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15771   offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index,
15772                                                                 NO_BOUND, NO_BOUND, FALSE, dissect_nr_rrc_CellGroupConfig_PDU);
15773
15774   return offset;
15775 }
15776
15777
15778 static const value_string nr_rrc_T_fullConfig_vals[] = {
15779   {   0, "true" },
15780   { 0, NULL }
15781 };
15782
15783
15784 static int
15785 dissect_nr_rrc_T_fullConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15786   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
15787                                      1, NULL, FALSE, 0, NULL);
15788
15789   return offset;
15790 }
15791
15792
15793
15794 static int
15795 dissect_nr_rrc_DedicatedNAS_Message(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15796   tvbuff_t *nas_5gs_tvb = NULL;
15797   proto_tree *subtree;
15798   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
15799                                        NO_BOUND, NO_BOUND, FALSE, &nas_5gs_tvb);
15800
15801   if (nas_5gs_tvb && nas_5gs_handle) {
15802     subtree = proto_item_add_subtree(actx->created_item, ett_nr_rrc_DedicatedNAS_Message);
15803     nr_rrc_call_dissector(nas_5gs_handle, nas_5gs_tvb, actx->pinfo, subtree);
15804   }
15805
15806
15807   return offset;
15808 }
15809
15810
15811 static const per_sequence_t SEQUENCE_SIZE_1_maxDRB_OF_DedicatedNAS_Message_sequence_of[1] = {
15812   { &hf_nr_rrc_dedicatedNAS_MessageList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_DedicatedNAS_Message },
15813 };
15814
15815 static int
15816 dissect_nr_rrc_SEQUENCE_SIZE_1_maxDRB_OF_DedicatedNAS_Message(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15817   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
15818                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxDRB_OF_DedicatedNAS_Message, SEQUENCE_SIZE_1_maxDRB_OF_DedicatedNAS_Message_sequence_of,
15819                                                   1, maxDRB, FALSE);
15820
15821   return offset;
15822 }
15823
15824
15825
15826 static int
15827 dissect_nr_rrc_NextHopChainingCount(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15828   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
15829                                                             0U, 7U, NULL, FALSE);
15830
15831   return offset;
15832 }
15833
15834
15835
15836 static int
15837 dissect_nr_rrc_T_nas_Container(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15838   tvbuff_t *nas_5gs_tvb = NULL;
15839   proto_tree *subtree;
15840   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
15841                                        NO_BOUND, NO_BOUND, FALSE, &nas_5gs_tvb);
15842
15843   if (nas_5gs_tvb && nas_5gs_handle) {
15844     subtree = proto_item_add_subtree(actx->created_item, ett_nr_rrc_nas_Container);
15845     nr_rrc_call_dissector(nas_5gs_handle, nas_5gs_tvb, actx->pinfo, subtree);
15846   }
15847
15848
15849   return offset;
15850 }
15851
15852
15853 static const per_sequence_t MasterKeyUpdate_sequence[] = {
15854   { &hf_nr_rrc_keySetChangeIndicator, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
15855   { &hf_nr_rrc_nextHopChainingCount, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_NextHopChainingCount },
15856   { &hf_nr_rrc_nas_Container, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_nas_Container },
15857   { NULL, 0, 0, NULL }
15858 };
15859
15860 static int
15861 dissect_nr_rrc_MasterKeyUpdate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15862   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
15863                                    ett_nr_rrc_MasterKeyUpdate, MasterKeyUpdate_sequence);
15864
15865   return offset;
15866 }
15867
15868
15869
15870 static int
15871 dissect_nr_rrc_T_dedicatedSIB1_Delivery(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15872   offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index,
15873                                                                 NO_BOUND, NO_BOUND, FALSE, dissect_nr_rrc_SIB1_PDU);
15874
15875   return offset;
15876 }
15877
15878
15879
15880 static int
15881 dissect_nr_rrc_T_dedicatedSystemInformationDelivery(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15882   offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index,
15883                                                                 NO_BOUND, NO_BOUND, FALSE, dissect_SystemInformation_PDU);
15884
15885   return offset;
15886 }
15887
15888
15889 static const value_string nr_rrc_T_delayBudgetReportingProhibitTimer_vals[] = {
15890   {   0, "s0" },
15891   {   1, "s0dot4" },
15892   {   2, "s0dot8" },
15893   {   3, "s1dot6" },
15894   {   4, "s3" },
15895   {   5, "s6" },
15896   {   6, "s12" },
15897   {   7, "s30" },
15898   { 0, NULL }
15899 };
15900
15901
15902 static int
15903 dissect_nr_rrc_T_delayBudgetReportingProhibitTimer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15904   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
15905                                      8, NULL, FALSE, 0, NULL);
15906
15907   return offset;
15908 }
15909
15910
15911 static const per_sequence_t T_setup_sequence[] = {
15912   { &hf_nr_rrc_delayBudgetReportingProhibitTimer, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_delayBudgetReportingProhibitTimer },
15913   { NULL, 0, 0, NULL }
15914 };
15915
15916 static int
15917 dissect_nr_rrc_T_setup(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15918   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
15919                                    ett_nr_rrc_T_setup, T_setup_sequence);
15920
15921   return offset;
15922 }
15923
15924
15925 static const value_string nr_rrc_T_delayBudgetReportingConfig_vals[] = {
15926   {   0, "release" },
15927   {   1, "setup" },
15928   { 0, NULL }
15929 };
15930
15931 static const per_choice_t T_delayBudgetReportingConfig_choice[] = {
15932   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
15933   {   1, &hf_nr_rrc_setup_49     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_setup },
15934   { 0, NULL, 0, NULL }
15935 };
15936
15937 static int
15938 dissect_nr_rrc_T_delayBudgetReportingConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15939   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
15940                                  ett_nr_rrc_T_delayBudgetReportingConfig, T_delayBudgetReportingConfig_choice,
15941                                  NULL);
15942
15943   return offset;
15944 }
15945
15946
15947 static const per_sequence_t OtherConfig_sequence[] = {
15948   { &hf_nr_rrc_delayBudgetReportingConfig, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_delayBudgetReportingConfig },
15949   { NULL, 0, 0, NULL }
15950 };
15951
15952 static int
15953 dissect_nr_rrc_OtherConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15954   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
15955                                    ett_nr_rrc_OtherConfig, OtherConfig_sequence);
15956
15957   return offset;
15958 }
15959
15960
15961 static const per_sequence_t T_nonCriticalExtension_16_sequence[] = {
15962   { NULL, 0, 0, NULL }
15963 };
15964
15965 static int
15966 dissect_nr_rrc_T_nonCriticalExtension_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15967   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
15968                                    ett_nr_rrc_T_nonCriticalExtension_16, T_nonCriticalExtension_16_sequence);
15969
15970   return offset;
15971 }
15972
15973
15974 static const per_sequence_t RRCReconfiguration_v1530_IEs_sequence[] = {
15975   { &hf_nr_rrc_masterCellGroup, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_masterCellGroup },
15976   { &hf_nr_rrc_fullConfig   , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_fullConfig },
15977   { &hf_nr_rrc_dedicatedNAS_MessageList, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxDRB_OF_DedicatedNAS_Message },
15978   { &hf_nr_rrc_masterKeyUpdate, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MasterKeyUpdate },
15979   { &hf_nr_rrc_dedicatedSIB1_Delivery, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_dedicatedSIB1_Delivery },
15980   { &hf_nr_rrc_dedicatedSystemInformationDelivery, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_dedicatedSystemInformationDelivery },
15981   { &hf_nr_rrc_otherConfig  , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_OtherConfig },
15982   { &hf_nr_rrc_nonCriticalExtension_17, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_16 },
15983   { NULL, 0, 0, NULL }
15984 };
15985
15986 static int
15987 dissect_nr_rrc_RRCReconfiguration_v1530_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
15988   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
15989                                    ett_nr_rrc_RRCReconfiguration_v1530_IEs, RRCReconfiguration_v1530_IEs_sequence);
15990
15991   return offset;
15992 }
15993
15994
15995 static const per_sequence_t RRCReconfiguration_IEs_sequence[] = {
15996   { &hf_nr_rrc_radioBearerConfig, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_RadioBearerConfig },
15997   { &hf_nr_rrc_secondaryCellGroup, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_secondaryCellGroup },
15998   { &hf_nr_rrc_measConfig   , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MeasConfig },
15999   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
16000   { &hf_nr_rrc_nonCriticalExtension_16, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_RRCReconfiguration_v1530_IEs },
16001   { NULL, 0, 0, NULL }
16002 };
16003
16004 static int
16005 dissect_nr_rrc_RRCReconfiguration_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16006   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16007                                    ett_nr_rrc_RRCReconfiguration_IEs, RRCReconfiguration_IEs_sequence);
16008
16009   return offset;
16010 }
16011
16012
16013 static const per_sequence_t T_criticalExtensionsFuture_15_sequence[] = {
16014   { NULL, 0, 0, NULL }
16015 };
16016
16017 static int
16018 dissect_nr_rrc_T_criticalExtensionsFuture_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16019   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16020                                    ett_nr_rrc_T_criticalExtensionsFuture_15, T_criticalExtensionsFuture_15_sequence);
16021
16022   return offset;
16023 }
16024
16025
16026 static const value_string nr_rrc_T_criticalExtensions_15_vals[] = {
16027   {   0, "rrcReconfiguration" },
16028   {   1, "criticalExtensionsFuture" },
16029   { 0, NULL }
16030 };
16031
16032 static const per_choice_t T_criticalExtensions_15_choice[] = {
16033   {   0, &hf_nr_rrc_rrcReconfiguration_02, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RRCReconfiguration_IEs },
16034   {   1, &hf_nr_rrc_criticalExtensionsFuture_15, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_15 },
16035   { 0, NULL, 0, NULL }
16036 };
16037
16038 static int
16039 dissect_nr_rrc_T_criticalExtensions_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16040   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
16041                                  ett_nr_rrc_T_criticalExtensions_15, T_criticalExtensions_15_choice,
16042                                  NULL);
16043
16044   return offset;
16045 }
16046
16047
16048 static const per_sequence_t RRCReconfiguration_sequence[] = {
16049   { &hf_nr_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RRC_TransactionIdentifier },
16050   { &hf_nr_rrc_criticalExtensions_15, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_15 },
16051   { NULL, 0, 0, NULL }
16052 };
16053
16054 static int
16055 dissect_nr_rrc_RRCReconfiguration(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16056   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRC Reconfiguration");
16057
16058   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16059                                    ett_nr_rrc_RRCReconfiguration, RRCReconfiguration_sequence);
16060
16061   return offset;
16062 }
16063
16064
16065
16066 static int
16067 dissect_nr_rrc_T_masterCellGroup_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16068   offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index,
16069                                                                 NO_BOUND, NO_BOUND, FALSE, dissect_nr_rrc_CellGroupConfig_PDU);
16070
16071   return offset;
16072 }
16073
16074
16075 static const value_string nr_rrc_T_fullConfig_01_vals[] = {
16076   {   0, "true" },
16077   { 0, NULL }
16078 };
16079
16080
16081 static int
16082 dissect_nr_rrc_T_fullConfig_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16083   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
16084                                      1, NULL, FALSE, 0, NULL);
16085
16086   return offset;
16087 }
16088
16089
16090 static const per_sequence_t T_nonCriticalExtension_20_sequence[] = {
16091   { NULL, 0, 0, NULL }
16092 };
16093
16094 static int
16095 dissect_nr_rrc_T_nonCriticalExtension_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16096   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16097                                    ett_nr_rrc_T_nonCriticalExtension_20, T_nonCriticalExtension_20_sequence);
16098
16099   return offset;
16100 }
16101
16102
16103 static const per_sequence_t RRCResume_IEs_sequence[] = {
16104   { &hf_nr_rrc_radioBearerConfig, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_RadioBearerConfig },
16105   { &hf_nr_rrc_masterCellGroup_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_masterCellGroup_01 },
16106   { &hf_nr_rrc_measConfig   , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MeasConfig },
16107   { &hf_nr_rrc_fullConfig_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_fullConfig_01 },
16108   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
16109   { &hf_nr_rrc_nonCriticalExtension_22, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_20 },
16110   { NULL, 0, 0, NULL }
16111 };
16112
16113 static int
16114 dissect_nr_rrc_RRCResume_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16115   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16116                                    ett_nr_rrc_RRCResume_IEs, RRCResume_IEs_sequence);
16117
16118   return offset;
16119 }
16120
16121
16122 static const per_sequence_t T_criticalExtensionsFuture_19_sequence[] = {
16123   { NULL, 0, 0, NULL }
16124 };
16125
16126 static int
16127 dissect_nr_rrc_T_criticalExtensionsFuture_19(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16128   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16129                                    ett_nr_rrc_T_criticalExtensionsFuture_19, T_criticalExtensionsFuture_19_sequence);
16130
16131   return offset;
16132 }
16133
16134
16135 static const value_string nr_rrc_T_criticalExtensions_19_vals[] = {
16136   {   0, "rrcResume" },
16137   {   1, "criticalExtensionsFuture" },
16138   { 0, NULL }
16139 };
16140
16141 static const per_choice_t T_criticalExtensions_19_choice[] = {
16142   {   0, &hf_nr_rrc_rrcResume_01 , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RRCResume_IEs },
16143   {   1, &hf_nr_rrc_criticalExtensionsFuture_19, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_19 },
16144   { 0, NULL, 0, NULL }
16145 };
16146
16147 static int
16148 dissect_nr_rrc_T_criticalExtensions_19(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16149   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
16150                                  ett_nr_rrc_T_criticalExtensions_19, T_criticalExtensions_19_choice,
16151                                  NULL);
16152
16153   return offset;
16154 }
16155
16156
16157 static const per_sequence_t RRCResume_sequence[] = {
16158   { &hf_nr_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RRC_TransactionIdentifier },
16159   { &hf_nr_rrc_criticalExtensions_19, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_19 },
16160   { NULL, 0, 0, NULL }
16161 };
16162
16163 static int
16164 dissect_nr_rrc_RRCResume(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16165   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRC Resume");
16166
16167   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16168                                    ett_nr_rrc_RRCResume, RRCResume_sequence);
16169
16170   return offset;
16171 }
16172
16173
16174 static const per_sequence_t CarrierInfoNR_sequence[] = {
16175   { &hf_nr_rrc_carrierFreq  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ARFCN_ValueNR },
16176   { &hf_nr_rrc_ssbSubcarrierSpacing, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SubcarrierSpacing },
16177   { &hf_nr_rrc_smtc         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SSB_MTC },
16178   { NULL, 0, 0, NULL }
16179 };
16180
16181 static int
16182 dissect_nr_rrc_CarrierInfoNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16183   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16184                                    ett_nr_rrc_CarrierInfoNR, CarrierInfoNR_sequence);
16185
16186   return offset;
16187 }
16188
16189
16190 static const value_string nr_rrc_T_cnType_r15_vals[] = {
16191   {   0, "epc" },
16192   {   1, "fiveGC" },
16193   { 0, NULL }
16194 };
16195
16196
16197 static int
16198 dissect_nr_rrc_T_cnType_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16199   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
16200                                      2, NULL, FALSE, 0, NULL);
16201
16202   return offset;
16203 }
16204
16205
16206 static const per_sequence_t RedirectedCarrierInfo_EUTRA_sequence[] = {
16207   { &hf_nr_rrc_eutraFrequency, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ARFCN_ValueEUTRA },
16208   { &hf_nr_rrc_cnType_r15   , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_cnType_r15 },
16209   { NULL, 0, 0, NULL }
16210 };
16211
16212 static int
16213 dissect_nr_rrc_RedirectedCarrierInfo_EUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16214   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16215                                    ett_nr_rrc_RedirectedCarrierInfo_EUTRA, RedirectedCarrierInfo_EUTRA_sequence);
16216
16217   return offset;
16218 }
16219
16220
16221 static const value_string nr_rrc_RedirectedCarrierInfo_vals[] = {
16222   {   0, "nr" },
16223   {   1, "eutra" },
16224   { 0, NULL }
16225 };
16226
16227 static const per_choice_t RedirectedCarrierInfo_choice[] = {
16228   {   0, &hf_nr_rrc_nr           , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_CarrierInfoNR },
16229   {   1, &hf_nr_rrc_eutra        , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_RedirectedCarrierInfo_EUTRA },
16230   { 0, NULL, 0, NULL }
16231 };
16232
16233 static int
16234 dissect_nr_rrc_RedirectedCarrierInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16235   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
16236                                  ett_nr_rrc_RedirectedCarrierInfo, RedirectedCarrierInfo_choice,
16237                                  NULL);
16238
16239   return offset;
16240 }
16241
16242
16243 static const per_sequence_t FreqPriorityEUTRA_sequence[] = {
16244   { &hf_nr_rrc_carrierFreq_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ARFCN_ValueEUTRA },
16245   { &hf_nr_rrc_cellReselectionPriority, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CellReselectionPriority },
16246   { &hf_nr_rrc_cellReselectionSubPriority, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_CellReselectionSubPriority },
16247   { NULL, 0, 0, NULL }
16248 };
16249
16250 static int
16251 dissect_nr_rrc_FreqPriorityEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16252   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16253                                    ett_nr_rrc_FreqPriorityEUTRA, FreqPriorityEUTRA_sequence);
16254
16255   return offset;
16256 }
16257
16258
16259 static const per_sequence_t FreqPriorityListEUTRA_sequence_of[1] = {
16260   { &hf_nr_rrc_FreqPriorityListEUTRA_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FreqPriorityEUTRA },
16261 };
16262
16263 static int
16264 dissect_nr_rrc_FreqPriorityListEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16265   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
16266                                                   ett_nr_rrc_FreqPriorityListEUTRA, FreqPriorityListEUTRA_sequence_of,
16267                                                   1, maxFreq, FALSE);
16268
16269   return offset;
16270 }
16271
16272
16273 static const per_sequence_t FreqPriorityNR_sequence[] = {
16274   { &hf_nr_rrc_carrierFreq  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ARFCN_ValueNR },
16275   { &hf_nr_rrc_cellReselectionPriority, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CellReselectionPriority },
16276   { &hf_nr_rrc_cellReselectionSubPriority, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_CellReselectionSubPriority },
16277   { NULL, 0, 0, NULL }
16278 };
16279
16280 static int
16281 dissect_nr_rrc_FreqPriorityNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16282   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16283                                    ett_nr_rrc_FreqPriorityNR, FreqPriorityNR_sequence);
16284
16285   return offset;
16286 }
16287
16288
16289 static const per_sequence_t FreqPriorityListNR_sequence_of[1] = {
16290   { &hf_nr_rrc_FreqPriorityListNR_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FreqPriorityNR },
16291 };
16292
16293 static int
16294 dissect_nr_rrc_FreqPriorityListNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16295   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
16296                                                   ett_nr_rrc_FreqPriorityListNR, FreqPriorityListNR_sequence_of,
16297                                                   1, maxFreq, FALSE);
16298
16299   return offset;
16300 }
16301
16302
16303 static const value_string nr_rrc_T_t320_vals[] = {
16304   {   0, "min5" },
16305   {   1, "min10" },
16306   {   2, "min20" },
16307   {   3, "min30" },
16308   {   4, "min60" },
16309   {   5, "min120" },
16310   {   6, "min180" },
16311   {   7, "spare1" },
16312   { 0, NULL }
16313 };
16314
16315
16316 static int
16317 dissect_nr_rrc_T_t320(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16318   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
16319                                      8, NULL, FALSE, 0, NULL);
16320
16321   return offset;
16322 }
16323
16324
16325 static const per_sequence_t CellReselectionPriorities_sequence[] = {
16326   { &hf_nr_rrc_freqPriorityListEUTRA, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_FreqPriorityListEUTRA },
16327   { &hf_nr_rrc_freqPriorityListNR, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_FreqPriorityListNR },
16328   { &hf_nr_rrc_t320         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_t320 },
16329   { NULL, 0, 0, NULL }
16330 };
16331
16332 static int
16333 dissect_nr_rrc_CellReselectionPriorities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16334   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16335                                    ett_nr_rrc_CellReselectionPriorities, CellReselectionPriorities_sequence);
16336
16337   return offset;
16338 }
16339
16340
16341
16342 static int
16343 dissect_nr_rrc_I_RNTI_Value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16344   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
16345                                      40, 40, FALSE, NULL, NULL);
16346
16347   return offset;
16348 }
16349
16350
16351
16352 static int
16353 dissect_nr_rrc_ShortI_RNTI_Value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16354   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
16355                                      24, 24, FALSE, NULL, NULL);
16356
16357   return offset;
16358 }
16359
16360
16361 static const value_string nr_rrc_PeriodicRNAU_TimerValue_vals[] = {
16362   {   0, "min5" },
16363   {   1, "min10" },
16364   {   2, "min20" },
16365   {   3, "min30" },
16366   {   4, "min60" },
16367   {   5, "min120" },
16368   {   6, "min360" },
16369   {   7, "min720" },
16370   { 0, NULL }
16371 };
16372
16373
16374 static int
16375 dissect_nr_rrc_PeriodicRNAU_TimerValue(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16376   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
16377                                      8, NULL, FALSE, 0, NULL);
16378
16379   return offset;
16380 }
16381
16382
16383 static const per_sequence_t SuspendConfig_sequence[] = {
16384   { &hf_nr_rrc_fullI_RNTI   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_I_RNTI_Value },
16385   { &hf_nr_rrc_shortI_RNTI  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ShortI_RNTI_Value },
16386   { &hf_nr_rrc_ran_PagingCycle, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PagingCycle },
16387   { &hf_nr_rrc_ran_NotificationAreaInfo, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_RAN_NotificationAreaInfo },
16388   { &hf_nr_rrc_t380         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_PeriodicRNAU_TimerValue },
16389   { &hf_nr_rrc_nextHopChainingCount, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_NextHopChainingCount },
16390   { NULL, 0, 0, NULL }
16391 };
16392
16393 static int
16394 dissect_nr_rrc_SuspendConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16395   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16396                                    ett_nr_rrc_SuspendConfig, SuspendConfig_sequence);
16397
16398   return offset;
16399 }
16400
16401
16402 static const value_string nr_rrc_T_deprioritisationType_vals[] = {
16403   {   0, "frequency" },
16404   {   1, "nr" },
16405   { 0, NULL }
16406 };
16407
16408
16409 static int
16410 dissect_nr_rrc_T_deprioritisationType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16411   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
16412                                      2, NULL, FALSE, 0, NULL);
16413
16414   return offset;
16415 }
16416
16417
16418 static const value_string nr_rrc_T_deprioritisationTimer_vals[] = {
16419   {   0, "min5" },
16420   {   1, "min10" },
16421   {   2, "min15" },
16422   {   3, "min30" },
16423   { 0, NULL }
16424 };
16425
16426
16427 static int
16428 dissect_nr_rrc_T_deprioritisationTimer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16429   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
16430                                      4, NULL, FALSE, 0, NULL);
16431
16432   return offset;
16433 }
16434
16435
16436 static const per_sequence_t T_deprioritisationReq_sequence[] = {
16437   { &hf_nr_rrc_deprioritisationType, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_deprioritisationType },
16438   { &hf_nr_rrc_deprioritisationTimer, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_deprioritisationTimer },
16439   { NULL, 0, 0, NULL }
16440 };
16441
16442 static int
16443 dissect_nr_rrc_T_deprioritisationReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16444   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16445                                    ett_nr_rrc_T_deprioritisationReq, T_deprioritisationReq_sequence);
16446
16447   return offset;
16448 }
16449
16450
16451 static const per_sequence_t T_nonCriticalExtension_19_sequence[] = {
16452   { NULL, 0, 0, NULL }
16453 };
16454
16455 static int
16456 dissect_nr_rrc_T_nonCriticalExtension_19(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16457   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16458                                    ett_nr_rrc_T_nonCriticalExtension_19, T_nonCriticalExtension_19_sequence);
16459
16460   return offset;
16461 }
16462
16463
16464 static const per_sequence_t RRCRelease_IEs_sequence[] = {
16465   { &hf_nr_rrc_redirectedCarrierInfo, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_RedirectedCarrierInfo },
16466   { &hf_nr_rrc_cellReselectionPriorities, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_CellReselectionPriorities },
16467   { &hf_nr_rrc_suspendConfig, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SuspendConfig },
16468   { &hf_nr_rrc_deprioritisationReq, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_deprioritisationReq },
16469   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
16470   { &hf_nr_rrc_nonCriticalExtension_21, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_19 },
16471   { NULL, 0, 0, NULL }
16472 };
16473
16474 static int
16475 dissect_nr_rrc_RRCRelease_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16476   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16477                                    ett_nr_rrc_RRCRelease_IEs, RRCRelease_IEs_sequence);
16478
16479   return offset;
16480 }
16481
16482
16483 static const per_sequence_t T_criticalExtensionsFuture_18_sequence[] = {
16484   { NULL, 0, 0, NULL }
16485 };
16486
16487 static int
16488 dissect_nr_rrc_T_criticalExtensionsFuture_18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16489   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16490                                    ett_nr_rrc_T_criticalExtensionsFuture_18, T_criticalExtensionsFuture_18_sequence);
16491
16492   return offset;
16493 }
16494
16495
16496 static const value_string nr_rrc_T_criticalExtensions_18_vals[] = {
16497   {   0, "rrcRelease" },
16498   {   1, "criticalExtensionsFuture" },
16499   { 0, NULL }
16500 };
16501
16502 static const per_choice_t T_criticalExtensions_18_choice[] = {
16503   {   0, &hf_nr_rrc_rrcRelease_01, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RRCRelease_IEs },
16504   {   1, &hf_nr_rrc_criticalExtensionsFuture_18, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_18 },
16505   { 0, NULL, 0, NULL }
16506 };
16507
16508 static int
16509 dissect_nr_rrc_T_criticalExtensions_18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16510   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
16511                                  ett_nr_rrc_T_criticalExtensions_18, T_criticalExtensions_18_choice,
16512                                  NULL);
16513
16514   return offset;
16515 }
16516
16517
16518 static const per_sequence_t RRCRelease_sequence[] = {
16519   { &hf_nr_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RRC_TransactionIdentifier },
16520   { &hf_nr_rrc_criticalExtensions_18, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_18 },
16521   { NULL, 0, 0, NULL }
16522 };
16523
16524 static int
16525 dissect_nr_rrc_RRCRelease(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16526   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRC Release");
16527
16528   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16529                                    ett_nr_rrc_RRCRelease, RRCRelease_sequence);
16530
16531   return offset;
16532 }
16533
16534
16535 static const per_sequence_t T_nonCriticalExtension_14_sequence[] = {
16536   { NULL, 0, 0, NULL }
16537 };
16538
16539 static int
16540 dissect_nr_rrc_T_nonCriticalExtension_14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16541   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16542                                    ett_nr_rrc_T_nonCriticalExtension_14, T_nonCriticalExtension_14_sequence);
16543
16544   return offset;
16545 }
16546
16547
16548 static const per_sequence_t RRCReestablishment_IEs_sequence[] = {
16549   { &hf_nr_rrc_nextHopChainingCount, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_NextHopChainingCount },
16550   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
16551   { &hf_nr_rrc_nonCriticalExtension_14, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_14 },
16552   { NULL, 0, 0, NULL }
16553 };
16554
16555 static int
16556 dissect_nr_rrc_RRCReestablishment_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16557   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16558                                    ett_nr_rrc_RRCReestablishment_IEs, RRCReestablishment_IEs_sequence);
16559
16560   return offset;
16561 }
16562
16563
16564 static const per_sequence_t T_criticalExtensionsFuture_13_sequence[] = {
16565   { NULL, 0, 0, NULL }
16566 };
16567
16568 static int
16569 dissect_nr_rrc_T_criticalExtensionsFuture_13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16570   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16571                                    ett_nr_rrc_T_criticalExtensionsFuture_13, T_criticalExtensionsFuture_13_sequence);
16572
16573   return offset;
16574 }
16575
16576
16577 static const value_string nr_rrc_T_criticalExtensions_13_vals[] = {
16578   {   0, "rrcReestablishment" },
16579   {   1, "criticalExtensionsFuture" },
16580   { 0, NULL }
16581 };
16582
16583 static const per_choice_t T_criticalExtensions_13_choice[] = {
16584   {   0, &hf_nr_rrc_rrcReestablishment_01, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RRCReestablishment_IEs },
16585   {   1, &hf_nr_rrc_criticalExtensionsFuture_13, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_13 },
16586   { 0, NULL, 0, NULL }
16587 };
16588
16589 static int
16590 dissect_nr_rrc_T_criticalExtensions_13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16591   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
16592                                  ett_nr_rrc_T_criticalExtensions_13, T_criticalExtensions_13_choice,
16593                                  NULL);
16594
16595   return offset;
16596 }
16597
16598
16599 static const per_sequence_t RRCReestablishment_sequence[] = {
16600   { &hf_nr_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RRC_TransactionIdentifier },
16601   { &hf_nr_rrc_criticalExtensions_13, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_13 },
16602   { NULL, 0, 0, NULL }
16603 };
16604
16605 static int
16606 dissect_nr_rrc_RRCReestablishment(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16607   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRC Reestablishment");
16608
16609   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16610                                    ett_nr_rrc_RRCReestablishment, RRCReestablishment_sequence);
16611
16612   return offset;
16613 }
16614
16615
16616 static const per_sequence_t SecurityConfigSMC_sequence[] = {
16617   { &hf_nr_rrc_securityAlgorithmConfig, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SecurityAlgorithmConfig },
16618   { NULL, 0, 0, NULL }
16619 };
16620
16621 static int
16622 dissect_nr_rrc_SecurityConfigSMC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16623   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16624                                    ett_nr_rrc_SecurityConfigSMC, SecurityConfigSMC_sequence);
16625
16626   return offset;
16627 }
16628
16629
16630 static const per_sequence_t T_nonCriticalExtension_24_sequence[] = {
16631   { NULL, 0, 0, NULL }
16632 };
16633
16634 static int
16635 dissect_nr_rrc_T_nonCriticalExtension_24(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16636   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16637                                    ett_nr_rrc_T_nonCriticalExtension_24, T_nonCriticalExtension_24_sequence);
16638
16639   return offset;
16640 }
16641
16642
16643 static const per_sequence_t SecurityModeCommand_IEs_sequence[] = {
16644   { &hf_nr_rrc_securityConfigSMC, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SecurityConfigSMC },
16645   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
16646   { &hf_nr_rrc_nonCriticalExtension_26, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_24 },
16647   { NULL, 0, 0, NULL }
16648 };
16649
16650 static int
16651 dissect_nr_rrc_SecurityModeCommand_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16652   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16653                                    ett_nr_rrc_SecurityModeCommand_IEs, SecurityModeCommand_IEs_sequence);
16654
16655   return offset;
16656 }
16657
16658
16659 static const per_sequence_t T_criticalExtensionsFuture_24_sequence[] = {
16660   { NULL, 0, 0, NULL }
16661 };
16662
16663 static int
16664 dissect_nr_rrc_T_criticalExtensionsFuture_24(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16665   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16666                                    ett_nr_rrc_T_criticalExtensionsFuture_24, T_criticalExtensionsFuture_24_sequence);
16667
16668   return offset;
16669 }
16670
16671
16672 static const value_string nr_rrc_T_criticalExtensions_24_vals[] = {
16673   {   0, "securityModeCommand" },
16674   {   1, "criticalExtensionsFuture" },
16675   { 0, NULL }
16676 };
16677
16678 static const per_choice_t T_criticalExtensions_24_choice[] = {
16679   {   0, &hf_nr_rrc_securityModeCommand_01, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SecurityModeCommand_IEs },
16680   {   1, &hf_nr_rrc_criticalExtensionsFuture_24, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_24 },
16681   { 0, NULL, 0, NULL }
16682 };
16683
16684 static int
16685 dissect_nr_rrc_T_criticalExtensions_24(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16686   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
16687                                  ett_nr_rrc_T_criticalExtensions_24, T_criticalExtensions_24_choice,
16688                                  NULL);
16689
16690   return offset;
16691 }
16692
16693
16694 static const per_sequence_t SecurityModeCommand_sequence[] = {
16695   { &hf_nr_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RRC_TransactionIdentifier },
16696   { &hf_nr_rrc_criticalExtensions_24, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_24 },
16697   { NULL, 0, 0, NULL }
16698 };
16699
16700 static int
16701 dissect_nr_rrc_SecurityModeCommand(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16702   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Security Mode Command");
16703
16704   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16705                                    ett_nr_rrc_SecurityModeCommand, SecurityModeCommand_sequence);
16706
16707   return offset;
16708 }
16709
16710
16711 static const per_sequence_t T_nonCriticalExtension_09_sequence[] = {
16712   { NULL, 0, 0, NULL }
16713 };
16714
16715 static int
16716 dissect_nr_rrc_T_nonCriticalExtension_09(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16717   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16718                                    ett_nr_rrc_T_nonCriticalExtension_09, T_nonCriticalExtension_09_sequence);
16719
16720   return offset;
16721 }
16722
16723
16724 static const per_sequence_t DLInformationTransfer_IEs_sequence[] = {
16725   { &hf_nr_rrc_dedicatedNAS_Message, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_DedicatedNAS_Message },
16726   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
16727   { &hf_nr_rrc_nonCriticalExtension_09, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_09 },
16728   { NULL, 0, 0, NULL }
16729 };
16730
16731 static int
16732 dissect_nr_rrc_DLInformationTransfer_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16733   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16734                                    ett_nr_rrc_DLInformationTransfer_IEs, DLInformationTransfer_IEs_sequence);
16735
16736   return offset;
16737 }
16738
16739
16740 static const per_sequence_t T_criticalExtensionsFuture_09_sequence[] = {
16741   { NULL, 0, 0, NULL }
16742 };
16743
16744 static int
16745 dissect_nr_rrc_T_criticalExtensionsFuture_09(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16746   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16747                                    ett_nr_rrc_T_criticalExtensionsFuture_09, T_criticalExtensionsFuture_09_sequence);
16748
16749   return offset;
16750 }
16751
16752
16753 static const value_string nr_rrc_T_criticalExtensions_09_vals[] = {
16754   {   0, "dlInformationTransfer" },
16755   {   1, "criticalExtensionsFuture" },
16756   { 0, NULL }
16757 };
16758
16759 static const per_choice_t T_criticalExtensions_09_choice[] = {
16760   {   0, &hf_nr_rrc_dlInformationTransfer_01, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_DLInformationTransfer_IEs },
16761   {   1, &hf_nr_rrc_criticalExtensionsFuture_09, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_09 },
16762   { 0, NULL, 0, NULL }
16763 };
16764
16765 static int
16766 dissect_nr_rrc_T_criticalExtensions_09(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16767   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
16768                                  ett_nr_rrc_T_criticalExtensions_09, T_criticalExtensions_09_choice,
16769                                  NULL);
16770
16771   return offset;
16772 }
16773
16774
16775 static const per_sequence_t DLInformationTransfer_sequence[] = {
16776   { &hf_nr_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RRC_TransactionIdentifier },
16777   { &hf_nr_rrc_criticalExtensions_09, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_09 },
16778   { NULL, 0, 0, NULL }
16779 };
16780
16781 static int
16782 dissect_nr_rrc_DLInformationTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16783   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DL Information Transfer");
16784
16785   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16786                                    ett_nr_rrc_DLInformationTransfer, DLInformationTransfer_sequence);
16787
16788   return offset;
16789 }
16790
16791
16792
16793 static int
16794 dissect_nr_rrc_T_capabilityRequestFilter(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16795   tvbuff_t *cap_req_filter_tvb = NULL;
16796   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
16797                                        NO_BOUND, NO_BOUND, FALSE, &cap_req_filter_tvb);
16798
16799
16800
16801   if (cap_req_filter_tvb) {
16802     nr_rrc_private_data_t *nr_priv = nr_rrc_get_private_data(actx);
16803     proto_tree *subtree;
16804
16805     subtree = proto_item_add_subtree(actx->created_item, ett_nr_rrc_capabilityRequestFilter);
16806     switch(nr_priv->rat_type){
16807     case RAT_Type_nr:
16808       dissect_UE_CapabilityRequestFilterNR_PDU(cap_req_filter_tvb, actx->pinfo, subtree, NULL);
16809       break;
16810     default:
16811       break;
16812     }
16813   }
16814
16815   return offset;
16816 }
16817
16818
16819 static const per_sequence_t UE_CapabilityRAT_Request_sequence[] = {
16820   { &hf_nr_rrc_rat_Type     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RAT_Type },
16821   { &hf_nr_rrc_capabilityRequestFilter, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_capabilityRequestFilter },
16822   { NULL, 0, 0, NULL }
16823 };
16824
16825 static int
16826 dissect_nr_rrc_UE_CapabilityRAT_Request(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16827   nr_rrc_private_data_t *nr_priv = nr_rrc_get_private_data(actx);
16828   /* Initialise to invalid value */
16829   nr_priv->rat_type = 0xFF;
16830   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16831                                    ett_nr_rrc_UE_CapabilityRAT_Request, UE_CapabilityRAT_Request_sequence);
16832
16833
16834
16835   return offset;
16836 }
16837
16838
16839 static const per_sequence_t UE_CapabilityRAT_RequestList_sequence_of[1] = {
16840   { &hf_nr_rrc_UE_CapabilityRAT_RequestList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_UE_CapabilityRAT_Request },
16841 };
16842
16843 static int
16844 dissect_nr_rrc_UE_CapabilityRAT_RequestList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16845   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
16846                                                   ett_nr_rrc_UE_CapabilityRAT_RequestList, UE_CapabilityRAT_RequestList_sequence_of,
16847                                                   1, maxRAT_CapabilityContainers, FALSE);
16848
16849   return offset;
16850 }
16851
16852
16853 static const per_sequence_t T_nonCriticalExtension_30_sequence[] = {
16854   { NULL, 0, 0, NULL }
16855 };
16856
16857 static int
16858 dissect_nr_rrc_T_nonCriticalExtension_30(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16859   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16860                                    ett_nr_rrc_T_nonCriticalExtension_30, T_nonCriticalExtension_30_sequence);
16861
16862   return offset;
16863 }
16864
16865
16866 static const per_sequence_t UECapabilityEnquiry_IEs_sequence[] = {
16867   { &hf_nr_rrc_ue_CapabilityRAT_RequestList, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_UE_CapabilityRAT_RequestList },
16868   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
16869   { &hf_nr_rrc_nonCriticalExtension_32, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_30 },
16870   { NULL, 0, 0, NULL }
16871 };
16872
16873 static int
16874 dissect_nr_rrc_UECapabilityEnquiry_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16875   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16876                                    ett_nr_rrc_UECapabilityEnquiry_IEs, UECapabilityEnquiry_IEs_sequence);
16877
16878   return offset;
16879 }
16880
16881
16882 static const per_sequence_t T_criticalExtensionsFuture_29_sequence[] = {
16883   { NULL, 0, 0, NULL }
16884 };
16885
16886 static int
16887 dissect_nr_rrc_T_criticalExtensionsFuture_29(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16888   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16889                                    ett_nr_rrc_T_criticalExtensionsFuture_29, T_criticalExtensionsFuture_29_sequence);
16890
16891   return offset;
16892 }
16893
16894
16895 static const value_string nr_rrc_T_criticalExtensions_29_vals[] = {
16896   {   0, "ueCapabilityEnquiry" },
16897   {   1, "criticalExtensionsFuture" },
16898   { 0, NULL }
16899 };
16900
16901 static const per_choice_t T_criticalExtensions_29_choice[] = {
16902   {   0, &hf_nr_rrc_ueCapabilityEnquiry_01, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_UECapabilityEnquiry_IEs },
16903   {   1, &hf_nr_rrc_criticalExtensionsFuture_29, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_29 },
16904   { 0, NULL, 0, NULL }
16905 };
16906
16907 static int
16908 dissect_nr_rrc_T_criticalExtensions_29(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16909   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
16910                                  ett_nr_rrc_T_criticalExtensions_29, T_criticalExtensions_29_choice,
16911                                  NULL);
16912
16913   return offset;
16914 }
16915
16916
16917 static const per_sequence_t UECapabilityEnquiry_sequence[] = {
16918   { &hf_nr_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RRC_TransactionIdentifier },
16919   { &hf_nr_rrc_criticalExtensions_29, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_29 },
16920   { NULL, 0, 0, NULL }
16921 };
16922
16923 static int
16924 dissect_nr_rrc_UECapabilityEnquiry(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16925   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UE Capability Enquiry");
16926
16927   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16928                                    ett_nr_rrc_UECapabilityEnquiry, UECapabilityEnquiry_sequence);
16929
16930   return offset;
16931 }
16932
16933
16934
16935 static int
16936 dissect_nr_rrc_INTEGER_0_33554431(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16937   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
16938                                                             0U, 33554431U, NULL, FALSE);
16939
16940   return offset;
16941 }
16942
16943
16944 static const per_sequence_t DRB_CountMSB_Info_sequence[] = {
16945   { &hf_nr_rrc_drb_Identity , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_DRB_Identity },
16946   { &hf_nr_rrc_countMSB_Uplink, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_33554431 },
16947   { &hf_nr_rrc_countMSB_Downlink, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_33554431 },
16948   { NULL, 0, 0, NULL }
16949 };
16950
16951 static int
16952 dissect_nr_rrc_DRB_CountMSB_Info(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16953   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16954                                    ett_nr_rrc_DRB_CountMSB_Info, DRB_CountMSB_Info_sequence);
16955
16956   return offset;
16957 }
16958
16959
16960 static const per_sequence_t DRB_CountMSB_InfoList_sequence_of[1] = {
16961   { &hf_nr_rrc_DRB_CountMSB_InfoList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_DRB_CountMSB_Info },
16962 };
16963
16964 static int
16965 dissect_nr_rrc_DRB_CountMSB_InfoList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16966   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
16967                                                   ett_nr_rrc_DRB_CountMSB_InfoList, DRB_CountMSB_InfoList_sequence_of,
16968                                                   1, maxDRB, FALSE);
16969
16970   return offset;
16971 }
16972
16973
16974 static const per_sequence_t T_nonCriticalExtension_07_sequence[] = {
16975   { NULL, 0, 0, NULL }
16976 };
16977
16978 static int
16979 dissect_nr_rrc_T_nonCriticalExtension_07(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16980   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16981                                    ett_nr_rrc_T_nonCriticalExtension_07, T_nonCriticalExtension_07_sequence);
16982
16983   return offset;
16984 }
16985
16986
16987 static const per_sequence_t CounterCheck_IEs_sequence[] = {
16988   { &hf_nr_rrc_drb_CountMSB_InfoList, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_DRB_CountMSB_InfoList },
16989   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
16990   { &hf_nr_rrc_nonCriticalExtension_07, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_07 },
16991   { NULL, 0, 0, NULL }
16992 };
16993
16994 static int
16995 dissect_nr_rrc_CounterCheck_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
16996   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
16997                                    ett_nr_rrc_CounterCheck_IEs, CounterCheck_IEs_sequence);
16998
16999   return offset;
17000 }
17001
17002
17003 static const per_sequence_t T_criticalExtensionsFuture_07_sequence[] = {
17004   { NULL, 0, 0, NULL }
17005 };
17006
17007 static int
17008 dissect_nr_rrc_T_criticalExtensionsFuture_07(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17009   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
17010                                    ett_nr_rrc_T_criticalExtensionsFuture_07, T_criticalExtensionsFuture_07_sequence);
17011
17012   return offset;
17013 }
17014
17015
17016 static const value_string nr_rrc_T_criticalExtensions_07_vals[] = {
17017   {   0, "counterCheck" },
17018   {   1, "criticalExtensionsFuture" },
17019   { 0, NULL }
17020 };
17021
17022 static const per_choice_t T_criticalExtensions_07_choice[] = {
17023   {   0, &hf_nr_rrc_counterCheck_01, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_CounterCheck_IEs },
17024   {   1, &hf_nr_rrc_criticalExtensionsFuture_07, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_07 },
17025   { 0, NULL, 0, NULL }
17026 };
17027
17028 static int
17029 dissect_nr_rrc_T_criticalExtensions_07(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17030   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
17031                                  ett_nr_rrc_T_criticalExtensions_07, T_criticalExtensions_07_choice,
17032                                  NULL);
17033
17034   return offset;
17035 }
17036
17037
17038 static const per_sequence_t CounterCheck_sequence[] = {
17039   { &hf_nr_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RRC_TransactionIdentifier },
17040   { &hf_nr_rrc_criticalExtensions_07, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_07 },
17041   { NULL, 0, 0, NULL }
17042 };
17043
17044 static int
17045 dissect_nr_rrc_CounterCheck(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17046   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Counter Check");
17047
17048   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
17049                                    ett_nr_rrc_CounterCheck, CounterCheck_sequence);
17050
17051   return offset;
17052 }
17053
17054
17055 static const value_string nr_rrc_T_targetRAT_Type_vals[] = {
17056   { T_targetRAT_Type_eutra, "eutra" },
17057   { T_targetRAT_Type_spare3, "spare3" },
17058   { T_targetRAT_Type_spare2, "spare2" },
17059   { T_targetRAT_Type_spare1, "spare1" },
17060   { 0, NULL }
17061 };
17062
17063
17064 static int
17065 dissect_nr_rrc_T_targetRAT_Type(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17066   guint32 target_rat_type;
17067   nr_rrc_private_data_t *nr_priv = nr_rrc_get_private_data(actx);
17068   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
17069                                      4, &target_rat_type, TRUE, 0, NULL);
17070
17071   nr_priv->target_rat_type = (guint8)target_rat_type;
17072
17073
17074   return offset;
17075 }
17076
17077
17078
17079 static int
17080 dissect_nr_rrc_T_targetRAT_MessageContainer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17081   tvbuff_t *target_rat_msg_cont_tvb = NULL;
17082   offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
17083                                        NO_BOUND, NO_BOUND, FALSE, &target_rat_msg_cont_tvb);
17084
17085   if (target_rat_msg_cont_tvb) {
17086     nr_rrc_private_data_t *nr_priv = nr_rrc_get_private_data(actx);
17087     proto_tree *subtree;
17088     subtree = proto_item_add_subtree(actx->created_item, ett_rr_rrc_targetRAT_MessageContainer);
17089     switch (nr_priv->target_rat_type) {
17090     case T_targetRAT_Type_eutra:
17091       /* eutra */
17092       if (lte_rrc_conn_reconf_handle)
17093         nr_rrc_call_dissector(lte_rrc_conn_reconf_handle, target_rat_msg_cont_tvb, actx->pinfo, subtree);
17094       break;
17095     default:
17096       break;
17097     }
17098   }
17099
17100
17101   return offset;
17102 }
17103
17104
17105 static const per_sequence_t T_nonCriticalExtension_12_sequence[] = {
17106   { NULL, 0, 0, NULL }
17107 };
17108
17109 static int
17110 dissect_nr_rrc_T_nonCriticalExtension_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17111   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
17112                                    ett_nr_rrc_T_nonCriticalExtension_12, T_nonCriticalExtension_12_sequence);
17113
17114   return offset;
17115 }
17116
17117
17118 static const per_sequence_t MobilityFromNRCommand_IEs_sequence[] = {
17119   { &hf_nr_rrc_targetRAT_Type, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_targetRAT_Type },
17120   { &hf_nr_rrc_targetRAT_MessageContainer, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_targetRAT_MessageContainer },
17121   { &hf_nr_rrc_nas_SecurityParamFromNR, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
17122   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
17123   { &hf_nr_rrc_nonCriticalExtension_12, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_12 },
17124   { NULL, 0, 0, NULL }
17125 };
17126
17127 static int
17128 dissect_nr_rrc_MobilityFromNRCommand_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17129   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
17130                                    ett_nr_rrc_MobilityFromNRCommand_IEs, MobilityFromNRCommand_IEs_sequence);
17131
17132   return offset;
17133 }
17134
17135
17136 static const per_sequence_t T_criticalExtensionsFuture_12_sequence[] = {
17137   { NULL, 0, 0, NULL }
17138 };
17139
17140 static int
17141 dissect_nr_rrc_T_criticalExtensionsFuture_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17142   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
17143                                    ett_nr_rrc_T_criticalExtensionsFuture_12, T_criticalExtensionsFuture_12_sequence);
17144
17145   return offset;
17146 }
17147
17148
17149 static const value_string nr_rrc_T_criticalExtensions_12_vals[] = {
17150   {   0, "mobilityFromNRCommand" },
17151   {   1, "criticalExtensionsFuture" },
17152   { 0, NULL }
17153 };
17154
17155 static const per_choice_t T_criticalExtensions_12_choice[] = {
17156   {   0, &hf_nr_rrc_mobilityFromNRCommand_01, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_MobilityFromNRCommand_IEs },
17157   {   1, &hf_nr_rrc_criticalExtensionsFuture_12, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_12 },
17158   { 0, NULL, 0, NULL }
17159 };
17160
17161 static int
17162 dissect_nr_rrc_T_criticalExtensions_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17163   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
17164                                  ett_nr_rrc_T_criticalExtensions_12, T_criticalExtensions_12_choice,
17165                                  NULL);
17166
17167   return offset;
17168 }
17169
17170
17171 static const per_sequence_t MobilityFromNRCommand_sequence[] = {
17172   { &hf_nr_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RRC_TransactionIdentifier },
17173   { &hf_nr_rrc_criticalExtensions_12, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_12 },
17174   { NULL, 0, 0, NULL }
17175 };
17176
17177 static int
17178 dissect_nr_rrc_MobilityFromNRCommand(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17179   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Mobility From NR Command");
17180
17181   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
17182                                    ett_nr_rrc_MobilityFromNRCommand, MobilityFromNRCommand_sequence);
17183
17184   return offset;
17185 }
17186
17187
17188 static const value_string nr_rrc_T_c1_09_vals[] = {
17189   {   0, "rrcReconfiguration" },
17190   {   1, "rrcResume" },
17191   {   2, "rrcRelease" },
17192   {   3, "rrcReestablishment" },
17193   {   4, "securityModeCommand" },
17194   {   5, "dlInformationTransfer" },
17195   {   6, "ueCapabilityEnquiry" },
17196   {   7, "counterCheck" },
17197   {   8, "mobilityFromNRCommand" },
17198   {   9, "spare7" },
17199   {  10, "spare6" },
17200   {  11, "spare5" },
17201   {  12, "spare4" },
17202   {  13, "spare3" },
17203   {  14, "spare2" },
17204   {  15, "spare1" },
17205   { 0, NULL }
17206 };
17207
17208 static const per_choice_t T_c1_09_choice[] = {
17209   {   0, &hf_nr_rrc_rrcReconfiguration_01, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RRCReconfiguration },
17210   {   1, &hf_nr_rrc_rrcResume    , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RRCResume },
17211   {   2, &hf_nr_rrc_rrcRelease   , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RRCRelease },
17212   {   3, &hf_nr_rrc_rrcReestablishment, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RRCReestablishment },
17213   {   4, &hf_nr_rrc_securityModeCommand, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SecurityModeCommand },
17214   {   5, &hf_nr_rrc_dlInformationTransfer, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_DLInformationTransfer },
17215   {   6, &hf_nr_rrc_ueCapabilityEnquiry, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_UECapabilityEnquiry },
17216   {   7, &hf_nr_rrc_counterCheck , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_CounterCheck },
17217   {   8, &hf_nr_rrc_mobilityFromNRCommand, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_MobilityFromNRCommand },
17218   {   9, &hf_nr_rrc_spare7       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
17219   {  10, &hf_nr_rrc_spare6       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
17220   {  11, &hf_nr_rrc_spare5       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
17221   {  12, &hf_nr_rrc_spare4       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
17222   {  13, &hf_nr_rrc_spare3       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
17223   {  14, &hf_nr_rrc_spare2       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
17224   {  15, &hf_nr_rrc_spare1       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
17225   { 0, NULL, 0, NULL }
17226 };
17227
17228 static int
17229 dissect_nr_rrc_T_c1_09(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17230   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
17231                                  ett_nr_rrc_T_c1_09, T_c1_09_choice,
17232                                  NULL);
17233
17234   return offset;
17235 }
17236
17237
17238 static const per_sequence_t T_messageClassExtension_03_sequence[] = {
17239   { NULL, 0, 0, NULL }
17240 };
17241
17242 static int
17243 dissect_nr_rrc_T_messageClassExtension_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17244   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
17245                                    ett_nr_rrc_T_messageClassExtension_03, T_messageClassExtension_03_sequence);
17246
17247   return offset;
17248 }
17249
17250
17251 static const value_string nr_rrc_DL_DCCH_MessageType_vals[] = {
17252   {   0, "c1" },
17253   {   1, "messageClassExtension" },
17254   { 0, NULL }
17255 };
17256
17257 static const per_choice_t DL_DCCH_MessageType_choice[] = {
17258   {   0, &hf_nr_rrc_c1_09        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_c1_09 },
17259   {   1, &hf_nr_rrc_messageClassExtension_03, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_messageClassExtension_03 },
17260   { 0, NULL, 0, NULL }
17261 };
17262
17263 static int
17264 dissect_nr_rrc_DL_DCCH_MessageType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17265   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
17266                                  ett_nr_rrc_DL_DCCH_MessageType, DL_DCCH_MessageType_choice,
17267                                  NULL);
17268
17269   return offset;
17270 }
17271
17272
17273 static const per_sequence_t DL_DCCH_Message_sequence[] = {
17274   { &hf_nr_rrc_message_03   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_DL_DCCH_MessageType },
17275   { NULL, 0, 0, NULL }
17276 };
17277
17278 static int
17279 dissect_nr_rrc_DL_DCCH_Message(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17280   proto_item *ti;
17281
17282   col_set_str(actx->pinfo->cinfo, COL_PROTOCOL, "NR RRC");
17283   col_clear(actx->pinfo->cinfo, COL_INFO);
17284
17285   ti = proto_tree_add_item(tree, proto_nr_rrc, tvb, 0, -1, ENC_NA);
17286   tree = proto_item_add_subtree(ti, ett_nr_rrc);
17287
17288   actx->pinfo->link_dir = P2P_DIR_DL;
17289
17290   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
17291                                    ett_nr_rrc_DL_DCCH_Message, DL_DCCH_Message_sequence);
17292
17293   return offset;
17294 }
17295
17296
17297
17298 static int
17299 dissect_nr_rrc_NG_5G_S_TMSI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17300   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
17301                                      48, 48, FALSE, NULL, NULL);
17302
17303   return offset;
17304 }
17305
17306
17307 static const value_string nr_rrc_PagingUE_Identity_vals[] = {
17308   {   0, "ng-5G-S-TMSI" },
17309   {   1, "i-RNTI" },
17310   { 0, NULL }
17311 };
17312
17313 static const per_choice_t PagingUE_Identity_choice[] = {
17314   {   0, &hf_nr_rrc_ng_5G_S_TMSI , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_NG_5G_S_TMSI },
17315   {   1, &hf_nr_rrc_i_RNTI       , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_I_RNTI_Value },
17316   { 0, NULL, 0, NULL }
17317 };
17318
17319 static int
17320 dissect_nr_rrc_PagingUE_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17321   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
17322                                  ett_nr_rrc_PagingUE_Identity, PagingUE_Identity_choice,
17323                                  NULL);
17324
17325   return offset;
17326 }
17327
17328
17329 static const value_string nr_rrc_T_accessType_vals[] = {
17330   {   0, "non3GPP" },
17331   { 0, NULL }
17332 };
17333
17334
17335 static int
17336 dissect_nr_rrc_T_accessType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17337   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
17338                                      1, NULL, FALSE, 0, NULL);
17339
17340   return offset;
17341 }
17342
17343
17344 static const per_sequence_t PagingRecord_sequence[] = {
17345   { &hf_nr_rrc_ue_Identity  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PagingUE_Identity },
17346   { &hf_nr_rrc_accessType   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_accessType },
17347   { NULL, 0, 0, NULL }
17348 };
17349
17350 static int
17351 dissect_nr_rrc_PagingRecord(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17352   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
17353                                    ett_nr_rrc_PagingRecord, PagingRecord_sequence);
17354
17355   return offset;
17356 }
17357
17358
17359 static const per_sequence_t PagingRecordList_sequence_of[1] = {
17360   { &hf_nr_rrc_PagingRecordList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PagingRecord },
17361 };
17362
17363 static int
17364 dissect_nr_rrc_PagingRecordList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17365   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
17366                                                   ett_nr_rrc_PagingRecordList, PagingRecordList_sequence_of,
17367                                                   1, maxNrofPageRec, FALSE);
17368
17369   return offset;
17370 }
17371
17372
17373 static const per_sequence_t T_nonCriticalExtension_13_sequence[] = {
17374   { NULL, 0, 0, NULL }
17375 };
17376
17377 static int
17378 dissect_nr_rrc_T_nonCriticalExtension_13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17379   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
17380                                    ett_nr_rrc_T_nonCriticalExtension_13, T_nonCriticalExtension_13_sequence);
17381
17382   return offset;
17383 }
17384
17385
17386 static const per_sequence_t Paging_sequence[] = {
17387   { &hf_nr_rrc_pagingRecordList, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_PagingRecordList },
17388   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
17389   { &hf_nr_rrc_nonCriticalExtension_13, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_13 },
17390   { NULL, 0, 0, NULL }
17391 };
17392
17393 static int
17394 dissect_nr_rrc_Paging(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17395   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Paging");
17396
17397   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
17398                                    ett_nr_rrc_Paging, Paging_sequence);
17399
17400   return offset;
17401 }
17402
17403
17404 static const value_string nr_rrc_T_c1_10_vals[] = {
17405   {   0, "paging" },
17406   {   1, "spare1" },
17407   { 0, NULL }
17408 };
17409
17410 static const per_choice_t T_c1_10_choice[] = {
17411   {   0, &hf_nr_rrc_paging       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_Paging },
17412   {   1, &hf_nr_rrc_spare1       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
17413   { 0, NULL, 0, NULL }
17414 };
17415
17416 static int
17417 dissect_nr_rrc_T_c1_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17418   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
17419                                  ett_nr_rrc_T_c1_10, T_c1_10_choice,
17420                                  NULL);
17421
17422   return offset;
17423 }
17424
17425
17426 static const per_sequence_t T_messageClassExtension_04_sequence[] = {
17427   { NULL, 0, 0, NULL }
17428 };
17429
17430 static int
17431 dissect_nr_rrc_T_messageClassExtension_04(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17432   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
17433                                    ett_nr_rrc_T_messageClassExtension_04, T_messageClassExtension_04_sequence);
17434
17435   return offset;
17436 }
17437
17438
17439 static const value_string nr_rrc_PCCH_MessageType_vals[] = {
17440   {   0, "c1" },
17441   {   1, "messageClassExtension" },
17442   { 0, NULL }
17443 };
17444
17445 static const per_choice_t PCCH_MessageType_choice[] = {
17446   {   0, &hf_nr_rrc_c1_10        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_c1_10 },
17447   {   1, &hf_nr_rrc_messageClassExtension_04, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_messageClassExtension_04 },
17448   { 0, NULL, 0, NULL }
17449 };
17450
17451 static int
17452 dissect_nr_rrc_PCCH_MessageType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17453   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
17454                                  ett_nr_rrc_PCCH_MessageType, PCCH_MessageType_choice,
17455                                  NULL);
17456
17457   return offset;
17458 }
17459
17460
17461 static const per_sequence_t PCCH_Message_sequence[] = {
17462   { &hf_nr_rrc_message_04   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PCCH_MessageType },
17463   { NULL, 0, 0, NULL }
17464 };
17465
17466 static int
17467 dissect_nr_rrc_PCCH_Message(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17468   proto_item *ti;
17469
17470   col_set_str(actx->pinfo->cinfo, COL_PROTOCOL, "NR RRC");
17471   col_clear(actx->pinfo->cinfo, COL_INFO);
17472
17473   ti = proto_tree_add_item(tree, proto_nr_rrc, tvb, 0, -1, ENC_NA);
17474   tree = proto_item_add_subtree(ti, ett_nr_rrc);
17475
17476   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
17477                                    ett_nr_rrc_PCCH_Message, PCCH_Message_sequence);
17478
17479   return offset;
17480 }
17481
17482
17483
17484 static int
17485 dissect_nr_rrc_BIT_STRING_SIZE_39(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17486   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
17487                                      39, 39, FALSE, NULL, NULL);
17488
17489   return offset;
17490 }
17491
17492
17493 static const value_string nr_rrc_InitialUE_Identity_vals[] = {
17494   {   0, "ng-5G-S-TMSI-Part1" },
17495   {   1, "randomValue" },
17496   { 0, NULL }
17497 };
17498
17499 static const per_choice_t InitialUE_Identity_choice[] = {
17500   {   0, &hf_nr_rrc_ng_5G_S_TMSI_Part1, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_39 },
17501   {   1, &hf_nr_rrc_randomValue  , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_39 },
17502   { 0, NULL, 0, NULL }
17503 };
17504
17505 static int
17506 dissect_nr_rrc_InitialUE_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17507   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
17508                                  ett_nr_rrc_InitialUE_Identity, InitialUE_Identity_choice,
17509                                  NULL);
17510
17511   return offset;
17512 }
17513
17514
17515 static const value_string nr_rrc_EstablishmentCause_vals[] = {
17516   {   0, "emergency" },
17517   {   1, "highPriorityAccess" },
17518   {   2, "mt-Access" },
17519   {   3, "mo-Signalling" },
17520   {   4, "mo-Data" },
17521   {   5, "mo-VoiceCall" },
17522   {   6, "mo-VideoCall" },
17523   {   7, "mo-SMS" },
17524   {   8, "mps-PriorityAccess" },
17525   {   9, "mcs-PriorityAccess" },
17526   {  10, "spare6" },
17527   {  11, "spare5" },
17528   {  12, "spare4" },
17529   {  13, "spare3" },
17530   {  14, "spare2" },
17531   {  15, "spare1" },
17532   { 0, NULL }
17533 };
17534
17535
17536 static int
17537 dissect_nr_rrc_EstablishmentCause(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17538   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
17539                                      16, NULL, FALSE, 0, NULL);
17540
17541   return offset;
17542 }
17543
17544
17545 static const per_sequence_t RRCSetupRequest_IEs_sequence[] = {
17546   { &hf_nr_rrc_ue_Identity_02, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_InitialUE_Identity },
17547   { &hf_nr_rrc_establishmentCause, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_EstablishmentCause },
17548   { &hf_nr_rrc_spare        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BIT_STRING_SIZE_1 },
17549   { NULL, 0, 0, NULL }
17550 };
17551
17552 static int
17553 dissect_nr_rrc_RRCSetupRequest_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17554   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
17555                                    ett_nr_rrc_RRCSetupRequest_IEs, RRCSetupRequest_IEs_sequence);
17556
17557   return offset;
17558 }
17559
17560
17561 static const per_sequence_t RRCSetupRequest_sequence[] = {
17562   { &hf_nr_rrc_rrcSetupRequest_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RRCSetupRequest_IEs },
17563   { NULL, 0, 0, NULL }
17564 };
17565
17566 static int
17567 dissect_nr_rrc_RRCSetupRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17568   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRC Setup Request");
17569
17570   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
17571                                    ett_nr_rrc_RRCSetupRequest, RRCSetupRequest_sequence);
17572
17573   return offset;
17574 }
17575
17576
17577
17578 static int
17579 dissect_nr_rrc_BIT_STRING_SIZE_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17580   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
17581                                      16, 16, FALSE, NULL, NULL);
17582
17583   return offset;
17584 }
17585
17586
17587 static const value_string nr_rrc_ResumeCause_vals[] = {
17588   {   0, "emergency" },
17589   {   1, "highPriorityAccess" },
17590   {   2, "mt-Access" },
17591   {   3, "mo-Signalling" },
17592   {   4, "mo-Data" },
17593   {   5, "mo-VoiceCall" },
17594   {   6, "mo-VideoCall" },
17595   {   7, "mo-SMS" },
17596   {   8, "rna-Update" },
17597   {   9, "mps-PriorityAccess" },
17598   {  10, "mcs-PriorityAccess" },
17599   {  11, "spare1" },
17600   {  12, "spare2" },
17601   {  13, "spare3" },
17602   {  14, "spare4" },
17603   {  15, "spare5" },
17604   { 0, NULL }
17605 };
17606
17607
17608 static int
17609 dissect_nr_rrc_ResumeCause(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17610   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
17611                                      16, NULL, FALSE, 0, NULL);
17612
17613   return offset;
17614 }
17615
17616
17617 static const per_sequence_t RRCResumeRequest_IEs_sequence[] = {
17618   { &hf_nr_rrc_resumeIdentity, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ShortI_RNTI_Value },
17619   { &hf_nr_rrc_resumeMAC_I  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BIT_STRING_SIZE_16 },
17620   { &hf_nr_rrc_resumeCause  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ResumeCause },
17621   { &hf_nr_rrc_spare        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BIT_STRING_SIZE_1 },
17622   { NULL, 0, 0, NULL }
17623 };
17624
17625 static int
17626 dissect_nr_rrc_RRCResumeRequest_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17627   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
17628                                    ett_nr_rrc_RRCResumeRequest_IEs, RRCResumeRequest_IEs_sequence);
17629
17630   return offset;
17631 }
17632
17633
17634 static const per_sequence_t RRCResumeRequest_sequence[] = {
17635   { &hf_nr_rrc_rrcResumeRequest_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RRCResumeRequest_IEs },
17636   { NULL, 0, 0, NULL }
17637 };
17638
17639 static int
17640 dissect_nr_rrc_RRCResumeRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17641   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRC Resume Request");
17642
17643   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
17644                                    ett_nr_rrc_RRCResumeRequest, RRCResumeRequest_sequence);
17645
17646   return offset;
17647 }
17648
17649
17650
17651 static int
17652 dissect_nr_rrc_RNTI_Value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17653   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
17654                                                             0U, 65535U, NULL, FALSE);
17655
17656   return offset;
17657 }
17658
17659
17660 static const per_sequence_t ReestabUE_Identity_sequence[] = {
17661   { &hf_nr_rrc_c_RNTI       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RNTI_Value },
17662   { &hf_nr_rrc_physCellId   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PhysCellId },
17663   { &hf_nr_rrc_shortMAC_I   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ShortMAC_I },
17664   { NULL, 0, 0, NULL }
17665 };
17666
17667 static int
17668 dissect_nr_rrc_ReestabUE_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17669   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
17670                                    ett_nr_rrc_ReestabUE_Identity, ReestabUE_Identity_sequence);
17671
17672   return offset;
17673 }
17674
17675
17676 static const value_string nr_rrc_ReestablishmentCause_vals[] = {
17677   {   0, "reconfigurationFailure" },
17678   {   1, "handoverFailure" },
17679   {   2, "otherFailure" },
17680   {   3, "spare1" },
17681   { 0, NULL }
17682 };
17683
17684
17685 static int
17686 dissect_nr_rrc_ReestablishmentCause(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17687   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
17688                                      4, NULL, FALSE, 0, NULL);
17689
17690   return offset;
17691 }
17692
17693
17694 static const per_sequence_t RRCReestablishmentRequest_IEs_sequence[] = {
17695   { &hf_nr_rrc_ue_Identity_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ReestabUE_Identity },
17696   { &hf_nr_rrc_reestablishmentCause, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ReestablishmentCause },
17697   { &hf_nr_rrc_spare        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BIT_STRING_SIZE_1 },
17698   { NULL, 0, 0, NULL }
17699 };
17700
17701 static int
17702 dissect_nr_rrc_RRCReestablishmentRequest_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17703   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
17704                                    ett_nr_rrc_RRCReestablishmentRequest_IEs, RRCReestablishmentRequest_IEs_sequence);
17705
17706   return offset;
17707 }
17708
17709
17710 static const per_sequence_t RRCReestablishmentRequest_sequence[] = {
17711   { &hf_nr_rrc_rrcReestablishmentRequest_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RRCReestablishmentRequest_IEs },
17712   { NULL, 0, 0, NULL }
17713 };
17714
17715 static int
17716 dissect_nr_rrc_RRCReestablishmentRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17717   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRC Reestablishment Request");
17718
17719   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
17720                                    ett_nr_rrc_RRCReestablishmentRequest, RRCReestablishmentRequest_sequence);
17721
17722   return offset;
17723 }
17724
17725
17726
17727 static int
17728 dissect_nr_rrc_BIT_STRING_SIZE_maxSI_Message(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17729   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
17730                                      maxSI_Message, maxSI_Message, FALSE, NULL, NULL);
17731
17732   return offset;
17733 }
17734
17735
17736 static const per_sequence_t RRCSystemInfoRequest_r15_IEs_sequence[] = {
17737   { &hf_nr_rrc_requested_SI_List, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BIT_STRING_SIZE_maxSI_Message },
17738   { &hf_nr_rrc_spare_01     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BIT_STRING_SIZE_12 },
17739   { NULL, 0, 0, NULL }
17740 };
17741
17742 static int
17743 dissect_nr_rrc_RRCSystemInfoRequest_r15_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17744   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
17745                                    ett_nr_rrc_RRCSystemInfoRequest_r15_IEs, RRCSystemInfoRequest_r15_IEs_sequence);
17746
17747   return offset;
17748 }
17749
17750
17751 static const per_sequence_t T_criticalExtensionsFuture_23_sequence[] = {
17752   { NULL, 0, 0, NULL }
17753 };
17754
17755 static int
17756 dissect_nr_rrc_T_criticalExtensionsFuture_23(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17757   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
17758                                    ett_nr_rrc_T_criticalExtensionsFuture_23, T_criticalExtensionsFuture_23_sequence);
17759
17760   return offset;
17761 }
17762
17763
17764 static const value_string nr_rrc_T_criticalExtensions_23_vals[] = {
17765   {   0, "rrcSystemInfoRequest-r15" },
17766   {   1, "criticalExtensionsFuture" },
17767   { 0, NULL }
17768 };
17769
17770 static const per_choice_t T_criticalExtensions_23_choice[] = {
17771   {   0, &hf_nr_rrc_rrcSystemInfoRequest_r15, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RRCSystemInfoRequest_r15_IEs },
17772   {   1, &hf_nr_rrc_criticalExtensionsFuture_23, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_23 },
17773   { 0, NULL, 0, NULL }
17774 };
17775
17776 static int
17777 dissect_nr_rrc_T_criticalExtensions_23(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17778   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
17779                                  ett_nr_rrc_T_criticalExtensions_23, T_criticalExtensions_23_choice,
17780                                  NULL);
17781
17782   return offset;
17783 }
17784
17785
17786 static const per_sequence_t RRCSystemInfoRequest_sequence[] = {
17787   { &hf_nr_rrc_criticalExtensions_23, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_23 },
17788   { NULL, 0, 0, NULL }
17789 };
17790
17791 static int
17792 dissect_nr_rrc_RRCSystemInfoRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17793   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRC System Info Request");
17794
17795   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
17796                                    ett_nr_rrc_RRCSystemInfoRequest, RRCSystemInfoRequest_sequence);
17797
17798   return offset;
17799 }
17800
17801
17802 static const value_string nr_rrc_T_c1_11_vals[] = {
17803   {   0, "rrcSetupRequest" },
17804   {   1, "rrcResumeRequest" },
17805   {   2, "rrcReestablishmentRequest" },
17806   {   3, "rrcSystemInfoRequest" },
17807   { 0, NULL }
17808 };
17809
17810 static const per_choice_t T_c1_11_choice[] = {
17811   {   0, &hf_nr_rrc_rrcSetupRequest, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RRCSetupRequest },
17812   {   1, &hf_nr_rrc_rrcResumeRequest, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RRCResumeRequest },
17813   {   2, &hf_nr_rrc_rrcReestablishmentRequest, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RRCReestablishmentRequest },
17814   {   3, &hf_nr_rrc_rrcSystemInfoRequest, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RRCSystemInfoRequest },
17815   { 0, NULL, 0, NULL }
17816 };
17817
17818 static int
17819 dissect_nr_rrc_T_c1_11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17820   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
17821                                  ett_nr_rrc_T_c1_11, T_c1_11_choice,
17822                                  NULL);
17823
17824   return offset;
17825 }
17826
17827
17828 static const per_sequence_t T_messageClassExtension_05_sequence[] = {
17829   { NULL, 0, 0, NULL }
17830 };
17831
17832 static int
17833 dissect_nr_rrc_T_messageClassExtension_05(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17834   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
17835                                    ett_nr_rrc_T_messageClassExtension_05, T_messageClassExtension_05_sequence);
17836
17837   return offset;
17838 }
17839
17840
17841 static const value_string nr_rrc_UL_CCCH_MessageType_vals[] = {
17842   {   0, "c1" },
17843   {   1, "messageClassExtension" },
17844   { 0, NULL }
17845 };
17846
17847 static const per_choice_t UL_CCCH_MessageType_choice[] = {
17848   {   0, &hf_nr_rrc_c1_11        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_c1_11 },
17849   {   1, &hf_nr_rrc_messageClassExtension_05, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_messageClassExtension_05 },
17850   { 0, NULL, 0, NULL }
17851 };
17852
17853 static int
17854 dissect_nr_rrc_UL_CCCH_MessageType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17855   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
17856                                  ett_nr_rrc_UL_CCCH_MessageType, UL_CCCH_MessageType_choice,
17857                                  NULL);
17858
17859   return offset;
17860 }
17861
17862
17863 static const per_sequence_t UL_CCCH_Message_sequence[] = {
17864   { &hf_nr_rrc_message_05   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_UL_CCCH_MessageType },
17865   { NULL, 0, 0, NULL }
17866 };
17867
17868 static int
17869 dissect_nr_rrc_UL_CCCH_Message(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17870   proto_item *ti;
17871
17872   col_set_str(actx->pinfo->cinfo, COL_PROTOCOL, "NR RRC");
17873   col_clear(actx->pinfo->cinfo, COL_INFO);
17874
17875   ti = proto_tree_add_item(tree, proto_nr_rrc, tvb, 0, -1, ENC_NA);
17876   tree = proto_item_add_subtree(ti, ett_nr_rrc);
17877
17878   actx->pinfo->link_dir = P2P_DIR_UL;
17879
17880   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
17881                                    ett_nr_rrc_UL_CCCH_Message, UL_CCCH_Message_sequence);
17882
17883   return offset;
17884 }
17885
17886
17887 static const per_sequence_t RRCResumeRequest1_IEs_sequence[] = {
17888   { &hf_nr_rrc_resumeIdentity_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_I_RNTI_Value },
17889   { &hf_nr_rrc_resumeMAC_I  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BIT_STRING_SIZE_16 },
17890   { &hf_nr_rrc_resumeCause  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ResumeCause },
17891   { &hf_nr_rrc_spare        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BIT_STRING_SIZE_1 },
17892   { NULL, 0, 0, NULL }
17893 };
17894
17895 static int
17896 dissect_nr_rrc_RRCResumeRequest1_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17897   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
17898                                    ett_nr_rrc_RRCResumeRequest1_IEs, RRCResumeRequest1_IEs_sequence);
17899
17900   return offset;
17901 }
17902
17903
17904 static const per_sequence_t RRCResumeRequest1_sequence[] = {
17905   { &hf_nr_rrc_rrcResumeRequest1_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RRCResumeRequest1_IEs },
17906   { NULL, 0, 0, NULL }
17907 };
17908
17909 static int
17910 dissect_nr_rrc_RRCResumeRequest1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17911   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRC Resume Request 1");
17912
17913   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
17914                                    ett_nr_rrc_RRCResumeRequest1, RRCResumeRequest1_sequence);
17915
17916   return offset;
17917 }
17918
17919
17920 static const value_string nr_rrc_T_c1_12_vals[] = {
17921   {   0, "rrcResumeRequest1" },
17922   {   1, "spare3" },
17923   {   2, "spare2" },
17924   {   3, "spare1" },
17925   { 0, NULL }
17926 };
17927
17928 static const per_choice_t T_c1_12_choice[] = {
17929   {   0, &hf_nr_rrc_rrcResumeRequest1, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RRCResumeRequest1 },
17930   {   1, &hf_nr_rrc_spare3       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
17931   {   2, &hf_nr_rrc_spare2       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
17932   {   3, &hf_nr_rrc_spare1       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
17933   { 0, NULL, 0, NULL }
17934 };
17935
17936 static int
17937 dissect_nr_rrc_T_c1_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17938   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
17939                                  ett_nr_rrc_T_c1_12, T_c1_12_choice,
17940                                  NULL);
17941
17942   return offset;
17943 }
17944
17945
17946 static const per_sequence_t T_messageClassExtension_06_sequence[] = {
17947   { NULL, 0, 0, NULL }
17948 };
17949
17950 static int
17951 dissect_nr_rrc_T_messageClassExtension_06(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17952   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
17953                                    ett_nr_rrc_T_messageClassExtension_06, T_messageClassExtension_06_sequence);
17954
17955   return offset;
17956 }
17957
17958
17959 static const value_string nr_rrc_UL_CCCH1_MessageType_vals[] = {
17960   {   0, "c1" },
17961   {   1, "messageClassExtension" },
17962   { 0, NULL }
17963 };
17964
17965 static const per_choice_t UL_CCCH1_MessageType_choice[] = {
17966   {   0, &hf_nr_rrc_c1_12        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_c1_12 },
17967   {   1, &hf_nr_rrc_messageClassExtension_06, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_messageClassExtension_06 },
17968   { 0, NULL, 0, NULL }
17969 };
17970
17971 static int
17972 dissect_nr_rrc_UL_CCCH1_MessageType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17973   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
17974                                  ett_nr_rrc_UL_CCCH1_MessageType, UL_CCCH1_MessageType_choice,
17975                                  NULL);
17976
17977   return offset;
17978 }
17979
17980
17981 static const per_sequence_t UL_CCCH1_Message_sequence[] = {
17982   { &hf_nr_rrc_message_06   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_UL_CCCH1_MessageType },
17983   { NULL, 0, 0, NULL }
17984 };
17985
17986 static int
17987 dissect_nr_rrc_UL_CCCH1_Message(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
17988   proto_item *ti;
17989
17990   col_set_str(actx->pinfo->cinfo, COL_PROTOCOL, "NR RRC");
17991   col_clear(actx->pinfo->cinfo, COL_INFO);
17992
17993   ti = proto_tree_add_item(tree, proto_nr_rrc, tvb, 0, -1, ENC_NA);
17994   tree = proto_item_add_subtree(ti, ett_nr_rrc);
17995
17996   actx->pinfo->link_dir = P2P_DIR_UL;
17997
17998   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
17999                                    ett_nr_rrc_UL_CCCH1_Message, UL_CCCH1_Message_sequence);
18000
18001   return offset;
18002 }
18003
18004
18005 static const per_sequence_t MeasResultServMO_sequence[] = {
18006   { &hf_nr_rrc_servCellId   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ServCellIndex },
18007   { &hf_nr_rrc_measResultServingCell, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasResultNR },
18008   { &hf_nr_rrc_measResultBestNeighCell, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_MeasResultNR },
18009   { NULL, 0, 0, NULL }
18010 };
18011
18012 static int
18013 dissect_nr_rrc_MeasResultServMO(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18014   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18015                                    ett_nr_rrc_MeasResultServMO, MeasResultServMO_sequence);
18016
18017   return offset;
18018 }
18019
18020
18021 static const per_sequence_t MeasResultServMOList_sequence_of[1] = {
18022   { &hf_nr_rrc_MeasResultServMOList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasResultServMO },
18023 };
18024
18025 static int
18026 dissect_nr_rrc_MeasResultServMOList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18027   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
18028                                                   ett_nr_rrc_MeasResultServMOList, MeasResultServMOList_sequence_of,
18029                                                   1, maxNrofServingCells, FALSE);
18030
18031   return offset;
18032 }
18033
18034
18035 static const per_sequence_t MeasQuantityResultsEUTRA_sequence[] = {
18036   { &hf_nr_rrc_rsrp_01      , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_RSRP_RangeEUTRA },
18037   { &hf_nr_rrc_rsrq_01      , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_RSRQ_RangeEUTRA },
18038   { &hf_nr_rrc_sinr_01      , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SINR_RangeEUTRA },
18039   { NULL, 0, 0, NULL }
18040 };
18041
18042 static int
18043 dissect_nr_rrc_MeasQuantityResultsEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18044   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18045                                    ett_nr_rrc_MeasQuantityResultsEUTRA, MeasQuantityResultsEUTRA_sequence);
18046
18047   return offset;
18048 }
18049
18050
18051 static const per_sequence_t PLMN_IdentityList_EUTRA_EPC_sequence_of[1] = {
18052   { &hf_nr_rrc_PLMN_IdentityList_EUTRA_EPC_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PLMN_Identity },
18053 };
18054
18055 static int
18056 dissect_nr_rrc_PLMN_IdentityList_EUTRA_EPC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18057   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
18058                                                   ett_nr_rrc_PLMN_IdentityList_EUTRA_EPC, PLMN_IdentityList_EUTRA_EPC_sequence_of,
18059                                                   1, maxPLMN, FALSE);
18060
18061   return offset;
18062 }
18063
18064
18065
18066 static int
18067 dissect_nr_rrc_BIT_STRING_SIZE_28(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18068   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
18069                                      28, 28, FALSE, NULL, NULL);
18070
18071   return offset;
18072 }
18073
18074
18075 static const per_sequence_t CellAccessRelatedInfo_EUTRA_EPC_sequence[] = {
18076   { &hf_nr_rrc_plmn_IdentityList_eutra_epc, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PLMN_IdentityList_EUTRA_EPC },
18077   { &hf_nr_rrc_trackingAreaCode_eutra_epc, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BIT_STRING_SIZE_16 },
18078   { &hf_nr_rrc_cellIdentity_eutra_epc, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BIT_STRING_SIZE_28 },
18079   { NULL, 0, 0, NULL }
18080 };
18081
18082 static int
18083 dissect_nr_rrc_CellAccessRelatedInfo_EUTRA_EPC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18084   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18085                                    ett_nr_rrc_CellAccessRelatedInfo_EUTRA_EPC, CellAccessRelatedInfo_EUTRA_EPC_sequence);
18086
18087   return offset;
18088 }
18089
18090
18091 static const per_sequence_t SEQUENCE_SIZE_1_maxPLMN_OF_CellAccessRelatedInfo_EUTRA_EPC_sequence_of[1] = {
18092   { &hf_nr_rrc_cgi_info_EPC_list_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CellAccessRelatedInfo_EUTRA_EPC },
18093 };
18094
18095 static int
18096 dissect_nr_rrc_SEQUENCE_SIZE_1_maxPLMN_OF_CellAccessRelatedInfo_EUTRA_EPC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18097   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
18098                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxPLMN_OF_CellAccessRelatedInfo_EUTRA_EPC, SEQUENCE_SIZE_1_maxPLMN_OF_CellAccessRelatedInfo_EUTRA_EPC_sequence_of,
18099                                                   1, maxPLMN, FALSE);
18100
18101   return offset;
18102 }
18103
18104
18105 static const per_sequence_t T_cgi_info_EPC_sequence[] = {
18106   { &hf_nr_rrc_cgi_info_EPC_legacy, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CellAccessRelatedInfo_EUTRA_EPC },
18107   { &hf_nr_rrc_cgi_info_EPC_list, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxPLMN_OF_CellAccessRelatedInfo_EUTRA_EPC },
18108   { NULL, 0, 0, NULL }
18109 };
18110
18111 static int
18112 dissect_nr_rrc_T_cgi_info_EPC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18113   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18114                                    ett_nr_rrc_T_cgi_info_EPC, T_cgi_info_EPC_sequence);
18115
18116   return offset;
18117 }
18118
18119
18120 static const value_string nr_rrc_PLMN_Identity_EUTRA_5GC_vals[] = {
18121   {   0, "plmn-Identity-EUTRA-5GC" },
18122   {   1, "plmn-index" },
18123   { 0, NULL }
18124 };
18125
18126 static const per_choice_t PLMN_Identity_EUTRA_5GC_choice[] = {
18127   {   0, &hf_nr_rrc_plmn_Identity_EUTRA_5GC, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_PLMN_Identity },
18128   {   1, &hf_nr_rrc_plmn_index   , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_1_maxPLMN },
18129   { 0, NULL, 0, NULL }
18130 };
18131
18132 static int
18133 dissect_nr_rrc_PLMN_Identity_EUTRA_5GC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18134   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
18135                                  ett_nr_rrc_PLMN_Identity_EUTRA_5GC, PLMN_Identity_EUTRA_5GC_choice,
18136                                  NULL);
18137
18138   return offset;
18139 }
18140
18141
18142 static const per_sequence_t PLMN_IdentityList_EUTRA_5GC_sequence_of[1] = {
18143   { &hf_nr_rrc_PLMN_IdentityList_EUTRA_5GC_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PLMN_Identity_EUTRA_5GC },
18144 };
18145
18146 static int
18147 dissect_nr_rrc_PLMN_IdentityList_EUTRA_5GC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18148   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
18149                                                   ett_nr_rrc_PLMN_IdentityList_EUTRA_5GC, PLMN_IdentityList_EUTRA_5GC_sequence_of,
18150                                                   1, maxPLMN, FALSE);
18151
18152   return offset;
18153 }
18154
18155
18156 static const value_string nr_rrc_CellIdentity_EUTRA_5GC_vals[] = {
18157   {   0, "cellIdentity-EUTRA" },
18158   {   1, "cellId-index" },
18159   { 0, NULL }
18160 };
18161
18162 static const per_choice_t CellIdentity_EUTRA_5GC_choice[] = {
18163   {   0, &hf_nr_rrc_cellIdentity_EUTRA, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_28 },
18164   {   1, &hf_nr_rrc_cellId_index , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_1_maxPLMN },
18165   { 0, NULL, 0, NULL }
18166 };
18167
18168 static int
18169 dissect_nr_rrc_CellIdentity_EUTRA_5GC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18170   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
18171                                  ett_nr_rrc_CellIdentity_EUTRA_5GC, CellIdentity_EUTRA_5GC_choice,
18172                                  NULL);
18173
18174   return offset;
18175 }
18176
18177
18178 static const per_sequence_t CellAccessRelatedInfo_EUTRA_5GC_sequence[] = {
18179   { &hf_nr_rrc_plmn_IdentityList_eutra_5gc, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PLMN_IdentityList_EUTRA_5GC },
18180   { &hf_nr_rrc_trackingAreaCode_eutra_5gc, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_TrackingAreaCode },
18181   { &hf_nr_rrc_ranac_5gc    , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_RAN_AreaCode },
18182   { &hf_nr_rrc_cellIdentity_eutra_5gc, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CellIdentity_EUTRA_5GC },
18183   { NULL, 0, 0, NULL }
18184 };
18185
18186 static int
18187 dissect_nr_rrc_CellAccessRelatedInfo_EUTRA_5GC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18188   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18189                                    ett_nr_rrc_CellAccessRelatedInfo_EUTRA_5GC, CellAccessRelatedInfo_EUTRA_5GC_sequence);
18190
18191   return offset;
18192 }
18193
18194
18195 static const per_sequence_t SEQUENCE_SIZE_1_maxPLMN_OF_CellAccessRelatedInfo_EUTRA_5GC_sequence_of[1] = {
18196   { &hf_nr_rrc_cgi_info_5GC_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CellAccessRelatedInfo_EUTRA_5GC },
18197 };
18198
18199 static int
18200 dissect_nr_rrc_SEQUENCE_SIZE_1_maxPLMN_OF_CellAccessRelatedInfo_EUTRA_5GC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18201   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
18202                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxPLMN_OF_CellAccessRelatedInfo_EUTRA_5GC, SEQUENCE_SIZE_1_maxPLMN_OF_CellAccessRelatedInfo_EUTRA_5GC_sequence_of,
18203                                                   1, maxPLMN, FALSE);
18204
18205   return offset;
18206 }
18207
18208
18209 static const per_sequence_t MultiBandInfoListEUTRA_sequence_of[1] = {
18210   { &hf_nr_rrc_MultiBandInfoListEUTRA_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FreqBandIndicatorEUTRA },
18211 };
18212
18213 static int
18214 dissect_nr_rrc_MultiBandInfoListEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18215   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
18216                                                   ett_nr_rrc_MultiBandInfoListEUTRA, MultiBandInfoListEUTRA_sequence_of,
18217                                                   1, maxMultiBands, FALSE);
18218
18219   return offset;
18220 }
18221
18222
18223 static const value_string nr_rrc_T_freqBandIndicatorPriority_vals[] = {
18224   {   0, "true" },
18225   { 0, NULL }
18226 };
18227
18228
18229 static int
18230 dissect_nr_rrc_T_freqBandIndicatorPriority(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18231   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
18232                                      1, NULL, FALSE, 0, NULL);
18233
18234   return offset;
18235 }
18236
18237
18238 static const per_sequence_t T_cgi_Info_sequence[] = {
18239   { &hf_nr_rrc_cgi_info_EPC , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_cgi_info_EPC },
18240   { &hf_nr_rrc_cgi_info_5GC , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxPLMN_OF_CellAccessRelatedInfo_EUTRA_5GC },
18241   { &hf_nr_rrc_freqBandIndicator, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FreqBandIndicatorEUTRA },
18242   { &hf_nr_rrc_multiBandInfoList, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MultiBandInfoListEUTRA },
18243   { &hf_nr_rrc_freqBandIndicatorPriority, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_freqBandIndicatorPriority },
18244   { NULL, 0, 0, NULL }
18245 };
18246
18247 static int
18248 dissect_nr_rrc_T_cgi_Info(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18249   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18250                                    ett_nr_rrc_T_cgi_Info, T_cgi_Info_sequence);
18251
18252   return offset;
18253 }
18254
18255
18256 static const per_sequence_t MeasResultEUTRA_sequence[] = {
18257   { &hf_nr_rrc_physCellId   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PhysCellId },
18258   { &hf_nr_rrc_measResult_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasQuantityResultsEUTRA },
18259   { &hf_nr_rrc_cgi_Info_01  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_cgi_Info },
18260   { NULL, 0, 0, NULL }
18261 };
18262
18263 static int
18264 dissect_nr_rrc_MeasResultEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18265   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18266                                    ett_nr_rrc_MeasResultEUTRA, MeasResultEUTRA_sequence);
18267
18268   return offset;
18269 }
18270
18271
18272 static const per_sequence_t MeasResultListEUTRA_sequence_of[1] = {
18273   { &hf_nr_rrc_MeasResultListEUTRA_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasResultEUTRA },
18274 };
18275
18276 static int
18277 dissect_nr_rrc_MeasResultListEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18278   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
18279                                                   ett_nr_rrc_MeasResultListEUTRA, MeasResultListEUTRA_sequence_of,
18280                                                   1, maxCellReport, FALSE);
18281
18282   return offset;
18283 }
18284
18285
18286 static const value_string nr_rrc_T_measResultNeighCells_vals[] = {
18287   {   0, "measResultListNR" },
18288   {   1, "measResultListEUTRA" },
18289   { 0, NULL }
18290 };
18291
18292 static const per_choice_t T_measResultNeighCells_choice[] = {
18293   {   0, &hf_nr_rrc_measResultListNR, ASN1_EXTENSION_ROOT    , dissect_nr_rrc_MeasResultListNR },
18294   {   1, &hf_nr_rrc_measResultListEUTRA, ASN1_NOT_EXTENSION_ROOT, dissect_nr_rrc_MeasResultListEUTRA },
18295   { 0, NULL, 0, NULL }
18296 };
18297
18298 static int
18299 dissect_nr_rrc_T_measResultNeighCells(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18300   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
18301                                  ett_nr_rrc_T_measResultNeighCells, T_measResultNeighCells_choice,
18302                                  NULL);
18303
18304   return offset;
18305 }
18306
18307
18308 static const per_sequence_t MeasResults_sequence[] = {
18309   { &hf_nr_rrc_measId       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasId },
18310   { &hf_nr_rrc_measResultServingMOList, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasResultServMOList },
18311   { &hf_nr_rrc_measResultNeighCells, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_measResultNeighCells },
18312   { NULL, 0, 0, NULL }
18313 };
18314
18315 static int
18316 dissect_nr_rrc_MeasResults(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18317   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18318                                    ett_nr_rrc_MeasResults, MeasResults_sequence);
18319
18320   return offset;
18321 }
18322
18323
18324 static const per_sequence_t T_nonCriticalExtension_11_sequence[] = {
18325   { NULL, 0, 0, NULL }
18326 };
18327
18328 static int
18329 dissect_nr_rrc_T_nonCriticalExtension_11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18330   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18331                                    ett_nr_rrc_T_nonCriticalExtension_11, T_nonCriticalExtension_11_sequence);
18332
18333   return offset;
18334 }
18335
18336
18337 static const per_sequence_t MeasurementReport_IEs_sequence[] = {
18338   { &hf_nr_rrc_measResults  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasResults },
18339   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
18340   { &hf_nr_rrc_nonCriticalExtension_11, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_11 },
18341   { NULL, 0, 0, NULL }
18342 };
18343
18344 static int
18345 dissect_nr_rrc_MeasurementReport_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18346   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18347                                    ett_nr_rrc_MeasurementReport_IEs, MeasurementReport_IEs_sequence);
18348
18349   return offset;
18350 }
18351
18352
18353 static const per_sequence_t T_criticalExtensionsFuture_11_sequence[] = {
18354   { NULL, 0, 0, NULL }
18355 };
18356
18357 static int
18358 dissect_nr_rrc_T_criticalExtensionsFuture_11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18359   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18360                                    ett_nr_rrc_T_criticalExtensionsFuture_11, T_criticalExtensionsFuture_11_sequence);
18361
18362   return offset;
18363 }
18364
18365
18366 static const value_string nr_rrc_T_criticalExtensions_11_vals[] = {
18367   {   0, "measurementReport" },
18368   {   1, "criticalExtensionsFuture" },
18369   { 0, NULL }
18370 };
18371
18372 static const per_choice_t T_criticalExtensions_11_choice[] = {
18373   {   0, &hf_nr_rrc_measurementReport_01, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_MeasurementReport_IEs },
18374   {   1, &hf_nr_rrc_criticalExtensionsFuture_11, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_11 },
18375   { 0, NULL, 0, NULL }
18376 };
18377
18378 static int
18379 dissect_nr_rrc_T_criticalExtensions_11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18380   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
18381                                  ett_nr_rrc_T_criticalExtensions_11, T_criticalExtensions_11_choice,
18382                                  NULL);
18383
18384   return offset;
18385 }
18386
18387
18388 static const per_sequence_t MeasurementReport_sequence[] = {
18389   { &hf_nr_rrc_criticalExtensions_11, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_11 },
18390   { NULL, 0, 0, NULL }
18391 };
18392
18393 static int
18394 dissect_nr_rrc_MeasurementReport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18395   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Measurement Report");
18396
18397   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18398                                    ett_nr_rrc_MeasurementReport, MeasurementReport_sequence);
18399
18400   return offset;
18401 }
18402
18403
18404
18405 static int
18406 dissect_nr_rrc_BWP_Id(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18407   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
18408                                                             0U, maxNrofBWPs, NULL, FALSE);
18409
18410   return offset;
18411 }
18412
18413
18414
18415 static int
18416 dissect_nr_rrc_INTEGER_0_3301(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18417   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
18418                                                             0U, 3301U, NULL, FALSE);
18419
18420   return offset;
18421 }
18422
18423
18424 static const per_sequence_t UplinkTxDirectCurrentBWP_sequence[] = {
18425   { &hf_nr_rrc_bwp_Id       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BWP_Id },
18426   { &hf_nr_rrc_shift7dot5kHz, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
18427   { &hf_nr_rrc_txDirectCurrentLocation, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_3301 },
18428   { NULL, 0, 0, NULL }
18429 };
18430
18431 static int
18432 dissect_nr_rrc_UplinkTxDirectCurrentBWP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18433   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18434                                    ett_nr_rrc_UplinkTxDirectCurrentBWP, UplinkTxDirectCurrentBWP_sequence);
18435
18436   return offset;
18437 }
18438
18439
18440 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofBWPs_OF_UplinkTxDirectCurrentBWP_sequence_of[1] = {
18441   { &hf_nr_rrc_uplinkDirectCurrentBWP_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_UplinkTxDirectCurrentBWP },
18442 };
18443
18444 static int
18445 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofBWPs_OF_UplinkTxDirectCurrentBWP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18446   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
18447                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofBWPs_OF_UplinkTxDirectCurrentBWP, SEQUENCE_SIZE_1_maxNrofBWPs_OF_UplinkTxDirectCurrentBWP_sequence_of,
18448                                                   1, maxNrofBWPs, FALSE);
18449
18450   return offset;
18451 }
18452
18453
18454 static const per_sequence_t UplinkTxDirectCurrentCell_sequence[] = {
18455   { &hf_nr_rrc_servCellIndex, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ServCellIndex },
18456   { &hf_nr_rrc_uplinkDirectCurrentBWP, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofBWPs_OF_UplinkTxDirectCurrentBWP },
18457   { NULL, 0, 0, NULL }
18458 };
18459
18460 static int
18461 dissect_nr_rrc_UplinkTxDirectCurrentCell(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18462   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18463                                    ett_nr_rrc_UplinkTxDirectCurrentCell, UplinkTxDirectCurrentCell_sequence);
18464
18465   return offset;
18466 }
18467
18468
18469 static const per_sequence_t UplinkTxDirectCurrentList_sequence_of[1] = {
18470   { &hf_nr_rrc_UplinkTxDirectCurrentList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_UplinkTxDirectCurrentCell },
18471 };
18472
18473 static int
18474 dissect_nr_rrc_UplinkTxDirectCurrentList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18475   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
18476                                                   ett_nr_rrc_UplinkTxDirectCurrentList, UplinkTxDirectCurrentList_sequence_of,
18477                                                   1, maxNrofServingCells, FALSE);
18478
18479   return offset;
18480 }
18481
18482
18483 static const per_sequence_t T_nonCriticalExtension_17_sequence[] = {
18484   { NULL, 0, 0, NULL }
18485 };
18486
18487 static int
18488 dissect_nr_rrc_T_nonCriticalExtension_17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18489   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18490                                    ett_nr_rrc_T_nonCriticalExtension_17, T_nonCriticalExtension_17_sequence);
18491
18492   return offset;
18493 }
18494
18495
18496 static const per_sequence_t RRCReconfigurationComplete_v1530_IEs_sequence[] = {
18497   { &hf_nr_rrc_uplinkTxDirectCurrentList, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_UplinkTxDirectCurrentList },
18498   { &hf_nr_rrc_nonCriticalExtension_19, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_17 },
18499   { NULL, 0, 0, NULL }
18500 };
18501
18502 static int
18503 dissect_nr_rrc_RRCReconfigurationComplete_v1530_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18504   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18505                                    ett_nr_rrc_RRCReconfigurationComplete_v1530_IEs, RRCReconfigurationComplete_v1530_IEs_sequence);
18506
18507   return offset;
18508 }
18509
18510
18511 static const per_sequence_t RRCReconfigurationComplete_IEs_sequence[] = {
18512   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
18513   { &hf_nr_rrc_nonCriticalExtension_18, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_RRCReconfigurationComplete_v1530_IEs },
18514   { NULL, 0, 0, NULL }
18515 };
18516
18517 static int
18518 dissect_nr_rrc_RRCReconfigurationComplete_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18519   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18520                                    ett_nr_rrc_RRCReconfigurationComplete_IEs, RRCReconfigurationComplete_IEs_sequence);
18521
18522   return offset;
18523 }
18524
18525
18526 static const per_sequence_t T_criticalExtensionsFuture_16_sequence[] = {
18527   { NULL, 0, 0, NULL }
18528 };
18529
18530 static int
18531 dissect_nr_rrc_T_criticalExtensionsFuture_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18532   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18533                                    ett_nr_rrc_T_criticalExtensionsFuture_16, T_criticalExtensionsFuture_16_sequence);
18534
18535   return offset;
18536 }
18537
18538
18539 static const value_string nr_rrc_T_criticalExtensions_16_vals[] = {
18540   {   0, "rrcReconfigurationComplete" },
18541   {   1, "criticalExtensionsFuture" },
18542   { 0, NULL }
18543 };
18544
18545 static const per_choice_t T_criticalExtensions_16_choice[] = {
18546   {   0, &hf_nr_rrc_rrcReconfigurationComplete_01, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RRCReconfigurationComplete_IEs },
18547   {   1, &hf_nr_rrc_criticalExtensionsFuture_16, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_16 },
18548   { 0, NULL, 0, NULL }
18549 };
18550
18551 static int
18552 dissect_nr_rrc_T_criticalExtensions_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18553   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
18554                                  ett_nr_rrc_T_criticalExtensions_16, T_criticalExtensions_16_choice,
18555                                  NULL);
18556
18557   return offset;
18558 }
18559
18560
18561 static const per_sequence_t RRCReconfigurationComplete_sequence[] = {
18562   { &hf_nr_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RRC_TransactionIdentifier },
18563   { &hf_nr_rrc_criticalExtensions_16, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_16 },
18564   { NULL, 0, 0, NULL }
18565 };
18566
18567 static int
18568 dissect_nr_rrc_RRCReconfigurationComplete(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18569   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRC Reconfiguration Complete");
18570
18571   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18572                                    ett_nr_rrc_RRCReconfigurationComplete, RRCReconfigurationComplete_sequence);
18573
18574   return offset;
18575 }
18576
18577
18578
18579 static int
18580 dissect_nr_rrc_AMF_Identifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18581   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
18582                                      24, 24, FALSE, NULL, NULL);
18583
18584   return offset;
18585 }
18586
18587
18588 static const per_sequence_t RegisteredAMF_sequence[] = {
18589   { &hf_nr_rrc_plmn_Identity, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_PLMN_Identity },
18590   { &hf_nr_rrc_amf_Identifier, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_AMF_Identifier },
18591   { NULL, 0, 0, NULL }
18592 };
18593
18594 static int
18595 dissect_nr_rrc_RegisteredAMF(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18596   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18597                                    ett_nr_rrc_RegisteredAMF, RegisteredAMF_sequence);
18598
18599   return offset;
18600 }
18601
18602
18603 static const value_string nr_rrc_T_guami_Type_vals[] = {
18604   {   0, "native" },
18605   {   1, "mapped" },
18606   { 0, NULL }
18607 };
18608
18609
18610 static int
18611 dissect_nr_rrc_T_guami_Type(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18612   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
18613                                      2, NULL, FALSE, 0, NULL);
18614
18615   return offset;
18616 }
18617
18618
18619
18620 static int
18621 dissect_nr_rrc_BIT_STRING_SIZE_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18622   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
18623                                      32, 32, FALSE, NULL, NULL);
18624
18625   return offset;
18626 }
18627
18628
18629 static const value_string nr_rrc_S_NSSAI_vals[] = {
18630   {   0, "sst" },
18631   {   1, "sst-SD" },
18632   { 0, NULL }
18633 };
18634
18635 static const per_choice_t S_NSSAI_choice[] = {
18636   {   0, &hf_nr_rrc_sst          , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_8 },
18637   {   1, &hf_nr_rrc_sst_SD       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_32 },
18638   { 0, NULL, 0, NULL }
18639 };
18640
18641 static int
18642 dissect_nr_rrc_S_NSSAI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18643   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
18644                                  ett_nr_rrc_S_NSSAI, S_NSSAI_choice,
18645                                  NULL);
18646
18647   return offset;
18648 }
18649
18650
18651 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofS_NSSAI_OF_S_NSSAI_sequence_of[1] = {
18652   { &hf_nr_rrc_s_nssai_List_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_S_NSSAI },
18653 };
18654
18655 static int
18656 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofS_NSSAI_OF_S_NSSAI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18657   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
18658                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofS_NSSAI_OF_S_NSSAI, SEQUENCE_SIZE_1_maxNrofS_NSSAI_OF_S_NSSAI_sequence_of,
18659                                                   1, maxNrofS_NSSAI, FALSE);
18660
18661   return offset;
18662 }
18663
18664
18665
18666 static int
18667 dissect_nr_rrc_BIT_STRING_SIZE_9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18668   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
18669                                      9, 9, FALSE, NULL, NULL);
18670
18671   return offset;
18672 }
18673
18674
18675 static const value_string nr_rrc_T_ng_5G_S_TMSI_Value_vals[] = {
18676   {   0, "ng-5G-S-TMSI" },
18677   {   1, "ng-5G-S-TMSI-Part2" },
18678   { 0, NULL }
18679 };
18680
18681 static const per_choice_t T_ng_5G_S_TMSI_Value_choice[] = {
18682   {   0, &hf_nr_rrc_ng_5G_S_TMSI , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NG_5G_S_TMSI },
18683   {   1, &hf_nr_rrc_ng_5G_S_TMSI_Part2, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_9 },
18684   { 0, NULL, 0, NULL }
18685 };
18686
18687 static int
18688 dissect_nr_rrc_T_ng_5G_S_TMSI_Value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18689   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
18690                                  ett_nr_rrc_T_ng_5G_S_TMSI_Value, T_ng_5G_S_TMSI_Value_choice,
18691                                  NULL);
18692
18693   return offset;
18694 }
18695
18696
18697 static const per_sequence_t T_nonCriticalExtension_23_sequence[] = {
18698   { NULL, 0, 0, NULL }
18699 };
18700
18701 static int
18702 dissect_nr_rrc_T_nonCriticalExtension_23(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18703   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18704                                    ett_nr_rrc_T_nonCriticalExtension_23, T_nonCriticalExtension_23_sequence);
18705
18706   return offset;
18707 }
18708
18709
18710 static const per_sequence_t RRCSetupComplete_IEs_sequence[] = {
18711   { &hf_nr_rrc_selectedPLMN_Identity, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_maxPLMN },
18712   { &hf_nr_rrc_registeredAMF, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_RegisteredAMF },
18713   { &hf_nr_rrc_guami_Type   , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_guami_Type },
18714   { &hf_nr_rrc_s_nssai_List , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofS_NSSAI_OF_S_NSSAI },
18715   { &hf_nr_rrc_dedicatedNAS_Message, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_DedicatedNAS_Message },
18716   { &hf_nr_rrc_ng_5G_S_TMSI_Value, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_ng_5G_S_TMSI_Value },
18717   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
18718   { &hf_nr_rrc_nonCriticalExtension_25, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_23 },
18719   { NULL, 0, 0, NULL }
18720 };
18721
18722 static int
18723 dissect_nr_rrc_RRCSetupComplete_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18724   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18725                                    ett_nr_rrc_RRCSetupComplete_IEs, RRCSetupComplete_IEs_sequence);
18726
18727   return offset;
18728 }
18729
18730
18731 static const per_sequence_t T_criticalExtensionsFuture_22_sequence[] = {
18732   { NULL, 0, 0, NULL }
18733 };
18734
18735 static int
18736 dissect_nr_rrc_T_criticalExtensionsFuture_22(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18737   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18738                                    ett_nr_rrc_T_criticalExtensionsFuture_22, T_criticalExtensionsFuture_22_sequence);
18739
18740   return offset;
18741 }
18742
18743
18744 static const value_string nr_rrc_T_criticalExtensions_22_vals[] = {
18745   {   0, "rrcSetupComplete" },
18746   {   1, "criticalExtensionsFuture" },
18747   { 0, NULL }
18748 };
18749
18750 static const per_choice_t T_criticalExtensions_22_choice[] = {
18751   {   0, &hf_nr_rrc_rrcSetupComplete_01, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RRCSetupComplete_IEs },
18752   {   1, &hf_nr_rrc_criticalExtensionsFuture_22, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_22 },
18753   { 0, NULL, 0, NULL }
18754 };
18755
18756 static int
18757 dissect_nr_rrc_T_criticalExtensions_22(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18758   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
18759                                  ett_nr_rrc_T_criticalExtensions_22, T_criticalExtensions_22_choice,
18760                                  NULL);
18761
18762   return offset;
18763 }
18764
18765
18766 static const per_sequence_t RRCSetupComplete_sequence[] = {
18767   { &hf_nr_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RRC_TransactionIdentifier },
18768   { &hf_nr_rrc_criticalExtensions_22, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_22 },
18769   { NULL, 0, 0, NULL }
18770 };
18771
18772 static int
18773 dissect_nr_rrc_RRCSetupComplete(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18774   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRC Setup Complete");
18775
18776   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18777                                    ett_nr_rrc_RRCSetupComplete, RRCSetupComplete_sequence);
18778
18779   return offset;
18780 }
18781
18782
18783 static const per_sequence_t T_nonCriticalExtension_15_sequence[] = {
18784   { NULL, 0, 0, NULL }
18785 };
18786
18787 static int
18788 dissect_nr_rrc_T_nonCriticalExtension_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18789   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18790                                    ett_nr_rrc_T_nonCriticalExtension_15, T_nonCriticalExtension_15_sequence);
18791
18792   return offset;
18793 }
18794
18795
18796 static const per_sequence_t RRCReestablishmentComplete_IEs_sequence[] = {
18797   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
18798   { &hf_nr_rrc_nonCriticalExtension_15, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_15 },
18799   { NULL, 0, 0, NULL }
18800 };
18801
18802 static int
18803 dissect_nr_rrc_RRCReestablishmentComplete_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18804   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18805                                    ett_nr_rrc_RRCReestablishmentComplete_IEs, RRCReestablishmentComplete_IEs_sequence);
18806
18807   return offset;
18808 }
18809
18810
18811 static const per_sequence_t T_criticalExtensionsFuture_14_sequence[] = {
18812   { NULL, 0, 0, NULL }
18813 };
18814
18815 static int
18816 dissect_nr_rrc_T_criticalExtensionsFuture_14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18817   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18818                                    ett_nr_rrc_T_criticalExtensionsFuture_14, T_criticalExtensionsFuture_14_sequence);
18819
18820   return offset;
18821 }
18822
18823
18824 static const value_string nr_rrc_T_criticalExtensions_14_vals[] = {
18825   {   0, "rrcReestablishmentComplete" },
18826   {   1, "criticalExtensionsFuture" },
18827   { 0, NULL }
18828 };
18829
18830 static const per_choice_t T_criticalExtensions_14_choice[] = {
18831   {   0, &hf_nr_rrc_rrcReestablishmentComplete_01, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RRCReestablishmentComplete_IEs },
18832   {   1, &hf_nr_rrc_criticalExtensionsFuture_14, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_14 },
18833   { 0, NULL, 0, NULL }
18834 };
18835
18836 static int
18837 dissect_nr_rrc_T_criticalExtensions_14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18838   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
18839                                  ett_nr_rrc_T_criticalExtensions_14, T_criticalExtensions_14_choice,
18840                                  NULL);
18841
18842   return offset;
18843 }
18844
18845
18846 static const per_sequence_t RRCReestablishmentComplete_sequence[] = {
18847   { &hf_nr_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RRC_TransactionIdentifier },
18848   { &hf_nr_rrc_criticalExtensions_14, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_14 },
18849   { NULL, 0, 0, NULL }
18850 };
18851
18852 static int
18853 dissect_nr_rrc_RRCReestablishmentComplete(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18854   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRC Reestablishment Complete");
18855
18856   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18857                                    ett_nr_rrc_RRCReestablishmentComplete, RRCReestablishmentComplete_sequence);
18858
18859   return offset;
18860 }
18861
18862
18863 static const per_sequence_t T_nonCriticalExtension_21_sequence[] = {
18864   { NULL, 0, 0, NULL }
18865 };
18866
18867 static int
18868 dissect_nr_rrc_T_nonCriticalExtension_21(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18869   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18870                                    ett_nr_rrc_T_nonCriticalExtension_21, T_nonCriticalExtension_21_sequence);
18871
18872   return offset;
18873 }
18874
18875
18876 static const per_sequence_t RRCResumeComplete_IEs_sequence[] = {
18877   { &hf_nr_rrc_dedicatedNAS_Message, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_DedicatedNAS_Message },
18878   { &hf_nr_rrc_selectedPLMN_Identity, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_maxPLMN },
18879   { &hf_nr_rrc_uplinkTxDirectCurrentList, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_UplinkTxDirectCurrentList },
18880   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
18881   { &hf_nr_rrc_nonCriticalExtension_23, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_21 },
18882   { NULL, 0, 0, NULL }
18883 };
18884
18885 static int
18886 dissect_nr_rrc_RRCResumeComplete_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18887   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18888                                    ett_nr_rrc_RRCResumeComplete_IEs, RRCResumeComplete_IEs_sequence);
18889
18890   return offset;
18891 }
18892
18893
18894 static const per_sequence_t T_criticalExtensionsFuture_20_sequence[] = {
18895   { NULL, 0, 0, NULL }
18896 };
18897
18898 static int
18899 dissect_nr_rrc_T_criticalExtensionsFuture_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18900   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18901                                    ett_nr_rrc_T_criticalExtensionsFuture_20, T_criticalExtensionsFuture_20_sequence);
18902
18903   return offset;
18904 }
18905
18906
18907 static const value_string nr_rrc_T_criticalExtensions_20_vals[] = {
18908   {   0, "rrcResumeComplete" },
18909   {   1, "criticalExtensionsFuture" },
18910   { 0, NULL }
18911 };
18912
18913 static const per_choice_t T_criticalExtensions_20_choice[] = {
18914   {   0, &hf_nr_rrc_rrcResumeComplete_01, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RRCResumeComplete_IEs },
18915   {   1, &hf_nr_rrc_criticalExtensionsFuture_20, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_20 },
18916   { 0, NULL, 0, NULL }
18917 };
18918
18919 static int
18920 dissect_nr_rrc_T_criticalExtensions_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18921   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
18922                                  ett_nr_rrc_T_criticalExtensions_20, T_criticalExtensions_20_choice,
18923                                  NULL);
18924
18925   return offset;
18926 }
18927
18928
18929 static const per_sequence_t RRCResumeComplete_sequence[] = {
18930   { &hf_nr_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RRC_TransactionIdentifier },
18931   { &hf_nr_rrc_criticalExtensions_20, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_20 },
18932   { NULL, 0, 0, NULL }
18933 };
18934
18935 static int
18936 dissect_nr_rrc_RRCResumeComplete(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18937   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRC Resume Complete");
18938
18939   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18940                                    ett_nr_rrc_RRCResumeComplete, RRCResumeComplete_sequence);
18941
18942   return offset;
18943 }
18944
18945
18946 static const per_sequence_t T_nonCriticalExtension_25_sequence[] = {
18947   { NULL, 0, 0, NULL }
18948 };
18949
18950 static int
18951 dissect_nr_rrc_T_nonCriticalExtension_25(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18952   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18953                                    ett_nr_rrc_T_nonCriticalExtension_25, T_nonCriticalExtension_25_sequence);
18954
18955   return offset;
18956 }
18957
18958
18959 static const per_sequence_t SecurityModeComplete_IEs_sequence[] = {
18960   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
18961   { &hf_nr_rrc_nonCriticalExtension_27, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_25 },
18962   { NULL, 0, 0, NULL }
18963 };
18964
18965 static int
18966 dissect_nr_rrc_SecurityModeComplete_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18967   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18968                                    ett_nr_rrc_SecurityModeComplete_IEs, SecurityModeComplete_IEs_sequence);
18969
18970   return offset;
18971 }
18972
18973
18974 static const per_sequence_t T_criticalExtensionsFuture_25_sequence[] = {
18975   { NULL, 0, 0, NULL }
18976 };
18977
18978 static int
18979 dissect_nr_rrc_T_criticalExtensionsFuture_25(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
18980   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
18981                                    ett_nr_rrc_T_criticalExtensionsFuture_25, T_criticalExtensionsFuture_25_sequence);
18982
18983   return offset;
18984 }
18985
18986
18987 static const value_string nr_rrc_T_criticalExtensions_25_vals[] = {
18988   {   0, "securityModeComplete" },
18989   {   1, "criticalExtensionsFuture" },
18990   { 0, NULL }
18991 };
18992
18993 static const per_choice_t T_criticalExtensions_25_choice[] = {
18994   {   0, &hf_nr_rrc_securityModeComplete_01, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SecurityModeComplete_IEs },
18995   {   1, &hf_nr_rrc_criticalExtensionsFuture_25, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_25 },
18996   { 0, NULL, 0, NULL }
18997 };
18998
18999 static int
19000 dissect_nr_rrc_T_criticalExtensions_25(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19001   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
19002                                  ett_nr_rrc_T_criticalExtensions_25, T_criticalExtensions_25_choice,
19003                                  NULL);
19004
19005   return offset;
19006 }
19007
19008
19009 static const per_sequence_t SecurityModeComplete_sequence[] = {
19010   { &hf_nr_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RRC_TransactionIdentifier },
19011   { &hf_nr_rrc_criticalExtensions_25, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_25 },
19012   { NULL, 0, 0, NULL }
19013 };
19014
19015 static int
19016 dissect_nr_rrc_SecurityModeComplete(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19017   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Security Mode Complete");
19018
19019   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19020                                    ett_nr_rrc_SecurityModeComplete, SecurityModeComplete_sequence);
19021
19022   return offset;
19023 }
19024
19025
19026 static const per_sequence_t T_nonCriticalExtension_26_sequence[] = {
19027   { NULL, 0, 0, NULL }
19028 };
19029
19030 static int
19031 dissect_nr_rrc_T_nonCriticalExtension_26(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19032   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19033                                    ett_nr_rrc_T_nonCriticalExtension_26, T_nonCriticalExtension_26_sequence);
19034
19035   return offset;
19036 }
19037
19038
19039 static const per_sequence_t SecurityModeFailure_IEs_sequence[] = {
19040   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
19041   { &hf_nr_rrc_nonCriticalExtension_28, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_26 },
19042   { NULL, 0, 0, NULL }
19043 };
19044
19045 static int
19046 dissect_nr_rrc_SecurityModeFailure_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19047   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19048                                    ett_nr_rrc_SecurityModeFailure_IEs, SecurityModeFailure_IEs_sequence);
19049
19050   return offset;
19051 }
19052
19053
19054 static const per_sequence_t T_criticalExtensionsFuture_26_sequence[] = {
19055   { NULL, 0, 0, NULL }
19056 };
19057
19058 static int
19059 dissect_nr_rrc_T_criticalExtensionsFuture_26(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19060   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19061                                    ett_nr_rrc_T_criticalExtensionsFuture_26, T_criticalExtensionsFuture_26_sequence);
19062
19063   return offset;
19064 }
19065
19066
19067 static const value_string nr_rrc_T_criticalExtensions_26_vals[] = {
19068   {   0, "securityModeFailure" },
19069   {   1, "criticalExtensionsFuture" },
19070   { 0, NULL }
19071 };
19072
19073 static const per_choice_t T_criticalExtensions_26_choice[] = {
19074   {   0, &hf_nr_rrc_securityModeFailure_01, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SecurityModeFailure_IEs },
19075   {   1, &hf_nr_rrc_criticalExtensionsFuture_26, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_26 },
19076   { 0, NULL, 0, NULL }
19077 };
19078
19079 static int
19080 dissect_nr_rrc_T_criticalExtensions_26(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19081   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
19082                                  ett_nr_rrc_T_criticalExtensions_26, T_criticalExtensions_26_choice,
19083                                  NULL);
19084
19085   return offset;
19086 }
19087
19088
19089 static const per_sequence_t SecurityModeFailure_sequence[] = {
19090   { &hf_nr_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RRC_TransactionIdentifier },
19091   { &hf_nr_rrc_criticalExtensions_26, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_26 },
19092   { NULL, 0, 0, NULL }
19093 };
19094
19095 static int
19096 dissect_nr_rrc_SecurityModeFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19097   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Security Mode Failure");
19098
19099   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19100                                    ett_nr_rrc_SecurityModeFailure, SecurityModeFailure_sequence);
19101
19102   return offset;
19103 }
19104
19105
19106 static const per_sequence_t T_nonCriticalExtension_32_sequence[] = {
19107   { NULL, 0, 0, NULL }
19108 };
19109
19110 static int
19111 dissect_nr_rrc_T_nonCriticalExtension_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19112   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19113                                    ett_nr_rrc_T_nonCriticalExtension_32, T_nonCriticalExtension_32_sequence);
19114
19115   return offset;
19116 }
19117
19118
19119 static const per_sequence_t ULInformationTransfer_IEs_sequence[] = {
19120   { &hf_nr_rrc_dedicatedNAS_Message, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_DedicatedNAS_Message },
19121   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
19122   { &hf_nr_rrc_nonCriticalExtension_34, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_32 },
19123   { NULL, 0, 0, NULL }
19124 };
19125
19126 static int
19127 dissect_nr_rrc_ULInformationTransfer_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19128   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19129                                    ett_nr_rrc_ULInformationTransfer_IEs, ULInformationTransfer_IEs_sequence);
19130
19131   return offset;
19132 }
19133
19134
19135 static const per_sequence_t T_criticalExtensionsFuture_31_sequence[] = {
19136   { NULL, 0, 0, NULL }
19137 };
19138
19139 static int
19140 dissect_nr_rrc_T_criticalExtensionsFuture_31(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19141   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19142                                    ett_nr_rrc_T_criticalExtensionsFuture_31, T_criticalExtensionsFuture_31_sequence);
19143
19144   return offset;
19145 }
19146
19147
19148 static const value_string nr_rrc_T_criticalExtensions_31_vals[] = {
19149   {   0, "ulInformationTransfer" },
19150   {   1, "criticalExtensionsFuture" },
19151   { 0, NULL }
19152 };
19153
19154 static const per_choice_t T_criticalExtensions_31_choice[] = {
19155   {   0, &hf_nr_rrc_ulInformationTransfer_01, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_ULInformationTransfer_IEs },
19156   {   1, &hf_nr_rrc_criticalExtensionsFuture_31, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_31 },
19157   { 0, NULL, 0, NULL }
19158 };
19159
19160 static int
19161 dissect_nr_rrc_T_criticalExtensions_31(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19162   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
19163                                  ett_nr_rrc_T_criticalExtensions_31, T_criticalExtensions_31_choice,
19164                                  NULL);
19165
19166   return offset;
19167 }
19168
19169
19170 static const per_sequence_t ULInformationTransfer_sequence[] = {
19171   { &hf_nr_rrc_criticalExtensions_31, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_31 },
19172   { NULL, 0, 0, NULL }
19173 };
19174
19175 static int
19176 dissect_nr_rrc_ULInformationTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19177   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UL Information Transfer");
19178
19179   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19180                                    ett_nr_rrc_ULInformationTransfer, ULInformationTransfer_sequence);
19181
19182   return offset;
19183 }
19184
19185
19186 static const per_sequence_t EUTRA_RSTD_Info_sequence[] = {
19187   { &hf_nr_rrc_carrierFreq_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ARFCN_ValueEUTRA },
19188   { &hf_nr_rrc_measPRS_Offset, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_39 },
19189   { NULL, 0, 0, NULL }
19190 };
19191
19192 static int
19193 dissect_nr_rrc_EUTRA_RSTD_Info(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19194   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19195                                    ett_nr_rrc_EUTRA_RSTD_Info, EUTRA_RSTD_Info_sequence);
19196
19197   return offset;
19198 }
19199
19200
19201 static const per_sequence_t EUTRA_RSTD_InfoList_sequence_of[1] = {
19202   { &hf_nr_rrc_EUTRA_RSTD_InfoList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_EUTRA_RSTD_Info },
19203 };
19204
19205 static int
19206 dissect_nr_rrc_EUTRA_RSTD_InfoList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19207   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
19208                                                   ett_nr_rrc_EUTRA_RSTD_InfoList, EUTRA_RSTD_InfoList_sequence_of,
19209                                                   1, maxInterRAT_RSTD_Freq, FALSE);
19210
19211   return offset;
19212 }
19213
19214
19215 static const value_string nr_rrc_LocationMeasurementInfo_vals[] = {
19216   {   0, "eutra-RSTD" },
19217   { 0, NULL }
19218 };
19219
19220 static const per_choice_t LocationMeasurementInfo_choice[] = {
19221   {   0, &hf_nr_rrc_eutra_RSTD   , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_EUTRA_RSTD_InfoList },
19222   { 0, NULL, 0, NULL }
19223 };
19224
19225 static int
19226 dissect_nr_rrc_LocationMeasurementInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19227   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
19228                                  ett_nr_rrc_LocationMeasurementInfo, LocationMeasurementInfo_choice,
19229                                  NULL);
19230
19231   return offset;
19232 }
19233
19234
19235 static const value_string nr_rrc_T_measurementIndication_vals[] = {
19236   {   0, "release" },
19237   {   1, "setup" },
19238   { 0, NULL }
19239 };
19240
19241 static const per_choice_t T_measurementIndication_choice[] = {
19242   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
19243   {   1, &hf_nr_rrc_setup_01     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_LocationMeasurementInfo },
19244   { 0, NULL, 0, NULL }
19245 };
19246
19247 static int
19248 dissect_nr_rrc_T_measurementIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19249   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
19250                                  ett_nr_rrc_T_measurementIndication, T_measurementIndication_choice,
19251                                  NULL);
19252
19253   return offset;
19254 }
19255
19256
19257 static const per_sequence_t T_nonCriticalExtension_10_sequence[] = {
19258   { NULL, 0, 0, NULL }
19259 };
19260
19261 static int
19262 dissect_nr_rrc_T_nonCriticalExtension_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19263   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19264                                    ett_nr_rrc_T_nonCriticalExtension_10, T_nonCriticalExtension_10_sequence);
19265
19266   return offset;
19267 }
19268
19269
19270 static const per_sequence_t LocationMeasurementIndication_IEs_sequence[] = {
19271   { &hf_nr_rrc_measurementIndication, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_measurementIndication },
19272   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
19273   { &hf_nr_rrc_nonCriticalExtension_10, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_10 },
19274   { NULL, 0, 0, NULL }
19275 };
19276
19277 static int
19278 dissect_nr_rrc_LocationMeasurementIndication_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19279   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19280                                    ett_nr_rrc_LocationMeasurementIndication_IEs, LocationMeasurementIndication_IEs_sequence);
19281
19282   return offset;
19283 }
19284
19285
19286 static const per_sequence_t T_criticalExtensionsFuture_10_sequence[] = {
19287   { NULL, 0, 0, NULL }
19288 };
19289
19290 static int
19291 dissect_nr_rrc_T_criticalExtensionsFuture_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19292   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19293                                    ett_nr_rrc_T_criticalExtensionsFuture_10, T_criticalExtensionsFuture_10_sequence);
19294
19295   return offset;
19296 }
19297
19298
19299 static const value_string nr_rrc_T_criticalExtensions_10_vals[] = {
19300   {   0, "locationMeasurementIndication" },
19301   {   1, "criticalExtensionsFuture" },
19302   { 0, NULL }
19303 };
19304
19305 static const per_choice_t T_criticalExtensions_10_choice[] = {
19306   {   0, &hf_nr_rrc_locationMeasurementIndication_01, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_LocationMeasurementIndication_IEs },
19307   {   1, &hf_nr_rrc_criticalExtensionsFuture_10, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_10 },
19308   { 0, NULL, 0, NULL }
19309 };
19310
19311 static int
19312 dissect_nr_rrc_T_criticalExtensions_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19313   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
19314                                  ett_nr_rrc_T_criticalExtensions_10, T_criticalExtensions_10_choice,
19315                                  NULL);
19316
19317   return offset;
19318 }
19319
19320
19321 static const per_sequence_t LocationMeasurementIndication_sequence[] = {
19322   { &hf_nr_rrc_criticalExtensions_10, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_10 },
19323   { NULL, 0, 0, NULL }
19324 };
19325
19326 static int
19327 dissect_nr_rrc_LocationMeasurementIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19328   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Location Measurement Indication");
19329
19330   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19331                                    ett_nr_rrc_LocationMeasurementIndication, LocationMeasurementIndication_sequence);
19332
19333   return offset;
19334 }
19335
19336
19337 static const per_sequence_t T_nonCriticalExtension_31_sequence[] = {
19338   { NULL, 0, 0, NULL }
19339 };
19340
19341 static int
19342 dissect_nr_rrc_T_nonCriticalExtension_31(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19343   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19344                                    ett_nr_rrc_T_nonCriticalExtension_31, T_nonCriticalExtension_31_sequence);
19345
19346   return offset;
19347 }
19348
19349
19350 static const per_sequence_t UECapabilityInformation_IEs_sequence[] = {
19351   { &hf_nr_rrc_ue_CapabilityRAT_ContainerList, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_UE_CapabilityRAT_ContainerList },
19352   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
19353   { &hf_nr_rrc_nonCriticalExtension_33, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_31 },
19354   { NULL, 0, 0, NULL }
19355 };
19356
19357 static int
19358 dissect_nr_rrc_UECapabilityInformation_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19359   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19360                                    ett_nr_rrc_UECapabilityInformation_IEs, UECapabilityInformation_IEs_sequence);
19361
19362   return offset;
19363 }
19364
19365
19366 static const per_sequence_t T_criticalExtensionsFuture_30_sequence[] = {
19367   { NULL, 0, 0, NULL }
19368 };
19369
19370 static int
19371 dissect_nr_rrc_T_criticalExtensionsFuture_30(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19372   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19373                                    ett_nr_rrc_T_criticalExtensionsFuture_30, T_criticalExtensionsFuture_30_sequence);
19374
19375   return offset;
19376 }
19377
19378
19379 static const value_string nr_rrc_T_criticalExtensions_30_vals[] = {
19380   {   0, "ueCapabilityInformation" },
19381   {   1, "criticalExtensionsFuture" },
19382   { 0, NULL }
19383 };
19384
19385 static const per_choice_t T_criticalExtensions_30_choice[] = {
19386   {   0, &hf_nr_rrc_ueCapabilityInformation_01, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_UECapabilityInformation_IEs },
19387   {   1, &hf_nr_rrc_criticalExtensionsFuture_30, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_30 },
19388   { 0, NULL, 0, NULL }
19389 };
19390
19391 static int
19392 dissect_nr_rrc_T_criticalExtensions_30(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19393   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
19394                                  ett_nr_rrc_T_criticalExtensions_30, T_criticalExtensions_30_choice,
19395                                  NULL);
19396
19397   return offset;
19398 }
19399
19400
19401 static const per_sequence_t UECapabilityInformation_sequence[] = {
19402   { &hf_nr_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RRC_TransactionIdentifier },
19403   { &hf_nr_rrc_criticalExtensions_30, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_30 },
19404   { NULL, 0, 0, NULL }
19405 };
19406
19407 static int
19408 dissect_nr_rrc_UECapabilityInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19409   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UE Capability Information");
19410
19411   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Counter Check Response");
19412
19413   col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UE Assistance Information");
19414
19415   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19416                                    ett_nr_rrc_UECapabilityInformation, UECapabilityInformation_sequence);
19417
19418   return offset;
19419 }
19420
19421
19422
19423 static int
19424 dissect_nr_rrc_INTEGER_0_4294967295(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19425   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
19426                                                             0U, 4294967295U, NULL, FALSE);
19427
19428   return offset;
19429 }
19430
19431
19432 static const per_sequence_t DRB_CountInfo_sequence[] = {
19433   { &hf_nr_rrc_drb_Identity , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_DRB_Identity },
19434   { &hf_nr_rrc_count_Uplink , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_4294967295 },
19435   { &hf_nr_rrc_count_Downlink, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_4294967295 },
19436   { NULL, 0, 0, NULL }
19437 };
19438
19439 static int
19440 dissect_nr_rrc_DRB_CountInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19441   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19442                                    ett_nr_rrc_DRB_CountInfo, DRB_CountInfo_sequence);
19443
19444   return offset;
19445 }
19446
19447
19448 static const per_sequence_t DRB_CountInfoList_sequence_of[1] = {
19449   { &hf_nr_rrc_DRB_CountInfoList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_DRB_CountInfo },
19450 };
19451
19452 static int
19453 dissect_nr_rrc_DRB_CountInfoList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19454   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
19455                                                   ett_nr_rrc_DRB_CountInfoList, DRB_CountInfoList_sequence_of,
19456                                                   0, maxDRB, FALSE);
19457
19458   return offset;
19459 }
19460
19461
19462 static const per_sequence_t T_nonCriticalExtension_08_sequence[] = {
19463   { NULL, 0, 0, NULL }
19464 };
19465
19466 static int
19467 dissect_nr_rrc_T_nonCriticalExtension_08(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19468   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19469                                    ett_nr_rrc_T_nonCriticalExtension_08, T_nonCriticalExtension_08_sequence);
19470
19471   return offset;
19472 }
19473
19474
19475 static const per_sequence_t CounterCheckResponse_IEs_sequence[] = {
19476   { &hf_nr_rrc_drb_CountInfoList, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_DRB_CountInfoList },
19477   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
19478   { &hf_nr_rrc_nonCriticalExtension_08, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_08 },
19479   { NULL, 0, 0, NULL }
19480 };
19481
19482 static int
19483 dissect_nr_rrc_CounterCheckResponse_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19484   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19485                                    ett_nr_rrc_CounterCheckResponse_IEs, CounterCheckResponse_IEs_sequence);
19486
19487   return offset;
19488 }
19489
19490
19491 static const per_sequence_t T_criticalExtensionsFuture_08_sequence[] = {
19492   { NULL, 0, 0, NULL }
19493 };
19494
19495 static int
19496 dissect_nr_rrc_T_criticalExtensionsFuture_08(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19497   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19498                                    ett_nr_rrc_T_criticalExtensionsFuture_08, T_criticalExtensionsFuture_08_sequence);
19499
19500   return offset;
19501 }
19502
19503
19504 static const value_string nr_rrc_T_criticalExtensions_08_vals[] = {
19505   {   0, "counterCheckResponse" },
19506   {   1, "criticalExtensionsFuture" },
19507   { 0, NULL }
19508 };
19509
19510 static const per_choice_t T_criticalExtensions_08_choice[] = {
19511   {   0, &hf_nr_rrc_counterCheckResponse_01, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_CounterCheckResponse_IEs },
19512   {   1, &hf_nr_rrc_criticalExtensionsFuture_08, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_08 },
19513   { 0, NULL, 0, NULL }
19514 };
19515
19516 static int
19517 dissect_nr_rrc_T_criticalExtensions_08(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19518   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
19519                                  ett_nr_rrc_T_criticalExtensions_08, T_criticalExtensions_08_choice,
19520                                  NULL);
19521
19522   return offset;
19523 }
19524
19525
19526 static const per_sequence_t CounterCheckResponse_sequence[] = {
19527   { &hf_nr_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RRC_TransactionIdentifier },
19528   { &hf_nr_rrc_criticalExtensions_08, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_08 },
19529   { NULL, 0, 0, NULL }
19530 };
19531
19532 static int
19533 dissect_nr_rrc_CounterCheckResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19534   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19535                                    ett_nr_rrc_CounterCheckResponse, CounterCheckResponse_sequence);
19536
19537   return offset;
19538 }
19539
19540
19541 static const value_string nr_rrc_T_type1_vals[] = {
19542   {   0, "msMinus1280" },
19543   {   1, "msMinus640" },
19544   {   2, "msMinus320" },
19545   {   3, "msMinus160" },
19546   {   4, "msMinus80" },
19547   {   5, "msMinus60" },
19548   {   6, "msMinus40" },
19549   {   7, "msMinus20" },
19550   {   8, "ms0" },
19551   {   9, "ms20" },
19552   {  10, "ms40" },
19553   {  11, "ms60" },
19554   {  12, "ms80" },
19555   {  13, "ms160" },
19556   {  14, "ms320" },
19557   {  15, "ms640" },
19558   {  16, "ms1280" },
19559   { 0, NULL }
19560 };
19561
19562 static value_string_ext nr_rrc_T_type1_vals_ext = VALUE_STRING_EXT_INIT(nr_rrc_T_type1_vals);
19563
19564
19565 static int
19566 dissect_nr_rrc_T_type1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19567   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
19568                                      17, NULL, FALSE, 0, NULL);
19569
19570   return offset;
19571 }
19572
19573
19574 static const value_string nr_rrc_DelayBudgetReport_vals[] = {
19575   {   0, "type1" },
19576   { 0, NULL }
19577 };
19578
19579 static const per_choice_t DelayBudgetReport_choice[] = {
19580   {   0, &hf_nr_rrc_type1        , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_T_type1 },
19581   { 0, NULL, 0, NULL }
19582 };
19583
19584 static int
19585 dissect_nr_rrc_DelayBudgetReport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19586   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
19587                                  ett_nr_rrc_DelayBudgetReport, DelayBudgetReport_choice,
19588                                  NULL);
19589
19590   return offset;
19591 }
19592
19593
19594 static const per_sequence_t T_nonCriticalExtension_29_sequence[] = {
19595   { NULL, 0, 0, NULL }
19596 };
19597
19598 static int
19599 dissect_nr_rrc_T_nonCriticalExtension_29(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19600   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19601                                    ett_nr_rrc_T_nonCriticalExtension_29, T_nonCriticalExtension_29_sequence);
19602
19603   return offset;
19604 }
19605
19606
19607 static const per_sequence_t UEAssistanceInformation_IEs_sequence[] = {
19608   { &hf_nr_rrc_delayBudgetReport, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_DelayBudgetReport },
19609   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
19610   { &hf_nr_rrc_nonCriticalExtension_31, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_29 },
19611   { NULL, 0, 0, NULL }
19612 };
19613
19614 static int
19615 dissect_nr_rrc_UEAssistanceInformation_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19616   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19617                                    ett_nr_rrc_UEAssistanceInformation_IEs, UEAssistanceInformation_IEs_sequence);
19618
19619   return offset;
19620 }
19621
19622
19623 static const per_sequence_t T_criticalExtensionsFuture_28_sequence[] = {
19624   { NULL, 0, 0, NULL }
19625 };
19626
19627 static int
19628 dissect_nr_rrc_T_criticalExtensionsFuture_28(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19629   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19630                                    ett_nr_rrc_T_criticalExtensionsFuture_28, T_criticalExtensionsFuture_28_sequence);
19631
19632   return offset;
19633 }
19634
19635
19636 static const value_string nr_rrc_T_criticalExtensions_28_vals[] = {
19637   {   0, "ueAssistanceInformation" },
19638   {   1, "criticalExtensionsFuture" },
19639   { 0, NULL }
19640 };
19641
19642 static const per_choice_t T_criticalExtensions_28_choice[] = {
19643   {   0, &hf_nr_rrc_ueAssistanceInformation_01, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_UEAssistanceInformation_IEs },
19644   {   1, &hf_nr_rrc_criticalExtensionsFuture_28, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_criticalExtensionsFuture_28 },
19645   { 0, NULL, 0, NULL }
19646 };
19647
19648 static int
19649 dissect_nr_rrc_T_criticalExtensions_28(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19650   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
19651                                  ett_nr_rrc_T_criticalExtensions_28, T_criticalExtensions_28_choice,
19652                                  NULL);
19653
19654   return offset;
19655 }
19656
19657
19658 static const per_sequence_t UEAssistanceInformation_sequence[] = {
19659   { &hf_nr_rrc_criticalExtensions_28, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_criticalExtensions_28 },
19660   { NULL, 0, 0, NULL }
19661 };
19662
19663 static int
19664 dissect_nr_rrc_UEAssistanceInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19665   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19666                                    ett_nr_rrc_UEAssistanceInformation, UEAssistanceInformation_sequence);
19667
19668   return offset;
19669 }
19670
19671
19672 static const value_string nr_rrc_T_c1_13_vals[] = {
19673   {   0, "measurementReport" },
19674   {   1, "rrcReconfigurationComplete" },
19675   {   2, "rrcSetupComplete" },
19676   {   3, "rrcReestablishmentComplete" },
19677   {   4, "rrcResumeComplete" },
19678   {   5, "securityModeComplete" },
19679   {   6, "securityModeFailure" },
19680   {   7, "ulInformationTransfer" },
19681   {   8, "locationMeasurementIndication" },
19682   {   9, "ueCapabilityInformation" },
19683   {  10, "counterCheckResponse" },
19684   {  11, "ueAssistanceInformation" },
19685   {  12, "spare4" },
19686   {  13, "spare3" },
19687   {  14, "spare2" },
19688   {  15, "spare1" },
19689   { 0, NULL }
19690 };
19691
19692 static const per_choice_t T_c1_13_choice[] = {
19693   {   0, &hf_nr_rrc_measurementReport, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_MeasurementReport },
19694   {   1, &hf_nr_rrc_rrcReconfigurationComplete, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RRCReconfigurationComplete },
19695   {   2, &hf_nr_rrc_rrcSetupComplete, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RRCSetupComplete },
19696   {   3, &hf_nr_rrc_rrcReestablishmentComplete, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RRCReestablishmentComplete },
19697   {   4, &hf_nr_rrc_rrcResumeComplete, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RRCResumeComplete },
19698   {   5, &hf_nr_rrc_securityModeComplete, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SecurityModeComplete },
19699   {   6, &hf_nr_rrc_securityModeFailure, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SecurityModeFailure },
19700   {   7, &hf_nr_rrc_ulInformationTransfer, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_ULInformationTransfer },
19701   {   8, &hf_nr_rrc_locationMeasurementIndication, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_LocationMeasurementIndication },
19702   {   9, &hf_nr_rrc_ueCapabilityInformation, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_UECapabilityInformation },
19703   {  10, &hf_nr_rrc_counterCheckResponse, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_CounterCheckResponse },
19704   {  11, &hf_nr_rrc_ueAssistanceInformation, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_UEAssistanceInformation },
19705   {  12, &hf_nr_rrc_spare4       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
19706   {  13, &hf_nr_rrc_spare3       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
19707   {  14, &hf_nr_rrc_spare2       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
19708   {  15, &hf_nr_rrc_spare1       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
19709   { 0, NULL, 0, NULL }
19710 };
19711
19712 static int
19713 dissect_nr_rrc_T_c1_13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19714   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
19715                                  ett_nr_rrc_T_c1_13, T_c1_13_choice,
19716                                  NULL);
19717
19718   return offset;
19719 }
19720
19721
19722 static const per_sequence_t T_messageClassExtension_07_sequence[] = {
19723   { NULL, 0, 0, NULL }
19724 };
19725
19726 static int
19727 dissect_nr_rrc_T_messageClassExtension_07(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19728   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19729                                    ett_nr_rrc_T_messageClassExtension_07, T_messageClassExtension_07_sequence);
19730
19731   return offset;
19732 }
19733
19734
19735 static const value_string nr_rrc_UL_DCCH_MessageType_vals[] = {
19736   {   0, "c1" },
19737   {   1, "messageClassExtension" },
19738   { 0, NULL }
19739 };
19740
19741 static const per_choice_t UL_DCCH_MessageType_choice[] = {
19742   {   0, &hf_nr_rrc_c1_13        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_c1_13 },
19743   {   1, &hf_nr_rrc_messageClassExtension_07, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_messageClassExtension_07 },
19744   { 0, NULL, 0, NULL }
19745 };
19746
19747 static int
19748 dissect_nr_rrc_UL_DCCH_MessageType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19749   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
19750                                  ett_nr_rrc_UL_DCCH_MessageType, UL_DCCH_MessageType_choice,
19751                                  NULL);
19752
19753   return offset;
19754 }
19755
19756
19757 static const per_sequence_t UL_DCCH_Message_sequence[] = {
19758   { &hf_nr_rrc_message_07   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_UL_DCCH_MessageType },
19759   { NULL, 0, 0, NULL }
19760 };
19761
19762 static int
19763 dissect_nr_rrc_UL_DCCH_Message(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19764   proto_item *ti;
19765
19766   col_set_str(actx->pinfo->cinfo, COL_PROTOCOL, "NR RRC");
19767   col_clear(actx->pinfo->cinfo, COL_INFO);
19768
19769   ti = proto_tree_add_item(tree, proto_nr_rrc, tvb, 0, -1, ENC_NA);
19770   tree = proto_item_add_subtree(ti, ett_nr_rrc);
19771
19772   actx->pinfo->link_dir = P2P_DIR_UL;
19773
19774   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19775                                    ett_nr_rrc_UL_DCCH_Message, UL_DCCH_Message_sequence);
19776
19777   return offset;
19778 }
19779
19780
19781 static const value_string nr_rrc_Alpha_vals[] = {
19782   {   0, "alpha0" },
19783   {   1, "alpha04" },
19784   {   2, "alpha05" },
19785   {   3, "alpha06" },
19786   {   4, "alpha07" },
19787   {   5, "alpha08" },
19788   {   6, "alpha09" },
19789   {   7, "alpha1" },
19790   { 0, NULL }
19791 };
19792
19793
19794 static int
19795 dissect_nr_rrc_Alpha(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19796   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
19797                                      8, NULL, FALSE, 0, NULL);
19798
19799   return offset;
19800 }
19801
19802
19803 static const per_sequence_t BFR_SSB_Resource_sequence[] = {
19804   { &hf_nr_rrc_ssb_01       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SSB_Index },
19805   { &hf_nr_rrc_ra_PreambleIndex, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_63 },
19806   { NULL, 0, 0, NULL }
19807 };
19808
19809 static int
19810 dissect_nr_rrc_BFR_SSB_Resource(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19811   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19812                                    ett_nr_rrc_BFR_SSB_Resource, BFR_SSB_Resource_sequence);
19813
19814   return offset;
19815 }
19816
19817
19818
19819 static int
19820 dissect_nr_rrc_NZP_CSI_RS_ResourceId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19821   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
19822                                                             0U, maxNrofNZP_CSI_RS_Resources_1, NULL, FALSE);
19823
19824   return offset;
19825 }
19826
19827
19828
19829 static int
19830 dissect_nr_rrc_INTEGER_0_maxRA_Occasions_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19831   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
19832                                                             0U, maxRA_Occasions_1, NULL, FALSE);
19833
19834   return offset;
19835 }
19836
19837
19838 static const per_sequence_t T_ra_OccasionList_sequence_of[1] = {
19839   { &hf_nr_rrc_ra_OccasionList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_maxRA_Occasions_1 },
19840 };
19841
19842 static int
19843 dissect_nr_rrc_T_ra_OccasionList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19844   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
19845                                                   ett_nr_rrc_T_ra_OccasionList, T_ra_OccasionList_sequence_of,
19846                                                   1, maxRA_OccasionsPerCSIRS, FALSE);
19847
19848   return offset;
19849 }
19850
19851
19852 static const per_sequence_t BFR_CSIRS_Resource_sequence[] = {
19853   { &hf_nr_rrc_csi_RS_01    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_NZP_CSI_RS_ResourceId },
19854   { &hf_nr_rrc_ra_OccasionList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_ra_OccasionList },
19855   { &hf_nr_rrc_ra_PreambleIndex, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_63 },
19856   { NULL, 0, 0, NULL }
19857 };
19858
19859 static int
19860 dissect_nr_rrc_BFR_CSIRS_Resource(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19861   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19862                                    ett_nr_rrc_BFR_CSIRS_Resource, BFR_CSIRS_Resource_sequence);
19863
19864   return offset;
19865 }
19866
19867
19868 static const value_string nr_rrc_PRACH_ResourceDedicatedBFR_vals[] = {
19869   {   0, "ssb" },
19870   {   1, "csi-RS" },
19871   { 0, NULL }
19872 };
19873
19874 static const per_choice_t PRACH_ResourceDedicatedBFR_choice[] = {
19875   {   0, &hf_nr_rrc_ssb          , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BFR_SSB_Resource },
19876   {   1, &hf_nr_rrc_csi_RS       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BFR_CSIRS_Resource },
19877   { 0, NULL, 0, NULL }
19878 };
19879
19880 static int
19881 dissect_nr_rrc_PRACH_ResourceDedicatedBFR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19882   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
19883                                  ett_nr_rrc_PRACH_ResourceDedicatedBFR, PRACH_ResourceDedicatedBFR_choice,
19884                                  NULL);
19885
19886   return offset;
19887 }
19888
19889
19890 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofCandidateBeams_OF_PRACH_ResourceDedicatedBFR_sequence_of[1] = {
19891   { &hf_nr_rrc_candidateBeamRSList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PRACH_ResourceDedicatedBFR },
19892 };
19893
19894 static int
19895 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCandidateBeams_OF_PRACH_ResourceDedicatedBFR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19896   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
19897                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCandidateBeams_OF_PRACH_ResourceDedicatedBFR, SEQUENCE_SIZE_1_maxNrofCandidateBeams_OF_PRACH_ResourceDedicatedBFR_sequence_of,
19898                                                   1, maxNrofCandidateBeams, FALSE);
19899
19900   return offset;
19901 }
19902
19903
19904 static const value_string nr_rrc_T_ssb_perRACH_Occasion_vals[] = {
19905   {   0, "oneEighth" },
19906   {   1, "oneFourth" },
19907   {   2, "oneHalf" },
19908   {   3, "one" },
19909   {   4, "two" },
19910   {   5, "four" },
19911   {   6, "eight" },
19912   {   7, "sixteen" },
19913   { 0, NULL }
19914 };
19915
19916
19917 static int
19918 dissect_nr_rrc_T_ssb_perRACH_Occasion(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19919   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
19920                                      8, NULL, FALSE, 0, NULL);
19921
19922   return offset;
19923 }
19924
19925
19926 static const value_string nr_rrc_T_powerRampingStepHighPriority_vals[] = {
19927   {   0, "dB0" },
19928   {   1, "dB2" },
19929   {   2, "dB4" },
19930   {   3, "dB6" },
19931   { 0, NULL }
19932 };
19933
19934
19935 static int
19936 dissect_nr_rrc_T_powerRampingStepHighPriority(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19937   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
19938                                      4, NULL, FALSE, 0, NULL);
19939
19940   return offset;
19941 }
19942
19943
19944 static const value_string nr_rrc_T_scalingFactorBI_vals[] = {
19945   {   0, "zero" },
19946   {   1, "dot25" },
19947   {   2, "dot5" },
19948   {   3, "dot75" },
19949   { 0, NULL }
19950 };
19951
19952
19953 static int
19954 dissect_nr_rrc_T_scalingFactorBI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19955   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
19956                                      4, NULL, FALSE, 0, NULL);
19957
19958   return offset;
19959 }
19960
19961
19962 static const per_sequence_t RA_Prioritization_sequence[] = {
19963   { &hf_nr_rrc_powerRampingStepHighPriority, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_powerRampingStepHighPriority },
19964   { &hf_nr_rrc_scalingFactorBI, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_scalingFactorBI },
19965   { NULL, 0, 0, NULL }
19966 };
19967
19968 static int
19969 dissect_nr_rrc_RA_Prioritization(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19970   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
19971                                    ett_nr_rrc_RA_Prioritization, RA_Prioritization_sequence);
19972
19973   return offset;
19974 }
19975
19976
19977 static const value_string nr_rrc_T_beamFailureRecoveryTimer_vals[] = {
19978   {   0, "ms10" },
19979   {   1, "ms20" },
19980   {   2, "ms40" },
19981   {   3, "ms60" },
19982   {   4, "ms80" },
19983   {   5, "ms100" },
19984   {   6, "ms150" },
19985   {   7, "ms200" },
19986   { 0, NULL }
19987 };
19988
19989
19990 static int
19991 dissect_nr_rrc_T_beamFailureRecoveryTimer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
19992   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
19993                                      8, NULL, FALSE, 0, NULL);
19994
19995   return offset;
19996 }
19997
19998
19999 static const per_sequence_t BeamFailureRecoveryConfig_eag_1_sequence[] = {
20000   { &hf_nr_rrc_msg1_SubcarrierSpacing_v1530, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SubcarrierSpacing },
20001   { NULL, 0, 0, NULL }
20002 };
20003
20004 static int
20005 dissect_nr_rrc_BeamFailureRecoveryConfig_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20006   offset = dissect_per_sequence_eag(tvb, offset, actx, tree, BeamFailureRecoveryConfig_eag_1_sequence);
20007
20008   return offset;
20009 }
20010
20011
20012 static const per_sequence_t BeamFailureRecoveryConfig_sequence[] = {
20013   { &hf_nr_rrc_rootSequenceIndex_BFR, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_137 },
20014   { &hf_nr_rrc_rach_ConfigBFR, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_RACH_ConfigGeneric },
20015   { &hf_nr_rrc_rsrp_ThresholdSSB, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_RSRP_Range },
20016   { &hf_nr_rrc_candidateBeamRSList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCandidateBeams_OF_PRACH_ResourceDedicatedBFR },
20017   { &hf_nr_rrc_ssb_perRACH_Occasion, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_ssb_perRACH_Occasion },
20018   { &hf_nr_rrc_ra_ssb_OccasionMaskIndex, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_15 },
20019   { &hf_nr_rrc_recoverySearchSpaceId, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SearchSpaceId },
20020   { &hf_nr_rrc_ra_Prioritization, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_RA_Prioritization },
20021   { &hf_nr_rrc_beamFailureRecoveryTimer, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_beamFailureRecoveryTimer },
20022   { &dummy_hf_nr_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_nr_rrc_BeamFailureRecoveryConfig_eag_1 },
20023   { NULL, 0, 0, NULL }
20024 };
20025
20026 static int
20027 dissect_nr_rrc_BeamFailureRecoveryConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20028   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
20029                                    ett_nr_rrc_BeamFailureRecoveryConfig, BeamFailureRecoveryConfig_sequence);
20030
20031   return offset;
20032 }
20033
20034
20035 static const value_string nr_rrc_T_periodicBSR_Timer_vals[] = {
20036   {   0, "sf1" },
20037   {   1, "sf5" },
20038   {   2, "sf10" },
20039   {   3, "sf16" },
20040   {   4, "sf20" },
20041   {   5, "sf32" },
20042   {   6, "sf40" },
20043   {   7, "sf64" },
20044   {   8, "sf80" },
20045   {   9, "sf128" },
20046   {  10, "sf160" },
20047   {  11, "sf320" },
20048   {  12, "sf640" },
20049   {  13, "sf1280" },
20050   {  14, "sf2560" },
20051   {  15, "infinity" },
20052   { 0, NULL }
20053 };
20054
20055
20056 static int
20057 dissect_nr_rrc_T_periodicBSR_Timer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20058   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
20059                                      16, NULL, FALSE, 0, NULL);
20060
20061   return offset;
20062 }
20063
20064
20065 static const value_string nr_rrc_T_retxBSR_Timer_vals[] = {
20066   {   0, "sf10" },
20067   {   1, "sf20" },
20068   {   2, "sf40" },
20069   {   3, "sf80" },
20070   {   4, "sf160" },
20071   {   5, "sf320" },
20072   {   6, "sf640" },
20073   {   7, "sf1280" },
20074   {   8, "sf2560" },
20075   {   9, "sf5120" },
20076   {  10, "sf10240" },
20077   {  11, "spare5" },
20078   {  12, "spare4" },
20079   {  13, "spare3" },
20080   {  14, "spare2" },
20081   {  15, "spare1" },
20082   { 0, NULL }
20083 };
20084
20085
20086 static int
20087 dissect_nr_rrc_T_retxBSR_Timer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20088   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
20089                                      16, NULL, FALSE, 0, NULL);
20090
20091   return offset;
20092 }
20093
20094
20095 static const value_string nr_rrc_T_logicalChannelSR_DelayTimer_vals[] = {
20096   {   0, "sf20" },
20097   {   1, "sf40" },
20098   {   2, "sf64" },
20099   {   3, "sf128" },
20100   {   4, "sf512" },
20101   {   5, "sf1024" },
20102   {   6, "sf2560" },
20103   {   7, "spare1" },
20104   { 0, NULL }
20105 };
20106
20107
20108 static int
20109 dissect_nr_rrc_T_logicalChannelSR_DelayTimer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20110   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
20111                                      8, NULL, FALSE, 0, NULL);
20112
20113   return offset;
20114 }
20115
20116
20117 static const per_sequence_t BSR_Config_sequence[] = {
20118   { &hf_nr_rrc_periodicBSR_Timer, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_periodicBSR_Timer },
20119   { &hf_nr_rrc_retxBSR_Timer, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_retxBSR_Timer },
20120   { &hf_nr_rrc_logicalChannelSR_DelayTimer, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_logicalChannelSR_DelayTimer },
20121   { NULL, 0, 0, NULL }
20122 };
20123
20124 static int
20125 dissect_nr_rrc_BSR_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20126   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
20127                                    ett_nr_rrc_BSR_Config, BSR_Config_sequence);
20128
20129   return offset;
20130 }
20131
20132
20133 static const per_sequence_t SEQUENCE_SIZE_1_3_OF_ControlResourceSet_sequence_of[1] = {
20134   { &hf_nr_rrc_controlResourceSetToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ControlResourceSet },
20135 };
20136
20137 static int
20138 dissect_nr_rrc_SEQUENCE_SIZE_1_3_OF_ControlResourceSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20139   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
20140                                                   ett_nr_rrc_SEQUENCE_SIZE_1_3_OF_ControlResourceSet, SEQUENCE_SIZE_1_3_OF_ControlResourceSet_sequence_of,
20141                                                   1, 3, FALSE);
20142
20143   return offset;
20144 }
20145
20146
20147 static const per_sequence_t SEQUENCE_SIZE_1_3_OF_ControlResourceSetId_sequence_of[1] = {
20148   { &hf_nr_rrc_controlResourceSetToReleaseList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ControlResourceSetId },
20149 };
20150
20151 static int
20152 dissect_nr_rrc_SEQUENCE_SIZE_1_3_OF_ControlResourceSetId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20153   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
20154                                                   ett_nr_rrc_SEQUENCE_SIZE_1_3_OF_ControlResourceSetId, SEQUENCE_SIZE_1_3_OF_ControlResourceSetId_sequence_of,
20155                                                   1, 3, FALSE);
20156
20157   return offset;
20158 }
20159
20160
20161 static const per_sequence_t SEQUENCE_SIZE_1_10_OF_SearchSpace_sequence_of[1] = {
20162   { &hf_nr_rrc_searchSpacesToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SearchSpace },
20163 };
20164
20165 static int
20166 dissect_nr_rrc_SEQUENCE_SIZE_1_10_OF_SearchSpace(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20167   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
20168                                                   ett_nr_rrc_SEQUENCE_SIZE_1_10_OF_SearchSpace, SEQUENCE_SIZE_1_10_OF_SearchSpace_sequence_of,
20169                                                   1, 10, FALSE);
20170
20171   return offset;
20172 }
20173
20174
20175 static const per_sequence_t SEQUENCE_SIZE_1_10_OF_SearchSpaceId_sequence_of[1] = {
20176   { &hf_nr_rrc_searchSpacesToReleaseList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SearchSpaceId },
20177 };
20178
20179 static int
20180 dissect_nr_rrc_SEQUENCE_SIZE_1_10_OF_SearchSpaceId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20181   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
20182                                                   ett_nr_rrc_SEQUENCE_SIZE_1_10_OF_SearchSpaceId, SEQUENCE_SIZE_1_10_OF_SearchSpaceId_sequence_of,
20183                                                   1, 10, FALSE);
20184
20185   return offset;
20186 }
20187
20188
20189 static const value_string nr_rrc_T_timeFrequencySet_vals[] = {
20190   {   0, "set0" },
20191   {   1, "set1" },
20192   { 0, NULL }
20193 };
20194
20195
20196 static int
20197 dissect_nr_rrc_T_timeFrequencySet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20198   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
20199                                      2, NULL, FALSE, 0, NULL);
20200
20201   return offset;
20202 }
20203
20204
20205
20206 static int
20207 dissect_nr_rrc_INTEGER_0_maxINT_DCI_PayloadSize(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20208   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
20209                                                             0U, maxINT_DCI_PayloadSize, NULL, FALSE);
20210
20211   return offset;
20212 }
20213
20214
20215
20216 static int
20217 dissect_nr_rrc_INTEGER_0_maxINT_DCI_PayloadSize_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20218   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
20219                                                             0U, maxINT_DCI_PayloadSize_1, NULL, FALSE);
20220
20221   return offset;
20222 }
20223
20224
20225 static const per_sequence_t INT_ConfigurationPerServingCell_sequence[] = {
20226   { &hf_nr_rrc_servingCellId, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ServCellIndex },
20227   { &hf_nr_rrc_positionInDCI, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_maxINT_DCI_PayloadSize_1 },
20228   { NULL, 0, 0, NULL }
20229 };
20230
20231 static int
20232 dissect_nr_rrc_INT_ConfigurationPerServingCell(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20233   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
20234                                    ett_nr_rrc_INT_ConfigurationPerServingCell, INT_ConfigurationPerServingCell_sequence);
20235
20236   return offset;
20237 }
20238
20239
20240 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofServingCells_OF_INT_ConfigurationPerServingCell_sequence_of[1] = {
20241   { &hf_nr_rrc_int_ConfigurationPerServingCell_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INT_ConfigurationPerServingCell },
20242 };
20243
20244 static int
20245 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofServingCells_OF_INT_ConfigurationPerServingCell(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20246   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
20247                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofServingCells_OF_INT_ConfigurationPerServingCell, SEQUENCE_SIZE_1_maxNrofServingCells_OF_INT_ConfigurationPerServingCell_sequence_of,
20248                                                   1, maxNrofServingCells, FALSE);
20249
20250   return offset;
20251 }
20252
20253
20254 static const per_sequence_t DownlinkPreemption_sequence[] = {
20255   { &hf_nr_rrc_int_RNTI     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RNTI_Value },
20256   { &hf_nr_rrc_timeFrequencySet, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_timeFrequencySet },
20257   { &hf_nr_rrc_dci_PayloadSize, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_maxINT_DCI_PayloadSize },
20258   { &hf_nr_rrc_int_ConfigurationPerServingCell, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofServingCells_OF_INT_ConfigurationPerServingCell },
20259   { NULL, 0, 0, NULL }
20260 };
20261
20262 static int
20263 dissect_nr_rrc_DownlinkPreemption(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20264   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
20265                                    ett_nr_rrc_DownlinkPreemption, DownlinkPreemption_sequence);
20266
20267   return offset;
20268 }
20269
20270
20271 static const value_string nr_rrc_T_downlinkPreemption_vals[] = {
20272   {   0, "release" },
20273   {   1, "setup" },
20274   { 0, NULL }
20275 };
20276
20277 static const per_choice_t T_downlinkPreemption_choice[] = {
20278   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
20279   {   1, &hf_nr_rrc_setup_28     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_DownlinkPreemption },
20280   { 0, NULL, 0, NULL }
20281 };
20282
20283 static int
20284 dissect_nr_rrc_T_downlinkPreemption(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20285   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
20286                                  ett_nr_rrc_T_downlinkPreemption, T_downlinkPreemption_choice,
20287                                  NULL);
20288
20289   return offset;
20290 }
20291
20292
20293
20294 static int
20295 dissect_nr_rrc_INTEGER_1_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20296   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
20297                                                             1U, 15U, NULL, FALSE);
20298
20299   return offset;
20300 }
20301
20302
20303 static const per_sequence_t PUSCH_TPC_CommandConfig_sequence[] = {
20304   { &hf_nr_rrc_tpc_Index    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_15 },
20305   { &hf_nr_rrc_tpc_IndexSUL , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_15 },
20306   { &hf_nr_rrc_targetCell   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ServCellIndex },
20307   { NULL, 0, 0, NULL }
20308 };
20309
20310 static int
20311 dissect_nr_rrc_PUSCH_TPC_CommandConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20312   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
20313                                    ett_nr_rrc_PUSCH_TPC_CommandConfig, PUSCH_TPC_CommandConfig_sequence);
20314
20315   return offset;
20316 }
20317
20318
20319 static const value_string nr_rrc_T_tpc_PUSCH_vals[] = {
20320   {   0, "release" },
20321   {   1, "setup" },
20322   { 0, NULL }
20323 };
20324
20325 static const per_choice_t T_tpc_PUSCH_choice[] = {
20326   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
20327   {   1, &hf_nr_rrc_setup_29     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_PUSCH_TPC_CommandConfig },
20328   { 0, NULL, 0, NULL }
20329 };
20330
20331 static int
20332 dissect_nr_rrc_T_tpc_PUSCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20333   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
20334                                  ett_nr_rrc_T_tpc_PUSCH, T_tpc_PUSCH_choice,
20335                                  NULL);
20336
20337   return offset;
20338 }
20339
20340
20341 static const per_sequence_t PUCCH_TPC_CommandConfig_sequence[] = {
20342   { &hf_nr_rrc_tpc_IndexPCell, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_15 },
20343   { &hf_nr_rrc_tpc_IndexPUCCH_SCell, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_15 },
20344   { NULL, 0, 0, NULL }
20345 };
20346
20347 static int
20348 dissect_nr_rrc_PUCCH_TPC_CommandConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20349   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
20350                                    ett_nr_rrc_PUCCH_TPC_CommandConfig, PUCCH_TPC_CommandConfig_sequence);
20351
20352   return offset;
20353 }
20354
20355
20356 static const value_string nr_rrc_T_tpc_PUCCH_vals[] = {
20357   {   0, "release" },
20358   {   1, "setup" },
20359   { 0, NULL }
20360 };
20361
20362 static const per_choice_t T_tpc_PUCCH_choice[] = {
20363   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
20364   {   1, &hf_nr_rrc_setup_30     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_PUCCH_TPC_CommandConfig },
20365   { 0, NULL, 0, NULL }
20366 };
20367
20368 static int
20369 dissect_nr_rrc_T_tpc_PUCCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20370   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
20371                                  ett_nr_rrc_T_tpc_PUCCH, T_tpc_PUCCH_choice,
20372                                  NULL);
20373
20374   return offset;
20375 }
20376
20377
20378
20379 static int
20380 dissect_nr_rrc_INTEGER_1_31(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20381   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
20382                                                             1U, 31U, NULL, FALSE);
20383
20384   return offset;
20385 }
20386
20387
20388 static const per_sequence_t SRS_TPC_CommandConfig_eag_1_sequence[] = {
20389   { &hf_nr_rrc_startingBitOfFormat2_3SUL_v1530, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_31 },
20390   { NULL, 0, 0, NULL }
20391 };
20392
20393 static int
20394 dissect_nr_rrc_SRS_TPC_CommandConfig_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20395   offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SRS_TPC_CommandConfig_eag_1_sequence);
20396
20397   return offset;
20398 }
20399
20400
20401 static const per_sequence_t SRS_TPC_CommandConfig_sequence[] = {
20402   { &hf_nr_rrc_startingBitOfFormat2_3, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_31 },
20403   { &hf_nr_rrc_fieldTypeFormat2_3, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_1 },
20404   { &dummy_hf_nr_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_nr_rrc_SRS_TPC_CommandConfig_eag_1 },
20405   { NULL, 0, 0, NULL }
20406 };
20407
20408 static int
20409 dissect_nr_rrc_SRS_TPC_CommandConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20410   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
20411                                    ett_nr_rrc_SRS_TPC_CommandConfig, SRS_TPC_CommandConfig_sequence);
20412
20413   return offset;
20414 }
20415
20416
20417 static const value_string nr_rrc_T_tpc_SRS_vals[] = {
20418   {   0, "release" },
20419   {   1, "setup" },
20420   { 0, NULL }
20421 };
20422
20423 static const per_choice_t T_tpc_SRS_choice[] = {
20424   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
20425   {   1, &hf_nr_rrc_setup_31     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SRS_TPC_CommandConfig },
20426   { 0, NULL, 0, NULL }
20427 };
20428
20429 static int
20430 dissect_nr_rrc_T_tpc_SRS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20431   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
20432                                  ett_nr_rrc_T_tpc_SRS, T_tpc_SRS_choice,
20433                                  NULL);
20434
20435   return offset;
20436 }
20437
20438
20439 static const per_sequence_t PDCCH_Config_sequence[] = {
20440   { &hf_nr_rrc_controlResourceSetToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_3_OF_ControlResourceSet },
20441   { &hf_nr_rrc_controlResourceSetToReleaseList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_3_OF_ControlResourceSetId },
20442   { &hf_nr_rrc_searchSpacesToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_10_OF_SearchSpace },
20443   { &hf_nr_rrc_searchSpacesToReleaseList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_10_OF_SearchSpaceId },
20444   { &hf_nr_rrc_downlinkPreemption, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_downlinkPreemption },
20445   { &hf_nr_rrc_tpc_PUSCH    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_tpc_PUSCH },
20446   { &hf_nr_rrc_tpc_PUCCH    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_tpc_PUCCH },
20447   { &hf_nr_rrc_tpc_SRS      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_tpc_SRS },
20448   { NULL, 0, 0, NULL }
20449 };
20450
20451 static int
20452 dissect_nr_rrc_PDCCH_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20453   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
20454                                    ett_nr_rrc_PDCCH_Config, PDCCH_Config_sequence);
20455
20456   return offset;
20457 }
20458
20459
20460 static const value_string nr_rrc_T_pdcch_Config_vals[] = {
20461   {   0, "release" },
20462   {   1, "setup" },
20463   { 0, NULL }
20464 };
20465
20466 static const per_choice_t T_pdcch_Config_choice[] = {
20467   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
20468   {   1, &hf_nr_rrc_setup_04     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_PDCCH_Config },
20469   { 0, NULL, 0, NULL }
20470 };
20471
20472 static int
20473 dissect_nr_rrc_T_pdcch_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20474   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
20475                                  ett_nr_rrc_T_pdcch_Config, T_pdcch_Config_choice,
20476                                  NULL);
20477
20478   return offset;
20479 }
20480
20481
20482 static const value_string nr_rrc_T_dmrs_Type_vals[] = {
20483   {   0, "type2" },
20484   { 0, NULL }
20485 };
20486
20487
20488 static int
20489 dissect_nr_rrc_T_dmrs_Type(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20490   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
20491                                      1, NULL, FALSE, 0, NULL);
20492
20493   return offset;
20494 }
20495
20496
20497 static const value_string nr_rrc_T_dmrs_AdditionalPosition_vals[] = {
20498   {   0, "pos0" },
20499   {   1, "pos1" },
20500   {   2, "pos3" },
20501   { 0, NULL }
20502 };
20503
20504
20505 static int
20506 dissect_nr_rrc_T_dmrs_AdditionalPosition(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20507   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
20508                                      3, NULL, FALSE, 0, NULL);
20509
20510   return offset;
20511 }
20512
20513
20514 static const value_string nr_rrc_T_maxLength_vals[] = {
20515   {   0, "len2" },
20516   { 0, NULL }
20517 };
20518
20519
20520 static int
20521 dissect_nr_rrc_T_maxLength(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20522   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
20523                                      1, NULL, FALSE, 0, NULL);
20524
20525   return offset;
20526 }
20527
20528
20529
20530 static int
20531 dissect_nr_rrc_INTEGER_1_276(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20532   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
20533                                                             1U, 276U, NULL, FALSE);
20534
20535   return offset;
20536 }
20537
20538
20539 static const per_sequence_t T_frequencyDensity_sequence_of[1] = {
20540   { &hf_nr_rrc_frequencyDensity_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_276 },
20541 };
20542
20543 static int
20544 dissect_nr_rrc_T_frequencyDensity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20545   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
20546                                                   ett_nr_rrc_T_frequencyDensity, T_frequencyDensity_sequence_of,
20547                                                   2, 2, FALSE);
20548
20549   return offset;
20550 }
20551
20552
20553
20554 static int
20555 dissect_nr_rrc_INTEGER_0_29(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20556   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
20557                                                             0U, 29U, NULL, FALSE);
20558
20559   return offset;
20560 }
20561
20562
20563 static const per_sequence_t T_timeDensity_sequence_of[1] = {
20564   { &hf_nr_rrc_timeDensity_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_29 },
20565 };
20566
20567 static int
20568 dissect_nr_rrc_T_timeDensity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20569   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
20570                                                   ett_nr_rrc_T_timeDensity, T_timeDensity_sequence_of,
20571                                                   3, 3, FALSE);
20572
20573   return offset;
20574 }
20575
20576
20577 static const value_string nr_rrc_T_resourceElementOffset_vals[] = {
20578   {   0, "offset01" },
20579   {   1, "offset10" },
20580   {   2, "offset11" },
20581   { 0, NULL }
20582 };
20583
20584
20585 static int
20586 dissect_nr_rrc_T_resourceElementOffset(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20587   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
20588                                      3, NULL, FALSE, 0, NULL);
20589
20590   return offset;
20591 }
20592
20593
20594 static const per_sequence_t PTRS_DownlinkConfig_sequence[] = {
20595   { &hf_nr_rrc_frequencyDensity, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_frequencyDensity },
20596   { &hf_nr_rrc_timeDensity  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_timeDensity },
20597   { &hf_nr_rrc_epre_Ratio   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_3 },
20598   { &hf_nr_rrc_resourceElementOffset, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_resourceElementOffset },
20599   { NULL, 0, 0, NULL }
20600 };
20601
20602 static int
20603 dissect_nr_rrc_PTRS_DownlinkConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20604   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
20605                                    ett_nr_rrc_PTRS_DownlinkConfig, PTRS_DownlinkConfig_sequence);
20606
20607   return offset;
20608 }
20609
20610
20611 static const value_string nr_rrc_T_phaseTrackingRS_vals[] = {
20612   {   0, "release" },
20613   {   1, "setup" },
20614   { 0, NULL }
20615 };
20616
20617 static const per_choice_t T_phaseTrackingRS_choice[] = {
20618   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
20619   {   1, &hf_nr_rrc_setup_20     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_PTRS_DownlinkConfig },
20620   { 0, NULL, 0, NULL }
20621 };
20622
20623 static int
20624 dissect_nr_rrc_T_phaseTrackingRS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20625   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
20626                                  ett_nr_rrc_T_phaseTrackingRS, T_phaseTrackingRS_choice,
20627                                  NULL);
20628
20629   return offset;
20630 }
20631
20632
20633 static const per_sequence_t DMRS_DownlinkConfig_sequence[] = {
20634   { &hf_nr_rrc_dmrs_Type    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_dmrs_Type },
20635   { &hf_nr_rrc_dmrs_AdditionalPosition, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_dmrs_AdditionalPosition },
20636   { &hf_nr_rrc_maxLength    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_maxLength },
20637   { &hf_nr_rrc_scramblingID0, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_65535 },
20638   { &hf_nr_rrc_scramblingID1, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_65535 },
20639   { &hf_nr_rrc_phaseTrackingRS, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_phaseTrackingRS },
20640   { NULL, 0, 0, NULL }
20641 };
20642
20643 static int
20644 dissect_nr_rrc_DMRS_DownlinkConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20645   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
20646                                    ett_nr_rrc_DMRS_DownlinkConfig, DMRS_DownlinkConfig_sequence);
20647
20648   return offset;
20649 }
20650
20651
20652 static const value_string nr_rrc_T_dmrs_DownlinkForPDSCH_MappingTypeA_vals[] = {
20653   {   0, "release" },
20654   {   1, "setup" },
20655   { 0, NULL }
20656 };
20657
20658 static const per_choice_t T_dmrs_DownlinkForPDSCH_MappingTypeA_choice[] = {
20659   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
20660   {   1, &hf_nr_rrc_setup_33     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_DMRS_DownlinkConfig },
20661   { 0, NULL, 0, NULL }
20662 };
20663
20664 static int
20665 dissect_nr_rrc_T_dmrs_DownlinkForPDSCH_MappingTypeA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20666   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
20667                                  ett_nr_rrc_T_dmrs_DownlinkForPDSCH_MappingTypeA, T_dmrs_DownlinkForPDSCH_MappingTypeA_choice,
20668                                  NULL);
20669
20670   return offset;
20671 }
20672
20673
20674 static const value_string nr_rrc_T_dmrs_DownlinkForPDSCH_MappingTypeB_vals[] = {
20675   {   0, "release" },
20676   {   1, "setup" },
20677   { 0, NULL }
20678 };
20679
20680 static const per_choice_t T_dmrs_DownlinkForPDSCH_MappingTypeB_choice[] = {
20681   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
20682   {   1, &hf_nr_rrc_setup_33     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_DMRS_DownlinkConfig },
20683   { 0, NULL, 0, NULL }
20684 };
20685
20686 static int
20687 dissect_nr_rrc_T_dmrs_DownlinkForPDSCH_MappingTypeB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20688   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
20689                                  ett_nr_rrc_T_dmrs_DownlinkForPDSCH_MappingTypeB, T_dmrs_DownlinkForPDSCH_MappingTypeB_choice,
20690                                  NULL);
20691
20692   return offset;
20693 }
20694
20695
20696 static const value_string nr_rrc_T_referenceSignal_04_vals[] = {
20697   {   0, "csi-rs" },
20698   {   1, "ssb" },
20699   { 0, NULL }
20700 };
20701
20702 static const per_choice_t T_referenceSignal_04_choice[] = {
20703   {   0, &hf_nr_rrc_csi_rs       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NZP_CSI_RS_ResourceId },
20704   {   1, &hf_nr_rrc_ssb_01       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SSB_Index },
20705   { 0, NULL, 0, NULL }
20706 };
20707
20708 static int
20709 dissect_nr_rrc_T_referenceSignal_04(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20710   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
20711                                  ett_nr_rrc_T_referenceSignal_04, T_referenceSignal_04_choice,
20712                                  NULL);
20713
20714   return offset;
20715 }
20716
20717
20718 static const value_string nr_rrc_T_qcl_Type_vals[] = {
20719   {   0, "typeA" },
20720   {   1, "typeB" },
20721   {   2, "typeC" },
20722   {   3, "typeD" },
20723   { 0, NULL }
20724 };
20725
20726
20727 static int
20728 dissect_nr_rrc_T_qcl_Type(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20729   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
20730                                      4, NULL, FALSE, 0, NULL);
20731
20732   return offset;
20733 }
20734
20735
20736 static const per_sequence_t QCL_Info_sequence[] = {
20737   { &hf_nr_rrc_cell         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ServCellIndex },
20738   { &hf_nr_rrc_bwp_Id       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_BWP_Id },
20739   { &hf_nr_rrc_referenceSignal_04, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_referenceSignal_04 },
20740   { &hf_nr_rrc_qcl_Type     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_qcl_Type },
20741   { NULL, 0, 0, NULL }
20742 };
20743
20744 static int
20745 dissect_nr_rrc_QCL_Info(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20746   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
20747                                    ett_nr_rrc_QCL_Info, QCL_Info_sequence);
20748
20749   return offset;
20750 }
20751
20752
20753 static const per_sequence_t TCI_State_sequence[] = {
20754   { &hf_nr_rrc_tci_StateId  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_TCI_StateId },
20755   { &hf_nr_rrc_qcl_Type1    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_QCL_Info },
20756   { &hf_nr_rrc_qcl_Type2    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_QCL_Info },
20757   { NULL, 0, 0, NULL }
20758 };
20759
20760 static int
20761 dissect_nr_rrc_TCI_State(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20762   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
20763                                    ett_nr_rrc_TCI_State, TCI_State_sequence);
20764
20765   return offset;
20766 }
20767
20768
20769 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofTCI_States_OF_TCI_State_sequence_of[1] = {
20770   { &hf_nr_rrc_tci_StatesToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_TCI_State },
20771 };
20772
20773 static int
20774 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofTCI_States_OF_TCI_State(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20775   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
20776                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofTCI_States_OF_TCI_State, SEQUENCE_SIZE_1_maxNrofTCI_States_OF_TCI_State_sequence_of,
20777                                                   1, maxNrofTCI_States, FALSE);
20778
20779   return offset;
20780 }
20781
20782
20783 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofTCI_States_OF_TCI_StateId_sequence_of[1] = {
20784   { &hf_nr_rrc_tci_StatesToReleaseList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_TCI_StateId },
20785 };
20786
20787 static int
20788 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofTCI_States_OF_TCI_StateId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20789   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
20790                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofTCI_States_OF_TCI_StateId, SEQUENCE_SIZE_1_maxNrofTCI_States_OF_TCI_StateId_sequence_of,
20791                                                   1, maxNrofTCI_States, FALSE);
20792
20793   return offset;
20794 }
20795
20796
20797 static const value_string nr_rrc_T_vrb_ToPRB_Interleaver_vals[] = {
20798   {   0, "n2" },
20799   {   1, "n4" },
20800   { 0, NULL }
20801 };
20802
20803
20804 static int
20805 dissect_nr_rrc_T_vrb_ToPRB_Interleaver(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20806   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
20807                                      2, NULL, FALSE, 0, NULL);
20808
20809   return offset;
20810 }
20811
20812
20813 static const value_string nr_rrc_T_resourceAllocation_01_vals[] = {
20814   {   0, "resourceAllocationType0" },
20815   {   1, "resourceAllocationType1" },
20816   {   2, "dynamicSwitch" },
20817   { 0, NULL }
20818 };
20819
20820
20821 static int
20822 dissect_nr_rrc_T_resourceAllocation_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20823   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
20824                                      3, NULL, FALSE, 0, NULL);
20825
20826   return offset;
20827 }
20828
20829
20830 static const value_string nr_rrc_T_pdsch_TimeDomainAllocationList_vals[] = {
20831   {   0, "release" },
20832   {   1, "setup" },
20833   { 0, NULL }
20834 };
20835
20836 static const per_choice_t T_pdsch_TimeDomainAllocationList_choice[] = {
20837   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
20838   {   1, &hf_nr_rrc_setup_34     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_PDSCH_TimeDomainResourceAllocationList },
20839   { 0, NULL, 0, NULL }
20840 };
20841
20842 static int
20843 dissect_nr_rrc_T_pdsch_TimeDomainAllocationList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20844   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
20845                                  ett_nr_rrc_T_pdsch_TimeDomainAllocationList, T_pdsch_TimeDomainAllocationList_choice,
20846                                  NULL);
20847
20848   return offset;
20849 }
20850
20851
20852 static const value_string nr_rrc_T_pdsch_AggregationFactor_vals[] = {
20853   {   0, "n2" },
20854   {   1, "n4" },
20855   {   2, "n8" },
20856   { 0, NULL }
20857 };
20858
20859
20860 static int
20861 dissect_nr_rrc_T_pdsch_AggregationFactor(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20862   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
20863                                      3, NULL, FALSE, 0, NULL);
20864
20865   return offset;
20866 }
20867
20868
20869
20870 static int
20871 dissect_nr_rrc_RateMatchPatternId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20872   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
20873                                                             0U, maxNrofRateMatchPatterns_1, NULL, FALSE);
20874
20875   return offset;
20876 }
20877
20878
20879
20880 static int
20881 dissect_nr_rrc_BIT_STRING_SIZE_275(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20882   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
20883                                      275, 275, FALSE, NULL, NULL);
20884
20885   return offset;
20886 }
20887
20888
20889 static const value_string nr_rrc_T_symbolsInResourceBlock_vals[] = {
20890   {   0, "oneSlot" },
20891   {   1, "twoSlots" },
20892   { 0, NULL }
20893 };
20894
20895 static const per_choice_t T_symbolsInResourceBlock_choice[] = {
20896   {   0, &hf_nr_rrc_oneSlot      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_14 },
20897   {   1, &hf_nr_rrc_twoSlots     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_28 },
20898   { 0, NULL, 0, NULL }
20899 };
20900
20901 static int
20902 dissect_nr_rrc_T_symbolsInResourceBlock(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20903   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
20904                                  ett_nr_rrc_T_symbolsInResourceBlock, T_symbolsInResourceBlock_choice,
20905                                  NULL);
20906
20907   return offset;
20908 }
20909
20910
20911
20912 static int
20913 dissect_nr_rrc_BIT_STRING_SIZE_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20914   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
20915                                      2, 2, FALSE, NULL, NULL);
20916
20917   return offset;
20918 }
20919
20920
20921
20922 static int
20923 dissect_nr_rrc_BIT_STRING_SIZE_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20924   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
20925                                      5, 5, FALSE, NULL, NULL);
20926
20927   return offset;
20928 }
20929
20930
20931
20932 static int
20933 dissect_nr_rrc_BIT_STRING_SIZE_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20934   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
20935                                      10, 10, FALSE, NULL, NULL);
20936
20937   return offset;
20938 }
20939
20940
20941
20942 static int
20943 dissect_nr_rrc_BIT_STRING_SIZE_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20944   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
20945                                      20, 20, FALSE, NULL, NULL);
20946
20947   return offset;
20948 }
20949
20950
20951
20952 static int
20953 dissect_nr_rrc_BIT_STRING_SIZE_40(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20954   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
20955                                      40, 40, FALSE, NULL, NULL);
20956
20957   return offset;
20958 }
20959
20960
20961 static const value_string nr_rrc_T_periodicityAndPattern_vals[] = {
20962   {   0, "n2" },
20963   {   1, "n4" },
20964   {   2, "n5" },
20965   {   3, "n8" },
20966   {   4, "n10" },
20967   {   5, "n20" },
20968   {   6, "n40" },
20969   { 0, NULL }
20970 };
20971
20972 static const per_choice_t T_periodicityAndPattern_choice[] = {
20973   {   0, &hf_nr_rrc_n2           , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_2 },
20974   {   1, &hf_nr_rrc_n4           , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_4 },
20975   {   2, &hf_nr_rrc_n5           , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_5 },
20976   {   3, &hf_nr_rrc_n8           , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_8 },
20977   {   4, &hf_nr_rrc_n10          , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_10 },
20978   {   5, &hf_nr_rrc_n20          , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_20 },
20979   {   6, &hf_nr_rrc_n40          , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_40 },
20980   { 0, NULL, 0, NULL }
20981 };
20982
20983 static int
20984 dissect_nr_rrc_T_periodicityAndPattern(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
20985   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
20986                                  ett_nr_rrc_T_periodicityAndPattern, T_periodicityAndPattern_choice,
20987                                  NULL);
20988
20989   return offset;
20990 }
20991
20992
20993 static const per_sequence_t T_bitmaps_sequence[] = {
20994   { &hf_nr_rrc_resourceBlocks, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BIT_STRING_SIZE_275 },
20995   { &hf_nr_rrc_symbolsInResourceBlock, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_symbolsInResourceBlock },
20996   { &hf_nr_rrc_periodicityAndPattern, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_periodicityAndPattern },
20997   { NULL, 0, 0, NULL }
20998 };
20999
21000 static int
21001 dissect_nr_rrc_T_bitmaps(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21002   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
21003                                    ett_nr_rrc_T_bitmaps, T_bitmaps_sequence);
21004
21005   return offset;
21006 }
21007
21008
21009 static const value_string nr_rrc_T_patternType_vals[] = {
21010   {   0, "bitmaps" },
21011   {   1, "controlResourceSet" },
21012   { 0, NULL }
21013 };
21014
21015 static const per_choice_t T_patternType_choice[] = {
21016   {   0, &hf_nr_rrc_bitmaps      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_bitmaps },
21017   {   1, &hf_nr_rrc_controlResourceSet, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_ControlResourceSetId },
21018   { 0, NULL, 0, NULL }
21019 };
21020
21021 static int
21022 dissect_nr_rrc_T_patternType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21023   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
21024                                  ett_nr_rrc_T_patternType, T_patternType_choice,
21025                                  NULL);
21026
21027   return offset;
21028 }
21029
21030
21031 static const value_string nr_rrc_T_dummy_vals[] = {
21032   {   0, "dynamic" },
21033   {   1, "semiStatic" },
21034   { 0, NULL }
21035 };
21036
21037
21038 static int
21039 dissect_nr_rrc_T_dummy(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21040   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
21041                                      2, NULL, FALSE, 0, NULL);
21042
21043   return offset;
21044 }
21045
21046
21047 static const per_sequence_t RateMatchPattern_sequence[] = {
21048   { &hf_nr_rrc_rateMatchPatternId, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RateMatchPatternId },
21049   { &hf_nr_rrc_patternType  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_patternType },
21050   { &hf_nr_rrc_subcarrierSpacing, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SubcarrierSpacing },
21051   { &hf_nr_rrc_dummy_01     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_dummy },
21052   { NULL, 0, 0, NULL }
21053 };
21054
21055 static int
21056 dissect_nr_rrc_RateMatchPattern(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21057   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
21058                                    ett_nr_rrc_RateMatchPattern, RateMatchPattern_sequence);
21059
21060   return offset;
21061 }
21062
21063
21064 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofRateMatchPatterns_OF_RateMatchPattern_sequence_of[1] = {
21065   { &hf_nr_rrc_rateMatchPatternToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RateMatchPattern },
21066 };
21067
21068 static int
21069 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofRateMatchPatterns_OF_RateMatchPattern(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21070   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
21071                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofRateMatchPatterns_OF_RateMatchPattern, SEQUENCE_SIZE_1_maxNrofRateMatchPatterns_OF_RateMatchPattern_sequence_of,
21072                                                   1, maxNrofRateMatchPatterns, FALSE);
21073
21074   return offset;
21075 }
21076
21077
21078 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofRateMatchPatterns_OF_RateMatchPatternId_sequence_of[1] = {
21079   { &hf_nr_rrc_rateMatchPatternToReleaseList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RateMatchPatternId },
21080 };
21081
21082 static int
21083 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofRateMatchPatterns_OF_RateMatchPatternId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21084   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
21085                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofRateMatchPatterns_OF_RateMatchPatternId, SEQUENCE_SIZE_1_maxNrofRateMatchPatterns_OF_RateMatchPatternId_sequence_of,
21086                                                   1, maxNrofRateMatchPatterns, FALSE);
21087
21088   return offset;
21089 }
21090
21091
21092 static const value_string nr_rrc_RateMatchPatternGroup_item_vals[] = {
21093   {   0, "cellLevel" },
21094   {   1, "bwpLevel" },
21095   { 0, NULL }
21096 };
21097
21098 static const per_choice_t RateMatchPatternGroup_item_choice[] = {
21099   {   0, &hf_nr_rrc_cellLevel    , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RateMatchPatternId },
21100   {   1, &hf_nr_rrc_bwpLevel     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RateMatchPatternId },
21101   { 0, NULL, 0, NULL }
21102 };
21103
21104 static int
21105 dissect_nr_rrc_RateMatchPatternGroup_item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21106   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
21107                                  ett_nr_rrc_RateMatchPatternGroup_item, RateMatchPatternGroup_item_choice,
21108                                  NULL);
21109
21110   return offset;
21111 }
21112
21113
21114 static const per_sequence_t RateMatchPatternGroup_sequence_of[1] = {
21115   { &hf_nr_rrc_RateMatchPatternGroup_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RateMatchPatternGroup_item },
21116 };
21117
21118 static int
21119 dissect_nr_rrc_RateMatchPatternGroup(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21120   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
21121                                                   ett_nr_rrc_RateMatchPatternGroup, RateMatchPatternGroup_sequence_of,
21122                                                   1, maxNrofRateMatchPatternsPerGroup, FALSE);
21123
21124   return offset;
21125 }
21126
21127
21128 static const value_string nr_rrc_T_rbg_Size_01_vals[] = {
21129   {   0, "config1" },
21130   {   1, "config2" },
21131   { 0, NULL }
21132 };
21133
21134
21135 static int
21136 dissect_nr_rrc_T_rbg_Size_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21137   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
21138                                      2, NULL, FALSE, 0, NULL);
21139
21140   return offset;
21141 }
21142
21143
21144 static const value_string nr_rrc_T_mcs_Table_01_vals[] = {
21145   {   0, "qam256" },
21146   {   1, "qam64LowSE" },
21147   { 0, NULL }
21148 };
21149
21150
21151 static int
21152 dissect_nr_rrc_T_mcs_Table_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21153   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
21154                                      2, NULL, FALSE, 0, NULL);
21155
21156   return offset;
21157 }
21158
21159
21160 static const value_string nr_rrc_T_maxNrofCodeWordsScheduledByDCI_vals[] = {
21161   {   0, "n1" },
21162   {   1, "n2" },
21163   { 0, NULL }
21164 };
21165
21166
21167 static int
21168 dissect_nr_rrc_T_maxNrofCodeWordsScheduledByDCI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21169   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
21170                                      2, NULL, FALSE, 0, NULL);
21171
21172   return offset;
21173 }
21174
21175
21176 static const value_string nr_rrc_T_bundleSize_vals[] = {
21177   {   0, "n4" },
21178   {   1, "wideband" },
21179   { 0, NULL }
21180 };
21181
21182
21183 static int
21184 dissect_nr_rrc_T_bundleSize(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21185   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
21186                                      2, NULL, FALSE, 0, NULL);
21187
21188   return offset;
21189 }
21190
21191
21192 static const per_sequence_t T_staticBundling_sequence[] = {
21193   { &hf_nr_rrc_bundleSize   , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_bundleSize },
21194   { NULL, 0, 0, NULL }
21195 };
21196
21197 static int
21198 dissect_nr_rrc_T_staticBundling(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21199   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
21200                                    ett_nr_rrc_T_staticBundling, T_staticBundling_sequence);
21201
21202   return offset;
21203 }
21204
21205
21206 static const value_string nr_rrc_T_bundleSizeSet1_vals[] = {
21207   {   0, "n4" },
21208   {   1, "wideband" },
21209   {   2, "n2-wideband" },
21210   {   3, "n4-wideband" },
21211   { 0, NULL }
21212 };
21213
21214
21215 static int
21216 dissect_nr_rrc_T_bundleSizeSet1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21217   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
21218                                      4, NULL, FALSE, 0, NULL);
21219
21220   return offset;
21221 }
21222
21223
21224 static const value_string nr_rrc_T_bundleSizeSet2_vals[] = {
21225   {   0, "n4" },
21226   {   1, "wideband" },
21227   { 0, NULL }
21228 };
21229
21230
21231 static int
21232 dissect_nr_rrc_T_bundleSizeSet2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21233   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
21234                                      2, NULL, FALSE, 0, NULL);
21235
21236   return offset;
21237 }
21238
21239
21240 static const per_sequence_t T_dynamicBundling_sequence[] = {
21241   { &hf_nr_rrc_bundleSizeSet1, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_bundleSizeSet1 },
21242   { &hf_nr_rrc_bundleSizeSet2, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_bundleSizeSet2 },
21243   { NULL, 0, 0, NULL }
21244 };
21245
21246 static int
21247 dissect_nr_rrc_T_dynamicBundling(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21248   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
21249                                    ett_nr_rrc_T_dynamicBundling, T_dynamicBundling_sequence);
21250
21251   return offset;
21252 }
21253
21254
21255 static const value_string nr_rrc_T_prb_BundlingType_vals[] = {
21256   {   0, "staticBundling" },
21257   {   1, "dynamicBundling" },
21258   { 0, NULL }
21259 };
21260
21261 static const per_choice_t T_prb_BundlingType_choice[] = {
21262   {   0, &hf_nr_rrc_staticBundling, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_staticBundling },
21263   {   1, &hf_nr_rrc_dynamicBundling, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_dynamicBundling },
21264   { 0, NULL, 0, NULL }
21265 };
21266
21267 static int
21268 dissect_nr_rrc_T_prb_BundlingType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21269   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
21270                                  ett_nr_rrc_T_prb_BundlingType, T_prb_BundlingType_choice,
21271                                  NULL);
21272
21273   return offset;
21274 }
21275
21276
21277
21278 static int
21279 dissect_nr_rrc_ZP_CSI_RS_ResourceId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21280   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
21281                                                             0U, maxNrofZP_CSI_RS_Resources_1, NULL, FALSE);
21282
21283   return offset;
21284 }
21285
21286
21287
21288 static int
21289 dissect_nr_rrc_BIT_STRING_SIZE_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21290   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
21291                                      3, 3, FALSE, NULL, NULL);
21292
21293   return offset;
21294 }
21295
21296
21297 static const value_string nr_rrc_T_frequencyDomainAllocation_01_vals[] = {
21298   {   0, "row1" },
21299   {   1, "row2" },
21300   {   2, "row4" },
21301   {   3, "other" },
21302   { 0, NULL }
21303 };
21304
21305 static const per_choice_t T_frequencyDomainAllocation_01_choice[] = {
21306   {   0, &hf_nr_rrc_row1         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_4 },
21307   {   1, &hf_nr_rrc_row2         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_12 },
21308   {   2, &hf_nr_rrc_row4         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_3 },
21309   {   3, &hf_nr_rrc_other_01     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_6 },
21310   { 0, NULL, 0, NULL }
21311 };
21312
21313 static int
21314 dissect_nr_rrc_T_frequencyDomainAllocation_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21315   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
21316                                  ett_nr_rrc_T_frequencyDomainAllocation_01, T_frequencyDomainAllocation_01_choice,
21317                                  NULL);
21318
21319   return offset;
21320 }
21321
21322
21323 static const value_string nr_rrc_T_nrofPorts_vals[] = {
21324   {   0, "p1" },
21325   {   1, "p2" },
21326   {   2, "p4" },
21327   {   3, "p8" },
21328   {   4, "p12" },
21329   {   5, "p16" },
21330   {   6, "p24" },
21331   {   7, "p32" },
21332   { 0, NULL }
21333 };
21334
21335
21336 static int
21337 dissect_nr_rrc_T_nrofPorts(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21338   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
21339                                      8, NULL, FALSE, 0, NULL);
21340
21341   return offset;
21342 }
21343
21344
21345
21346 static int
21347 dissect_nr_rrc_INTEGER_2_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21348   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
21349                                                             2U, 12U, NULL, FALSE);
21350
21351   return offset;
21352 }
21353
21354
21355 static const value_string nr_rrc_T_cdm_Type_vals[] = {
21356   {   0, "noCDM" },
21357   {   1, "fd-CDM2" },
21358   {   2, "cdm4-FD2-TD2" },
21359   {   3, "cdm8-FD2-TD4" },
21360   { 0, NULL }
21361 };
21362
21363
21364 static int
21365 dissect_nr_rrc_T_cdm_Type(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21366   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
21367                                      4, NULL, FALSE, 0, NULL);
21368
21369   return offset;
21370 }
21371
21372
21373 static const value_string nr_rrc_T_dot5_vals[] = {
21374   {   0, "evenPRBs" },
21375   {   1, "oddPRBs" },
21376   { 0, NULL }
21377 };
21378
21379
21380 static int
21381 dissect_nr_rrc_T_dot5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21382   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
21383                                      2, NULL, FALSE, 0, NULL);
21384
21385   return offset;
21386 }
21387
21388
21389 static const value_string nr_rrc_T_density_01_vals[] = {
21390   {   0, "dot5" },
21391   {   1, "one" },
21392   {   2, "three" },
21393   {   3, "spare" },
21394   { 0, NULL }
21395 };
21396
21397 static const per_choice_t T_density_01_choice[] = {
21398   {   0, &hf_nr_rrc_dot5         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_dot5 },
21399   {   1, &hf_nr_rrc_one          , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
21400   {   2, &hf_nr_rrc_three        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
21401   {   3, &hf_nr_rrc_spare_02     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
21402   { 0, NULL, 0, NULL }
21403 };
21404
21405 static int
21406 dissect_nr_rrc_T_density_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21407   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
21408                                  ett_nr_rrc_T_density_01, T_density_01_choice,
21409                                  NULL);
21410
21411   return offset;
21412 }
21413
21414
21415
21416 static int
21417 dissect_nr_rrc_INTEGER_24_maxNrofPhysicalResourceBlocksPlus1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21418   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
21419                                                             24U, maxNrofPhysicalResourceBlocksPlus1, NULL, FALSE);
21420
21421   return offset;
21422 }
21423
21424
21425 static const per_sequence_t CSI_FrequencyOccupation_sequence[] = {
21426   { &hf_nr_rrc_startingRB   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_maxNrofPhysicalResourceBlocks_1 },
21427   { &hf_nr_rrc_nrofRBs      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_24_maxNrofPhysicalResourceBlocksPlus1 },
21428   { NULL, 0, 0, NULL }
21429 };
21430
21431 static int
21432 dissect_nr_rrc_CSI_FrequencyOccupation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21433   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
21434                                    ett_nr_rrc_CSI_FrequencyOccupation, CSI_FrequencyOccupation_sequence);
21435
21436   return offset;
21437 }
21438
21439
21440 static const per_sequence_t CSI_RS_ResourceMapping_sequence[] = {
21441   { &hf_nr_rrc_frequencyDomainAllocation_02, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_frequencyDomainAllocation_01 },
21442   { &hf_nr_rrc_nrofPorts    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_nrofPorts },
21443   { &hf_nr_rrc_firstOFDMSymbolInTimeDomain, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_13 },
21444   { &hf_nr_rrc_firstOFDMSymbolInTimeDomain2, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_2_12 },
21445   { &hf_nr_rrc_cdm_Type     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_cdm_Type },
21446   { &hf_nr_rrc_density_01   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_density_01 },
21447   { &hf_nr_rrc_freqBand     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_FrequencyOccupation },
21448   { NULL, 0, 0, NULL }
21449 };
21450
21451 static int
21452 dissect_nr_rrc_CSI_RS_ResourceMapping(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21453   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
21454                                    ett_nr_rrc_CSI_RS_ResourceMapping, CSI_RS_ResourceMapping_sequence);
21455
21456   return offset;
21457 }
21458
21459
21460 static const value_string nr_rrc_CSI_ResourcePeriodicityAndOffset_vals[] = {
21461   {   0, "slots4" },
21462   {   1, "slots5" },
21463   {   2, "slots8" },
21464   {   3, "slots10" },
21465   {   4, "slots16" },
21466   {   5, "slots20" },
21467   {   6, "slots32" },
21468   {   7, "slots40" },
21469   {   8, "slots64" },
21470   {   9, "slots80" },
21471   {  10, "slots160" },
21472   {  11, "slots320" },
21473   {  12, "slots640" },
21474   { 0, NULL }
21475 };
21476
21477 static const per_choice_t CSI_ResourcePeriodicityAndOffset_choice[] = {
21478   {   0, &hf_nr_rrc_slots4       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_3 },
21479   {   1, &hf_nr_rrc_slots5       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_4 },
21480   {   2, &hf_nr_rrc_slots8       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_7 },
21481   {   3, &hf_nr_rrc_slots10      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_9 },
21482   {   4, &hf_nr_rrc_slots16      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_15 },
21483   {   5, &hf_nr_rrc_slots20      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_19 },
21484   {   6, &hf_nr_rrc_slots32      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_31 },
21485   {   7, &hf_nr_rrc_slots40      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_39 },
21486   {   8, &hf_nr_rrc_slots64      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_63 },
21487   {   9, &hf_nr_rrc_slots80      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_79 },
21488   {  10, &hf_nr_rrc_slots160     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_159 },
21489   {  11, &hf_nr_rrc_slots320     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_319 },
21490   {  12, &hf_nr_rrc_slots640     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_639 },
21491   { 0, NULL, 0, NULL }
21492 };
21493
21494 static int
21495 dissect_nr_rrc_CSI_ResourcePeriodicityAndOffset(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21496   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
21497                                  ett_nr_rrc_CSI_ResourcePeriodicityAndOffset, CSI_ResourcePeriodicityAndOffset_choice,
21498                                  NULL);
21499
21500   return offset;
21501 }
21502
21503
21504 static const per_sequence_t ZP_CSI_RS_Resource_sequence[] = {
21505   { &hf_nr_rrc_zp_CSI_RS_ResourceId, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ZP_CSI_RS_ResourceId },
21506   { &hf_nr_rrc_resourceMapping, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_RS_ResourceMapping },
21507   { &hf_nr_rrc_periodicityAndOffset, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_CSI_ResourcePeriodicityAndOffset },
21508   { NULL, 0, 0, NULL }
21509 };
21510
21511 static int
21512 dissect_nr_rrc_ZP_CSI_RS_Resource(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21513   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
21514                                    ett_nr_rrc_ZP_CSI_RS_Resource, ZP_CSI_RS_Resource_sequence);
21515
21516   return offset;
21517 }
21518
21519
21520 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_Resources_OF_ZP_CSI_RS_Resource_sequence_of[1] = {
21521   { &hf_nr_rrc_zp_CSI_RS_ResourceToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ZP_CSI_RS_Resource },
21522 };
21523
21524 static int
21525 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_Resources_OF_ZP_CSI_RS_Resource(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21526   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
21527                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_Resources_OF_ZP_CSI_RS_Resource, SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_Resources_OF_ZP_CSI_RS_Resource_sequence_of,
21528                                                   1, maxNrofZP_CSI_RS_Resources, FALSE);
21529
21530   return offset;
21531 }
21532
21533
21534 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_Resources_OF_ZP_CSI_RS_ResourceId_sequence_of[1] = {
21535   { &hf_nr_rrc_zp_CSI_RS_ResourceToReleaseList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ZP_CSI_RS_ResourceId },
21536 };
21537
21538 static int
21539 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_Resources_OF_ZP_CSI_RS_ResourceId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21540   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
21541                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_Resources_OF_ZP_CSI_RS_ResourceId, SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_Resources_OF_ZP_CSI_RS_ResourceId_sequence_of,
21542                                                   1, maxNrofZP_CSI_RS_Resources, FALSE);
21543
21544   return offset;
21545 }
21546
21547
21548
21549 static int
21550 dissect_nr_rrc_ZP_CSI_RS_ResourceSetId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21551   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
21552                                                             0U, maxNrofZP_CSI_RS_ResourceSets_1, NULL, FALSE);
21553
21554   return offset;
21555 }
21556
21557
21558 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourcesPerSet_OF_ZP_CSI_RS_ResourceId_sequence_of[1] = {
21559   { &hf_nr_rrc_zp_CSI_RS_ResourceIdList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ZP_CSI_RS_ResourceId },
21560 };
21561
21562 static int
21563 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourcesPerSet_OF_ZP_CSI_RS_ResourceId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21564   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
21565                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourcesPerSet_OF_ZP_CSI_RS_ResourceId, SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourcesPerSet_OF_ZP_CSI_RS_ResourceId_sequence_of,
21566                                                   1, maxNrofZP_CSI_RS_ResourcesPerSet, FALSE);
21567
21568   return offset;
21569 }
21570
21571
21572 static const per_sequence_t ZP_CSI_RS_ResourceSet_sequence[] = {
21573   { &hf_nr_rrc_zp_CSI_RS_ResourceSetId, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ZP_CSI_RS_ResourceSetId },
21574   { &hf_nr_rrc_zp_CSI_RS_ResourceIdList, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourcesPerSet_OF_ZP_CSI_RS_ResourceId },
21575   { NULL, 0, 0, NULL }
21576 };
21577
21578 static int
21579 dissect_nr_rrc_ZP_CSI_RS_ResourceSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21580   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
21581                                    ett_nr_rrc_ZP_CSI_RS_ResourceSet, ZP_CSI_RS_ResourceSet_sequence);
21582
21583   return offset;
21584 }
21585
21586
21587 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourceSets_OF_ZP_CSI_RS_ResourceSet_sequence_of[1] = {
21588   { &hf_nr_rrc_aperiodic_ZP_CSI_RS_ResourceSetsToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ZP_CSI_RS_ResourceSet },
21589 };
21590
21591 static int
21592 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourceSets_OF_ZP_CSI_RS_ResourceSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21593   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
21594                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourceSets_OF_ZP_CSI_RS_ResourceSet, SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourceSets_OF_ZP_CSI_RS_ResourceSet_sequence_of,
21595                                                   1, maxNrofZP_CSI_RS_ResourceSets, FALSE);
21596
21597   return offset;
21598 }
21599
21600
21601 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourceSets_OF_ZP_CSI_RS_ResourceSetId_sequence_of[1] = {
21602   { &hf_nr_rrc_aperiodic_ZP_CSI_RS_ResourceSetsToReleaseList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ZP_CSI_RS_ResourceSetId },
21603 };
21604
21605 static int
21606 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourceSets_OF_ZP_CSI_RS_ResourceSetId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21607   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
21608                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourceSets_OF_ZP_CSI_RS_ResourceSetId, SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourceSets_OF_ZP_CSI_RS_ResourceSetId_sequence_of,
21609                                                   1, maxNrofZP_CSI_RS_ResourceSets, FALSE);
21610
21611   return offset;
21612 }
21613
21614
21615 static const value_string nr_rrc_T_p_ZP_CSI_RS_ResourceSet_vals[] = {
21616   {   0, "release" },
21617   {   1, "setup" },
21618   { 0, NULL }
21619 };
21620
21621 static const per_choice_t T_p_ZP_CSI_RS_ResourceSet_choice[] = {
21622   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
21623   {   1, &hf_nr_rrc_setup_35     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_ZP_CSI_RS_ResourceSet },
21624   { 0, NULL, 0, NULL }
21625 };
21626
21627 static int
21628 dissect_nr_rrc_T_p_ZP_CSI_RS_ResourceSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21629   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
21630                                  ett_nr_rrc_T_p_ZP_CSI_RS_ResourceSet, T_p_ZP_CSI_RS_ResourceSet_choice,
21631                                  NULL);
21632
21633   return offset;
21634 }
21635
21636
21637 static const per_sequence_t PDSCH_Config_sequence[] = {
21638   { &hf_nr_rrc_dataScramblingIdentityPDSCH, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_1023 },
21639   { &hf_nr_rrc_dmrs_DownlinkForPDSCH_MappingTypeA, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_dmrs_DownlinkForPDSCH_MappingTypeA },
21640   { &hf_nr_rrc_dmrs_DownlinkForPDSCH_MappingTypeB, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_dmrs_DownlinkForPDSCH_MappingTypeB },
21641   { &hf_nr_rrc_tci_StatesToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofTCI_States_OF_TCI_State },
21642   { &hf_nr_rrc_tci_StatesToReleaseList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofTCI_States_OF_TCI_StateId },
21643   { &hf_nr_rrc_vrb_ToPRB_Interleaver, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_vrb_ToPRB_Interleaver },
21644   { &hf_nr_rrc_resourceAllocation_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_resourceAllocation_01 },
21645   { &hf_nr_rrc_pdsch_TimeDomainAllocationList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pdsch_TimeDomainAllocationList },
21646   { &hf_nr_rrc_pdsch_AggregationFactor, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pdsch_AggregationFactor },
21647   { &hf_nr_rrc_rateMatchPatternToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofRateMatchPatterns_OF_RateMatchPattern },
21648   { &hf_nr_rrc_rateMatchPatternToReleaseList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofRateMatchPatterns_OF_RateMatchPatternId },
21649   { &hf_nr_rrc_rateMatchPatternGroup1, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_RateMatchPatternGroup },
21650   { &hf_nr_rrc_rateMatchPatternGroup2, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_RateMatchPatternGroup },
21651   { &hf_nr_rrc_rbg_Size_01  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_rbg_Size_01 },
21652   { &hf_nr_rrc_mcs_Table_01 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_mcs_Table_01 },
21653   { &hf_nr_rrc_maxNrofCodeWordsScheduledByDCI, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_maxNrofCodeWordsScheduledByDCI },
21654   { &hf_nr_rrc_prb_BundlingType, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_prb_BundlingType },
21655   { &hf_nr_rrc_zp_CSI_RS_ResourceToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_Resources_OF_ZP_CSI_RS_Resource },
21656   { &hf_nr_rrc_zp_CSI_RS_ResourceToReleaseList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_Resources_OF_ZP_CSI_RS_ResourceId },
21657   { &hf_nr_rrc_aperiodic_ZP_CSI_RS_ResourceSetsToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourceSets_OF_ZP_CSI_RS_ResourceSet },
21658   { &hf_nr_rrc_aperiodic_ZP_CSI_RS_ResourceSetsToReleaseList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourceSets_OF_ZP_CSI_RS_ResourceSetId },
21659   { &hf_nr_rrc_sp_ZP_CSI_RS_ResourceSetsToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourceSets_OF_ZP_CSI_RS_ResourceSet },
21660   { &hf_nr_rrc_sp_ZP_CSI_RS_ResourceSetsToReleaseList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourceSets_OF_ZP_CSI_RS_ResourceSetId },
21661   { &hf_nr_rrc_p_ZP_CSI_RS_ResourceSet, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_p_ZP_CSI_RS_ResourceSet },
21662   { NULL, 0, 0, NULL }
21663 };
21664
21665 static int
21666 dissect_nr_rrc_PDSCH_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21667   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
21668                                    ett_nr_rrc_PDSCH_Config, PDSCH_Config_sequence);
21669
21670   return offset;
21671 }
21672
21673
21674 static const value_string nr_rrc_T_pdsch_Config_vals[] = {
21675   {   0, "release" },
21676   {   1, "setup" },
21677   { 0, NULL }
21678 };
21679
21680 static const per_choice_t T_pdsch_Config_choice[] = {
21681   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
21682   {   1, &hf_nr_rrc_setup_05     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_PDSCH_Config },
21683   { 0, NULL, 0, NULL }
21684 };
21685
21686 static int
21687 dissect_nr_rrc_T_pdsch_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21688   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
21689                                  ett_nr_rrc_T_pdsch_Config, T_pdsch_Config_choice,
21690                                  NULL);
21691
21692   return offset;
21693 }
21694
21695
21696 static const value_string nr_rrc_T_periodicity_01_vals[] = {
21697   {   0, "ms10" },
21698   {   1, "ms20" },
21699   {   2, "ms32" },
21700   {   3, "ms40" },
21701   {   4, "ms64" },
21702   {   5, "ms80" },
21703   {   6, "ms128" },
21704   {   7, "ms160" },
21705   {   8, "ms320" },
21706   {   9, "ms640" },
21707   {  10, "spare6" },
21708   {  11, "spare5" },
21709   {  12, "spare4" },
21710   {  13, "spare3" },
21711   {  14, "spare2" },
21712   {  15, "spare1" },
21713   { 0, NULL }
21714 };
21715
21716 static value_string_ext nr_rrc_T_periodicity_01_vals_ext = VALUE_STRING_EXT_INIT(nr_rrc_T_periodicity_01_vals);
21717
21718
21719 static int
21720 dissect_nr_rrc_T_periodicity_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21721   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
21722                                      16, NULL, FALSE, 0, NULL);
21723
21724   return offset;
21725 }
21726
21727
21728
21729 static int
21730 dissect_nr_rrc_PUCCH_ResourceId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21731   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
21732                                                             0U, maxNrofPUCCH_Resources_1, NULL, FALSE);
21733
21734   return offset;
21735 }
21736
21737
21738 static const value_string nr_rrc_T_mcs_Table_03_vals[] = {
21739   {   0, "qam64LowSE" },
21740   { 0, NULL }
21741 };
21742
21743
21744 static int
21745 dissect_nr_rrc_T_mcs_Table_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21746   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
21747                                      1, NULL, FALSE, 0, NULL);
21748
21749   return offset;
21750 }
21751
21752
21753 static const per_sequence_t SPS_Config_sequence[] = {
21754   { &hf_nr_rrc_periodicity_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_periodicity_01 },
21755   { &hf_nr_rrc_nrofHARQ_Processes_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_8 },
21756   { &hf_nr_rrc_n1PUCCH_AN   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_PUCCH_ResourceId },
21757   { &hf_nr_rrc_mcs_Table_03 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_mcs_Table_03 },
21758   { NULL, 0, 0, NULL }
21759 };
21760
21761 static int
21762 dissect_nr_rrc_SPS_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21763   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
21764                                    ett_nr_rrc_SPS_Config, SPS_Config_sequence);
21765
21766   return offset;
21767 }
21768
21769
21770 static const value_string nr_rrc_T_sps_Config_vals[] = {
21771   {   0, "release" },
21772   {   1, "setup" },
21773   { 0, NULL }
21774 };
21775
21776 static const per_choice_t T_sps_Config_choice[] = {
21777   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
21778   {   1, &hf_nr_rrc_setup_06     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SPS_Config },
21779   { 0, NULL, 0, NULL }
21780 };
21781
21782 static int
21783 dissect_nr_rrc_T_sps_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21784   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
21785                                  ett_nr_rrc_T_sps_Config, T_sps_Config_choice,
21786                                  NULL);
21787
21788   return offset;
21789 }
21790
21791
21792
21793 static int
21794 dissect_nr_rrc_RadioLinkMonitoringRS_Id(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21795   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
21796                                                             0U, maxNrofFailureDetectionResources_1, NULL, FALSE);
21797
21798   return offset;
21799 }
21800
21801
21802 static const value_string nr_rrc_T_purpose_vals[] = {
21803   {   0, "beamFailure" },
21804   {   1, "rlf" },
21805   {   2, "both" },
21806   { 0, NULL }
21807 };
21808
21809
21810 static int
21811 dissect_nr_rrc_T_purpose(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21812   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
21813                                      3, NULL, FALSE, 0, NULL);
21814
21815   return offset;
21816 }
21817
21818
21819 static const value_string nr_rrc_T_detectionResource_vals[] = {
21820   {   0, "ssb-Index" },
21821   {   1, "csi-RS-Index" },
21822   { 0, NULL }
21823 };
21824
21825 static const per_choice_t T_detectionResource_choice[] = {
21826   {   0, &hf_nr_rrc_ssb_Index    , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SSB_Index },
21827   {   1, &hf_nr_rrc_csi_RS_Index_01, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NZP_CSI_RS_ResourceId },
21828   { 0, NULL, 0, NULL }
21829 };
21830
21831 static int
21832 dissect_nr_rrc_T_detectionResource(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21833   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
21834                                  ett_nr_rrc_T_detectionResource, T_detectionResource_choice,
21835                                  NULL);
21836
21837   return offset;
21838 }
21839
21840
21841 static const per_sequence_t RadioLinkMonitoringRS_sequence[] = {
21842   { &hf_nr_rrc_radioLinkMonitoringRS_Id, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RadioLinkMonitoringRS_Id },
21843   { &hf_nr_rrc_purpose      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_purpose },
21844   { &hf_nr_rrc_detectionResource, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_detectionResource },
21845   { NULL, 0, 0, NULL }
21846 };
21847
21848 static int
21849 dissect_nr_rrc_RadioLinkMonitoringRS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21850   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
21851                                    ett_nr_rrc_RadioLinkMonitoringRS, RadioLinkMonitoringRS_sequence);
21852
21853   return offset;
21854 }
21855
21856
21857 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofFailureDetectionResources_OF_RadioLinkMonitoringRS_sequence_of[1] = {
21858   { &hf_nr_rrc_failureDetectionResourcesToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RadioLinkMonitoringRS },
21859 };
21860
21861 static int
21862 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofFailureDetectionResources_OF_RadioLinkMonitoringRS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21863   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
21864                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofFailureDetectionResources_OF_RadioLinkMonitoringRS, SEQUENCE_SIZE_1_maxNrofFailureDetectionResources_OF_RadioLinkMonitoringRS_sequence_of,
21865                                                   1, maxNrofFailureDetectionResources, FALSE);
21866
21867   return offset;
21868 }
21869
21870
21871 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofFailureDetectionResources_OF_RadioLinkMonitoringRS_Id_sequence_of[1] = {
21872   { &hf_nr_rrc_failureDetectionResourcesToReleaseList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RadioLinkMonitoringRS_Id },
21873 };
21874
21875 static int
21876 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofFailureDetectionResources_OF_RadioLinkMonitoringRS_Id(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21877   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
21878                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofFailureDetectionResources_OF_RadioLinkMonitoringRS_Id, SEQUENCE_SIZE_1_maxNrofFailureDetectionResources_OF_RadioLinkMonitoringRS_Id_sequence_of,
21879                                                   1, maxNrofFailureDetectionResources, FALSE);
21880
21881   return offset;
21882 }
21883
21884
21885 static const value_string nr_rrc_T_beamFailureInstanceMaxCount_vals[] = {
21886   {   0, "n1" },
21887   {   1, "n2" },
21888   {   2, "n3" },
21889   {   3, "n4" },
21890   {   4, "n5" },
21891   {   5, "n6" },
21892   {   6, "n8" },
21893   {   7, "n10" },
21894   { 0, NULL }
21895 };
21896
21897
21898 static int
21899 dissect_nr_rrc_T_beamFailureInstanceMaxCount(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21900   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
21901                                      8, NULL, FALSE, 0, NULL);
21902
21903   return offset;
21904 }
21905
21906
21907 static const value_string nr_rrc_T_beamFailureDetectionTimer_vals[] = {
21908   {   0, "pbfd1" },
21909   {   1, "pbfd2" },
21910   {   2, "pbfd3" },
21911   {   3, "pbfd4" },
21912   {   4, "pbfd5" },
21913   {   5, "pbfd6" },
21914   {   6, "pbfd8" },
21915   {   7, "pbfd10" },
21916   { 0, NULL }
21917 };
21918
21919
21920 static int
21921 dissect_nr_rrc_T_beamFailureDetectionTimer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21922   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
21923                                      8, NULL, FALSE, 0, NULL);
21924
21925   return offset;
21926 }
21927
21928
21929 static const per_sequence_t RadioLinkMonitoringConfig_sequence[] = {
21930   { &hf_nr_rrc_failureDetectionResourcesToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofFailureDetectionResources_OF_RadioLinkMonitoringRS },
21931   { &hf_nr_rrc_failureDetectionResourcesToReleaseList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofFailureDetectionResources_OF_RadioLinkMonitoringRS_Id },
21932   { &hf_nr_rrc_beamFailureInstanceMaxCount, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_beamFailureInstanceMaxCount },
21933   { &hf_nr_rrc_beamFailureDetectionTimer, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_beamFailureDetectionTimer },
21934   { NULL, 0, 0, NULL }
21935 };
21936
21937 static int
21938 dissect_nr_rrc_RadioLinkMonitoringConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21939   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
21940                                    ett_nr_rrc_RadioLinkMonitoringConfig, RadioLinkMonitoringConfig_sequence);
21941
21942   return offset;
21943 }
21944
21945
21946 static const value_string nr_rrc_T_radioLinkMonitoringConfig_vals[] = {
21947   {   0, "release" },
21948   {   1, "setup" },
21949   { 0, NULL }
21950 };
21951
21952 static const per_choice_t T_radioLinkMonitoringConfig_choice[] = {
21953   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
21954   {   1, &hf_nr_rrc_setup_07     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RadioLinkMonitoringConfig },
21955   { 0, NULL, 0, NULL }
21956 };
21957
21958 static int
21959 dissect_nr_rrc_T_radioLinkMonitoringConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21960   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
21961                                  ett_nr_rrc_T_radioLinkMonitoringConfig, T_radioLinkMonitoringConfig_choice,
21962                                  NULL);
21963
21964   return offset;
21965 }
21966
21967
21968 static const per_sequence_t BWP_DownlinkDedicated_sequence[] = {
21969   { &hf_nr_rrc_pdcch_Config , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pdcch_Config },
21970   { &hf_nr_rrc_pdsch_Config , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pdsch_Config },
21971   { &hf_nr_rrc_sps_Config   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_sps_Config },
21972   { &hf_nr_rrc_radioLinkMonitoringConfig, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_radioLinkMonitoringConfig },
21973   { NULL, 0, 0, NULL }
21974 };
21975
21976 static int
21977 dissect_nr_rrc_BWP_DownlinkDedicated(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21978   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
21979                                    ett_nr_rrc_BWP_DownlinkDedicated, BWP_DownlinkDedicated_sequence);
21980
21981   return offset;
21982 }
21983
21984
21985 static const per_sequence_t BWP_Downlink_sequence[] = {
21986   { &hf_nr_rrc_bwp_Id       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BWP_Id },
21987   { &hf_nr_rrc_bwp_Common   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_BWP_DownlinkCommon },
21988   { &hf_nr_rrc_bwp_Dedicated, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_BWP_DownlinkDedicated },
21989   { NULL, 0, 0, NULL }
21990 };
21991
21992 static int
21993 dissect_nr_rrc_BWP_Downlink(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
21994   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
21995                                    ett_nr_rrc_BWP_Downlink, BWP_Downlink_sequence);
21996
21997   return offset;
21998 }
21999
22000
22001
22002 static int
22003 dissect_nr_rrc_PUCCH_ResourceSetId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22004   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
22005                                                             0U, maxNrofPUCCH_ResourceSets_1, NULL, FALSE);
22006
22007   return offset;
22008 }
22009
22010
22011 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofPUCCH_ResourcesPerSet_OF_PUCCH_ResourceId_sequence_of[1] = {
22012   { &hf_nr_rrc_resourceList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PUCCH_ResourceId },
22013 };
22014
22015 static int
22016 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_ResourcesPerSet_OF_PUCCH_ResourceId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22017   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
22018                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_ResourcesPerSet_OF_PUCCH_ResourceId, SEQUENCE_SIZE_1_maxNrofPUCCH_ResourcesPerSet_OF_PUCCH_ResourceId_sequence_of,
22019                                                   1, maxNrofPUCCH_ResourcesPerSet, FALSE);
22020
22021   return offset;
22022 }
22023
22024
22025
22026 static int
22027 dissect_nr_rrc_INTEGER_4_256(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22028   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
22029                                                             4U, 256U, NULL, FALSE);
22030
22031   return offset;
22032 }
22033
22034
22035 static const per_sequence_t PUCCH_ResourceSet_sequence[] = {
22036   { &hf_nr_rrc_pucch_ResourceSetId, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PUCCH_ResourceSetId },
22037   { &hf_nr_rrc_resourceList , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_ResourcesPerSet_OF_PUCCH_ResourceId },
22038   { &hf_nr_rrc_maxPayloadMinus1, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_4_256 },
22039   { NULL, 0, 0, NULL }
22040 };
22041
22042 static int
22043 dissect_nr_rrc_PUCCH_ResourceSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22044   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
22045                                    ett_nr_rrc_PUCCH_ResourceSet, PUCCH_ResourceSet_sequence);
22046
22047   return offset;
22048 }
22049
22050
22051 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofPUCCH_ResourceSets_OF_PUCCH_ResourceSet_sequence_of[1] = {
22052   { &hf_nr_rrc_resourceSetToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PUCCH_ResourceSet },
22053 };
22054
22055 static int
22056 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_ResourceSets_OF_PUCCH_ResourceSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22057   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
22058                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_ResourceSets_OF_PUCCH_ResourceSet, SEQUENCE_SIZE_1_maxNrofPUCCH_ResourceSets_OF_PUCCH_ResourceSet_sequence_of,
22059                                                   1, maxNrofPUCCH_ResourceSets, FALSE);
22060
22061   return offset;
22062 }
22063
22064
22065 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofPUCCH_ResourceSets_OF_PUCCH_ResourceSetId_sequence_of[1] = {
22066   { &hf_nr_rrc_resourceSetToReleaseList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PUCCH_ResourceSetId },
22067 };
22068
22069 static int
22070 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_ResourceSets_OF_PUCCH_ResourceSetId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22071   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
22072                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_ResourceSets_OF_PUCCH_ResourceSetId, SEQUENCE_SIZE_1_maxNrofPUCCH_ResourceSets_OF_PUCCH_ResourceSetId_sequence_of,
22073                                                   1, maxNrofPUCCH_ResourceSets, FALSE);
22074
22075   return offset;
22076 }
22077
22078
22079
22080 static int
22081 dissect_nr_rrc_PRB_Id(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22082   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
22083                                                             0U, maxNrofPhysicalResourceBlocks_1, NULL, FALSE);
22084
22085   return offset;
22086 }
22087
22088
22089 static const value_string nr_rrc_T_intraSlotFrequencyHopping_vals[] = {
22090   {   0, "enabled" },
22091   { 0, NULL }
22092 };
22093
22094
22095 static int
22096 dissect_nr_rrc_T_intraSlotFrequencyHopping(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22097   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
22098                                      1, NULL, FALSE, 0, NULL);
22099
22100   return offset;
22101 }
22102
22103
22104
22105 static int
22106 dissect_nr_rrc_INTEGER_0_11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22107   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
22108                                                             0U, 11U, NULL, FALSE);
22109
22110   return offset;
22111 }
22112
22113
22114
22115 static int
22116 dissect_nr_rrc_INTEGER_1_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22117   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
22118                                                             1U, 2U, NULL, FALSE);
22119
22120   return offset;
22121 }
22122
22123
22124 static const per_sequence_t PUCCH_format0_sequence[] = {
22125   { &hf_nr_rrc_initialCyclicShift, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_11 },
22126   { &hf_nr_rrc_nrofSymbols  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_2 },
22127   { &hf_nr_rrc_startingSymbolIndex, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_13 },
22128   { NULL, 0, 0, NULL }
22129 };
22130
22131 static int
22132 dissect_nr_rrc_PUCCH_format0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22133   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
22134                                    ett_nr_rrc_PUCCH_format0, PUCCH_format0_sequence);
22135
22136   return offset;
22137 }
22138
22139
22140
22141 static int
22142 dissect_nr_rrc_INTEGER_4_14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22143   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
22144                                                             4U, 14U, NULL, FALSE);
22145
22146   return offset;
22147 }
22148
22149
22150
22151 static int
22152 dissect_nr_rrc_INTEGER_0_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22153   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
22154                                                             0U, 10U, NULL, FALSE);
22155
22156   return offset;
22157 }
22158
22159
22160
22161 static int
22162 dissect_nr_rrc_INTEGER_0_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22163   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
22164                                                             0U, 6U, NULL, FALSE);
22165
22166   return offset;
22167 }
22168
22169
22170 static const per_sequence_t PUCCH_format1_sequence[] = {
22171   { &hf_nr_rrc_initialCyclicShift, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_11 },
22172   { &hf_nr_rrc_nrofSymbols_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_4_14 },
22173   { &hf_nr_rrc_startingSymbolIndex_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_10 },
22174   { &hf_nr_rrc_timeDomainOCC, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_6 },
22175   { NULL, 0, 0, NULL }
22176 };
22177
22178 static int
22179 dissect_nr_rrc_PUCCH_format1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22180   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
22181                                    ett_nr_rrc_PUCCH_format1, PUCCH_format1_sequence);
22182
22183   return offset;
22184 }
22185
22186
22187 static const per_sequence_t PUCCH_format2_sequence[] = {
22188   { &hf_nr_rrc_nrofPRBs_01  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_16 },
22189   { &hf_nr_rrc_nrofSymbols  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_2 },
22190   { &hf_nr_rrc_startingSymbolIndex, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_13 },
22191   { NULL, 0, 0, NULL }
22192 };
22193
22194 static int
22195 dissect_nr_rrc_PUCCH_format2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22196   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
22197                                    ett_nr_rrc_PUCCH_format2, PUCCH_format2_sequence);
22198
22199   return offset;
22200 }
22201
22202
22203 static const per_sequence_t PUCCH_format3_sequence[] = {
22204   { &hf_nr_rrc_nrofPRBs_01  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_16 },
22205   { &hf_nr_rrc_nrofSymbols_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_4_14 },
22206   { &hf_nr_rrc_startingSymbolIndex_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_10 },
22207   { NULL, 0, 0, NULL }
22208 };
22209
22210 static int
22211 dissect_nr_rrc_PUCCH_format3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22212   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
22213                                    ett_nr_rrc_PUCCH_format3, PUCCH_format3_sequence);
22214
22215   return offset;
22216 }
22217
22218
22219 static const value_string nr_rrc_T_occ_Length_vals[] = {
22220   {   0, "n2" },
22221   {   1, "n4" },
22222   { 0, NULL }
22223 };
22224
22225
22226 static int
22227 dissect_nr_rrc_T_occ_Length(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22228   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
22229                                      2, NULL, FALSE, 0, NULL);
22230
22231   return offset;
22232 }
22233
22234
22235 static const value_string nr_rrc_T_occ_Index_vals[] = {
22236   {   0, "n0" },
22237   {   1, "n1" },
22238   {   2, "n2" },
22239   {   3, "n3" },
22240   { 0, NULL }
22241 };
22242
22243
22244 static int
22245 dissect_nr_rrc_T_occ_Index(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22246   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
22247                                      4, NULL, FALSE, 0, NULL);
22248
22249   return offset;
22250 }
22251
22252
22253 static const per_sequence_t PUCCH_format4_sequence[] = {
22254   { &hf_nr_rrc_nrofSymbols_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_4_14 },
22255   { &hf_nr_rrc_occ_Length   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_occ_Length },
22256   { &hf_nr_rrc_occ_Index    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_occ_Index },
22257   { &hf_nr_rrc_startingSymbolIndex_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_10 },
22258   { NULL, 0, 0, NULL }
22259 };
22260
22261 static int
22262 dissect_nr_rrc_PUCCH_format4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22263   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
22264                                    ett_nr_rrc_PUCCH_format4, PUCCH_format4_sequence);
22265
22266   return offset;
22267 }
22268
22269
22270 static const value_string nr_rrc_T_format_vals[] = {
22271   {   0, "format0" },
22272   {   1, "format1" },
22273   {   2, "format2" },
22274   {   3, "format3" },
22275   {   4, "format4" },
22276   { 0, NULL }
22277 };
22278
22279 static const per_choice_t T_format_choice[] = {
22280   {   0, &hf_nr_rrc_format0      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_PUCCH_format0 },
22281   {   1, &hf_nr_rrc_format1_01   , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_PUCCH_format1 },
22282   {   2, &hf_nr_rrc_format2_01   , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_PUCCH_format2 },
22283   {   3, &hf_nr_rrc_format3_01   , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_PUCCH_format3 },
22284   {   4, &hf_nr_rrc_format4_01   , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_PUCCH_format4 },
22285   { 0, NULL, 0, NULL }
22286 };
22287
22288 static int
22289 dissect_nr_rrc_T_format(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22290   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
22291                                  ett_nr_rrc_T_format, T_format_choice,
22292                                  NULL);
22293
22294   return offset;
22295 }
22296
22297
22298 static const per_sequence_t PUCCH_Resource_sequence[] = {
22299   { &hf_nr_rrc_pucch_ResourceId, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PUCCH_ResourceId },
22300   { &hf_nr_rrc_startingPRB  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PRB_Id },
22301   { &hf_nr_rrc_intraSlotFrequencyHopping, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_intraSlotFrequencyHopping },
22302   { &hf_nr_rrc_secondHopPRB , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_PRB_Id },
22303   { &hf_nr_rrc_format       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_format },
22304   { NULL, 0, 0, NULL }
22305 };
22306
22307 static int
22308 dissect_nr_rrc_PUCCH_Resource(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22309   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
22310                                    ett_nr_rrc_PUCCH_Resource, PUCCH_Resource_sequence);
22311
22312   return offset;
22313 }
22314
22315
22316 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofPUCCH_Resources_OF_PUCCH_Resource_sequence_of[1] = {
22317   { &hf_nr_rrc_resourceToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PUCCH_Resource },
22318 };
22319
22320 static int
22321 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_Resources_OF_PUCCH_Resource(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22322   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
22323                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_Resources_OF_PUCCH_Resource, SEQUENCE_SIZE_1_maxNrofPUCCH_Resources_OF_PUCCH_Resource_sequence_of,
22324                                                   1, maxNrofPUCCH_Resources, FALSE);
22325
22326   return offset;
22327 }
22328
22329
22330 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofPUCCH_Resources_OF_PUCCH_ResourceId_sequence_of[1] = {
22331   { &hf_nr_rrc_resourceToReleaseList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PUCCH_ResourceId },
22332 };
22333
22334 static int
22335 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_Resources_OF_PUCCH_ResourceId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22336   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
22337                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_Resources_OF_PUCCH_ResourceId, SEQUENCE_SIZE_1_maxNrofPUCCH_Resources_OF_PUCCH_ResourceId_sequence_of,
22338                                                   1, maxNrofPUCCH_Resources, FALSE);
22339
22340   return offset;
22341 }
22342
22343
22344 static const value_string nr_rrc_T_interslotFrequencyHopping_vals[] = {
22345   {   0, "enabled" },
22346   { 0, NULL }
22347 };
22348
22349
22350 static int
22351 dissect_nr_rrc_T_interslotFrequencyHopping(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22352   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
22353                                      1, NULL, FALSE, 0, NULL);
22354
22355   return offset;
22356 }
22357
22358
22359 static const value_string nr_rrc_T_additionalDMRS_vals[] = {
22360   {   0, "true" },
22361   { 0, NULL }
22362 };
22363
22364
22365 static int
22366 dissect_nr_rrc_T_additionalDMRS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22367   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
22368                                      1, NULL, FALSE, 0, NULL);
22369
22370   return offset;
22371 }
22372
22373
22374 static const value_string nr_rrc_PUCCH_MaxCodeRate_vals[] = {
22375   {   0, "zeroDot08" },
22376   {   1, "zeroDot15" },
22377   {   2, "zeroDot25" },
22378   {   3, "zeroDot35" },
22379   {   4, "zeroDot45" },
22380   {   5, "zeroDot60" },
22381   {   6, "zeroDot80" },
22382   { 0, NULL }
22383 };
22384
22385
22386 static int
22387 dissect_nr_rrc_PUCCH_MaxCodeRate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22388   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
22389                                      7, NULL, FALSE, 0, NULL);
22390
22391   return offset;
22392 }
22393
22394
22395 static const value_string nr_rrc_T_nrofSlots_vals[] = {
22396   {   0, "n2" },
22397   {   1, "n4" },
22398   {   2, "n8" },
22399   { 0, NULL }
22400 };
22401
22402
22403 static int
22404 dissect_nr_rrc_T_nrofSlots(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22405   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
22406                                      3, NULL, FALSE, 0, NULL);
22407
22408   return offset;
22409 }
22410
22411
22412 static const value_string nr_rrc_T_pi2BPSK_vals[] = {
22413   {   0, "enabled" },
22414   { 0, NULL }
22415 };
22416
22417
22418 static int
22419 dissect_nr_rrc_T_pi2BPSK(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22420   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
22421                                      1, NULL, FALSE, 0, NULL);
22422
22423   return offset;
22424 }
22425
22426
22427 static const value_string nr_rrc_T_simultaneousHARQ_ACK_CSI_vals[] = {
22428   {   0, "true" },
22429   { 0, NULL }
22430 };
22431
22432
22433 static int
22434 dissect_nr_rrc_T_simultaneousHARQ_ACK_CSI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22435   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
22436                                      1, NULL, FALSE, 0, NULL);
22437
22438   return offset;
22439 }
22440
22441
22442 static const per_sequence_t PUCCH_FormatConfig_sequence[] = {
22443   { &hf_nr_rrc_interslotFrequencyHopping, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_interslotFrequencyHopping },
22444   { &hf_nr_rrc_additionalDMRS, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_additionalDMRS },
22445   { &hf_nr_rrc_maxCodeRate  , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_PUCCH_MaxCodeRate },
22446   { &hf_nr_rrc_nrofSlots    , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nrofSlots },
22447   { &hf_nr_rrc_pi2BPSK      , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_pi2BPSK },
22448   { &hf_nr_rrc_simultaneousHARQ_ACK_CSI, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_simultaneousHARQ_ACK_CSI },
22449   { NULL, 0, 0, NULL }
22450 };
22451
22452 static int
22453 dissect_nr_rrc_PUCCH_FormatConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22454   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
22455                                    ett_nr_rrc_PUCCH_FormatConfig, PUCCH_FormatConfig_sequence);
22456
22457   return offset;
22458 }
22459
22460
22461 static const value_string nr_rrc_T_format1_vals[] = {
22462   {   0, "release" },
22463   {   1, "setup" },
22464   { 0, NULL }
22465 };
22466
22467 static const per_choice_t T_format1_choice[] = {
22468   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
22469   {   1, &hf_nr_rrc_setup_38     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_PUCCH_FormatConfig },
22470   { 0, NULL, 0, NULL }
22471 };
22472
22473 static int
22474 dissect_nr_rrc_T_format1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22475   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
22476                                  ett_nr_rrc_T_format1, T_format1_choice,
22477                                  NULL);
22478
22479   return offset;
22480 }
22481
22482
22483 static const value_string nr_rrc_T_format2_vals[] = {
22484   {   0, "release" },
22485   {   1, "setup" },
22486   { 0, NULL }
22487 };
22488
22489 static const per_choice_t T_format2_choice[] = {
22490   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
22491   {   1, &hf_nr_rrc_setup_38     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_PUCCH_FormatConfig },
22492   { 0, NULL, 0, NULL }
22493 };
22494
22495 static int
22496 dissect_nr_rrc_T_format2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22497   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
22498                                  ett_nr_rrc_T_format2, T_format2_choice,
22499                                  NULL);
22500
22501   return offset;
22502 }
22503
22504
22505 static const value_string nr_rrc_T_format3_vals[] = {
22506   {   0, "release" },
22507   {   1, "setup" },
22508   { 0, NULL }
22509 };
22510
22511 static const per_choice_t T_format3_choice[] = {
22512   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
22513   {   1, &hf_nr_rrc_setup_38     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_PUCCH_FormatConfig },
22514   { 0, NULL, 0, NULL }
22515 };
22516
22517 static int
22518 dissect_nr_rrc_T_format3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22519   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
22520                                  ett_nr_rrc_T_format3, T_format3_choice,
22521                                  NULL);
22522
22523   return offset;
22524 }
22525
22526
22527 static const value_string nr_rrc_T_format4_vals[] = {
22528   {   0, "release" },
22529   {   1, "setup" },
22530   { 0, NULL }
22531 };
22532
22533 static const per_choice_t T_format4_choice[] = {
22534   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
22535   {   1, &hf_nr_rrc_setup_38     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_PUCCH_FormatConfig },
22536   { 0, NULL, 0, NULL }
22537 };
22538
22539 static int
22540 dissect_nr_rrc_T_format4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22541   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
22542                                  ett_nr_rrc_T_format4, T_format4_choice,
22543                                  NULL);
22544
22545   return offset;
22546 }
22547
22548
22549
22550 static int
22551 dissect_nr_rrc_SchedulingRequestResourceId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22552   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
22553                                                             1U, maxNrofSR_Resources, NULL, FALSE);
22554
22555   return offset;
22556 }
22557
22558
22559
22560 static int
22561 dissect_nr_rrc_SchedulingRequestId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22562   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
22563                                                             0U, 7U, NULL, FALSE);
22564
22565   return offset;
22566 }
22567
22568
22569 static const value_string nr_rrc_T_periodicityAndOffset_vals[] = {
22570   {   0, "sym2" },
22571   {   1, "sym6or7" },
22572   {   2, "sl1" },
22573   {   3, "sl2" },
22574   {   4, "sl4" },
22575   {   5, "sl5" },
22576   {   6, "sl8" },
22577   {   7, "sl10" },
22578   {   8, "sl16" },
22579   {   9, "sl20" },
22580   {  10, "sl40" },
22581   {  11, "sl80" },
22582   {  12, "sl160" },
22583   {  13, "sl320" },
22584   {  14, "sl640" },
22585   { 0, NULL }
22586 };
22587
22588 static const per_choice_t T_periodicityAndOffset_choice[] = {
22589   {   0, &hf_nr_rrc_sym2         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
22590   {   1, &hf_nr_rrc_sym6or7      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
22591   {   2, &hf_nr_rrc_sl1          , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
22592   {   3, &hf_nr_rrc_sl2          , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_1 },
22593   {   4, &hf_nr_rrc_sl4          , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_3 },
22594   {   5, &hf_nr_rrc_sl5          , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_4 },
22595   {   6, &hf_nr_rrc_sl8          , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_7 },
22596   {   7, &hf_nr_rrc_sl10         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_9 },
22597   {   8, &hf_nr_rrc_sl16         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_15 },
22598   {   9, &hf_nr_rrc_sl20         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_19 },
22599   {  10, &hf_nr_rrc_sl40         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_39 },
22600   {  11, &hf_nr_rrc_sl80         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_79 },
22601   {  12, &hf_nr_rrc_sl160        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_159 },
22602   {  13, &hf_nr_rrc_sl320        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_319 },
22603   {  14, &hf_nr_rrc_sl640        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_639 },
22604   { 0, NULL, 0, NULL }
22605 };
22606
22607 static int
22608 dissect_nr_rrc_T_periodicityAndOffset(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22609   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
22610                                  ett_nr_rrc_T_periodicityAndOffset, T_periodicityAndOffset_choice,
22611                                  NULL);
22612
22613   return offset;
22614 }
22615
22616
22617 static const per_sequence_t SchedulingRequestResourceConfig_sequence[] = {
22618   { &hf_nr_rrc_schedulingRequestResourceId, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SchedulingRequestResourceId },
22619   { &hf_nr_rrc_schedulingRequestID, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SchedulingRequestId },
22620   { &hf_nr_rrc_periodicityAndOffset_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_periodicityAndOffset },
22621   { &hf_nr_rrc_resource_01  , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_PUCCH_ResourceId },
22622   { NULL, 0, 0, NULL }
22623 };
22624
22625 static int
22626 dissect_nr_rrc_SchedulingRequestResourceConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22627   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
22628                                    ett_nr_rrc_SchedulingRequestResourceConfig, SchedulingRequestResourceConfig_sequence);
22629
22630   return offset;
22631 }
22632
22633
22634 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofSR_Resources_OF_SchedulingRequestResourceConfig_sequence_of[1] = {
22635   { &hf_nr_rrc_schedulingRequestResourceToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SchedulingRequestResourceConfig },
22636 };
22637
22638 static int
22639 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSR_Resources_OF_SchedulingRequestResourceConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22640   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
22641                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSR_Resources_OF_SchedulingRequestResourceConfig, SEQUENCE_SIZE_1_maxNrofSR_Resources_OF_SchedulingRequestResourceConfig_sequence_of,
22642                                                   1, maxNrofSR_Resources, FALSE);
22643
22644   return offset;
22645 }
22646
22647
22648 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofSR_Resources_OF_SchedulingRequestResourceId_sequence_of[1] = {
22649   { &hf_nr_rrc_schedulingRequestResourceToReleaseList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SchedulingRequestResourceId },
22650 };
22651
22652 static int
22653 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSR_Resources_OF_SchedulingRequestResourceId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22654   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
22655                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSR_Resources_OF_SchedulingRequestResourceId, SEQUENCE_SIZE_1_maxNrofSR_Resources_OF_SchedulingRequestResourceId_sequence_of,
22656                                                   1, maxNrofSR_Resources, FALSE);
22657
22658   return offset;
22659 }
22660
22661
22662 static const per_sequence_t SEQUENCE_SIZE_1_2_OF_PUCCH_ResourceId_sequence_of[1] = {
22663   { &hf_nr_rrc_multi_CSI_PUCCH_ResourceList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PUCCH_ResourceId },
22664 };
22665
22666 static int
22667 dissect_nr_rrc_SEQUENCE_SIZE_1_2_OF_PUCCH_ResourceId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22668   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
22669                                                   ett_nr_rrc_SEQUENCE_SIZE_1_2_OF_PUCCH_ResourceId, SEQUENCE_SIZE_1_2_OF_PUCCH_ResourceId_sequence_of,
22670                                                   1, 2, FALSE);
22671
22672   return offset;
22673 }
22674
22675
22676 static const per_sequence_t T_dl_DataToUL_ACK_sequence_of[1] = {
22677   { &hf_nr_rrc_dl_DataToUL_ACK_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_15 },
22678 };
22679
22680 static int
22681 dissect_nr_rrc_T_dl_DataToUL_ACK(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22682   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
22683                                                   ett_nr_rrc_T_dl_DataToUL_ACK, T_dl_DataToUL_ACK_sequence_of,
22684                                                   1, 8, FALSE);
22685
22686   return offset;
22687 }
22688
22689
22690
22691 static int
22692 dissect_nr_rrc_PUCCH_SpatialRelationInfoId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22693   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
22694                                                             1U, maxNrofSpatialRelationInfos, NULL, FALSE);
22695
22696   return offset;
22697 }
22698
22699
22700
22701 static int
22702 dissect_nr_rrc_SRS_ResourceId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22703   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
22704                                                             0U, maxNrofSRS_Resources_1, NULL, FALSE);
22705
22706   return offset;
22707 }
22708
22709
22710 static const per_sequence_t T_srs_sequence[] = {
22711   { &hf_nr_rrc_resource     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SRS_ResourceId },
22712   { &hf_nr_rrc_uplinkBWP    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BWP_Id },
22713   { NULL, 0, 0, NULL }
22714 };
22715
22716 static int
22717 dissect_nr_rrc_T_srs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22718   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
22719                                    ett_nr_rrc_T_srs, T_srs_sequence);
22720
22721   return offset;
22722 }
22723
22724
22725 static const value_string nr_rrc_T_referenceSignal_01_vals[] = {
22726   {   0, "ssb-Index" },
22727   {   1, "csi-RS-Index" },
22728   {   2, "srs" },
22729   { 0, NULL }
22730 };
22731
22732 static const per_choice_t T_referenceSignal_01_choice[] = {
22733   {   0, &hf_nr_rrc_ssb_Index    , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SSB_Index },
22734   {   1, &hf_nr_rrc_csi_RS_Index_01, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NZP_CSI_RS_ResourceId },
22735   {   2, &hf_nr_rrc_srs          , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_srs },
22736   { 0, NULL, 0, NULL }
22737 };
22738
22739 static int
22740 dissect_nr_rrc_T_referenceSignal_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22741   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
22742                                  ett_nr_rrc_T_referenceSignal_01, T_referenceSignal_01_choice,
22743                                  NULL);
22744
22745   return offset;
22746 }
22747
22748
22749
22750 static int
22751 dissect_nr_rrc_PUCCH_PathlossReferenceRS_Id(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22752   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
22753                                                             0U, maxNrofPUCCH_PathlossReferenceRSs_1, NULL, FALSE);
22754
22755   return offset;
22756 }
22757
22758
22759
22760 static int
22761 dissect_nr_rrc_P0_PUCCH_Id(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22762   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
22763                                                             1U, 8U, NULL, FALSE);
22764
22765   return offset;
22766 }
22767
22768
22769 static const value_string nr_rrc_T_closedLoopIndex_vals[] = {
22770   {   0, "i0" },
22771   {   1, "i1" },
22772   { 0, NULL }
22773 };
22774
22775
22776 static int
22777 dissect_nr_rrc_T_closedLoopIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22778   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
22779                                      2, NULL, FALSE, 0, NULL);
22780
22781   return offset;
22782 }
22783
22784
22785 static const per_sequence_t PUCCH_SpatialRelationInfo_sequence[] = {
22786   { &hf_nr_rrc_pucch_SpatialRelationInfoId, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PUCCH_SpatialRelationInfoId },
22787   { &hf_nr_rrc_servingCellId, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_ServCellIndex },
22788   { &hf_nr_rrc_referenceSignal_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_referenceSignal_01 },
22789   { &hf_nr_rrc_pucch_PathlossReferenceRS_Id, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PUCCH_PathlossReferenceRS_Id },
22790   { &hf_nr_rrc_p0_PUCCH_Id  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_P0_PUCCH_Id },
22791   { &hf_nr_rrc_closedLoopIndex, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_closedLoopIndex },
22792   { NULL, 0, 0, NULL }
22793 };
22794
22795 static int
22796 dissect_nr_rrc_PUCCH_SpatialRelationInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22797   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
22798                                    ett_nr_rrc_PUCCH_SpatialRelationInfo, PUCCH_SpatialRelationInfo_sequence);
22799
22800   return offset;
22801 }
22802
22803
22804 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofSpatialRelationInfos_OF_PUCCH_SpatialRelationInfo_sequence_of[1] = {
22805   { &hf_nr_rrc_spatialRelationInfoToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PUCCH_SpatialRelationInfo },
22806 };
22807
22808 static int
22809 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSpatialRelationInfos_OF_PUCCH_SpatialRelationInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22810   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
22811                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSpatialRelationInfos_OF_PUCCH_SpatialRelationInfo, SEQUENCE_SIZE_1_maxNrofSpatialRelationInfos_OF_PUCCH_SpatialRelationInfo_sequence_of,
22812                                                   1, maxNrofSpatialRelationInfos, FALSE);
22813
22814   return offset;
22815 }
22816
22817
22818 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofSpatialRelationInfos_OF_PUCCH_SpatialRelationInfoId_sequence_of[1] = {
22819   { &hf_nr_rrc_spatialRelationInfoToReleaseList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PUCCH_SpatialRelationInfoId },
22820 };
22821
22822 static int
22823 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSpatialRelationInfos_OF_PUCCH_SpatialRelationInfoId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22824   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
22825                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSpatialRelationInfos_OF_PUCCH_SpatialRelationInfoId, SEQUENCE_SIZE_1_maxNrofSpatialRelationInfos_OF_PUCCH_SpatialRelationInfoId_sequence_of,
22826                                                   1, maxNrofSpatialRelationInfos, FALSE);
22827
22828   return offset;
22829 }
22830
22831
22832
22833 static int
22834 dissect_nr_rrc_INTEGER_M16_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22835   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
22836                                                             -16, 15U, NULL, FALSE);
22837
22838   return offset;
22839 }
22840
22841
22842 static const per_sequence_t P0_PUCCH_sequence[] = {
22843   { &hf_nr_rrc_p0_PUCCH_Id  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_P0_PUCCH_Id },
22844   { &hf_nr_rrc_p0_PUCCH_Value, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_M16_15 },
22845   { NULL, 0, 0, NULL }
22846 };
22847
22848 static int
22849 dissect_nr_rrc_P0_PUCCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22850   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
22851                                    ett_nr_rrc_P0_PUCCH, P0_PUCCH_sequence);
22852
22853   return offset;
22854 }
22855
22856
22857 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofPUCCH_P0_PerSet_OF_P0_PUCCH_sequence_of[1] = {
22858   { &hf_nr_rrc_p0_Set_item  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_P0_PUCCH },
22859 };
22860
22861 static int
22862 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_P0_PerSet_OF_P0_PUCCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22863   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
22864                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_P0_PerSet_OF_P0_PUCCH, SEQUENCE_SIZE_1_maxNrofPUCCH_P0_PerSet_OF_P0_PUCCH_sequence_of,
22865                                                   1, maxNrofPUCCH_P0_PerSet, FALSE);
22866
22867   return offset;
22868 }
22869
22870
22871 static const value_string nr_rrc_T_referenceSignal_vals[] = {
22872   {   0, "ssb-Index" },
22873   {   1, "csi-RS-Index" },
22874   { 0, NULL }
22875 };
22876
22877 static const per_choice_t T_referenceSignal_choice[] = {
22878   {   0, &hf_nr_rrc_ssb_Index    , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SSB_Index },
22879   {   1, &hf_nr_rrc_csi_RS_Index_01, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NZP_CSI_RS_ResourceId },
22880   { 0, NULL, 0, NULL }
22881 };
22882
22883 static int
22884 dissect_nr_rrc_T_referenceSignal(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22885   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
22886                                  ett_nr_rrc_T_referenceSignal, T_referenceSignal_choice,
22887                                  NULL);
22888
22889   return offset;
22890 }
22891
22892
22893 static const per_sequence_t PUCCH_PathlossReferenceRS_sequence[] = {
22894   { &hf_nr_rrc_pucch_PathlossReferenceRS_Id, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PUCCH_PathlossReferenceRS_Id },
22895   { &hf_nr_rrc_referenceSignal, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_referenceSignal },
22896   { NULL, 0, 0, NULL }
22897 };
22898
22899 static int
22900 dissect_nr_rrc_PUCCH_PathlossReferenceRS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22901   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
22902                                    ett_nr_rrc_PUCCH_PathlossReferenceRS, PUCCH_PathlossReferenceRS_sequence);
22903
22904   return offset;
22905 }
22906
22907
22908 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofPUCCH_PathlossReferenceRSs_OF_PUCCH_PathlossReferenceRS_sequence_of[1] = {
22909   { &hf_nr_rrc_pathlossReferenceRSs_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PUCCH_PathlossReferenceRS },
22910 };
22911
22912 static int
22913 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_PathlossReferenceRSs_OF_PUCCH_PathlossReferenceRS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22914   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
22915                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_PathlossReferenceRSs_OF_PUCCH_PathlossReferenceRS, SEQUENCE_SIZE_1_maxNrofPUCCH_PathlossReferenceRSs_OF_PUCCH_PathlossReferenceRS_sequence_of,
22916                                                   1, maxNrofPUCCH_PathlossReferenceRSs, FALSE);
22917
22918   return offset;
22919 }
22920
22921
22922 static const value_string nr_rrc_T_twoPUCCH_PC_AdjustmentStates_vals[] = {
22923   {   0, "twoStates" },
22924   { 0, NULL }
22925 };
22926
22927
22928 static int
22929 dissect_nr_rrc_T_twoPUCCH_PC_AdjustmentStates(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22930   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
22931                                      1, NULL, FALSE, 0, NULL);
22932
22933   return offset;
22934 }
22935
22936
22937 static const per_sequence_t PUCCH_PowerControl_sequence[] = {
22938   { &hf_nr_rrc_deltaF_PUCCH_f0, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_M16_15 },
22939   { &hf_nr_rrc_deltaF_PUCCH_f1, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_M16_15 },
22940   { &hf_nr_rrc_deltaF_PUCCH_f2, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_M16_15 },
22941   { &hf_nr_rrc_deltaF_PUCCH_f3, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_M16_15 },
22942   { &hf_nr_rrc_deltaF_PUCCH_f4, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_M16_15 },
22943   { &hf_nr_rrc_p0_Set       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_P0_PerSet_OF_P0_PUCCH },
22944   { &hf_nr_rrc_pathlossReferenceRSs, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_PathlossReferenceRSs_OF_PUCCH_PathlossReferenceRS },
22945   { &hf_nr_rrc_twoPUCCH_PC_AdjustmentStates, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_twoPUCCH_PC_AdjustmentStates },
22946   { NULL, 0, 0, NULL }
22947 };
22948
22949 static int
22950 dissect_nr_rrc_PUCCH_PowerControl(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22951   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
22952                                    ett_nr_rrc_PUCCH_PowerControl, PUCCH_PowerControl_sequence);
22953
22954   return offset;
22955 }
22956
22957
22958 static const per_sequence_t PUCCH_Config_sequence[] = {
22959   { &hf_nr_rrc_resourceSetToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_ResourceSets_OF_PUCCH_ResourceSet },
22960   { &hf_nr_rrc_resourceSetToReleaseList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_ResourceSets_OF_PUCCH_ResourceSetId },
22961   { &hf_nr_rrc_resourceToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_Resources_OF_PUCCH_Resource },
22962   { &hf_nr_rrc_resourceToReleaseList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_Resources_OF_PUCCH_ResourceId },
22963   { &hf_nr_rrc_format1      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_format1 },
22964   { &hf_nr_rrc_format2      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_format2 },
22965   { &hf_nr_rrc_format3      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_format3 },
22966   { &hf_nr_rrc_format4      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_format4 },
22967   { &hf_nr_rrc_schedulingRequestResourceToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSR_Resources_OF_SchedulingRequestResourceConfig },
22968   { &hf_nr_rrc_schedulingRequestResourceToReleaseList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSR_Resources_OF_SchedulingRequestResourceId },
22969   { &hf_nr_rrc_multi_CSI_PUCCH_ResourceList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_2_OF_PUCCH_ResourceId },
22970   { &hf_nr_rrc_dl_DataToUL_ACK, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_dl_DataToUL_ACK },
22971   { &hf_nr_rrc_spatialRelationInfoToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSpatialRelationInfos_OF_PUCCH_SpatialRelationInfo },
22972   { &hf_nr_rrc_spatialRelationInfoToReleaseList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSpatialRelationInfos_OF_PUCCH_SpatialRelationInfoId },
22973   { &hf_nr_rrc_pucch_PowerControl, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_PUCCH_PowerControl },
22974   { NULL, 0, 0, NULL }
22975 };
22976
22977 static int
22978 dissect_nr_rrc_PUCCH_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
22979   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
22980                                    ett_nr_rrc_PUCCH_Config, PUCCH_Config_sequence);
22981
22982   return offset;
22983 }
22984
22985
22986 static const value_string nr_rrc_T_pucch_Config_vals[] = {
22987   {   0, "release" },
22988   {   1, "setup" },
22989   { 0, NULL }
22990 };
22991
22992 static const per_choice_t T_pucch_Config_choice[] = {
22993   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
22994   {   1, &hf_nr_rrc_setup_11     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_PUCCH_Config },
22995   { 0, NULL, 0, NULL }
22996 };
22997
22998 static int
22999 dissect_nr_rrc_T_pucch_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23000   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
23001                                  ett_nr_rrc_T_pucch_Config, T_pucch_Config_choice,
23002                                  NULL);
23003
23004   return offset;
23005 }
23006
23007
23008 static const value_string nr_rrc_T_txConfig_vals[] = {
23009   {   0, "codebook" },
23010   {   1, "nonCodebook" },
23011   { 0, NULL }
23012 };
23013
23014
23015 static int
23016 dissect_nr_rrc_T_txConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23017   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
23018                                      2, NULL, FALSE, 0, NULL);
23019
23020   return offset;
23021 }
23022
23023
23024 static const value_string nr_rrc_T_dmrs_Type_01_vals[] = {
23025   {   0, "type2" },
23026   { 0, NULL }
23027 };
23028
23029
23030 static int
23031 dissect_nr_rrc_T_dmrs_Type_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23032   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
23033                                      1, NULL, FALSE, 0, NULL);
23034
23035   return offset;
23036 }
23037
23038
23039 static const value_string nr_rrc_T_dmrs_AdditionalPosition_01_vals[] = {
23040   {   0, "pos0" },
23041   {   1, "pos1" },
23042   {   2, "pos3" },
23043   { 0, NULL }
23044 };
23045
23046
23047 static int
23048 dissect_nr_rrc_T_dmrs_AdditionalPosition_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23049   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
23050                                      3, NULL, FALSE, 0, NULL);
23051
23052   return offset;
23053 }
23054
23055
23056 static const per_sequence_t T_frequencyDensity_01_sequence_of[1] = {
23057   { &hf_nr_rrc_frequencyDensity_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_276 },
23058 };
23059
23060 static int
23061 dissect_nr_rrc_T_frequencyDensity_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23062   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
23063                                                   ett_nr_rrc_T_frequencyDensity_01, T_frequencyDensity_01_sequence_of,
23064                                                   2, 2, FALSE);
23065
23066   return offset;
23067 }
23068
23069
23070 static const per_sequence_t T_timeDensity_01_sequence_of[1] = {
23071   { &hf_nr_rrc_timeDensity_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_29 },
23072 };
23073
23074 static int
23075 dissect_nr_rrc_T_timeDensity_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23076   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
23077                                                   ett_nr_rrc_T_timeDensity_01, T_timeDensity_01_sequence_of,
23078                                                   3, 3, FALSE);
23079
23080   return offset;
23081 }
23082
23083
23084 static const value_string nr_rrc_T_maxNrofPorts_vals[] = {
23085   {   0, "n1" },
23086   {   1, "n2" },
23087   { 0, NULL }
23088 };
23089
23090
23091 static int
23092 dissect_nr_rrc_T_maxNrofPorts(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23093   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
23094                                      2, NULL, FALSE, 0, NULL);
23095
23096   return offset;
23097 }
23098
23099
23100 static const value_string nr_rrc_T_resourceElementOffset_01_vals[] = {
23101   {   0, "offset01" },
23102   {   1, "offset10" },
23103   {   2, "offset11" },
23104   { 0, NULL }
23105 };
23106
23107
23108 static int
23109 dissect_nr_rrc_T_resourceElementOffset_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23110   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
23111                                      3, NULL, FALSE, 0, NULL);
23112
23113   return offset;
23114 }
23115
23116
23117 static const value_string nr_rrc_T_ptrs_Power_vals[] = {
23118   {   0, "p00" },
23119   {   1, "p01" },
23120   {   2, "p10" },
23121   {   3, "p11" },
23122   { 0, NULL }
23123 };
23124
23125
23126 static int
23127 dissect_nr_rrc_T_ptrs_Power(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23128   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
23129                                      4, NULL, FALSE, 0, NULL);
23130
23131   return offset;
23132 }
23133
23134
23135 static const per_sequence_t T_transformPrecoderDisabled_sequence[] = {
23136   { &hf_nr_rrc_frequencyDensity_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_frequencyDensity_01 },
23137   { &hf_nr_rrc_timeDensity_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_timeDensity_01 },
23138   { &hf_nr_rrc_maxNrofPorts , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_maxNrofPorts },
23139   { &hf_nr_rrc_resourceElementOffset_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_resourceElementOffset_01 },
23140   { &hf_nr_rrc_ptrs_Power   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_ptrs_Power },
23141   { NULL, 0, 0, NULL }
23142 };
23143
23144 static int
23145 dissect_nr_rrc_T_transformPrecoderDisabled(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23146   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
23147                                    ett_nr_rrc_T_transformPrecoderDisabled, T_transformPrecoderDisabled_sequence);
23148
23149   return offset;
23150 }
23151
23152
23153 static const per_sequence_t T_sampleDensity_sequence_of[1] = {
23154   { &hf_nr_rrc_sampleDensity_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_276 },
23155 };
23156
23157 static int
23158 dissect_nr_rrc_T_sampleDensity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23159   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
23160                                                   ett_nr_rrc_T_sampleDensity, T_sampleDensity_sequence_of,
23161                                                   5, 5, FALSE);
23162
23163   return offset;
23164 }
23165
23166
23167 static const value_string nr_rrc_T_timeDensityTransformPrecoding_vals[] = {
23168   {   0, "d2" },
23169   { 0, NULL }
23170 };
23171
23172
23173 static int
23174 dissect_nr_rrc_T_timeDensityTransformPrecoding(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23175   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
23176                                      1, NULL, FALSE, 0, NULL);
23177
23178   return offset;
23179 }
23180
23181
23182 static const per_sequence_t T_transformPrecoderEnabled_sequence[] = {
23183   { &hf_nr_rrc_sampleDensity, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_sampleDensity },
23184   { &hf_nr_rrc_timeDensityTransformPrecoding, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_timeDensityTransformPrecoding },
23185   { NULL, 0, 0, NULL }
23186 };
23187
23188 static int
23189 dissect_nr_rrc_T_transformPrecoderEnabled(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23190   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
23191                                    ett_nr_rrc_T_transformPrecoderEnabled, T_transformPrecoderEnabled_sequence);
23192
23193   return offset;
23194 }
23195
23196
23197 static const per_sequence_t PTRS_UplinkConfig_sequence[] = {
23198   { &hf_nr_rrc_transformPrecoderDisabled, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_transformPrecoderDisabled },
23199   { &hf_nr_rrc_transformPrecoderEnabled, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_transformPrecoderEnabled },
23200   { NULL, 0, 0, NULL }
23201 };
23202
23203 static int
23204 dissect_nr_rrc_PTRS_UplinkConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23205   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
23206                                    ett_nr_rrc_PTRS_UplinkConfig, PTRS_UplinkConfig_sequence);
23207
23208   return offset;
23209 }
23210
23211
23212 static const value_string nr_rrc_T_phaseTrackingRS_01_vals[] = {
23213   {   0, "release" },
23214   {   1, "setup" },
23215   { 0, NULL }
23216 };
23217
23218 static const per_choice_t T_phaseTrackingRS_01_choice[] = {
23219   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
23220   {   1, &hf_nr_rrc_setup_21     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_PTRS_UplinkConfig },
23221   { 0, NULL, 0, NULL }
23222 };
23223
23224 static int
23225 dissect_nr_rrc_T_phaseTrackingRS_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23226   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
23227                                  ett_nr_rrc_T_phaseTrackingRS_01, T_phaseTrackingRS_01_choice,
23228                                  NULL);
23229
23230   return offset;
23231 }
23232
23233
23234 static const value_string nr_rrc_T_maxLength_01_vals[] = {
23235   {   0, "len2" },
23236   { 0, NULL }
23237 };
23238
23239
23240 static int
23241 dissect_nr_rrc_T_maxLength_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23242   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
23243                                      1, NULL, FALSE, 0, NULL);
23244
23245   return offset;
23246 }
23247
23248
23249 static const per_sequence_t T_transformPrecodingDisabled_sequence[] = {
23250   { &hf_nr_rrc_scramblingID0, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_65535 },
23251   { &hf_nr_rrc_scramblingID1, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_65535 },
23252   { NULL, 0, 0, NULL }
23253 };
23254
23255 static int
23256 dissect_nr_rrc_T_transformPrecodingDisabled(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23257   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
23258                                    ett_nr_rrc_T_transformPrecodingDisabled, T_transformPrecodingDisabled_sequence);
23259
23260   return offset;
23261 }
23262
23263
23264
23265 static int
23266 dissect_nr_rrc_INTEGER_0_1007(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23267   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
23268                                                             0U, 1007U, NULL, FALSE);
23269
23270   return offset;
23271 }
23272
23273
23274 static const value_string nr_rrc_T_sequenceGroupHopping_vals[] = {
23275   {   0, "disabled" },
23276   { 0, NULL }
23277 };
23278
23279
23280 static int
23281 dissect_nr_rrc_T_sequenceGroupHopping(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23282   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
23283                                      1, NULL, FALSE, 0, NULL);
23284
23285   return offset;
23286 }
23287
23288
23289 static const value_string nr_rrc_T_sequenceHopping_vals[] = {
23290   {   0, "enabled" },
23291   { 0, NULL }
23292 };
23293
23294
23295 static int
23296 dissect_nr_rrc_T_sequenceHopping(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23297   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
23298                                      1, NULL, FALSE, 0, NULL);
23299
23300   return offset;
23301 }
23302
23303
23304 static const per_sequence_t T_transformPrecodingEnabled_sequence[] = {
23305   { &hf_nr_rrc_nPUSCH_Identity, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_1007 },
23306   { &hf_nr_rrc_sequenceGroupHopping, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_sequenceGroupHopping },
23307   { &hf_nr_rrc_sequenceHopping, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_sequenceHopping },
23308   { NULL, 0, 0, NULL }
23309 };
23310
23311 static int
23312 dissect_nr_rrc_T_transformPrecodingEnabled(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23313   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
23314                                    ett_nr_rrc_T_transformPrecodingEnabled, T_transformPrecodingEnabled_sequence);
23315
23316   return offset;
23317 }
23318
23319
23320 static const per_sequence_t DMRS_UplinkConfig_sequence[] = {
23321   { &hf_nr_rrc_dmrs_Type_01 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_dmrs_Type_01 },
23322   { &hf_nr_rrc_dmrs_AdditionalPosition_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_dmrs_AdditionalPosition_01 },
23323   { &hf_nr_rrc_phaseTrackingRS_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_phaseTrackingRS_01 },
23324   { &hf_nr_rrc_maxLength_01 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_maxLength_01 },
23325   { &hf_nr_rrc_transformPrecodingDisabled, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_transformPrecodingDisabled },
23326   { &hf_nr_rrc_transformPrecodingEnabled, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_transformPrecodingEnabled },
23327   { NULL, 0, 0, NULL }
23328 };
23329
23330 static int
23331 dissect_nr_rrc_DMRS_UplinkConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23332   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
23333                                    ett_nr_rrc_DMRS_UplinkConfig, DMRS_UplinkConfig_sequence);
23334
23335   return offset;
23336 }
23337
23338
23339 static const value_string nr_rrc_T_dmrs_UplinkForPUSCH_MappingTypeA_vals[] = {
23340   {   0, "release" },
23341   {   1, "setup" },
23342   { 0, NULL }
23343 };
23344
23345 static const per_choice_t T_dmrs_UplinkForPUSCH_MappingTypeA_choice[] = {
23346   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
23347   {   1, &hf_nr_rrc_setup_39     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_DMRS_UplinkConfig },
23348   { 0, NULL, 0, NULL }
23349 };
23350
23351 static int
23352 dissect_nr_rrc_T_dmrs_UplinkForPUSCH_MappingTypeA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23353   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
23354                                  ett_nr_rrc_T_dmrs_UplinkForPUSCH_MappingTypeA, T_dmrs_UplinkForPUSCH_MappingTypeA_choice,
23355                                  NULL);
23356
23357   return offset;
23358 }
23359
23360
23361 static const value_string nr_rrc_T_dmrs_UplinkForPUSCH_MappingTypeB_vals[] = {
23362   {   0, "release" },
23363   {   1, "setup" },
23364   { 0, NULL }
23365 };
23366
23367 static const per_choice_t T_dmrs_UplinkForPUSCH_MappingTypeB_choice[] = {
23368   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
23369   {   1, &hf_nr_rrc_setup_39     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_DMRS_UplinkConfig },
23370   { 0, NULL, 0, NULL }
23371 };
23372
23373 static int
23374 dissect_nr_rrc_T_dmrs_UplinkForPUSCH_MappingTypeB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23375   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
23376                                  ett_nr_rrc_T_dmrs_UplinkForPUSCH_MappingTypeB, T_dmrs_UplinkForPUSCH_MappingTypeB_choice,
23377                                  NULL);
23378
23379   return offset;
23380 }
23381
23382
23383 static const value_string nr_rrc_T_tpc_Accumulation_vals[] = {
23384   {   0, "disabled" },
23385   { 0, NULL }
23386 };
23387
23388
23389 static int
23390 dissect_nr_rrc_T_tpc_Accumulation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23391   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
23392                                      1, NULL, FALSE, 0, NULL);
23393
23394   return offset;
23395 }
23396
23397
23398
23399 static int
23400 dissect_nr_rrc_P0_PUSCH_AlphaSetId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23401   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
23402                                                             0U, maxNrofP0_PUSCH_AlphaSets_1, NULL, FALSE);
23403
23404   return offset;
23405 }
23406
23407
23408 static const per_sequence_t P0_PUSCH_AlphaSet_sequence[] = {
23409   { &hf_nr_rrc_p0_PUSCH_AlphaSetId, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_P0_PUSCH_AlphaSetId },
23410   { &hf_nr_rrc_p0           , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_M16_15 },
23411   { &hf_nr_rrc_alpha        , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_Alpha },
23412   { NULL, 0, 0, NULL }
23413 };
23414
23415 static int
23416 dissect_nr_rrc_P0_PUSCH_AlphaSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23417   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
23418                                    ett_nr_rrc_P0_PUSCH_AlphaSet, P0_PUSCH_AlphaSet_sequence);
23419
23420   return offset;
23421 }
23422
23423
23424 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofP0_PUSCH_AlphaSets_OF_P0_PUSCH_AlphaSet_sequence_of[1] = {
23425   { &hf_nr_rrc_p0_AlphaSets_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_P0_PUSCH_AlphaSet },
23426 };
23427
23428 static int
23429 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofP0_PUSCH_AlphaSets_OF_P0_PUSCH_AlphaSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23430   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
23431                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofP0_PUSCH_AlphaSets_OF_P0_PUSCH_AlphaSet, SEQUENCE_SIZE_1_maxNrofP0_PUSCH_AlphaSets_OF_P0_PUSCH_AlphaSet_sequence_of,
23432                                                   1, maxNrofP0_PUSCH_AlphaSets, FALSE);
23433
23434   return offset;
23435 }
23436
23437
23438
23439 static int
23440 dissect_nr_rrc_PUSCH_PathlossReferenceRS_Id(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23441   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
23442                                                             0U, maxNrofPUSCH_PathlossReferenceRSs_1, NULL, FALSE);
23443
23444   return offset;
23445 }
23446
23447
23448 static const value_string nr_rrc_T_referenceSignal_02_vals[] = {
23449   {   0, "ssb-Index" },
23450   {   1, "csi-RS-Index" },
23451   { 0, NULL }
23452 };
23453
23454 static const per_choice_t T_referenceSignal_02_choice[] = {
23455   {   0, &hf_nr_rrc_ssb_Index    , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SSB_Index },
23456   {   1, &hf_nr_rrc_csi_RS_Index_01, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NZP_CSI_RS_ResourceId },
23457   { 0, NULL, 0, NULL }
23458 };
23459
23460 static int
23461 dissect_nr_rrc_T_referenceSignal_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23462   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
23463                                  ett_nr_rrc_T_referenceSignal_02, T_referenceSignal_02_choice,
23464                                  NULL);
23465
23466   return offset;
23467 }
23468
23469
23470 static const per_sequence_t PUSCH_PathlossReferenceRS_sequence[] = {
23471   { &hf_nr_rrc_pusch_PathlossReferenceRS_Id, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PUSCH_PathlossReferenceRS_Id },
23472   { &hf_nr_rrc_referenceSignal_02, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_referenceSignal_02 },
23473   { NULL, 0, 0, NULL }
23474 };
23475
23476 static int
23477 dissect_nr_rrc_PUSCH_PathlossReferenceRS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23478   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
23479                                    ett_nr_rrc_PUSCH_PathlossReferenceRS, PUSCH_PathlossReferenceRS_sequence);
23480
23481   return offset;
23482 }
23483
23484
23485 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofPUSCH_PathlossReferenceRSs_OF_PUSCH_PathlossReferenceRS_sequence_of[1] = {
23486   { &hf_nr_rrc_pathlossReferenceRSToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PUSCH_PathlossReferenceRS },
23487 };
23488
23489 static int
23490 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUSCH_PathlossReferenceRSs_OF_PUSCH_PathlossReferenceRS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23491   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
23492                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUSCH_PathlossReferenceRSs_OF_PUSCH_PathlossReferenceRS, SEQUENCE_SIZE_1_maxNrofPUSCH_PathlossReferenceRSs_OF_PUSCH_PathlossReferenceRS_sequence_of,
23493                                                   1, maxNrofPUSCH_PathlossReferenceRSs, FALSE);
23494
23495   return offset;
23496 }
23497
23498
23499 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofPUSCH_PathlossReferenceRSs_OF_PUSCH_PathlossReferenceRS_Id_sequence_of[1] = {
23500   { &hf_nr_rrc_pathlossReferenceRSToReleaseList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PUSCH_PathlossReferenceRS_Id },
23501 };
23502
23503 static int
23504 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUSCH_PathlossReferenceRSs_OF_PUSCH_PathlossReferenceRS_Id(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23505   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
23506                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUSCH_PathlossReferenceRSs_OF_PUSCH_PathlossReferenceRS_Id, SEQUENCE_SIZE_1_maxNrofPUSCH_PathlossReferenceRSs_OF_PUSCH_PathlossReferenceRS_Id_sequence_of,
23507                                                   1, maxNrofPUSCH_PathlossReferenceRSs, FALSE);
23508
23509   return offset;
23510 }
23511
23512
23513 static const value_string nr_rrc_T_twoPUSCH_PC_AdjustmentStates_vals[] = {
23514   {   0, "twoStates" },
23515   { 0, NULL }
23516 };
23517
23518
23519 static int
23520 dissect_nr_rrc_T_twoPUSCH_PC_AdjustmentStates(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23521   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
23522                                      1, NULL, FALSE, 0, NULL);
23523
23524   return offset;
23525 }
23526
23527
23528 static const value_string nr_rrc_T_deltaMCS_vals[] = {
23529   {   0, "enabled" },
23530   { 0, NULL }
23531 };
23532
23533
23534 static int
23535 dissect_nr_rrc_T_deltaMCS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23536   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
23537                                      1, NULL, FALSE, 0, NULL);
23538
23539   return offset;
23540 }
23541
23542
23543
23544 static int
23545 dissect_nr_rrc_SRI_PUSCH_PowerControlId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23546   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
23547                                                             0U, maxNrofSRI_PUSCH_Mappings_1, NULL, FALSE);
23548
23549   return offset;
23550 }
23551
23552
23553 static const value_string nr_rrc_T_sri_PUSCH_ClosedLoopIndex_vals[] = {
23554   {   0, "i0" },
23555   {   1, "i1" },
23556   { 0, NULL }
23557 };
23558
23559
23560 static int
23561 dissect_nr_rrc_T_sri_PUSCH_ClosedLoopIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23562   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
23563                                      2, NULL, FALSE, 0, NULL);
23564
23565   return offset;
23566 }
23567
23568
23569 static const per_sequence_t SRI_PUSCH_PowerControl_sequence[] = {
23570   { &hf_nr_rrc_sri_PUSCH_PowerControlId, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SRI_PUSCH_PowerControlId },
23571   { &hf_nr_rrc_sri_PUSCH_PathlossReferenceRS_Id, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PUSCH_PathlossReferenceRS_Id },
23572   { &hf_nr_rrc_sri_P0_PUSCH_AlphaSetId, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_P0_PUSCH_AlphaSetId },
23573   { &hf_nr_rrc_sri_PUSCH_ClosedLoopIndex, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_sri_PUSCH_ClosedLoopIndex },
23574   { NULL, 0, 0, NULL }
23575 };
23576
23577 static int
23578 dissect_nr_rrc_SRI_PUSCH_PowerControl(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23579   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
23580                                    ett_nr_rrc_SRI_PUSCH_PowerControl, SRI_PUSCH_PowerControl_sequence);
23581
23582   return offset;
23583 }
23584
23585
23586 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofSRI_PUSCH_Mappings_OF_SRI_PUSCH_PowerControl_sequence_of[1] = {
23587   { &hf_nr_rrc_sri_PUSCH_MappingToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SRI_PUSCH_PowerControl },
23588 };
23589
23590 static int
23591 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRI_PUSCH_Mappings_OF_SRI_PUSCH_PowerControl(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23592   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
23593                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRI_PUSCH_Mappings_OF_SRI_PUSCH_PowerControl, SEQUENCE_SIZE_1_maxNrofSRI_PUSCH_Mappings_OF_SRI_PUSCH_PowerControl_sequence_of,
23594                                                   1, maxNrofSRI_PUSCH_Mappings, FALSE);
23595
23596   return offset;
23597 }
23598
23599
23600 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofSRI_PUSCH_Mappings_OF_SRI_PUSCH_PowerControlId_sequence_of[1] = {
23601   { &hf_nr_rrc_sri_PUSCH_MappingToReleaseList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SRI_PUSCH_PowerControlId },
23602 };
23603
23604 static int
23605 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRI_PUSCH_Mappings_OF_SRI_PUSCH_PowerControlId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23606   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
23607                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRI_PUSCH_Mappings_OF_SRI_PUSCH_PowerControlId, SEQUENCE_SIZE_1_maxNrofSRI_PUSCH_Mappings_OF_SRI_PUSCH_PowerControlId_sequence_of,
23608                                                   1, maxNrofSRI_PUSCH_Mappings, FALSE);
23609
23610   return offset;
23611 }
23612
23613
23614 static const per_sequence_t PUSCH_PowerControl_sequence[] = {
23615   { &hf_nr_rrc_tpc_Accumulation, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_tpc_Accumulation },
23616   { &hf_nr_rrc_msg3_Alpha   , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_Alpha },
23617   { &hf_nr_rrc_p0_NominalWithoutGrant, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_M202_24 },
23618   { &hf_nr_rrc_p0_AlphaSets , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofP0_PUSCH_AlphaSets_OF_P0_PUSCH_AlphaSet },
23619   { &hf_nr_rrc_pathlossReferenceRSToAddModList, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUSCH_PathlossReferenceRSs_OF_PUSCH_PathlossReferenceRS },
23620   { &hf_nr_rrc_pathlossReferenceRSToReleaseList, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUSCH_PathlossReferenceRSs_OF_PUSCH_PathlossReferenceRS_Id },
23621   { &hf_nr_rrc_twoPUSCH_PC_AdjustmentStates, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_twoPUSCH_PC_AdjustmentStates },
23622   { &hf_nr_rrc_deltaMCS     , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_deltaMCS },
23623   { &hf_nr_rrc_sri_PUSCH_MappingToAddModList, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRI_PUSCH_Mappings_OF_SRI_PUSCH_PowerControl },
23624   { &hf_nr_rrc_sri_PUSCH_MappingToReleaseList, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRI_PUSCH_Mappings_OF_SRI_PUSCH_PowerControlId },
23625   { NULL, 0, 0, NULL }
23626 };
23627
23628 static int
23629 dissect_nr_rrc_PUSCH_PowerControl(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23630   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
23631                                    ett_nr_rrc_PUSCH_PowerControl, PUSCH_PowerControl_sequence);
23632
23633   return offset;
23634 }
23635
23636
23637 static const value_string nr_rrc_T_frequencyHopping_01_vals[] = {
23638   {   0, "intraSlot" },
23639   {   1, "interSlot" },
23640   { 0, NULL }
23641 };
23642
23643
23644 static int
23645 dissect_nr_rrc_T_frequencyHopping_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23646   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
23647                                      2, NULL, FALSE, 0, NULL);
23648
23649   return offset;
23650 }
23651
23652
23653
23654 static int
23655 dissect_nr_rrc_INTEGER_1_maxNrofPhysicalResourceBlocks_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23656   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
23657                                                             1U, maxNrofPhysicalResourceBlocks_1, NULL, FALSE);
23658
23659   return offset;
23660 }
23661
23662
23663 static const per_sequence_t T_frequencyHoppingOffsetLists_sequence_of[1] = {
23664   { &hf_nr_rrc_frequencyHoppingOffsetLists_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_maxNrofPhysicalResourceBlocks_1 },
23665 };
23666
23667 static int
23668 dissect_nr_rrc_T_frequencyHoppingOffsetLists(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23669   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
23670                                                   ett_nr_rrc_T_frequencyHoppingOffsetLists, T_frequencyHoppingOffsetLists_sequence_of,
23671                                                   1, 4, FALSE);
23672
23673   return offset;
23674 }
23675
23676
23677 static const value_string nr_rrc_T_resourceAllocation_02_vals[] = {
23678   {   0, "resourceAllocationType0" },
23679   {   1, "resourceAllocationType1" },
23680   {   2, "dynamicSwitch" },
23681   { 0, NULL }
23682 };
23683
23684
23685 static int
23686 dissect_nr_rrc_T_resourceAllocation_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23687   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
23688                                      3, NULL, FALSE, 0, NULL);
23689
23690   return offset;
23691 }
23692
23693
23694 static const value_string nr_rrc_T_pusch_TimeDomainAllocationList_vals[] = {
23695   {   0, "release" },
23696   {   1, "setup" },
23697   { 0, NULL }
23698 };
23699
23700 static const per_choice_t T_pusch_TimeDomainAllocationList_choice[] = {
23701   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
23702   {   1, &hf_nr_rrc_setup_40     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_PUSCH_TimeDomainResourceAllocationList },
23703   { 0, NULL, 0, NULL }
23704 };
23705
23706 static int
23707 dissect_nr_rrc_T_pusch_TimeDomainAllocationList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23708   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
23709                                  ett_nr_rrc_T_pusch_TimeDomainAllocationList, T_pusch_TimeDomainAllocationList_choice,
23710                                  NULL);
23711
23712   return offset;
23713 }
23714
23715
23716 static const value_string nr_rrc_T_pusch_AggregationFactor_vals[] = {
23717   {   0, "n2" },
23718   {   1, "n4" },
23719   {   2, "n8" },
23720   { 0, NULL }
23721 };
23722
23723
23724 static int
23725 dissect_nr_rrc_T_pusch_AggregationFactor(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23726   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
23727                                      3, NULL, FALSE, 0, NULL);
23728
23729   return offset;
23730 }
23731
23732
23733 static const value_string nr_rrc_T_mcs_Table_02_vals[] = {
23734   {   0, "qam256" },
23735   {   1, "qam64LowSE" },
23736   { 0, NULL }
23737 };
23738
23739
23740 static int
23741 dissect_nr_rrc_T_mcs_Table_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23742   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
23743                                      2, NULL, FALSE, 0, NULL);
23744
23745   return offset;
23746 }
23747
23748
23749 static const value_string nr_rrc_T_mcs_TableTransformPrecoder_01_vals[] = {
23750   {   0, "qam256" },
23751   {   1, "qam64LowSE" },
23752   { 0, NULL }
23753 };
23754
23755
23756 static int
23757 dissect_nr_rrc_T_mcs_TableTransformPrecoder_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23758   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
23759                                      2, NULL, FALSE, 0, NULL);
23760
23761   return offset;
23762 }
23763
23764
23765 static const value_string nr_rrc_T_transformPrecoder_01_vals[] = {
23766   {   0, "enabled" },
23767   {   1, "disabled" },
23768   { 0, NULL }
23769 };
23770
23771
23772 static int
23773 dissect_nr_rrc_T_transformPrecoder_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23774   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
23775                                      2, NULL, FALSE, 0, NULL);
23776
23777   return offset;
23778 }
23779
23780
23781 static const value_string nr_rrc_T_codebookSubset_vals[] = {
23782   {   0, "fullyAndPartialAndNonCoherent" },
23783   {   1, "partialAndNonCoherent" },
23784   {   2, "nonCoherent" },
23785   { 0, NULL }
23786 };
23787
23788
23789 static int
23790 dissect_nr_rrc_T_codebookSubset(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23791   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
23792                                      3, NULL, FALSE, 0, NULL);
23793
23794   return offset;
23795 }
23796
23797
23798 static const value_string nr_rrc_T_rbg_Size_02_vals[] = {
23799   {   0, "config2" },
23800   { 0, NULL }
23801 };
23802
23803
23804 static int
23805 dissect_nr_rrc_T_rbg_Size_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23806   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
23807                                      1, NULL, FALSE, 0, NULL);
23808
23809   return offset;
23810 }
23811
23812
23813 static const per_sequence_t BetaOffsets_sequence[] = {
23814   { &hf_nr_rrc_betaOffsetACK_Index1, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_31 },
23815   { &hf_nr_rrc_betaOffsetACK_Index2, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_31 },
23816   { &hf_nr_rrc_betaOffsetACK_Index3, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_31 },
23817   { &hf_nr_rrc_betaOffsetCSI_Part1_Index1, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_31 },
23818   { &hf_nr_rrc_betaOffsetCSI_Part1_Index2, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_31 },
23819   { &hf_nr_rrc_betaOffsetCSI_Part2_Index1, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_31 },
23820   { &hf_nr_rrc_betaOffsetCSI_Part2_Index2, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_31 },
23821   { NULL, 0, 0, NULL }
23822 };
23823
23824 static int
23825 dissect_nr_rrc_BetaOffsets(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23826   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
23827                                    ett_nr_rrc_BetaOffsets, BetaOffsets_sequence);
23828
23829   return offset;
23830 }
23831
23832
23833 static const per_sequence_t SEQUENCE_SIZE_4_OF_BetaOffsets_sequence_of[1] = {
23834   { &hf_nr_rrc_dynamic_item , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BetaOffsets },
23835 };
23836
23837 static int
23838 dissect_nr_rrc_SEQUENCE_SIZE_4_OF_BetaOffsets(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23839   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
23840                                                   ett_nr_rrc_SEQUENCE_SIZE_4_OF_BetaOffsets, SEQUENCE_SIZE_4_OF_BetaOffsets_sequence_of,
23841                                                   4, 4, FALSE);
23842
23843   return offset;
23844 }
23845
23846
23847 static const value_string nr_rrc_T_betaOffsets_vals[] = {
23848   {   0, "dynamic" },
23849   {   1, "semiStatic" },
23850   { 0, NULL }
23851 };
23852
23853 static const per_choice_t T_betaOffsets_choice[] = {
23854   {   0, &hf_nr_rrc_dynamic_01   , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SEQUENCE_SIZE_4_OF_BetaOffsets },
23855   {   1, &hf_nr_rrc_semiStatic   , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BetaOffsets },
23856   { 0, NULL, 0, NULL }
23857 };
23858
23859 static int
23860 dissect_nr_rrc_T_betaOffsets(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23861   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
23862                                  ett_nr_rrc_T_betaOffsets, T_betaOffsets_choice,
23863                                  NULL);
23864
23865   return offset;
23866 }
23867
23868
23869 static const value_string nr_rrc_T_scaling_vals[] = {
23870   {   0, "f0p5" },
23871   {   1, "f0p65" },
23872   {   2, "f0p8" },
23873   {   3, "f1" },
23874   { 0, NULL }
23875 };
23876
23877
23878 static int
23879 dissect_nr_rrc_T_scaling(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23880   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
23881                                      4, NULL, FALSE, 0, NULL);
23882
23883   return offset;
23884 }
23885
23886
23887 static const per_sequence_t UCI_OnPUSCH_sequence[] = {
23888   { &hf_nr_rrc_betaOffsets  , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_betaOffsets },
23889   { &hf_nr_rrc_scaling      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_scaling },
23890   { NULL, 0, 0, NULL }
23891 };
23892
23893 static int
23894 dissect_nr_rrc_UCI_OnPUSCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23895   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
23896                                    ett_nr_rrc_UCI_OnPUSCH, UCI_OnPUSCH_sequence);
23897
23898   return offset;
23899 }
23900
23901
23902 static const value_string nr_rrc_T_uci_OnPUSCH_01_vals[] = {
23903   {   0, "release" },
23904   {   1, "setup" },
23905   { 0, NULL }
23906 };
23907
23908 static const per_choice_t T_uci_OnPUSCH_01_choice[] = {
23909   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
23910   {   1, &hf_nr_rrc_setup_41     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_UCI_OnPUSCH },
23911   { 0, NULL, 0, NULL }
23912 };
23913
23914 static int
23915 dissect_nr_rrc_T_uci_OnPUSCH_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23916   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
23917                                  ett_nr_rrc_T_uci_OnPUSCH_01, T_uci_OnPUSCH_01_choice,
23918                                  NULL);
23919
23920   return offset;
23921 }
23922
23923
23924 static const value_string nr_rrc_T_tp_pi2BPSK_vals[] = {
23925   {   0, "enabled" },
23926   { 0, NULL }
23927 };
23928
23929
23930 static int
23931 dissect_nr_rrc_T_tp_pi2BPSK(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23932   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
23933                                      1, NULL, FALSE, 0, NULL);
23934
23935   return offset;
23936 }
23937
23938
23939 static const per_sequence_t PUSCH_Config_sequence[] = {
23940   { &hf_nr_rrc_dataScramblingIdentityPUSCH, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_1023 },
23941   { &hf_nr_rrc_txConfig     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_txConfig },
23942   { &hf_nr_rrc_dmrs_UplinkForPUSCH_MappingTypeA, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_dmrs_UplinkForPUSCH_MappingTypeA },
23943   { &hf_nr_rrc_dmrs_UplinkForPUSCH_MappingTypeB, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_dmrs_UplinkForPUSCH_MappingTypeB },
23944   { &hf_nr_rrc_pusch_PowerControl, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_PUSCH_PowerControl },
23945   { &hf_nr_rrc_frequencyHopping_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_frequencyHopping_01 },
23946   { &hf_nr_rrc_frequencyHoppingOffsetLists, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_frequencyHoppingOffsetLists },
23947   { &hf_nr_rrc_resourceAllocation_02, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_resourceAllocation_02 },
23948   { &hf_nr_rrc_pusch_TimeDomainAllocationList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pusch_TimeDomainAllocationList },
23949   { &hf_nr_rrc_pusch_AggregationFactor, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pusch_AggregationFactor },
23950   { &hf_nr_rrc_mcs_Table_02 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_mcs_Table_02 },
23951   { &hf_nr_rrc_mcs_TableTransformPrecoder_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_mcs_TableTransformPrecoder_01 },
23952   { &hf_nr_rrc_transformPrecoder_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_transformPrecoder_01 },
23953   { &hf_nr_rrc_codebookSubset, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_codebookSubset },
23954   { &hf_nr_rrc_maxRank      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_4 },
23955   { &hf_nr_rrc_rbg_Size_02  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_rbg_Size_02 },
23956   { &hf_nr_rrc_uci_OnPUSCH_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_uci_OnPUSCH_01 },
23957   { &hf_nr_rrc_tp_pi2BPSK   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_tp_pi2BPSK },
23958   { NULL, 0, 0, NULL }
23959 };
23960
23961 static int
23962 dissect_nr_rrc_PUSCH_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23963   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
23964                                    ett_nr_rrc_PUSCH_Config, PUSCH_Config_sequence);
23965
23966   return offset;
23967 }
23968
23969
23970 static const value_string nr_rrc_T_pusch_Config_vals[] = {
23971   {   0, "release" },
23972   {   1, "setup" },
23973   { 0, NULL }
23974 };
23975
23976 static const per_choice_t T_pusch_Config_choice[] = {
23977   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
23978   {   1, &hf_nr_rrc_setup_12     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_PUSCH_Config },
23979   { 0, NULL, 0, NULL }
23980 };
23981
23982 static int
23983 dissect_nr_rrc_T_pusch_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
23984   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
23985                                  ett_nr_rrc_T_pusch_Config, T_pusch_Config_choice,
23986                                  NULL);
23987
23988   return offset;
23989 }
23990
23991
23992 static const value_string nr_rrc_T_frequencyHopping_vals[] = {
23993   {   0, "intraSlot" },
23994   {   1, "interSlot" },
23995   { 0, NULL }
23996 };
23997
23998
23999 static int
24000 dissect_nr_rrc_T_frequencyHopping(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24001   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
24002                                      2, NULL, FALSE, 0, NULL);
24003
24004   return offset;
24005 }
24006
24007
24008 static const value_string nr_rrc_T_mcs_Table_vals[] = {
24009   {   0, "qam256" },
24010   {   1, "qam64LowSE" },
24011   { 0, NULL }
24012 };
24013
24014
24015 static int
24016 dissect_nr_rrc_T_mcs_Table(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24017   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
24018                                      2, NULL, FALSE, 0, NULL);
24019
24020   return offset;
24021 }
24022
24023
24024 static const value_string nr_rrc_T_mcs_TableTransformPrecoder_vals[] = {
24025   {   0, "qam256" },
24026   {   1, "qam64LowSE" },
24027   { 0, NULL }
24028 };
24029
24030
24031 static int
24032 dissect_nr_rrc_T_mcs_TableTransformPrecoder(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24033   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
24034                                      2, NULL, FALSE, 0, NULL);
24035
24036   return offset;
24037 }
24038
24039
24040 static const per_sequence_t SEQUENCE_SIZE_1_4_OF_BetaOffsets_sequence_of[1] = {
24041   { &hf_nr_rrc_dynamic_item , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BetaOffsets },
24042 };
24043
24044 static int
24045 dissect_nr_rrc_SEQUENCE_SIZE_1_4_OF_BetaOffsets(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24046   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
24047                                                   ett_nr_rrc_SEQUENCE_SIZE_1_4_OF_BetaOffsets, SEQUENCE_SIZE_1_4_OF_BetaOffsets_sequence_of,
24048                                                   1, 4, FALSE);
24049
24050   return offset;
24051 }
24052
24053
24054 static const value_string nr_rrc_CG_UCI_OnPUSCH_vals[] = {
24055   {   0, "dynamic" },
24056   {   1, "semiStatic" },
24057   { 0, NULL }
24058 };
24059
24060 static const per_choice_t CG_UCI_OnPUSCH_choice[] = {
24061   {   0, &hf_nr_rrc_dynamic      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SEQUENCE_SIZE_1_4_OF_BetaOffsets },
24062   {   1, &hf_nr_rrc_semiStatic   , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BetaOffsets },
24063   { 0, NULL, 0, NULL }
24064 };
24065
24066 static int
24067 dissect_nr_rrc_CG_UCI_OnPUSCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24068   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
24069                                  ett_nr_rrc_CG_UCI_OnPUSCH, CG_UCI_OnPUSCH_choice,
24070                                  NULL);
24071
24072   return offset;
24073 }
24074
24075
24076 static const value_string nr_rrc_T_uci_OnPUSCH_vals[] = {
24077   {   0, "release" },
24078   {   1, "setup" },
24079   { 0, NULL }
24080 };
24081
24082 static const per_choice_t T_uci_OnPUSCH_choice[] = {
24083   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
24084   {   1, &hf_nr_rrc_setup_17     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_CG_UCI_OnPUSCH },
24085   { 0, NULL, 0, NULL }
24086 };
24087
24088 static int
24089 dissect_nr_rrc_T_uci_OnPUSCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24090   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
24091                                  ett_nr_rrc_T_uci_OnPUSCH, T_uci_OnPUSCH_choice,
24092                                  NULL);
24093
24094   return offset;
24095 }
24096
24097
24098 static const value_string nr_rrc_T_resourceAllocation_vals[] = {
24099   {   0, "resourceAllocationType0" },
24100   {   1, "resourceAllocationType1" },
24101   {   2, "dynamicSwitch" },
24102   { 0, NULL }
24103 };
24104
24105
24106 static int
24107 dissect_nr_rrc_T_resourceAllocation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24108   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
24109                                      3, NULL, FALSE, 0, NULL);
24110
24111   return offset;
24112 }
24113
24114
24115 static const value_string nr_rrc_T_rbg_Size_vals[] = {
24116   {   0, "config2" },
24117   { 0, NULL }
24118 };
24119
24120
24121 static int
24122 dissect_nr_rrc_T_rbg_Size(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24123   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
24124                                      1, NULL, FALSE, 0, NULL);
24125
24126   return offset;
24127 }
24128
24129
24130 static const value_string nr_rrc_T_powerControlLoopToUse_vals[] = {
24131   {   0, "n0" },
24132   {   1, "n1" },
24133   { 0, NULL }
24134 };
24135
24136
24137 static int
24138 dissect_nr_rrc_T_powerControlLoopToUse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24139   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
24140                                      2, NULL, FALSE, 0, NULL);
24141
24142   return offset;
24143 }
24144
24145
24146 static const value_string nr_rrc_T_transformPrecoder_vals[] = {
24147   {   0, "enabled" },
24148   {   1, "disabled" },
24149   { 0, NULL }
24150 };
24151
24152
24153 static int
24154 dissect_nr_rrc_T_transformPrecoder(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24155   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
24156                                      2, NULL, FALSE, 0, NULL);
24157
24158   return offset;
24159 }
24160
24161
24162 static const value_string nr_rrc_T_repK_vals[] = {
24163   {   0, "n1" },
24164   {   1, "n2" },
24165   {   2, "n4" },
24166   {   3, "n8" },
24167   { 0, NULL }
24168 };
24169
24170
24171 static int
24172 dissect_nr_rrc_T_repK(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24173   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
24174                                      4, NULL, FALSE, 0, NULL);
24175
24176   return offset;
24177 }
24178
24179
24180 static const value_string nr_rrc_T_repK_RV_vals[] = {
24181   {   0, "s1-0231" },
24182   {   1, "s2-0303" },
24183   {   2, "s3-0000" },
24184   { 0, NULL }
24185 };
24186
24187
24188 static int
24189 dissect_nr_rrc_T_repK_RV(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24190   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
24191                                      3, NULL, FALSE, 0, NULL);
24192
24193   return offset;
24194 }
24195
24196
24197 static const value_string nr_rrc_T_periodicity_vals[] = {
24198   {   0, "sym2" },
24199   {   1, "sym7" },
24200   {   2, "sym1x14" },
24201   {   3, "sym2x14" },
24202   {   4, "sym4x14" },
24203   {   5, "sym5x14" },
24204   {   6, "sym8x14" },
24205   {   7, "sym10x14" },
24206   {   8, "sym16x14" },
24207   {   9, "sym20x14" },
24208   {  10, "sym32x14" },
24209   {  11, "sym40x14" },
24210   {  12, "sym64x14" },
24211   {  13, "sym80x14" },
24212   {  14, "sym128x14" },
24213   {  15, "sym160x14" },
24214   {  16, "sym256x14" },
24215   {  17, "sym320x14" },
24216   {  18, "sym512x14" },
24217   {  19, "sym640x14" },
24218   {  20, "sym1024x14" },
24219   {  21, "sym1280x14" },
24220   {  22, "sym2560x14" },
24221   {  23, "sym5120x14" },
24222   {  24, "sym6" },
24223   {  25, "sym1x12" },
24224   {  26, "sym2x12" },
24225   {  27, "sym4x12" },
24226   {  28, "sym5x12" },
24227   {  29, "sym8x12" },
24228   {  30, "sym10x12" },
24229   {  31, "sym16x12" },
24230   {  32, "sym20x12" },
24231   {  33, "sym32x12" },
24232   {  34, "sym40x12" },
24233   {  35, "sym64x12" },
24234   {  36, "sym80x12" },
24235   {  37, "sym128x12" },
24236   {  38, "sym160x12" },
24237   {  39, "sym256x12" },
24238   {  40, "sym320x12" },
24239   {  41, "sym512x12" },
24240   {  42, "sym640x12" },
24241   {  43, "sym1280x12" },
24242   {  44, "sym2560x12" },
24243   { 0, NULL }
24244 };
24245
24246 static value_string_ext nr_rrc_T_periodicity_vals_ext = VALUE_STRING_EXT_INIT(nr_rrc_T_periodicity_vals);
24247
24248
24249 static int
24250 dissect_nr_rrc_T_periodicity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24251   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
24252                                      45, NULL, FALSE, 0, NULL);
24253
24254   return offset;
24255 }
24256
24257
24258
24259 static int
24260 dissect_nr_rrc_BIT_STRING_SIZE_18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24261   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
24262                                      18, 18, FALSE, NULL, NULL);
24263
24264   return offset;
24265 }
24266
24267
24268
24269 static int
24270 dissect_nr_rrc_INTEGER_0_maxNrofPUSCH_PathlossReferenceRSs_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24271   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
24272                                                             0U, maxNrofPUSCH_PathlossReferenceRSs_1, NULL, FALSE);
24273
24274   return offset;
24275 }
24276
24277
24278 static const per_sequence_t T_rrc_ConfiguredUplinkGrant_sequence[] = {
24279   { &hf_nr_rrc_timeDomainOffset, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_5119 },
24280   { &hf_nr_rrc_timeDomainAllocation, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_15 },
24281   { &hf_nr_rrc_frequencyDomainAllocation, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BIT_STRING_SIZE_18 },
24282   { &hf_nr_rrc_antennaPort  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_31 },
24283   { &hf_nr_rrc_dmrs_SeqInitialization, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_1 },
24284   { &hf_nr_rrc_precodingAndNumberOfLayers, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_63 },
24285   { &hf_nr_rrc_srs_ResourceIndicator, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_15 },
24286   { &hf_nr_rrc_mcsAndTBS    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_31 },
24287   { &hf_nr_rrc_frequencyHoppingOffset, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_maxNrofPhysicalResourceBlocks_1 },
24288   { &hf_nr_rrc_pathlossReferenceIndex, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_maxNrofPUSCH_PathlossReferenceRSs_1 },
24289   { NULL, 0, 0, NULL }
24290 };
24291
24292 static int
24293 dissect_nr_rrc_T_rrc_ConfiguredUplinkGrant(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24294   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
24295                                    ett_nr_rrc_T_rrc_ConfiguredUplinkGrant, T_rrc_ConfiguredUplinkGrant_sequence);
24296
24297   return offset;
24298 }
24299
24300
24301 static const per_sequence_t ConfiguredGrantConfig_sequence[] = {
24302   { &hf_nr_rrc_frequencyHopping, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_frequencyHopping },
24303   { &hf_nr_rrc_cg_DMRS_Configuration, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_DMRS_UplinkConfig },
24304   { &hf_nr_rrc_mcs_Table    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_mcs_Table },
24305   { &hf_nr_rrc_mcs_TableTransformPrecoder, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_mcs_TableTransformPrecoder },
24306   { &hf_nr_rrc_uci_OnPUSCH  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_uci_OnPUSCH },
24307   { &hf_nr_rrc_resourceAllocation, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_resourceAllocation },
24308   { &hf_nr_rrc_rbg_Size     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_rbg_Size },
24309   { &hf_nr_rrc_powerControlLoopToUse, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_powerControlLoopToUse },
24310   { &hf_nr_rrc_p0_PUSCH_Alpha, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_P0_PUSCH_AlphaSetId },
24311   { &hf_nr_rrc_transformPrecoder, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_transformPrecoder },
24312   { &hf_nr_rrc_nrofHARQ_Processes, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_16 },
24313   { &hf_nr_rrc_repK         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_repK },
24314   { &hf_nr_rrc_repK_RV      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_repK_RV },
24315   { &hf_nr_rrc_periodicity  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_periodicity },
24316   { &hf_nr_rrc_configuredGrantTimer, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_64 },
24317   { &hf_nr_rrc_rrc_ConfiguredUplinkGrant, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_rrc_ConfiguredUplinkGrant },
24318   { NULL, 0, 0, NULL }
24319 };
24320
24321 static int
24322 dissect_nr_rrc_ConfiguredGrantConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24323   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
24324                                    ett_nr_rrc_ConfiguredGrantConfig, ConfiguredGrantConfig_sequence);
24325
24326   return offset;
24327 }
24328
24329
24330 static const value_string nr_rrc_T_configuredGrantConfig_vals[] = {
24331   {   0, "release" },
24332   {   1, "setup" },
24333   { 0, NULL }
24334 };
24335
24336 static const per_choice_t T_configuredGrantConfig_choice[] = {
24337   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
24338   {   1, &hf_nr_rrc_setup_13     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_ConfiguredGrantConfig },
24339   { 0, NULL, 0, NULL }
24340 };
24341
24342 static int
24343 dissect_nr_rrc_T_configuredGrantConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24344   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
24345                                  ett_nr_rrc_T_configuredGrantConfig, T_configuredGrantConfig_choice,
24346                                  NULL);
24347
24348   return offset;
24349 }
24350
24351
24352
24353 static int
24354 dissect_nr_rrc_SRS_ResourceSetId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24355   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
24356                                                             0U, maxNrofSRS_ResourceSets_1, NULL, FALSE);
24357
24358   return offset;
24359 }
24360
24361
24362 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofSRS_ResourceSets_OF_SRS_ResourceSetId_sequence_of[1] = {
24363   { &hf_nr_rrc_srs_ResourceSetToReleaseList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SRS_ResourceSetId },
24364 };
24365
24366 static int
24367 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRS_ResourceSets_OF_SRS_ResourceSetId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24368   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
24369                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRS_ResourceSets_OF_SRS_ResourceSetId, SEQUENCE_SIZE_1_maxNrofSRS_ResourceSets_OF_SRS_ResourceSetId_sequence_of,
24370                                                   1, maxNrofSRS_ResourceSets, FALSE);
24371
24372   return offset;
24373 }
24374
24375
24376 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofSRS_ResourcesPerSet_OF_SRS_ResourceId_sequence_of[1] = {
24377   { &hf_nr_rrc_srs_ResourceIdList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SRS_ResourceId },
24378 };
24379
24380 static int
24381 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRS_ResourcesPerSet_OF_SRS_ResourceId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24382   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
24383                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRS_ResourcesPerSet_OF_SRS_ResourceId, SEQUENCE_SIZE_1_maxNrofSRS_ResourcesPerSet_OF_SRS_ResourceId_sequence_of,
24384                                                   1, maxNrofSRS_ResourcesPerSet, FALSE);
24385
24386   return offset;
24387 }
24388
24389
24390
24391 static int
24392 dissect_nr_rrc_INTEGER_1_maxNrofSRS_TriggerStates_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24393   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
24394                                                             1U, maxNrofSRS_TriggerStates_1, NULL, FALSE);
24395
24396   return offset;
24397 }
24398
24399
24400
24401 static int
24402 dissect_nr_rrc_INTEGER_1_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24403   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
24404                                                             1U, 32U, NULL, FALSE);
24405
24406   return offset;
24407 }
24408
24409
24410 static const per_sequence_t T_aperiodicSRS_ResourceTriggerList_v1530_sequence_of[1] = {
24411   { &hf_nr_rrc_aperiodicSRS_ResourceTriggerList_v1530_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_maxNrofSRS_TriggerStates_1 },
24412 };
24413
24414 static int
24415 dissect_nr_rrc_T_aperiodicSRS_ResourceTriggerList_v1530(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24416   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
24417                                                   ett_nr_rrc_T_aperiodicSRS_ResourceTriggerList_v1530, T_aperiodicSRS_ResourceTriggerList_v1530_sequence_of,
24418                                                   1, maxNrofSRS_TriggerStates_2, FALSE);
24419
24420   return offset;
24421 }
24422
24423
24424 static const per_sequence_t T_eag_1_sequence[] = {
24425   { &hf_nr_rrc_aperiodicSRS_ResourceTriggerList_v1530, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_aperiodicSRS_ResourceTriggerList_v1530 },
24426   { NULL, 0, 0, NULL }
24427 };
24428
24429 static int
24430 dissect_nr_rrc_T_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24431   offset = dissect_per_sequence_eag(tvb, offset, actx, tree, T_eag_1_sequence);
24432
24433   return offset;
24434 }
24435
24436
24437 static const per_sequence_t T_aperiodic_01_sequence[] = {
24438   { &hf_nr_rrc_aperiodicSRS_ResourceTrigger, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_maxNrofSRS_TriggerStates_1 },
24439   { &hf_nr_rrc_csi_RS_01    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_NZP_CSI_RS_ResourceId },
24440   { &hf_nr_rrc_slotOffset   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_32 },
24441   { &dummy_hf_nr_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_eag_1 },
24442   { NULL, 0, 0, NULL }
24443 };
24444
24445 static int
24446 dissect_nr_rrc_T_aperiodic_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24447   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
24448                                    ett_nr_rrc_T_aperiodic_01, T_aperiodic_01_sequence);
24449
24450   return offset;
24451 }
24452
24453
24454 static const per_sequence_t T_semi_persistent_sequence[] = {
24455   { &hf_nr_rrc_associatedCSI_RS, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_NZP_CSI_RS_ResourceId },
24456   { NULL, 0, 0, NULL }
24457 };
24458
24459 static int
24460 dissect_nr_rrc_T_semi_persistent(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24461   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
24462                                    ett_nr_rrc_T_semi_persistent, T_semi_persistent_sequence);
24463
24464   return offset;
24465 }
24466
24467
24468 static const per_sequence_t T_periodic_01_sequence[] = {
24469   { &hf_nr_rrc_associatedCSI_RS, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_NZP_CSI_RS_ResourceId },
24470   { NULL, 0, 0, NULL }
24471 };
24472
24473 static int
24474 dissect_nr_rrc_T_periodic_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24475   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
24476                                    ett_nr_rrc_T_periodic_01, T_periodic_01_sequence);
24477
24478   return offset;
24479 }
24480
24481
24482 static const value_string nr_rrc_T_resourceType_01_vals[] = {
24483   {   0, "aperiodic" },
24484   {   1, "semi-persistent" },
24485   {   2, "periodic" },
24486   { 0, NULL }
24487 };
24488
24489 static const per_choice_t T_resourceType_01_choice[] = {
24490   {   0, &hf_nr_rrc_aperiodic_01 , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_aperiodic_01 },
24491   {   1, &hf_nr_rrc_semi_persistent, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_semi_persistent },
24492   {   2, &hf_nr_rrc_periodic_01  , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_periodic_01 },
24493   { 0, NULL, 0, NULL }
24494 };
24495
24496 static int
24497 dissect_nr_rrc_T_resourceType_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24498   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
24499                                  ett_nr_rrc_T_resourceType_01, T_resourceType_01_choice,
24500                                  NULL);
24501
24502   return offset;
24503 }
24504
24505
24506 static const value_string nr_rrc_T_usage_vals[] = {
24507   {   0, "beamManagement" },
24508   {   1, "codebook" },
24509   {   2, "nonCodebook" },
24510   {   3, "antennaSwitching" },
24511   { 0, NULL }
24512 };
24513
24514
24515 static int
24516 dissect_nr_rrc_T_usage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24517   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
24518                                      4, NULL, FALSE, 0, NULL);
24519
24520   return offset;
24521 }
24522
24523
24524 static const value_string nr_rrc_T_pathlossReferenceRS_vals[] = {
24525   {   0, "ssb-Index" },
24526   {   1, "csi-RS-Index" },
24527   { 0, NULL }
24528 };
24529
24530 static const per_choice_t T_pathlossReferenceRS_choice[] = {
24531   {   0, &hf_nr_rrc_ssb_Index    , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SSB_Index },
24532   {   1, &hf_nr_rrc_csi_RS_Index_01, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NZP_CSI_RS_ResourceId },
24533   { 0, NULL, 0, NULL }
24534 };
24535
24536 static int
24537 dissect_nr_rrc_T_pathlossReferenceRS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24538   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
24539                                  ett_nr_rrc_T_pathlossReferenceRS, T_pathlossReferenceRS_choice,
24540                                  NULL);
24541
24542   return offset;
24543 }
24544
24545
24546 static const value_string nr_rrc_T_srs_PowerControlAdjustmentStates_vals[] = {
24547   {   0, "sameAsFci2" },
24548   {   1, "separateClosedLoop" },
24549   { 0, NULL }
24550 };
24551
24552
24553 static int
24554 dissect_nr_rrc_T_srs_PowerControlAdjustmentStates(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24555   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
24556                                      2, NULL, FALSE, 0, NULL);
24557
24558   return offset;
24559 }
24560
24561
24562 static const per_sequence_t SRS_ResourceSet_sequence[] = {
24563   { &hf_nr_rrc_srs_ResourceSetId, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SRS_ResourceSetId },
24564   { &hf_nr_rrc_srs_ResourceIdList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRS_ResourcesPerSet_OF_SRS_ResourceId },
24565   { &hf_nr_rrc_resourceType_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_resourceType_01 },
24566   { &hf_nr_rrc_usage        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_usage },
24567   { &hf_nr_rrc_alpha        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_Alpha },
24568   { &hf_nr_rrc_p0_01        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_M202_24 },
24569   { &hf_nr_rrc_pathlossReferenceRS, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pathlossReferenceRS },
24570   { &hf_nr_rrc_srs_PowerControlAdjustmentStates, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_srs_PowerControlAdjustmentStates },
24571   { NULL, 0, 0, NULL }
24572 };
24573
24574 static int
24575 dissect_nr_rrc_SRS_ResourceSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24576   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
24577                                    ett_nr_rrc_SRS_ResourceSet, SRS_ResourceSet_sequence);
24578
24579   return offset;
24580 }
24581
24582
24583 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofSRS_ResourceSets_OF_SRS_ResourceSet_sequence_of[1] = {
24584   { &hf_nr_rrc_srs_ResourceSetToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SRS_ResourceSet },
24585 };
24586
24587 static int
24588 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRS_ResourceSets_OF_SRS_ResourceSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24589   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
24590                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRS_ResourceSets_OF_SRS_ResourceSet, SEQUENCE_SIZE_1_maxNrofSRS_ResourceSets_OF_SRS_ResourceSet_sequence_of,
24591                                                   1, maxNrofSRS_ResourceSets, FALSE);
24592
24593   return offset;
24594 }
24595
24596
24597 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofSRS_Resources_OF_SRS_ResourceId_sequence_of[1] = {
24598   { &hf_nr_rrc_srs_ResourceToReleaseList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SRS_ResourceId },
24599 };
24600
24601 static int
24602 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRS_Resources_OF_SRS_ResourceId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24603   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
24604                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRS_Resources_OF_SRS_ResourceId, SEQUENCE_SIZE_1_maxNrofSRS_Resources_OF_SRS_ResourceId_sequence_of,
24605                                                   1, maxNrofSRS_Resources, FALSE);
24606
24607   return offset;
24608 }
24609
24610
24611 static const value_string nr_rrc_T_nrofSRS_Ports_vals[] = {
24612   {   0, "port1" },
24613   {   1, "ports2" },
24614   {   2, "ports4" },
24615   { 0, NULL }
24616 };
24617
24618
24619 static int
24620 dissect_nr_rrc_T_nrofSRS_Ports(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24621   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
24622                                      3, NULL, FALSE, 0, NULL);
24623
24624   return offset;
24625 }
24626
24627
24628 static const value_string nr_rrc_T_ptrs_PortIndex_vals[] = {
24629   {   0, "n0" },
24630   {   1, "n1" },
24631   { 0, NULL }
24632 };
24633
24634
24635 static int
24636 dissect_nr_rrc_T_ptrs_PortIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24637   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
24638                                      2, NULL, FALSE, 0, NULL);
24639
24640   return offset;
24641 }
24642
24643
24644 static const per_sequence_t T_n2_sequence[] = {
24645   { &hf_nr_rrc_combOffset_n2, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_1 },
24646   { &hf_nr_rrc_cyclicShift_n2, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_7 },
24647   { NULL, 0, 0, NULL }
24648 };
24649
24650 static int
24651 dissect_nr_rrc_T_n2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24652   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
24653                                    ett_nr_rrc_T_n2, T_n2_sequence);
24654
24655   return offset;
24656 }
24657
24658
24659 static const per_sequence_t T_n4_sequence[] = {
24660   { &hf_nr_rrc_combOffset_n4, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_3 },
24661   { &hf_nr_rrc_cyclicShift_n4, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_11 },
24662   { NULL, 0, 0, NULL }
24663 };
24664
24665 static int
24666 dissect_nr_rrc_T_n4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24667   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
24668                                    ett_nr_rrc_T_n4, T_n4_sequence);
24669
24670   return offset;
24671 }
24672
24673
24674 static const value_string nr_rrc_T_transmissionComb_vals[] = {
24675   {   0, "n2" },
24676   {   1, "n4" },
24677   { 0, NULL }
24678 };
24679
24680 static const per_choice_t T_transmissionComb_choice[] = {
24681   {   0, &hf_nr_rrc_n2_01        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_n2 },
24682   {   1, &hf_nr_rrc_n4_01        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_n4 },
24683   { 0, NULL, 0, NULL }
24684 };
24685
24686 static int
24687 dissect_nr_rrc_T_transmissionComb(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24688   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
24689                                  ett_nr_rrc_T_transmissionComb, T_transmissionComb_choice,
24690                                  NULL);
24691
24692   return offset;
24693 }
24694
24695
24696
24697 static int
24698 dissect_nr_rrc_INTEGER_0_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24699   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
24700                                                             0U, 5U, NULL, FALSE);
24701
24702   return offset;
24703 }
24704
24705
24706 static const value_string nr_rrc_T_nrofSymbols_vals[] = {
24707   {   0, "n1" },
24708   {   1, "n2" },
24709   {   2, "n4" },
24710   { 0, NULL }
24711 };
24712
24713
24714 static int
24715 dissect_nr_rrc_T_nrofSymbols(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24716   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
24717                                      3, NULL, FALSE, 0, NULL);
24718
24719   return offset;
24720 }
24721
24722
24723 static const value_string nr_rrc_T_repetitionFactor_vals[] = {
24724   {   0, "n1" },
24725   {   1, "n2" },
24726   {   2, "n4" },
24727   { 0, NULL }
24728 };
24729
24730
24731 static int
24732 dissect_nr_rrc_T_repetitionFactor(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24733   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
24734                                      3, NULL, FALSE, 0, NULL);
24735
24736   return offset;
24737 }
24738
24739
24740 static const per_sequence_t T_resourceMapping_sequence[] = {
24741   { &hf_nr_rrc_startPosition, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_5 },
24742   { &hf_nr_rrc_nrofSymbols_02, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_nrofSymbols },
24743   { &hf_nr_rrc_repetitionFactor, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_repetitionFactor },
24744   { NULL, 0, 0, NULL }
24745 };
24746
24747 static int
24748 dissect_nr_rrc_T_resourceMapping(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24749   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
24750                                    ett_nr_rrc_T_resourceMapping, T_resourceMapping_sequence);
24751
24752   return offset;
24753 }
24754
24755
24756
24757 static int
24758 dissect_nr_rrc_INTEGER_0_67(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24759   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
24760                                                             0U, 67U, NULL, FALSE);
24761
24762   return offset;
24763 }
24764
24765
24766
24767 static int
24768 dissect_nr_rrc_INTEGER_0_268(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24769   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
24770                                                             0U, 268U, NULL, FALSE);
24771
24772   return offset;
24773 }
24774
24775
24776 static const per_sequence_t T_freqHopping_sequence[] = {
24777   { &hf_nr_rrc_c_SRS        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_63 },
24778   { &hf_nr_rrc_b_SRS        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_3 },
24779   { &hf_nr_rrc_b_hop        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_3 },
24780   { NULL, 0, 0, NULL }
24781 };
24782
24783 static int
24784 dissect_nr_rrc_T_freqHopping(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24785   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
24786                                    ett_nr_rrc_T_freqHopping, T_freqHopping_sequence);
24787
24788   return offset;
24789 }
24790
24791
24792 static const value_string nr_rrc_T_groupOrSequenceHopping_vals[] = {
24793   {   0, "neither" },
24794   {   1, "groupHopping" },
24795   {   2, "sequenceHopping" },
24796   { 0, NULL }
24797 };
24798
24799
24800 static int
24801 dissect_nr_rrc_T_groupOrSequenceHopping(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24802   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
24803                                      3, NULL, FALSE, 0, NULL);
24804
24805   return offset;
24806 }
24807
24808
24809 static const per_sequence_t T_aperiodic_02_sequence[] = {
24810   { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
24811 };
24812
24813 static int
24814 dissect_nr_rrc_T_aperiodic_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24815   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
24816                                    ett_nr_rrc_T_aperiodic_02, T_aperiodic_02_sequence);
24817
24818   return offset;
24819 }
24820
24821
24822 static const value_string nr_rrc_SRS_PeriodicityAndOffset_vals[] = {
24823   {   0, "sl1" },
24824   {   1, "sl2" },
24825   {   2, "sl4" },
24826   {   3, "sl5" },
24827   {   4, "sl8" },
24828   {   5, "sl10" },
24829   {   6, "sl16" },
24830   {   7, "sl20" },
24831   {   8, "sl32" },
24832   {   9, "sl40" },
24833   {  10, "sl64" },
24834   {  11, "sl80" },
24835   {  12, "sl160" },
24836   {  13, "sl320" },
24837   {  14, "sl640" },
24838   {  15, "sl1280" },
24839   {  16, "sl2560" },
24840   { 0, NULL }
24841 };
24842
24843 static value_string_ext nr_rrc_SRS_PeriodicityAndOffset_vals_ext = VALUE_STRING_EXT_INIT(nr_rrc_SRS_PeriodicityAndOffset_vals);
24844
24845 static const per_choice_t SRS_PeriodicityAndOffset_choice[] = {
24846   {   0, &hf_nr_rrc_sl1          , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
24847   {   1, &hf_nr_rrc_sl2          , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_1 },
24848   {   2, &hf_nr_rrc_sl4          , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_3 },
24849   {   3, &hf_nr_rrc_sl5          , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_4 },
24850   {   4, &hf_nr_rrc_sl8          , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_7 },
24851   {   5, &hf_nr_rrc_sl10         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_9 },
24852   {   6, &hf_nr_rrc_sl16         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_15 },
24853   {   7, &hf_nr_rrc_sl20         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_19 },
24854   {   8, &hf_nr_rrc_sl32         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_31 },
24855   {   9, &hf_nr_rrc_sl40         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_39 },
24856   {  10, &hf_nr_rrc_sl64         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_63 },
24857   {  11, &hf_nr_rrc_sl80         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_79 },
24858   {  12, &hf_nr_rrc_sl160        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_159 },
24859   {  13, &hf_nr_rrc_sl320        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_319 },
24860   {  14, &hf_nr_rrc_sl640        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_639 },
24861   {  15, &hf_nr_rrc_sl1280       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_1279 },
24862   {  16, &hf_nr_rrc_sl2560       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_2559 },
24863   { 0, NULL, 0, NULL }
24864 };
24865
24866 static int
24867 dissect_nr_rrc_SRS_PeriodicityAndOffset(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24868   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
24869                                  ett_nr_rrc_SRS_PeriodicityAndOffset, SRS_PeriodicityAndOffset_choice,
24870                                  NULL);
24871
24872   return offset;
24873 }
24874
24875
24876 static const per_sequence_t T_semi_persistent_01_sequence[] = {
24877   { &hf_nr_rrc_periodicityAndOffset_sp, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SRS_PeriodicityAndOffset },
24878   { NULL, 0, 0, NULL }
24879 };
24880
24881 static int
24882 dissect_nr_rrc_T_semi_persistent_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24883   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
24884                                    ett_nr_rrc_T_semi_persistent_01, T_semi_persistent_01_sequence);
24885
24886   return offset;
24887 }
24888
24889
24890 static const per_sequence_t T_periodic_02_sequence[] = {
24891   { &hf_nr_rrc_periodicityAndOffset_p, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SRS_PeriodicityAndOffset },
24892   { NULL, 0, 0, NULL }
24893 };
24894
24895 static int
24896 dissect_nr_rrc_T_periodic_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24897   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
24898                                    ett_nr_rrc_T_periodic_02, T_periodic_02_sequence);
24899
24900   return offset;
24901 }
24902
24903
24904 static const value_string nr_rrc_T_resourceType_02_vals[] = {
24905   {   0, "aperiodic" },
24906   {   1, "semi-persistent" },
24907   {   2, "periodic" },
24908   { 0, NULL }
24909 };
24910
24911 static const per_choice_t T_resourceType_02_choice[] = {
24912   {   0, &hf_nr_rrc_aperiodic_02 , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_aperiodic_02 },
24913   {   1, &hf_nr_rrc_semi_persistent_01, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_semi_persistent_01 },
24914   {   2, &hf_nr_rrc_periodic_02  , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_periodic_02 },
24915   { 0, NULL, 0, NULL }
24916 };
24917
24918 static int
24919 dissect_nr_rrc_T_resourceType_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24920   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
24921                                  ett_nr_rrc_T_resourceType_02, T_resourceType_02_choice,
24922                                  NULL);
24923
24924   return offset;
24925 }
24926
24927
24928 static const per_sequence_t T_srs_01_sequence[] = {
24929   { &hf_nr_rrc_resourceId   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SRS_ResourceId },
24930   { &hf_nr_rrc_uplinkBWP    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BWP_Id },
24931   { NULL, 0, 0, NULL }
24932 };
24933
24934 static int
24935 dissect_nr_rrc_T_srs_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24936   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
24937                                    ett_nr_rrc_T_srs_01, T_srs_01_sequence);
24938
24939   return offset;
24940 }
24941
24942
24943 static const value_string nr_rrc_T_referenceSignal_03_vals[] = {
24944   {   0, "ssb-Index" },
24945   {   1, "csi-RS-Index" },
24946   {   2, "srs" },
24947   { 0, NULL }
24948 };
24949
24950 static const per_choice_t T_referenceSignal_03_choice[] = {
24951   {   0, &hf_nr_rrc_ssb_Index    , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SSB_Index },
24952   {   1, &hf_nr_rrc_csi_RS_Index_01, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NZP_CSI_RS_ResourceId },
24953   {   2, &hf_nr_rrc_srs_01       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_srs_01 },
24954   { 0, NULL, 0, NULL }
24955 };
24956
24957 static int
24958 dissect_nr_rrc_T_referenceSignal_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24959   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
24960                                  ett_nr_rrc_T_referenceSignal_03, T_referenceSignal_03_choice,
24961                                  NULL);
24962
24963   return offset;
24964 }
24965
24966
24967 static const per_sequence_t SRS_SpatialRelationInfo_sequence[] = {
24968   { &hf_nr_rrc_servingCellId, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_ServCellIndex },
24969   { &hf_nr_rrc_referenceSignal_03, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_referenceSignal_03 },
24970   { NULL, 0, 0, NULL }
24971 };
24972
24973 static int
24974 dissect_nr_rrc_SRS_SpatialRelationInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
24975   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
24976                                    ett_nr_rrc_SRS_SpatialRelationInfo, SRS_SpatialRelationInfo_sequence);
24977
24978   return offset;
24979 }
24980
24981
24982 static const per_sequence_t SRS_Resource_sequence[] = {
24983   { &hf_nr_rrc_srs_ResourceId, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SRS_ResourceId },
24984   { &hf_nr_rrc_nrofSRS_Ports, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_nrofSRS_Ports },
24985   { &hf_nr_rrc_ptrs_PortIndex, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_ptrs_PortIndex },
24986   { &hf_nr_rrc_transmissionComb, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_transmissionComb },
24987   { &hf_nr_rrc_resourceMapping_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_resourceMapping },
24988   { &hf_nr_rrc_freqDomainPosition, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_67 },
24989   { &hf_nr_rrc_freqDomainShift, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_268 },
24990   { &hf_nr_rrc_freqHopping  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_freqHopping },
24991   { &hf_nr_rrc_groupOrSequenceHopping, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_groupOrSequenceHopping },
24992   { &hf_nr_rrc_resourceType_02, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_resourceType_02 },
24993   { &hf_nr_rrc_sequenceId   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_1023 },
24994   { &hf_nr_rrc_spatialRelationInfo, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SRS_SpatialRelationInfo },
24995   { NULL, 0, 0, NULL }
24996 };
24997
24998 static int
24999 dissect_nr_rrc_SRS_Resource(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25000   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
25001                                    ett_nr_rrc_SRS_Resource, SRS_Resource_sequence);
25002
25003   return offset;
25004 }
25005
25006
25007 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofSRS_Resources_OF_SRS_Resource_sequence_of[1] = {
25008   { &hf_nr_rrc_srs_ResourceToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SRS_Resource },
25009 };
25010
25011 static int
25012 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRS_Resources_OF_SRS_Resource(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25013   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
25014                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRS_Resources_OF_SRS_Resource, SEQUENCE_SIZE_1_maxNrofSRS_Resources_OF_SRS_Resource_sequence_of,
25015                                                   1, maxNrofSRS_Resources, FALSE);
25016
25017   return offset;
25018 }
25019
25020
25021 static const value_string nr_rrc_T_tpc_Accumulation_01_vals[] = {
25022   {   0, "disabled" },
25023   { 0, NULL }
25024 };
25025
25026
25027 static int
25028 dissect_nr_rrc_T_tpc_Accumulation_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25029   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
25030                                      1, NULL, FALSE, 0, NULL);
25031
25032   return offset;
25033 }
25034
25035
25036 static const per_sequence_t SRS_Config_sequence[] = {
25037   { &hf_nr_rrc_srs_ResourceSetToReleaseList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRS_ResourceSets_OF_SRS_ResourceSetId },
25038   { &hf_nr_rrc_srs_ResourceSetToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRS_ResourceSets_OF_SRS_ResourceSet },
25039   { &hf_nr_rrc_srs_ResourceToReleaseList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRS_Resources_OF_SRS_ResourceId },
25040   { &hf_nr_rrc_srs_ResourceToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRS_Resources_OF_SRS_Resource },
25041   { &hf_nr_rrc_tpc_Accumulation_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_tpc_Accumulation_01 },
25042   { NULL, 0, 0, NULL }
25043 };
25044
25045 static int
25046 dissect_nr_rrc_SRS_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25047   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
25048                                    ett_nr_rrc_SRS_Config, SRS_Config_sequence);
25049
25050   return offset;
25051 }
25052
25053
25054 static const value_string nr_rrc_T_srs_Config_vals[] = {
25055   {   0, "release" },
25056   {   1, "setup" },
25057   { 0, NULL }
25058 };
25059
25060 static const per_choice_t T_srs_Config_choice[] = {
25061   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
25062   {   1, &hf_nr_rrc_setup_14     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SRS_Config },
25063   { 0, NULL, 0, NULL }
25064 };
25065
25066 static int
25067 dissect_nr_rrc_T_srs_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25068   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
25069                                  ett_nr_rrc_T_srs_Config, T_srs_Config_choice,
25070                                  NULL);
25071
25072   return offset;
25073 }
25074
25075
25076 static const value_string nr_rrc_T_beamFailureRecoveryConfig_vals[] = {
25077   {   0, "release" },
25078   {   1, "setup" },
25079   { 0, NULL }
25080 };
25081
25082 static const per_choice_t T_beamFailureRecoveryConfig_choice[] = {
25083   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
25084   {   1, &hf_nr_rrc_setup_15     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BeamFailureRecoveryConfig },
25085   { 0, NULL, 0, NULL }
25086 };
25087
25088 static int
25089 dissect_nr_rrc_T_beamFailureRecoveryConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25090   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
25091                                  ett_nr_rrc_T_beamFailureRecoveryConfig, T_beamFailureRecoveryConfig_choice,
25092                                  NULL);
25093
25094   return offset;
25095 }
25096
25097
25098 static const per_sequence_t BWP_UplinkDedicated_sequence[] = {
25099   { &hf_nr_rrc_pucch_Config , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pucch_Config },
25100   { &hf_nr_rrc_pusch_Config , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pusch_Config },
25101   { &hf_nr_rrc_configuredGrantConfig, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_configuredGrantConfig },
25102   { &hf_nr_rrc_srs_Config   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_srs_Config },
25103   { &hf_nr_rrc_beamFailureRecoveryConfig, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_beamFailureRecoveryConfig },
25104   { NULL, 0, 0, NULL }
25105 };
25106
25107 static int
25108 dissect_nr_rrc_BWP_UplinkDedicated(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25109   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
25110                                    ett_nr_rrc_BWP_UplinkDedicated, BWP_UplinkDedicated_sequence);
25111
25112   return offset;
25113 }
25114
25115
25116 static const per_sequence_t BWP_Uplink_sequence[] = {
25117   { &hf_nr_rrc_bwp_Id       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BWP_Id },
25118   { &hf_nr_rrc_bwp_Common_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_BWP_UplinkCommon },
25119   { &hf_nr_rrc_bwp_Dedicated_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_BWP_UplinkDedicated },
25120   { NULL, 0, 0, NULL }
25121 };
25122
25123 static int
25124 dissect_nr_rrc_BWP_Uplink(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25125   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
25126                                    ett_nr_rrc_BWP_Uplink, BWP_Uplink_sequence);
25127
25128   return offset;
25129 }
25130
25131
25132 static const value_string nr_rrc_T_servedRadioBearer_vals[] = {
25133   {   0, "srb-Identity" },
25134   {   1, "drb-Identity" },
25135   { 0, NULL }
25136 };
25137
25138 static const per_choice_t T_servedRadioBearer_choice[] = {
25139   {   0, &hf_nr_rrc_srb_Identity , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SRB_Identity },
25140   {   1, &hf_nr_rrc_drb_Identity , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_DRB_Identity },
25141   { 0, NULL, 0, NULL }
25142 };
25143
25144 static int
25145 dissect_nr_rrc_T_servedRadioBearer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25146   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
25147                                  ett_nr_rrc_T_servedRadioBearer, T_servedRadioBearer_choice,
25148                                  NULL);
25149
25150   return offset;
25151 }
25152
25153
25154 static const value_string nr_rrc_T_reestablishRLC_vals[] = {
25155   {   0, "true" },
25156   { 0, NULL }
25157 };
25158
25159
25160 static int
25161 dissect_nr_rrc_T_reestablishRLC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25162   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
25163                                      1, NULL, FALSE, 0, NULL);
25164
25165   return offset;
25166 }
25167
25168
25169 static const value_string nr_rrc_SN_FieldLengthAM_vals[] = {
25170   {   0, "size12" },
25171   {   1, "size18" },
25172   { 0, NULL }
25173 };
25174
25175
25176 static int
25177 dissect_nr_rrc_SN_FieldLengthAM(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25178   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
25179                                      2, NULL, FALSE, 0, NULL);
25180
25181   return offset;
25182 }
25183
25184
25185 static const value_string nr_rrc_T_PollRetransmit_vals[] = {
25186   {   0, "ms5" },
25187   {   1, "ms10" },
25188   {   2, "ms15" },
25189   {   3, "ms20" },
25190   {   4, "ms25" },
25191   {   5, "ms30" },
25192   {   6, "ms35" },
25193   {   7, "ms40" },
25194   {   8, "ms45" },
25195   {   9, "ms50" },
25196   {  10, "ms55" },
25197   {  11, "ms60" },
25198   {  12, "ms65" },
25199   {  13, "ms70" },
25200   {  14, "ms75" },
25201   {  15, "ms80" },
25202   {  16, "ms85" },
25203   {  17, "ms90" },
25204   {  18, "ms95" },
25205   {  19, "ms100" },
25206   {  20, "ms105" },
25207   {  21, "ms110" },
25208   {  22, "ms115" },
25209   {  23, "ms120" },
25210   {  24, "ms125" },
25211   {  25, "ms130" },
25212   {  26, "ms135" },
25213   {  27, "ms140" },
25214   {  28, "ms145" },
25215   {  29, "ms150" },
25216   {  30, "ms155" },
25217   {  31, "ms160" },
25218   {  32, "ms165" },
25219   {  33, "ms170" },
25220   {  34, "ms175" },
25221   {  35, "ms180" },
25222   {  36, "ms185" },
25223   {  37, "ms190" },
25224   {  38, "ms195" },
25225   {  39, "ms200" },
25226   {  40, "ms205" },
25227   {  41, "ms210" },
25228   {  42, "ms215" },
25229   {  43, "ms220" },
25230   {  44, "ms225" },
25231   {  45, "ms230" },
25232   {  46, "ms235" },
25233   {  47, "ms240" },
25234   {  48, "ms245" },
25235   {  49, "ms250" },
25236   {  50, "ms300" },
25237   {  51, "ms350" },
25238   {  52, "ms400" },
25239   {  53, "ms450" },
25240   {  54, "ms500" },
25241   {  55, "ms800" },
25242   {  56, "ms1000" },
25243   {  57, "ms2000" },
25244   {  58, "ms4000" },
25245   {  59, "spare5" },
25246   {  60, "spare4" },
25247   {  61, "spare3" },
25248   {  62, "spare2" },
25249   {  63, "spare1" },
25250   { 0, NULL }
25251 };
25252
25253 static value_string_ext nr_rrc_T_PollRetransmit_vals_ext = VALUE_STRING_EXT_INIT(nr_rrc_T_PollRetransmit_vals);
25254
25255
25256 static int
25257 dissect_nr_rrc_T_PollRetransmit(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25258   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
25259                                      64, NULL, FALSE, 0, NULL);
25260
25261   return offset;
25262 }
25263
25264
25265 static const value_string nr_rrc_PollPDU_vals[] = {
25266   {   0, "p4" },
25267   {   1, "p8" },
25268   {   2, "p16" },
25269   {   3, "p32" },
25270   {   4, "p64" },
25271   {   5, "p128" },
25272   {   6, "p256" },
25273   {   7, "p512" },
25274   {   8, "p1024" },
25275   {   9, "p2048" },
25276   {  10, "p4096" },
25277   {  11, "p6144" },
25278   {  12, "p8192" },
25279   {  13, "p12288" },
25280   {  14, "p16384" },
25281   {  15, "p20480" },
25282   {  16, "p24576" },
25283   {  17, "p28672" },
25284   {  18, "p32768" },
25285   {  19, "p40960" },
25286   {  20, "p49152" },
25287   {  21, "p57344" },
25288   {  22, "p65536" },
25289   {  23, "infinity" },
25290   {  24, "spare8" },
25291   {  25, "spare7" },
25292   {  26, "spare6" },
25293   {  27, "spare5" },
25294   {  28, "spare4" },
25295   {  29, "spare3" },
25296   {  30, "spare2" },
25297   {  31, "spare1" },
25298   { 0, NULL }
25299 };
25300
25301 static value_string_ext nr_rrc_PollPDU_vals_ext = VALUE_STRING_EXT_INIT(nr_rrc_PollPDU_vals);
25302
25303
25304 static int
25305 dissect_nr_rrc_PollPDU(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25306   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
25307                                      32, NULL, FALSE, 0, NULL);
25308
25309   return offset;
25310 }
25311
25312
25313 static const value_string nr_rrc_PollByte_vals[] = {
25314   {   0, "kB1" },
25315   {   1, "kB2" },
25316   {   2, "kB5" },
25317   {   3, "kB8" },
25318   {   4, "kB10" },
25319   {   5, "kB15" },
25320   {   6, "kB25" },
25321   {   7, "kB50" },
25322   {   8, "kB75" },
25323   {   9, "kB100" },
25324   {  10, "kB125" },
25325   {  11, "kB250" },
25326   {  12, "kB375" },
25327   {  13, "kB500" },
25328   {  14, "kB750" },
25329   {  15, "kB1000" },
25330   {  16, "kB1250" },
25331   {  17, "kB1500" },
25332   {  18, "kB2000" },
25333   {  19, "kB3000" },
25334   {  20, "kB4000" },
25335   {  21, "kB4500" },
25336   {  22, "kB5000" },
25337   {  23, "kB5500" },
25338   {  24, "kB6000" },
25339   {  25, "kB6500" },
25340   {  26, "kB7000" },
25341   {  27, "kB7500" },
25342   {  28, "mB8" },
25343   {  29, "mB9" },
25344   {  30, "mB10" },
25345   {  31, "mB11" },
25346   {  32, "mB12" },
25347   {  33, "mB13" },
25348   {  34, "mB14" },
25349   {  35, "mB15" },
25350   {  36, "mB16" },
25351   {  37, "mB17" },
25352   {  38, "mB18" },
25353   {  39, "mB20" },
25354   {  40, "mB25" },
25355   {  41, "mB30" },
25356   {  42, "mB40" },
25357   {  43, "infinity" },
25358   {  44, "spare20" },
25359   {  45, "spare19" },
25360   {  46, "spare18" },
25361   {  47, "spare17" },
25362   {  48, "spare16" },
25363   {  49, "spare15" },
25364   {  50, "spare14" },
25365   {  51, "spare13" },
25366   {  52, "spare12" },
25367   {  53, "spare11" },
25368   {  54, "spare10" },
25369   {  55, "spare9" },
25370   {  56, "spare8" },
25371   {  57, "spare7" },
25372   {  58, "spare6" },
25373   {  59, "spare5" },
25374   {  60, "spare4" },
25375   {  61, "spare3" },
25376   {  62, "spare2" },
25377   {  63, "spare1" },
25378   { 0, NULL }
25379 };
25380
25381 static value_string_ext nr_rrc_PollByte_vals_ext = VALUE_STRING_EXT_INIT(nr_rrc_PollByte_vals);
25382
25383
25384 static int
25385 dissect_nr_rrc_PollByte(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25386   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
25387                                      64, NULL, FALSE, 0, NULL);
25388
25389   return offset;
25390 }
25391
25392
25393 static const value_string nr_rrc_T_maxRetxThreshold_vals[] = {
25394   {   0, "t1" },
25395   {   1, "t2" },
25396   {   2, "t3" },
25397   {   3, "t4" },
25398   {   4, "t6" },
25399   {   5, "t8" },
25400   {   6, "t16" },
25401   {   7, "t32" },
25402   { 0, NULL }
25403 };
25404
25405
25406 static int
25407 dissect_nr_rrc_T_maxRetxThreshold(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25408   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
25409                                      8, NULL, FALSE, 0, NULL);
25410
25411   return offset;
25412 }
25413
25414
25415 static const per_sequence_t UL_AM_RLC_sequence[] = {
25416   { &hf_nr_rrc_sn_FieldLength, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SN_FieldLengthAM },
25417   { &hf_nr_rrc_t_PollRetransmit, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_PollRetransmit },
25418   { &hf_nr_rrc_pollPDU      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PollPDU },
25419   { &hf_nr_rrc_pollByte     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PollByte },
25420   { &hf_nr_rrc_maxRetxThreshold, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_maxRetxThreshold },
25421   { NULL, 0, 0, NULL }
25422 };
25423
25424 static int
25425 dissect_nr_rrc_UL_AM_RLC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25426   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
25427                                    ett_nr_rrc_UL_AM_RLC, UL_AM_RLC_sequence);
25428
25429   return offset;
25430 }
25431
25432
25433 static const value_string nr_rrc_T_Reassembly_vals[] = {
25434   {   0, "ms0" },
25435   {   1, "ms5" },
25436   {   2, "ms10" },
25437   {   3, "ms15" },
25438   {   4, "ms20" },
25439   {   5, "ms25" },
25440   {   6, "ms30" },
25441   {   7, "ms35" },
25442   {   8, "ms40" },
25443   {   9, "ms45" },
25444   {  10, "ms50" },
25445   {  11, "ms55" },
25446   {  12, "ms60" },
25447   {  13, "ms65" },
25448   {  14, "ms70" },
25449   {  15, "ms75" },
25450   {  16, "ms80" },
25451   {  17, "ms85" },
25452   {  18, "ms90" },
25453   {  19, "ms95" },
25454   {  20, "ms100" },
25455   {  21, "ms110" },
25456   {  22, "ms120" },
25457   {  23, "ms130" },
25458   {  24, "ms140" },
25459   {  25, "ms150" },
25460   {  26, "ms160" },
25461   {  27, "ms170" },
25462   {  28, "ms180" },
25463   {  29, "ms190" },
25464   {  30, "ms200" },
25465   {  31, "spare1" },
25466   { 0, NULL }
25467 };
25468
25469 static value_string_ext nr_rrc_T_Reassembly_vals_ext = VALUE_STRING_EXT_INIT(nr_rrc_T_Reassembly_vals);
25470
25471
25472 static int
25473 dissect_nr_rrc_T_Reassembly(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25474   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
25475                                      32, NULL, FALSE, 0, NULL);
25476
25477   return offset;
25478 }
25479
25480
25481 static const value_string nr_rrc_T_StatusProhibit_vals[] = {
25482   {   0, "ms0" },
25483   {   1, "ms5" },
25484   {   2, "ms10" },
25485   {   3, "ms15" },
25486   {   4, "ms20" },
25487   {   5, "ms25" },
25488   {   6, "ms30" },
25489   {   7, "ms35" },
25490   {   8, "ms40" },
25491   {   9, "ms45" },
25492   {  10, "ms50" },
25493   {  11, "ms55" },
25494   {  12, "ms60" },
25495   {  13, "ms65" },
25496   {  14, "ms70" },
25497   {  15, "ms75" },
25498   {  16, "ms80" },
25499   {  17, "ms85" },
25500   {  18, "ms90" },
25501   {  19, "ms95" },
25502   {  20, "ms100" },
25503   {  21, "ms105" },
25504   {  22, "ms110" },
25505   {  23, "ms115" },
25506   {  24, "ms120" },
25507   {  25, "ms125" },
25508   {  26, "ms130" },
25509   {  27, "ms135" },
25510   {  28, "ms140" },
25511   {  29, "ms145" },
25512   {  30, "ms150" },
25513   {  31, "ms155" },
25514   {  32, "ms160" },
25515   {  33, "ms165" },
25516   {  34, "ms170" },
25517   {  35, "ms175" },
25518   {  36, "ms180" },
25519   {  37, "ms185" },
25520   {  38, "ms190" },
25521   {  39, "ms195" },
25522   {  40, "ms200" },
25523   {  41, "ms205" },
25524   {  42, "ms210" },
25525   {  43, "ms215" },
25526   {  44, "ms220" },
25527   {  45, "ms225" },
25528   {  46, "ms230" },
25529   {  47, "ms235" },
25530   {  48, "ms240" },
25531   {  49, "ms245" },
25532   {  50, "ms250" },
25533   {  51, "ms300" },
25534   {  52, "ms350" },
25535   {  53, "ms400" },
25536   {  54, "ms450" },
25537   {  55, "ms500" },
25538   {  56, "ms800" },
25539   {  57, "ms1000" },
25540   {  58, "ms1200" },
25541   {  59, "ms1600" },
25542   {  60, "ms2000" },
25543   {  61, "ms2400" },
25544   {  62, "spare2" },
25545   {  63, "spare1" },
25546   { 0, NULL }
25547 };
25548
25549 static value_string_ext nr_rrc_T_StatusProhibit_vals_ext = VALUE_STRING_EXT_INIT(nr_rrc_T_StatusProhibit_vals);
25550
25551
25552 static int
25553 dissect_nr_rrc_T_StatusProhibit(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25554   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
25555                                      64, NULL, FALSE, 0, NULL);
25556
25557   return offset;
25558 }
25559
25560
25561 static const per_sequence_t DL_AM_RLC_sequence[] = {
25562   { &hf_nr_rrc_sn_FieldLength, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SN_FieldLengthAM },
25563   { &hf_nr_rrc_t_Reassembly , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_Reassembly },
25564   { &hf_nr_rrc_t_StatusProhibit, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_StatusProhibit },
25565   { NULL, 0, 0, NULL }
25566 };
25567
25568 static int
25569 dissect_nr_rrc_DL_AM_RLC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25570   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
25571                                    ett_nr_rrc_DL_AM_RLC, DL_AM_RLC_sequence);
25572
25573   return offset;
25574 }
25575
25576
25577 static const per_sequence_t T_am_sequence[] = {
25578   { &hf_nr_rrc_ul_AM_RLC    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_UL_AM_RLC },
25579   { &hf_nr_rrc_dl_AM_RLC    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_DL_AM_RLC },
25580   { NULL, 0, 0, NULL }
25581 };
25582
25583 static int
25584 dissect_nr_rrc_T_am(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25585   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
25586                                    ett_nr_rrc_T_am, T_am_sequence);
25587
25588   return offset;
25589 }
25590
25591
25592 static const value_string nr_rrc_SN_FieldLengthUM_vals[] = {
25593   {   0, "size6" },
25594   {   1, "size12" },
25595   { 0, NULL }
25596 };
25597
25598
25599 static int
25600 dissect_nr_rrc_SN_FieldLengthUM(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25601   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
25602                                      2, NULL, FALSE, 0, NULL);
25603
25604   return offset;
25605 }
25606
25607
25608 static const per_sequence_t UL_UM_RLC_sequence[] = {
25609   { &hf_nr_rrc_sn_FieldLength_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SN_FieldLengthUM },
25610   { NULL, 0, 0, NULL }
25611 };
25612
25613 static int
25614 dissect_nr_rrc_UL_UM_RLC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25615   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
25616                                    ett_nr_rrc_UL_UM_RLC, UL_UM_RLC_sequence);
25617
25618   return offset;
25619 }
25620
25621
25622 static const per_sequence_t DL_UM_RLC_sequence[] = {
25623   { &hf_nr_rrc_sn_FieldLength_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SN_FieldLengthUM },
25624   { &hf_nr_rrc_t_Reassembly , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_Reassembly },
25625   { NULL, 0, 0, NULL }
25626 };
25627
25628 static int
25629 dissect_nr_rrc_DL_UM_RLC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25630   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
25631                                    ett_nr_rrc_DL_UM_RLC, DL_UM_RLC_sequence);
25632
25633   return offset;
25634 }
25635
25636
25637 static const per_sequence_t T_um_Bi_Directional_sequence[] = {
25638   { &hf_nr_rrc_ul_UM_RLC    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_UL_UM_RLC },
25639   { &hf_nr_rrc_dl_UM_RLC    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_DL_UM_RLC },
25640   { NULL, 0, 0, NULL }
25641 };
25642
25643 static int
25644 dissect_nr_rrc_T_um_Bi_Directional(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25645   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
25646                                    ett_nr_rrc_T_um_Bi_Directional, T_um_Bi_Directional_sequence);
25647
25648   return offset;
25649 }
25650
25651
25652 static const per_sequence_t T_um_Uni_Directional_UL_sequence[] = {
25653   { &hf_nr_rrc_ul_UM_RLC    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_UL_UM_RLC },
25654   { NULL, 0, 0, NULL }
25655 };
25656
25657 static int
25658 dissect_nr_rrc_T_um_Uni_Directional_UL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25659   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
25660                                    ett_nr_rrc_T_um_Uni_Directional_UL, T_um_Uni_Directional_UL_sequence);
25661
25662   return offset;
25663 }
25664
25665
25666 static const per_sequence_t T_um_Uni_Directional_DL_sequence[] = {
25667   { &hf_nr_rrc_dl_UM_RLC    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_DL_UM_RLC },
25668   { NULL, 0, 0, NULL }
25669 };
25670
25671 static int
25672 dissect_nr_rrc_T_um_Uni_Directional_DL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25673   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
25674                                    ett_nr_rrc_T_um_Uni_Directional_DL, T_um_Uni_Directional_DL_sequence);
25675
25676   return offset;
25677 }
25678
25679
25680 static const value_string nr_rrc_RLC_Config_vals[] = {
25681   {   0, "am" },
25682   {   1, "um-Bi-Directional" },
25683   {   2, "um-Uni-Directional-UL" },
25684   {   3, "um-Uni-Directional-DL" },
25685   { 0, NULL }
25686 };
25687
25688 static const per_choice_t RLC_Config_choice[] = {
25689   {   0, &hf_nr_rrc_am           , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_T_am },
25690   {   1, &hf_nr_rrc_um_Bi_Directional, ASN1_EXTENSION_ROOT    , dissect_nr_rrc_T_um_Bi_Directional },
25691   {   2, &hf_nr_rrc_um_Uni_Directional_UL, ASN1_EXTENSION_ROOT    , dissect_nr_rrc_T_um_Uni_Directional_UL },
25692   {   3, &hf_nr_rrc_um_Uni_Directional_DL, ASN1_EXTENSION_ROOT    , dissect_nr_rrc_T_um_Uni_Directional_DL },
25693   { 0, NULL, 0, NULL }
25694 };
25695
25696 static int
25697 dissect_nr_rrc_RLC_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25698   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
25699                                  ett_nr_rrc_RLC_Config, RLC_Config_choice,
25700                                  NULL);
25701
25702   return offset;
25703 }
25704
25705
25706 static const value_string nr_rrc_T_prioritisedBitRate_vals[] = {
25707   {   0, "kBps0" },
25708   {   1, "kBps8" },
25709   {   2, "kBps16" },
25710   {   3, "kBps32" },
25711   {   4, "kBps64" },
25712   {   5, "kBps128" },
25713   {   6, "kBps256" },
25714   {   7, "kBps512" },
25715   {   8, "kBps1024" },
25716   {   9, "kBps2048" },
25717   {  10, "kBps4096" },
25718   {  11, "kBps8192" },
25719   {  12, "kBps16384" },
25720   {  13, "kBps32768" },
25721   {  14, "kBps65536" },
25722   {  15, "infinity" },
25723   { 0, NULL }
25724 };
25725
25726
25727 static int
25728 dissect_nr_rrc_T_prioritisedBitRate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25729   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
25730                                      16, NULL, FALSE, 0, NULL);
25731
25732   return offset;
25733 }
25734
25735
25736 static const value_string nr_rrc_T_bucketSizeDuration_vals[] = {
25737   {   0, "ms5" },
25738   {   1, "ms10" },
25739   {   2, "ms20" },
25740   {   3, "ms50" },
25741   {   4, "ms100" },
25742   {   5, "ms150" },
25743   {   6, "ms300" },
25744   {   7, "ms500" },
25745   {   8, "ms1000" },
25746   {   9, "spare7" },
25747   {  10, "spare6" },
25748   {  11, "spare5" },
25749   {  12, "spare4" },
25750   {  13, "spare3" },
25751   {  14, "spare2" },
25752   {  15, "spare1" },
25753   { 0, NULL }
25754 };
25755
25756
25757 static int
25758 dissect_nr_rrc_T_bucketSizeDuration(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25759   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
25760                                      16, NULL, FALSE, 0, NULL);
25761
25762   return offset;
25763 }
25764
25765
25766 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofServingCells_1_OF_ServCellIndex_sequence_of[1] = {
25767   { &hf_nr_rrc_allowedServingCells_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ServCellIndex },
25768 };
25769
25770 static int
25771 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofServingCells_1_OF_ServCellIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25772   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
25773                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofServingCells_1_OF_ServCellIndex, SEQUENCE_SIZE_1_maxNrofServingCells_1_OF_ServCellIndex_sequence_of,
25774                                                   1, maxNrofServingCells_1, FALSE);
25775
25776   return offset;
25777 }
25778
25779
25780 static const per_sequence_t SEQUENCE_SIZE_1_maxSCSs_OF_SubcarrierSpacing_sequence_of[1] = {
25781   { &hf_nr_rrc_allowedSCS_List_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SubcarrierSpacing },
25782 };
25783
25784 static int
25785 dissect_nr_rrc_SEQUENCE_SIZE_1_maxSCSs_OF_SubcarrierSpacing(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25786   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
25787                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxSCSs_OF_SubcarrierSpacing, SEQUENCE_SIZE_1_maxSCSs_OF_SubcarrierSpacing_sequence_of,
25788                                                   1, maxSCSs, FALSE);
25789
25790   return offset;
25791 }
25792
25793
25794 static const value_string nr_rrc_T_maxPUSCH_Duration_vals[] = {
25795   {   0, "ms0p02" },
25796   {   1, "ms0p04" },
25797   {   2, "ms0p0625" },
25798   {   3, "ms0p125" },
25799   {   4, "ms0p25" },
25800   {   5, "ms0p5" },
25801   {   6, "spare2" },
25802   {   7, "spare1" },
25803   { 0, NULL }
25804 };
25805
25806
25807 static int
25808 dissect_nr_rrc_T_maxPUSCH_Duration(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25809   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
25810                                      8, NULL, FALSE, 0, NULL);
25811
25812   return offset;
25813 }
25814
25815
25816 static const value_string nr_rrc_T_configuredGrantType1Allowed_vals[] = {
25817   {   0, "true" },
25818   { 0, NULL }
25819 };
25820
25821
25822 static int
25823 dissect_nr_rrc_T_configuredGrantType1Allowed(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25824   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
25825                                      1, NULL, FALSE, 0, NULL);
25826
25827   return offset;
25828 }
25829
25830
25831
25832 static int
25833 dissect_nr_rrc_INTEGER_0_maxLCG_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25834   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
25835                                                             0U, maxLCG_ID, NULL, FALSE);
25836
25837   return offset;
25838 }
25839
25840
25841 static const value_string nr_rrc_T_bitRateQueryProhibitTimer_vals[] = {
25842   {   0, "s0" },
25843   {   1, "s0dot4" },
25844   {   2, "s0dot8" },
25845   {   3, "s1dot6" },
25846   {   4, "s3" },
25847   {   5, "s6" },
25848   {   6, "s12" },
25849   {   7, "s30" },
25850   { 0, NULL }
25851 };
25852
25853
25854 static int
25855 dissect_nr_rrc_T_bitRateQueryProhibitTimer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25856   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
25857                                      8, NULL, FALSE, 0, NULL);
25858
25859   return offset;
25860 }
25861
25862
25863 static const per_sequence_t T_ul_SpecificParameters_sequence[] = {
25864   { &hf_nr_rrc_priority     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_16 },
25865   { &hf_nr_rrc_prioritisedBitRate, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_prioritisedBitRate },
25866   { &hf_nr_rrc_bucketSizeDuration, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_bucketSizeDuration },
25867   { &hf_nr_rrc_allowedServingCells, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofServingCells_1_OF_ServCellIndex },
25868   { &hf_nr_rrc_allowedSCS_List, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxSCSs_OF_SubcarrierSpacing },
25869   { &hf_nr_rrc_maxPUSCH_Duration, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_maxPUSCH_Duration },
25870   { &hf_nr_rrc_configuredGrantType1Allowed, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_configuredGrantType1Allowed },
25871   { &hf_nr_rrc_logicalChannelGroup, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_maxLCG_ID },
25872   { &hf_nr_rrc_schedulingRequestID, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SchedulingRequestId },
25873   { &hf_nr_rrc_logicalChannelSR_Mask, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
25874   { &hf_nr_rrc_logicalChannelSR_DelayTimerApplied, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
25875   { &hf_nr_rrc_bitRateQueryProhibitTimer, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_nr_rrc_T_bitRateQueryProhibitTimer },
25876   { NULL, 0, 0, NULL }
25877 };
25878
25879 static int
25880 dissect_nr_rrc_T_ul_SpecificParameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25881   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
25882                                    ett_nr_rrc_T_ul_SpecificParameters, T_ul_SpecificParameters_sequence);
25883
25884   return offset;
25885 }
25886
25887
25888 static const per_sequence_t LogicalChannelConfig_sequence[] = {
25889   { &hf_nr_rrc_ul_SpecificParameters, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_ul_SpecificParameters },
25890   { NULL, 0, 0, NULL }
25891 };
25892
25893 static int
25894 dissect_nr_rrc_LogicalChannelConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25895   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
25896                                    ett_nr_rrc_LogicalChannelConfig, LogicalChannelConfig_sequence);
25897
25898   return offset;
25899 }
25900
25901
25902 static const per_sequence_t RLC_BearerConfig_sequence[] = {
25903   { &hf_nr_rrc_logicalChannelIdentity, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_LogicalChannelIdentity },
25904   { &hf_nr_rrc_servedRadioBearer, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_servedRadioBearer },
25905   { &hf_nr_rrc_reestablishRLC, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_reestablishRLC },
25906   { &hf_nr_rrc_rlc_Config   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_RLC_Config },
25907   { &hf_nr_rrc_mac_LogicalChannelConfig, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_LogicalChannelConfig },
25908   { NULL, 0, 0, NULL }
25909 };
25910
25911 static int
25912 dissect_nr_rrc_RLC_BearerConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25913   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
25914                                    ett_nr_rrc_RLC_BearerConfig, RLC_BearerConfig_sequence);
25915
25916   return offset;
25917 }
25918
25919
25920 static const per_sequence_t SEQUENCE_SIZE_1_maxLC_ID_OF_RLC_BearerConfig_sequence_of[1] = {
25921   { &hf_nr_rrc_rlc_BearerToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RLC_BearerConfig },
25922 };
25923
25924 static int
25925 dissect_nr_rrc_SEQUENCE_SIZE_1_maxLC_ID_OF_RLC_BearerConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25926   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
25927                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxLC_ID_OF_RLC_BearerConfig, SEQUENCE_SIZE_1_maxLC_ID_OF_RLC_BearerConfig_sequence_of,
25928                                                   1, maxLC_ID, FALSE);
25929
25930   return offset;
25931 }
25932
25933
25934 static const per_sequence_t SEQUENCE_SIZE_1_maxLC_ID_OF_LogicalChannelIdentity_sequence_of[1] = {
25935   { &hf_nr_rrc_rlc_BearerToReleaseList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_LogicalChannelIdentity },
25936 };
25937
25938 static int
25939 dissect_nr_rrc_SEQUENCE_SIZE_1_maxLC_ID_OF_LogicalChannelIdentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25940   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
25941                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxLC_ID_OF_LogicalChannelIdentity, SEQUENCE_SIZE_1_maxLC_ID_OF_LogicalChannelIdentity_sequence_of,
25942                                                   1, maxLC_ID, FALSE);
25943
25944   return offset;
25945 }
25946
25947
25948 static const value_string nr_rrc_T_milliSeconds_vals[] = {
25949   {   0, "ms1" },
25950   {   1, "ms2" },
25951   {   2, "ms3" },
25952   {   3, "ms4" },
25953   {   4, "ms5" },
25954   {   5, "ms6" },
25955   {   6, "ms8" },
25956   {   7, "ms10" },
25957   {   8, "ms20" },
25958   {   9, "ms30" },
25959   {  10, "ms40" },
25960   {  11, "ms50" },
25961   {  12, "ms60" },
25962   {  13, "ms80" },
25963   {  14, "ms100" },
25964   {  15, "ms200" },
25965   {  16, "ms300" },
25966   {  17, "ms400" },
25967   {  18, "ms500" },
25968   {  19, "ms600" },
25969   {  20, "ms800" },
25970   {  21, "ms1000" },
25971   {  22, "ms1200" },
25972   {  23, "ms1600" },
25973   {  24, "spare8" },
25974   {  25, "spare7" },
25975   {  26, "spare6" },
25976   {  27, "spare5" },
25977   {  28, "spare4" },
25978   {  29, "spare3" },
25979   {  30, "spare2" },
25980   {  31, "spare1" },
25981   { 0, NULL }
25982 };
25983
25984 static value_string_ext nr_rrc_T_milliSeconds_vals_ext = VALUE_STRING_EXT_INIT(nr_rrc_T_milliSeconds_vals);
25985
25986
25987 static int
25988 dissect_nr_rrc_T_milliSeconds(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
25989   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
25990                                      32, NULL, FALSE, 0, NULL);
25991
25992   return offset;
25993 }
25994
25995
25996 static const value_string nr_rrc_T_drx_onDurationTimer_vals[] = {
25997   {   0, "subMilliSeconds" },
25998   {   1, "milliSeconds" },
25999   { 0, NULL }
26000 };
26001
26002 static const per_choice_t T_drx_onDurationTimer_choice[] = {
26003   {   0, &hf_nr_rrc_subMilliSeconds, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_1_31 },
26004   {   1, &hf_nr_rrc_milliSeconds , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_milliSeconds },
26005   { 0, NULL, 0, NULL }
26006 };
26007
26008 static int
26009 dissect_nr_rrc_T_drx_onDurationTimer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26010   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
26011                                  ett_nr_rrc_T_drx_onDurationTimer, T_drx_onDurationTimer_choice,
26012                                  NULL);
26013
26014   return offset;
26015 }
26016
26017
26018 static const value_string nr_rrc_T_drx_InactivityTimer_vals[] = {
26019   {   0, "ms0" },
26020   {   1, "ms1" },
26021   {   2, "ms2" },
26022   {   3, "ms3" },
26023   {   4, "ms4" },
26024   {   5, "ms5" },
26025   {   6, "ms6" },
26026   {   7, "ms8" },
26027   {   8, "ms10" },
26028   {   9, "ms20" },
26029   {  10, "ms30" },
26030   {  11, "ms40" },
26031   {  12, "ms50" },
26032   {  13, "ms60" },
26033   {  14, "ms80" },
26034   {  15, "ms100" },
26035   {  16, "ms200" },
26036   {  17, "ms300" },
26037   {  18, "ms500" },
26038   {  19, "ms750" },
26039   {  20, "ms1280" },
26040   {  21, "ms1920" },
26041   {  22, "ms2560" },
26042   {  23, "spare9" },
26043   {  24, "spare8" },
26044   {  25, "spare7" },
26045   {  26, "spare6" },
26046   {  27, "spare5" },
26047   {  28, "spare4" },
26048   {  29, "spare3" },
26049   {  30, "spare2" },
26050   {  31, "spare1" },
26051   { 0, NULL }
26052 };
26053
26054 static value_string_ext nr_rrc_T_drx_InactivityTimer_vals_ext = VALUE_STRING_EXT_INIT(nr_rrc_T_drx_InactivityTimer_vals);
26055
26056
26057 static int
26058 dissect_nr_rrc_T_drx_InactivityTimer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26059   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
26060                                      32, NULL, FALSE, 0, NULL);
26061
26062   return offset;
26063 }
26064
26065
26066
26067 static int
26068 dissect_nr_rrc_INTEGER_0_56(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26069   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
26070                                                             0U, 56U, NULL, FALSE);
26071
26072   return offset;
26073 }
26074
26075
26076 static const value_string nr_rrc_T_drx_RetransmissionTimerDL_vals[] = {
26077   {   0, "sl0" },
26078   {   1, "sl1" },
26079   {   2, "sl2" },
26080   {   3, "sl4" },
26081   {   4, "sl6" },
26082   {   5, "sl8" },
26083   {   6, "sl16" },
26084   {   7, "sl24" },
26085   {   8, "sl33" },
26086   {   9, "sl40" },
26087   {  10, "sl64" },
26088   {  11, "sl80" },
26089   {  12, "sl96" },
26090   {  13, "sl112" },
26091   {  14, "sl128" },
26092   {  15, "sl160" },
26093   {  16, "sl320" },
26094   {  17, "spare15" },
26095   {  18, "spare14" },
26096   {  19, "spare13" },
26097   {  20, "spare12" },
26098   {  21, "spare11" },
26099   {  22, "spare10" },
26100   {  23, "spare9" },
26101   {  24, "spare8" },
26102   {  25, "spare7" },
26103   {  26, "spare6" },
26104   {  27, "spare5" },
26105   {  28, "spare4" },
26106   {  29, "spare3" },
26107   {  30, "spare2" },
26108   {  31, "spare1" },
26109   { 0, NULL }
26110 };
26111
26112 static value_string_ext nr_rrc_T_drx_RetransmissionTimerDL_vals_ext = VALUE_STRING_EXT_INIT(nr_rrc_T_drx_RetransmissionTimerDL_vals);
26113
26114
26115 static int
26116 dissect_nr_rrc_T_drx_RetransmissionTimerDL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26117   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
26118                                      32, NULL, FALSE, 0, NULL);
26119
26120   return offset;
26121 }
26122
26123
26124 static const value_string nr_rrc_T_drx_RetransmissionTimerUL_vals[] = {
26125   {   0, "sl0" },
26126   {   1, "sl1" },
26127   {   2, "sl2" },
26128   {   3, "sl4" },
26129   {   4, "sl6" },
26130   {   5, "sl8" },
26131   {   6, "sl16" },
26132   {   7, "sl24" },
26133   {   8, "sl33" },
26134   {   9, "sl40" },
26135   {  10, "sl64" },
26136   {  11, "sl80" },
26137   {  12, "sl96" },
26138   {  13, "sl112" },
26139   {  14, "sl128" },
26140   {  15, "sl160" },
26141   {  16, "sl320" },
26142   {  17, "spare15" },
26143   {  18, "spare14" },
26144   {  19, "spare13" },
26145   {  20, "spare12" },
26146   {  21, "spare11" },
26147   {  22, "spare10" },
26148   {  23, "spare9" },
26149   {  24, "spare8" },
26150   {  25, "spare7" },
26151   {  26, "spare6" },
26152   {  27, "spare5" },
26153   {  28, "spare4" },
26154   {  29, "spare3" },
26155   {  30, "spare2" },
26156   {  31, "spare1" },
26157   { 0, NULL }
26158 };
26159
26160 static value_string_ext nr_rrc_T_drx_RetransmissionTimerUL_vals_ext = VALUE_STRING_EXT_INIT(nr_rrc_T_drx_RetransmissionTimerUL_vals);
26161
26162
26163 static int
26164 dissect_nr_rrc_T_drx_RetransmissionTimerUL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26165   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
26166                                      32, NULL, FALSE, 0, NULL);
26167
26168   return offset;
26169 }
26170
26171
26172 static const value_string nr_rrc_T_drx_LongCycleStartOffset_01_vals[] = {
26173   {   0, "ms10" },
26174   {   1, "ms20" },
26175   {   2, "ms32" },
26176   {   3, "ms40" },
26177   {   4, "ms60" },
26178   {   5, "ms64" },
26179   {   6, "ms70" },
26180   {   7, "ms80" },
26181   {   8, "ms128" },
26182   {   9, "ms160" },
26183   {  10, "ms256" },
26184   {  11, "ms320" },
26185   {  12, "ms512" },
26186   {  13, "ms640" },
26187   {  14, "ms1024" },
26188   {  15, "ms1280" },
26189   {  16, "ms2048" },
26190   {  17, "ms2560" },
26191   {  18, "ms5120" },
26192   {  19, "ms10240" },
26193   { 0, NULL }
26194 };
26195
26196 static value_string_ext nr_rrc_T_drx_LongCycleStartOffset_01_vals_ext = VALUE_STRING_EXT_INIT(nr_rrc_T_drx_LongCycleStartOffset_01_vals);
26197
26198 static const per_choice_t T_drx_LongCycleStartOffset_01_choice[] = {
26199   {   0, &hf_nr_rrc_ms10         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_9 },
26200   {   1, &hf_nr_rrc_ms20         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_19 },
26201   {   2, &hf_nr_rrc_ms32         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_31 },
26202   {   3, &hf_nr_rrc_ms40         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_39 },
26203   {   4, &hf_nr_rrc_ms60         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_59 },
26204   {   5, &hf_nr_rrc_ms64         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_63 },
26205   {   6, &hf_nr_rrc_ms70         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_69 },
26206   {   7, &hf_nr_rrc_ms80         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_79 },
26207   {   8, &hf_nr_rrc_ms128        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_127 },
26208   {   9, &hf_nr_rrc_ms160        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_159 },
26209   {  10, &hf_nr_rrc_ms256        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_255 },
26210   {  11, &hf_nr_rrc_ms320        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_319 },
26211   {  12, &hf_nr_rrc_ms512        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_511 },
26212   {  13, &hf_nr_rrc_ms640        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_639 },
26213   {  14, &hf_nr_rrc_ms1024       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_1023 },
26214   {  15, &hf_nr_rrc_ms1280       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_1279 },
26215   {  16, &hf_nr_rrc_ms2048       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_2047 },
26216   {  17, &hf_nr_rrc_ms2560       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_2559 },
26217   {  18, &hf_nr_rrc_ms5120       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_5119 },
26218   {  19, &hf_nr_rrc_ms10240      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_10239 },
26219   { 0, NULL, 0, NULL }
26220 };
26221
26222 static int
26223 dissect_nr_rrc_T_drx_LongCycleStartOffset_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26224   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
26225                                  ett_nr_rrc_T_drx_LongCycleStartOffset_01, T_drx_LongCycleStartOffset_01_choice,
26226                                  NULL);
26227
26228   return offset;
26229 }
26230
26231
26232 static const value_string nr_rrc_T_drx_ShortCycle_01_vals[] = {
26233   {   0, "ms2" },
26234   {   1, "ms3" },
26235   {   2, "ms4" },
26236   {   3, "ms5" },
26237   {   4, "ms6" },
26238   {   5, "ms7" },
26239   {   6, "ms8" },
26240   {   7, "ms10" },
26241   {   8, "ms14" },
26242   {   9, "ms16" },
26243   {  10, "ms20" },
26244   {  11, "ms30" },
26245   {  12, "ms32" },
26246   {  13, "ms35" },
26247   {  14, "ms40" },
26248   {  15, "ms64" },
26249   {  16, "ms80" },
26250   {  17, "ms128" },
26251   {  18, "ms160" },
26252   {  19, "ms256" },
26253   {  20, "ms320" },
26254   {  21, "ms512" },
26255   {  22, "ms640" },
26256   {  23, "spare9" },
26257   {  24, "spare8" },
26258   {  25, "spare7" },
26259   {  26, "spare6" },
26260   {  27, "spare5" },
26261   {  28, "spare4" },
26262   {  29, "spare3" },
26263   {  30, "spare2" },
26264   {  31, "spare1" },
26265   { 0, NULL }
26266 };
26267
26268 static value_string_ext nr_rrc_T_drx_ShortCycle_01_vals_ext = VALUE_STRING_EXT_INIT(nr_rrc_T_drx_ShortCycle_01_vals);
26269
26270
26271 static int
26272 dissect_nr_rrc_T_drx_ShortCycle_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26273   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
26274                                      32, NULL, FALSE, 0, NULL);
26275
26276   return offset;
26277 }
26278
26279
26280 static const per_sequence_t T_shortDRX_01_sequence[] = {
26281   { &hf_nr_rrc_drx_ShortCycle_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_drx_ShortCycle_01 },
26282   { &hf_nr_rrc_drx_ShortCycleTimer, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_16 },
26283   { NULL, 0, 0, NULL }
26284 };
26285
26286 static int
26287 dissect_nr_rrc_T_shortDRX_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26288   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
26289                                    ett_nr_rrc_T_shortDRX_01, T_shortDRX_01_sequence);
26290
26291   return offset;
26292 }
26293
26294
26295 static const per_sequence_t DRX_Config_sequence[] = {
26296   { &hf_nr_rrc_drx_onDurationTimer, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_drx_onDurationTimer },
26297   { &hf_nr_rrc_drx_InactivityTimer, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_drx_InactivityTimer },
26298   { &hf_nr_rrc_drx_HARQ_RTT_TimerDL, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_56 },
26299   { &hf_nr_rrc_drx_HARQ_RTT_TimerUL, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_56 },
26300   { &hf_nr_rrc_drx_RetransmissionTimerDL, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_drx_RetransmissionTimerDL },
26301   { &hf_nr_rrc_drx_RetransmissionTimerUL, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_drx_RetransmissionTimerUL },
26302   { &hf_nr_rrc_drx_LongCycleStartOffset_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_drx_LongCycleStartOffset_01 },
26303   { &hf_nr_rrc_shortDRX_01  , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_shortDRX_01 },
26304   { &hf_nr_rrc_drx_SlotOffset, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_31 },
26305   { NULL, 0, 0, NULL }
26306 };
26307
26308 static int
26309 dissect_nr_rrc_DRX_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26310   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
26311                                    ett_nr_rrc_DRX_Config, DRX_Config_sequence);
26312
26313   return offset;
26314 }
26315
26316
26317 static const value_string nr_rrc_T_drx_Config_vals[] = {
26318   {   0, "release" },
26319   {   1, "setup" },
26320   { 0, NULL }
26321 };
26322
26323 static const per_choice_t T_drx_Config_choice[] = {
26324   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
26325   {   1, &hf_nr_rrc_setup_22     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_DRX_Config },
26326   { 0, NULL, 0, NULL }
26327 };
26328
26329 static int
26330 dissect_nr_rrc_T_drx_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26331   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
26332                                  ett_nr_rrc_T_drx_Config, T_drx_Config_choice,
26333                                  NULL);
26334
26335   return offset;
26336 }
26337
26338
26339 static const value_string nr_rrc_T_sr_ProhibitTimer_vals[] = {
26340   {   0, "ms1" },
26341   {   1, "ms2" },
26342   {   2, "ms4" },
26343   {   3, "ms8" },
26344   {   4, "ms16" },
26345   {   5, "ms32" },
26346   {   6, "ms64" },
26347   {   7, "ms128" },
26348   { 0, NULL }
26349 };
26350
26351
26352 static int
26353 dissect_nr_rrc_T_sr_ProhibitTimer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26354   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
26355                                      8, NULL, FALSE, 0, NULL);
26356
26357   return offset;
26358 }
26359
26360
26361 static const value_string nr_rrc_T_sr_TransMax_vals[] = {
26362   {   0, "n4" },
26363   {   1, "n8" },
26364   {   2, "n16" },
26365   {   3, "n32" },
26366   {   4, "n64" },
26367   {   5, "spare3" },
26368   {   6, "spare2" },
26369   {   7, "spare1" },
26370   { 0, NULL }
26371 };
26372
26373
26374 static int
26375 dissect_nr_rrc_T_sr_TransMax(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26376   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
26377                                      8, NULL, FALSE, 0, NULL);
26378
26379   return offset;
26380 }
26381
26382
26383 static const per_sequence_t SchedulingRequestToAddMod_sequence[] = {
26384   { &hf_nr_rrc_schedulingRequestId, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SchedulingRequestId },
26385   { &hf_nr_rrc_sr_ProhibitTimer, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_sr_ProhibitTimer },
26386   { &hf_nr_rrc_sr_TransMax  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_sr_TransMax },
26387   { NULL, 0, 0, NULL }
26388 };
26389
26390 static int
26391 dissect_nr_rrc_SchedulingRequestToAddMod(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26392   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
26393                                    ett_nr_rrc_SchedulingRequestToAddMod, SchedulingRequestToAddMod_sequence);
26394
26395   return offset;
26396 }
26397
26398
26399 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofSR_ConfigPerCellGroup_OF_SchedulingRequestToAddMod_sequence_of[1] = {
26400   { &hf_nr_rrc_schedulingRequestToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SchedulingRequestToAddMod },
26401 };
26402
26403 static int
26404 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSR_ConfigPerCellGroup_OF_SchedulingRequestToAddMod(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26405   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
26406                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSR_ConfigPerCellGroup_OF_SchedulingRequestToAddMod, SEQUENCE_SIZE_1_maxNrofSR_ConfigPerCellGroup_OF_SchedulingRequestToAddMod_sequence_of,
26407                                                   1, maxNrofSR_ConfigPerCellGroup, FALSE);
26408
26409   return offset;
26410 }
26411
26412
26413 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofSR_ConfigPerCellGroup_OF_SchedulingRequestId_sequence_of[1] = {
26414   { &hf_nr_rrc_schedulingRequestToReleaseList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SchedulingRequestId },
26415 };
26416
26417 static int
26418 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSR_ConfigPerCellGroup_OF_SchedulingRequestId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26419   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
26420                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSR_ConfigPerCellGroup_OF_SchedulingRequestId, SEQUENCE_SIZE_1_maxNrofSR_ConfigPerCellGroup_OF_SchedulingRequestId_sequence_of,
26421                                                   1, maxNrofSR_ConfigPerCellGroup, FALSE);
26422
26423   return offset;
26424 }
26425
26426
26427 static const per_sequence_t SchedulingRequestConfig_sequence[] = {
26428   { &hf_nr_rrc_schedulingRequestToAddModList, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSR_ConfigPerCellGroup_OF_SchedulingRequestToAddMod },
26429   { &hf_nr_rrc_schedulingRequestToReleaseList, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSR_ConfigPerCellGroup_OF_SchedulingRequestId },
26430   { NULL, 0, 0, NULL }
26431 };
26432
26433 static int
26434 dissect_nr_rrc_SchedulingRequestConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26435   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
26436                                    ett_nr_rrc_SchedulingRequestConfig, SchedulingRequestConfig_sequence);
26437
26438   return offset;
26439 }
26440
26441
26442
26443 static int
26444 dissect_nr_rrc_TAG_Id(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26445   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
26446                                                             0U, maxNrofTAGs_1, NULL, FALSE);
26447
26448   return offset;
26449 }
26450
26451
26452 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofTAGs_OF_TAG_Id_sequence_of[1] = {
26453   { &hf_nr_rrc_tag_ToReleaseList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_TAG_Id },
26454 };
26455
26456 static int
26457 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofTAGs_OF_TAG_Id(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26458   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
26459                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofTAGs_OF_TAG_Id, SEQUENCE_SIZE_1_maxNrofTAGs_OF_TAG_Id_sequence_of,
26460                                                   1, maxNrofTAGs, FALSE);
26461
26462   return offset;
26463 }
26464
26465
26466 static const per_sequence_t TAG_sequence[] = {
26467   { &hf_nr_rrc_tag_Id       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_TAG_Id },
26468   { &hf_nr_rrc_timeAlignmentTimer, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_TimeAlignmentTimer },
26469   { NULL, 0, 0, NULL }
26470 };
26471
26472 static int
26473 dissect_nr_rrc_TAG(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26474   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
26475                                    ett_nr_rrc_TAG, TAG_sequence);
26476
26477   return offset;
26478 }
26479
26480
26481 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofTAGs_OF_TAG_sequence_of[1] = {
26482   { &hf_nr_rrc_tag_ToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_TAG },
26483 };
26484
26485 static int
26486 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofTAGs_OF_TAG(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26487   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
26488                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofTAGs_OF_TAG, SEQUENCE_SIZE_1_maxNrofTAGs_OF_TAG_sequence_of,
26489                                                   1, maxNrofTAGs, FALSE);
26490
26491   return offset;
26492 }
26493
26494
26495 static const per_sequence_t TAG_Config_sequence[] = {
26496   { &hf_nr_rrc_tag_ToReleaseList, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofTAGs_OF_TAG_Id },
26497   { &hf_nr_rrc_tag_ToAddModList, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofTAGs_OF_TAG },
26498   { NULL, 0, 0, NULL }
26499 };
26500
26501 static int
26502 dissect_nr_rrc_TAG_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26503   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
26504                                    ett_nr_rrc_TAG_Config, TAG_Config_sequence);
26505
26506   return offset;
26507 }
26508
26509
26510 static const value_string nr_rrc_T_phr_PeriodicTimer_vals[] = {
26511   {   0, "sf10" },
26512   {   1, "sf20" },
26513   {   2, "sf50" },
26514   {   3, "sf100" },
26515   {   4, "sf200" },
26516   {   5, "sf500" },
26517   {   6, "sf1000" },
26518   {   7, "infinity" },
26519   { 0, NULL }
26520 };
26521
26522
26523 static int
26524 dissect_nr_rrc_T_phr_PeriodicTimer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26525   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
26526                                      8, NULL, FALSE, 0, NULL);
26527
26528   return offset;
26529 }
26530
26531
26532 static const value_string nr_rrc_T_phr_ProhibitTimer_vals[] = {
26533   {   0, "sf0" },
26534   {   1, "sf10" },
26535   {   2, "sf20" },
26536   {   3, "sf50" },
26537   {   4, "sf100" },
26538   {   5, "sf200" },
26539   {   6, "sf500" },
26540   {   7, "sf1000" },
26541   { 0, NULL }
26542 };
26543
26544
26545 static int
26546 dissect_nr_rrc_T_phr_ProhibitTimer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26547   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
26548                                      8, NULL, FALSE, 0, NULL);
26549
26550   return offset;
26551 }
26552
26553
26554 static const value_string nr_rrc_T_phr_Tx_PowerFactorChange_vals[] = {
26555   {   0, "dB1" },
26556   {   1, "dB3" },
26557   {   2, "dB6" },
26558   {   3, "infinity" },
26559   { 0, NULL }
26560 };
26561
26562
26563 static int
26564 dissect_nr_rrc_T_phr_Tx_PowerFactorChange(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26565   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
26566                                      4, NULL, FALSE, 0, NULL);
26567
26568   return offset;
26569 }
26570
26571
26572 static const value_string nr_rrc_T_phr_ModeOtherCG_vals[] = {
26573   {   0, "real" },
26574   {   1, "virtual" },
26575   { 0, NULL }
26576 };
26577
26578
26579 static int
26580 dissect_nr_rrc_T_phr_ModeOtherCG(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26581   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
26582                                      2, NULL, FALSE, 0, NULL);
26583
26584   return offset;
26585 }
26586
26587
26588 static const per_sequence_t PHR_Config_sequence[] = {
26589   { &hf_nr_rrc_phr_PeriodicTimer, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_phr_PeriodicTimer },
26590   { &hf_nr_rrc_phr_ProhibitTimer, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_phr_ProhibitTimer },
26591   { &hf_nr_rrc_phr_Tx_PowerFactorChange, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_phr_Tx_PowerFactorChange },
26592   { &hf_nr_rrc_multiplePHR  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
26593   { &hf_nr_rrc_dummy        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
26594   { &hf_nr_rrc_phr_Type2OtherCell, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
26595   { &hf_nr_rrc_phr_ModeOtherCG, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_phr_ModeOtherCG },
26596   { NULL, 0, 0, NULL }
26597 };
26598
26599 static int
26600 dissect_nr_rrc_PHR_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26601   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
26602                                    ett_nr_rrc_PHR_Config, PHR_Config_sequence);
26603
26604   return offset;
26605 }
26606
26607
26608 static const value_string nr_rrc_T_phr_Config_vals[] = {
26609   {   0, "release" },
26610   {   1, "setup" },
26611   { 0, NULL }
26612 };
26613
26614 static const per_choice_t T_phr_Config_choice[] = {
26615   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
26616   {   1, &hf_nr_rrc_setup_23     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_PHR_Config },
26617   { 0, NULL, 0, NULL }
26618 };
26619
26620 static int
26621 dissect_nr_rrc_T_phr_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26622   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
26623                                  ett_nr_rrc_T_phr_Config, T_phr_Config_choice,
26624                                  NULL);
26625
26626   return offset;
26627 }
26628
26629
26630 static const value_string nr_rrc_DataInactivityTimer_vals[] = {
26631   {   0, "s1" },
26632   {   1, "s2" },
26633   {   2, "s3" },
26634   {   3, "s5" },
26635   {   4, "s7" },
26636   {   5, "s10" },
26637   {   6, "s15" },
26638   {   7, "s20" },
26639   {   8, "s40" },
26640   {   9, "s50" },
26641   {  10, "s60" },
26642   {  11, "s80" },
26643   {  12, "s100" },
26644   {  13, "s120" },
26645   {  14, "s150" },
26646   {  15, "s180" },
26647   { 0, NULL }
26648 };
26649
26650
26651 static int
26652 dissect_nr_rrc_DataInactivityTimer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26653   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
26654                                      16, NULL, FALSE, 0, NULL);
26655
26656   return offset;
26657 }
26658
26659
26660 static const value_string nr_rrc_T_dataInactivityTimer_v1530_vals[] = {
26661   {   0, "release" },
26662   {   1, "setup" },
26663   { 0, NULL }
26664 };
26665
26666 static const per_choice_t T_dataInactivityTimer_v1530_choice[] = {
26667   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
26668   {   1, &hf_nr_rrc_setup_24     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_DataInactivityTimer },
26669   { 0, NULL, 0, NULL }
26670 };
26671
26672 static int
26673 dissect_nr_rrc_T_dataInactivityTimer_v1530(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26674   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
26675                                  ett_nr_rrc_T_dataInactivityTimer_v1530, T_dataInactivityTimer_v1530_choice,
26676                                  NULL);
26677
26678   return offset;
26679 }
26680
26681
26682 static const per_sequence_t MAC_CellGroupConfig_eag_1_sequence[] = {
26683   { &hf_nr_rrc_csi_Mask_v1530, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_BOOLEAN },
26684   { &hf_nr_rrc_dataInactivityTimer_v1530, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_dataInactivityTimer_v1530 },
26685   { NULL, 0, 0, NULL }
26686 };
26687
26688 static int
26689 dissect_nr_rrc_MAC_CellGroupConfig_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26690   offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MAC_CellGroupConfig_eag_1_sequence);
26691
26692   return offset;
26693 }
26694
26695
26696 static const per_sequence_t MAC_CellGroupConfig_sequence[] = {
26697   { &hf_nr_rrc_drx_Config   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_drx_Config },
26698   { &hf_nr_rrc_schedulingRequestConfig, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SchedulingRequestConfig },
26699   { &hf_nr_rrc_bsr_Config   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_BSR_Config },
26700   { &hf_nr_rrc_tag_Config   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_TAG_Config },
26701   { &hf_nr_rrc_phr_Config   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_phr_Config },
26702   { &hf_nr_rrc_skipUplinkTxDynamic, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
26703   { &dummy_hf_nr_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_nr_rrc_MAC_CellGroupConfig_eag_1 },
26704   { NULL, 0, 0, NULL }
26705 };
26706
26707 static int
26708 dissect_nr_rrc_MAC_CellGroupConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26709   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
26710                                    ett_nr_rrc_MAC_CellGroupConfig, MAC_CellGroupConfig_sequence);
26711
26712   return offset;
26713 }
26714
26715
26716 static const value_string nr_rrc_T_harq_ACK_SpatialBundlingPUCCH_vals[] = {
26717   {   0, "true" },
26718   { 0, NULL }
26719 };
26720
26721
26722 static int
26723 dissect_nr_rrc_T_harq_ACK_SpatialBundlingPUCCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26724   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
26725                                      1, NULL, FALSE, 0, NULL);
26726
26727   return offset;
26728 }
26729
26730
26731 static const value_string nr_rrc_T_harq_ACK_SpatialBundlingPUSCH_vals[] = {
26732   {   0, "true" },
26733   { 0, NULL }
26734 };
26735
26736
26737 static int
26738 dissect_nr_rrc_T_harq_ACK_SpatialBundlingPUSCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26739   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
26740                                      1, NULL, FALSE, 0, NULL);
26741
26742   return offset;
26743 }
26744
26745
26746 static const value_string nr_rrc_T_pdsch_HARQ_ACK_Codebook_vals[] = {
26747   {   0, "semiStatic" },
26748   {   1, "dynamic" },
26749   { 0, NULL }
26750 };
26751
26752
26753 static int
26754 dissect_nr_rrc_T_pdsch_HARQ_ACK_Codebook(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26755   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
26756                                      2, NULL, FALSE, 0, NULL);
26757
26758   return offset;
26759 }
26760
26761
26762 static const value_string nr_rrc_T_cs_RNTI_vals[] = {
26763   {   0, "release" },
26764   {   1, "setup" },
26765   { 0, NULL }
26766 };
26767
26768 static const per_choice_t T_cs_RNTI_choice[] = {
26769   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
26770   {   1, &hf_nr_rrc_setup_37     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RNTI_Value },
26771   { 0, NULL, 0, NULL }
26772 };
26773
26774 static int
26775 dissect_nr_rrc_T_cs_RNTI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26776   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
26777                                  ett_nr_rrc_T_cs_RNTI, T_cs_RNTI_choice,
26778                                  NULL);
26779
26780   return offset;
26781 }
26782
26783
26784 static const per_sequence_t PhysicalCellGroupConfig_eag_1_sequence[] = {
26785   { &hf_nr_rrc_mcs_C_RNTI   , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_RNTI_Value },
26786   { &hf_nr_rrc_p_UE_FR1     , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_P_Max },
26787   { NULL, 0, 0, NULL }
26788 };
26789
26790 static int
26791 dissect_nr_rrc_PhysicalCellGroupConfig_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26792   offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PhysicalCellGroupConfig_eag_1_sequence);
26793
26794   return offset;
26795 }
26796
26797
26798 static const per_sequence_t PhysicalCellGroupConfig_sequence[] = {
26799   { &hf_nr_rrc_harq_ACK_SpatialBundlingPUCCH, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_harq_ACK_SpatialBundlingPUCCH },
26800   { &hf_nr_rrc_harq_ACK_SpatialBundlingPUSCH, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_harq_ACK_SpatialBundlingPUSCH },
26801   { &hf_nr_rrc_p_NR_FR1     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_P_Max },
26802   { &hf_nr_rrc_pdsch_HARQ_ACK_Codebook, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_pdsch_HARQ_ACK_Codebook },
26803   { &hf_nr_rrc_tpc_SRS_RNTI , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_RNTI_Value },
26804   { &hf_nr_rrc_tpc_PUCCH_RNTI, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_RNTI_Value },
26805   { &hf_nr_rrc_tpc_PUSCH_RNTI, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_RNTI_Value },
26806   { &hf_nr_rrc_sp_CSI_RNTI  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_RNTI_Value },
26807   { &hf_nr_rrc_cs_RNTI      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_cs_RNTI },
26808   { &dummy_hf_nr_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_nr_rrc_PhysicalCellGroupConfig_eag_1 },
26809   { NULL, 0, 0, NULL }
26810 };
26811
26812 static int
26813 dissect_nr_rrc_PhysicalCellGroupConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26814   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
26815                                    ett_nr_rrc_PhysicalCellGroupConfig, PhysicalCellGroupConfig_sequence);
26816
26817   return offset;
26818 }
26819
26820
26821 static const per_sequence_t FrequencyInfoDL_sequence[] = {
26822   { &hf_nr_rrc_absoluteFrequencySSB, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ARFCN_ValueNR },
26823   { &hf_nr_rrc_frequencyBandList_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MultiFrequencyBandListNR },
26824   { &hf_nr_rrc_absoluteFrequencyPointA, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ARFCN_ValueNR },
26825   { &hf_nr_rrc_scs_SpecificCarrierList, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SEQUENCE_SIZE_1_maxSCSs_OF_SCS_SpecificCarrier },
26826   { NULL, 0, 0, NULL }
26827 };
26828
26829 static int
26830 dissect_nr_rrc_FrequencyInfoDL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26831   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
26832                                    ett_nr_rrc_FrequencyInfoDL, FrequencyInfoDL_sequence);
26833
26834   return offset;
26835 }
26836
26837
26838 static const per_sequence_t DownlinkConfigCommon_sequence[] = {
26839   { &hf_nr_rrc_frequencyInfoDL, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_FrequencyInfoDL },
26840   { &hf_nr_rrc_initialDownlinkBWP, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_BWP_DownlinkCommon },
26841   { NULL, 0, 0, NULL }
26842 };
26843
26844 static int
26845 dissect_nr_rrc_DownlinkConfigCommon(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26846   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
26847                                    ett_nr_rrc_DownlinkConfigCommon, DownlinkConfigCommon_sequence);
26848
26849   return offset;
26850 }
26851
26852
26853 static const value_string nr_rrc_T_frequencyShift7p5khz_vals[] = {
26854   {   0, "true" },
26855   { 0, NULL }
26856 };
26857
26858
26859 static int
26860 dissect_nr_rrc_T_frequencyShift7p5khz(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26861   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
26862                                      1, NULL, FALSE, 0, NULL);
26863
26864   return offset;
26865 }
26866
26867
26868 static const per_sequence_t FrequencyInfoUL_sequence[] = {
26869   { &hf_nr_rrc_frequencyBandList_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_MultiFrequencyBandListNR },
26870   { &hf_nr_rrc_absoluteFrequencyPointA, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ARFCN_ValueNR },
26871   { &hf_nr_rrc_scs_SpecificCarrierList, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SEQUENCE_SIZE_1_maxSCSs_OF_SCS_SpecificCarrier },
26872   { &hf_nr_rrc_additionalSpectrumEmission, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_AdditionalSpectrumEmission },
26873   { &hf_nr_rrc_p_Max        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_P_Max },
26874   { &hf_nr_rrc_frequencyShift7p5khz, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_frequencyShift7p5khz },
26875   { NULL, 0, 0, NULL }
26876 };
26877
26878 static int
26879 dissect_nr_rrc_FrequencyInfoUL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26880   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
26881                                    ett_nr_rrc_FrequencyInfoUL, FrequencyInfoUL_sequence);
26882
26883   return offset;
26884 }
26885
26886
26887 static const per_sequence_t UplinkConfigCommon_sequence[] = {
26888   { &hf_nr_rrc_frequencyInfoUL, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_FrequencyInfoUL },
26889   { &hf_nr_rrc_initialUplinkBWP_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_BWP_UplinkCommon },
26890   { &hf_nr_rrc_dummy_02     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_TimeAlignmentTimer },
26891   { NULL, 0, 0, NULL }
26892 };
26893
26894 static int
26895 dissect_nr_rrc_UplinkConfigCommon(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26896   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
26897                                    ett_nr_rrc_UplinkConfigCommon, UplinkConfigCommon_sequence);
26898
26899   return offset;
26900 }
26901
26902
26903 static const value_string nr_rrc_T_n_TimingAdvanceOffset_vals[] = {
26904   {   0, "n0" },
26905   {   1, "n25600" },
26906   {   2, "n39936" },
26907   { 0, NULL }
26908 };
26909
26910
26911 static int
26912 dissect_nr_rrc_T_n_TimingAdvanceOffset(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26913   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
26914                                      3, NULL, FALSE, 0, NULL);
26915
26916   return offset;
26917 }
26918
26919
26920 static const value_string nr_rrc_T_ssb_PositionsInBurst_vals[] = {
26921   {   0, "shortBitmap" },
26922   {   1, "mediumBitmap" },
26923   {   2, "longBitmap" },
26924   { 0, NULL }
26925 };
26926
26927 static const per_choice_t T_ssb_PositionsInBurst_choice[] = {
26928   {   0, &hf_nr_rrc_shortBitmap  , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_4 },
26929   {   1, &hf_nr_rrc_mediumBitmap , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_8 },
26930   {   2, &hf_nr_rrc_longBitmap   , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_64 },
26931   { 0, NULL, 0, NULL }
26932 };
26933
26934 static int
26935 dissect_nr_rrc_T_ssb_PositionsInBurst(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26936   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
26937                                  ett_nr_rrc_T_ssb_PositionsInBurst, T_ssb_PositionsInBurst_choice,
26938                                  NULL);
26939
26940   return offset;
26941 }
26942
26943
26944 static const value_string nr_rrc_T_ssb_periodicityServingCell_vals[] = {
26945   {   0, "ms5" },
26946   {   1, "ms10" },
26947   {   2, "ms20" },
26948   {   3, "ms40" },
26949   {   4, "ms80" },
26950   {   5, "ms160" },
26951   {   6, "spare2" },
26952   {   7, "spare1" },
26953   { 0, NULL }
26954 };
26955
26956
26957 static int
26958 dissect_nr_rrc_T_ssb_periodicityServingCell(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26959   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
26960                                      8, NULL, FALSE, 0, NULL);
26961
26962   return offset;
26963 }
26964
26965
26966 static const value_string nr_rrc_T_dmrs_TypeA_Position_01_vals[] = {
26967   {   0, "pos2" },
26968   {   1, "pos3" },
26969   { 0, NULL }
26970 };
26971
26972
26973 static int
26974 dissect_nr_rrc_T_dmrs_TypeA_Position_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26975   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
26976                                      2, NULL, FALSE, 0, NULL);
26977
26978   return offset;
26979 }
26980
26981
26982
26983 static int
26984 dissect_nr_rrc_INTEGER_0_16383(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
26985   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
26986                                                             0U, 16383U, NULL, FALSE);
26987
26988   return offset;
26989 }
26990
26991
26992 static const value_string nr_rrc_T_carrierBandwidthDL_vals[] = {
26993   {   0, "n6" },
26994   {   1, "n15" },
26995   {   2, "n25" },
26996   {   3, "n50" },
26997   {   4, "n75" },
26998   {   5, "n100" },
26999   {   6, "spare2" },
27000   {   7, "spare1" },
27001   { 0, NULL }
27002 };
27003
27004
27005 static int
27006 dissect_nr_rrc_T_carrierBandwidthDL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27007   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
27008                                      8, NULL, FALSE, 0, NULL);
27009
27010   return offset;
27011 }
27012
27013
27014 static const value_string nr_rrc_T_radioframeAllocationPeriod_vals[] = {
27015   {   0, "n1" },
27016   {   1, "n2" },
27017   {   2, "n4" },
27018   {   3, "n8" },
27019   {   4, "n16" },
27020   {   5, "n32" },
27021   { 0, NULL }
27022 };
27023
27024
27025 static int
27026 dissect_nr_rrc_T_radioframeAllocationPeriod(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27027   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
27028                                      6, NULL, FALSE, 0, NULL);
27029
27030   return offset;
27031 }
27032
27033
27034 static const value_string nr_rrc_T_subframeAllocation1_vals[] = {
27035   {   0, "oneFrame" },
27036   {   1, "fourFrames" },
27037   { 0, NULL }
27038 };
27039
27040 static const per_choice_t T_subframeAllocation1_choice[] = {
27041   {   0, &hf_nr_rrc_oneFrame     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_6 },
27042   {   1, &hf_nr_rrc_fourFrames   , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_24 },
27043   { 0, NULL, 0, NULL }
27044 };
27045
27046 static int
27047 dissect_nr_rrc_T_subframeAllocation1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27048   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
27049                                  ett_nr_rrc_T_subframeAllocation1, T_subframeAllocation1_choice,
27050                                  NULL);
27051
27052   return offset;
27053 }
27054
27055
27056 static const value_string nr_rrc_T_subframeAllocation2_vals[] = {
27057   {   0, "oneFrame" },
27058   {   1, "fourFrames" },
27059   { 0, NULL }
27060 };
27061
27062 static const per_choice_t T_subframeAllocation2_choice[] = {
27063   {   0, &hf_nr_rrc_oneFrame_01  , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_2 },
27064   {   1, &hf_nr_rrc_fourFrames_01, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_8 },
27065   { 0, NULL, 0, NULL }
27066 };
27067
27068 static int
27069 dissect_nr_rrc_T_subframeAllocation2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27070   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
27071                                  ett_nr_rrc_T_subframeAllocation2, T_subframeAllocation2_choice,
27072                                  NULL);
27073
27074   return offset;
27075 }
27076
27077
27078 static const per_sequence_t EUTRA_MBSFN_SubframeConfig_sequence[] = {
27079   { &hf_nr_rrc_radioframeAllocationPeriod, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_radioframeAllocationPeriod },
27080   { &hf_nr_rrc_radioframeAllocationOffset, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_7 },
27081   { &hf_nr_rrc_subframeAllocation1, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_subframeAllocation1 },
27082   { &hf_nr_rrc_subframeAllocation2, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_subframeAllocation2 },
27083   { NULL, 0, 0, NULL }
27084 };
27085
27086 static int
27087 dissect_nr_rrc_EUTRA_MBSFN_SubframeConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27088   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
27089                                    ett_nr_rrc_EUTRA_MBSFN_SubframeConfig, EUTRA_MBSFN_SubframeConfig_sequence);
27090
27091   return offset;
27092 }
27093
27094
27095 static const per_sequence_t EUTRA_MBSFN_SubframeConfigList_sequence_of[1] = {
27096   { &hf_nr_rrc_EUTRA_MBSFN_SubframeConfigList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_EUTRA_MBSFN_SubframeConfig },
27097 };
27098
27099 static int
27100 dissect_nr_rrc_EUTRA_MBSFN_SubframeConfigList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27101   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
27102                                                   ett_nr_rrc_EUTRA_MBSFN_SubframeConfigList, EUTRA_MBSFN_SubframeConfigList_sequence_of,
27103                                                   1, maxMBSFN_Allocations, FALSE);
27104
27105   return offset;
27106 }
27107
27108
27109 static const value_string nr_rrc_T_nrofCRS_Ports_vals[] = {
27110   {   0, "n1" },
27111   {   1, "n2" },
27112   {   2, "n4" },
27113   { 0, NULL }
27114 };
27115
27116
27117 static int
27118 dissect_nr_rrc_T_nrofCRS_Ports(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27119   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
27120                                      3, NULL, FALSE, 0, NULL);
27121
27122   return offset;
27123 }
27124
27125
27126 static const value_string nr_rrc_T_v_Shift_vals[] = {
27127   {   0, "n0" },
27128   {   1, "n1" },
27129   {   2, "n2" },
27130   {   3, "n3" },
27131   {   4, "n4" },
27132   {   5, "n5" },
27133   { 0, NULL }
27134 };
27135
27136
27137 static int
27138 dissect_nr_rrc_T_v_Shift(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27139   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
27140                                      6, NULL, FALSE, 0, NULL);
27141
27142   return offset;
27143 }
27144
27145
27146 static const per_sequence_t RateMatchPatternLTE_CRS_sequence[] = {
27147   { &hf_nr_rrc_carrierFreqDL, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_16383 },
27148   { &hf_nr_rrc_carrierBandwidthDL, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_carrierBandwidthDL },
27149   { &hf_nr_rrc_mbsfn_SubframeConfigList, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_EUTRA_MBSFN_SubframeConfigList },
27150   { &hf_nr_rrc_nrofCRS_Ports, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_nrofCRS_Ports },
27151   { &hf_nr_rrc_v_Shift      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_v_Shift },
27152   { NULL, 0, 0, NULL }
27153 };
27154
27155 static int
27156 dissect_nr_rrc_RateMatchPatternLTE_CRS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27157   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
27158                                    ett_nr_rrc_RateMatchPatternLTE_CRS, RateMatchPatternLTE_CRS_sequence);
27159
27160   return offset;
27161 }
27162
27163
27164 static const value_string nr_rrc_T_lte_CRS_ToMatchAround_vals[] = {
27165   {   0, "release" },
27166   {   1, "setup" },
27167   { 0, NULL }
27168 };
27169
27170 static const per_choice_t T_lte_CRS_ToMatchAround_choice[] = {
27171   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
27172   {   1, &hf_nr_rrc_setup_48     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RateMatchPatternLTE_CRS },
27173   { 0, NULL, 0, NULL }
27174 };
27175
27176 static int
27177 dissect_nr_rrc_T_lte_CRS_ToMatchAround(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27178   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
27179                                  ett_nr_rrc_T_lte_CRS_ToMatchAround, T_lte_CRS_ToMatchAround_choice,
27180                                  NULL);
27181
27182   return offset;
27183 }
27184
27185
27186 static const per_sequence_t ServingCellConfigCommon_sequence[] = {
27187   { &hf_nr_rrc_physCellId   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_PhysCellId },
27188   { &hf_nr_rrc_downlinkConfigCommon, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_DownlinkConfigCommon },
27189   { &hf_nr_rrc_uplinkConfigCommon, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_UplinkConfigCommon },
27190   { &hf_nr_rrc_supplementaryUplinkConfig, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_UplinkConfigCommon },
27191   { &hf_nr_rrc_n_TimingAdvanceOffset, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_n_TimingAdvanceOffset },
27192   { &hf_nr_rrc_ssb_PositionsInBurst, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_ssb_PositionsInBurst },
27193   { &hf_nr_rrc_ssb_periodicityServingCell, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_ssb_periodicityServingCell },
27194   { &hf_nr_rrc_dmrs_TypeA_Position_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_dmrs_TypeA_Position_01 },
27195   { &hf_nr_rrc_lte_CRS_ToMatchAround, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_lte_CRS_ToMatchAround },
27196   { &hf_nr_rrc_rateMatchPatternToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofRateMatchPatterns_OF_RateMatchPattern },
27197   { &hf_nr_rrc_rateMatchPatternToReleaseList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofRateMatchPatterns_OF_RateMatchPatternId },
27198   { &hf_nr_rrc_subcarrierSpacing, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SubcarrierSpacing },
27199   { &hf_nr_rrc_tdd_UL_DL_ConfigurationCommon, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_TDD_UL_DL_ConfigCommon },
27200   { &hf_nr_rrc_ss_PBCH_BlockPower, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_M60_50 },
27201   { NULL, 0, 0, NULL }
27202 };
27203
27204 static int
27205 dissect_nr_rrc_ServingCellConfigCommon(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27206   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
27207                                    ett_nr_rrc_ServingCellConfigCommon, ServingCellConfigCommon_sequence);
27208
27209   return offset;
27210 }
27211
27212
27213 static const value_string nr_rrc_T_t304_vals[] = {
27214   {   0, "ms50" },
27215   {   1, "ms100" },
27216   {   2, "ms150" },
27217   {   3, "ms200" },
27218   {   4, "ms500" },
27219   {   5, "ms1000" },
27220   {   6, "ms2000" },
27221   {   7, "ms10000" },
27222   { 0, NULL }
27223 };
27224
27225
27226 static int
27227 dissect_nr_rrc_T_t304(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27228   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
27229                                      8, NULL, FALSE, 0, NULL);
27230
27231   return offset;
27232 }
27233
27234
27235 static const value_string nr_rrc_T_ssb_perRACH_Occasion_01_vals[] = {
27236   {   0, "oneEighth" },
27237   {   1, "oneFourth" },
27238   {   2, "oneHalf" },
27239   {   3, "one" },
27240   {   4, "two" },
27241   {   5, "four" },
27242   {   6, "eight" },
27243   {   7, "sixteen" },
27244   { 0, NULL }
27245 };
27246
27247
27248 static int
27249 dissect_nr_rrc_T_ssb_perRACH_Occasion_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27250   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
27251                                      8, NULL, FALSE, 0, NULL);
27252
27253   return offset;
27254 }
27255
27256
27257 static const per_sequence_t T_occasions_sequence[] = {
27258   { &hf_nr_rrc_rach_ConfigGeneric, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RACH_ConfigGeneric },
27259   { &hf_nr_rrc_ssb_perRACH_Occasion_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_ssb_perRACH_Occasion_01 },
27260   { NULL, 0, 0, NULL }
27261 };
27262
27263 static int
27264 dissect_nr_rrc_T_occasions(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27265   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
27266                                    ett_nr_rrc_T_occasions, T_occasions_sequence);
27267
27268   return offset;
27269 }
27270
27271
27272 static const per_sequence_t CFRA_SSB_Resource_sequence[] = {
27273   { &hf_nr_rrc_ssb_01       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SSB_Index },
27274   { &hf_nr_rrc_ra_PreambleIndex, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_63 },
27275   { NULL, 0, 0, NULL }
27276 };
27277
27278 static int
27279 dissect_nr_rrc_CFRA_SSB_Resource(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27280   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
27281                                    ett_nr_rrc_CFRA_SSB_Resource, CFRA_SSB_Resource_sequence);
27282
27283   return offset;
27284 }
27285
27286
27287 static const per_sequence_t SEQUENCE_SIZE_1_maxRA_SSB_Resources_OF_CFRA_SSB_Resource_sequence_of[1] = {
27288   { &hf_nr_rrc_ssb_ResourceList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CFRA_SSB_Resource },
27289 };
27290
27291 static int
27292 dissect_nr_rrc_SEQUENCE_SIZE_1_maxRA_SSB_Resources_OF_CFRA_SSB_Resource(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27293   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
27294                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxRA_SSB_Resources_OF_CFRA_SSB_Resource, SEQUENCE_SIZE_1_maxRA_SSB_Resources_OF_CFRA_SSB_Resource_sequence_of,
27295                                                   1, maxRA_SSB_Resources, FALSE);
27296
27297   return offset;
27298 }
27299
27300
27301 static const per_sequence_t T_ssb_sequence[] = {
27302   { &hf_nr_rrc_ssb_ResourceList, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SEQUENCE_SIZE_1_maxRA_SSB_Resources_OF_CFRA_SSB_Resource },
27303   { &hf_nr_rrc_ra_ssb_OccasionMaskIndex, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_15 },
27304   { NULL, 0, 0, NULL }
27305 };
27306
27307 static int
27308 dissect_nr_rrc_T_ssb(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27309   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
27310                                    ett_nr_rrc_T_ssb, T_ssb_sequence);
27311
27312   return offset;
27313 }
27314
27315
27316 static const per_sequence_t T_ra_OccasionList_01_sequence_of[1] = {
27317   { &hf_nr_rrc_ra_OccasionList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_maxRA_Occasions_1 },
27318 };
27319
27320 static int
27321 dissect_nr_rrc_T_ra_OccasionList_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27322   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
27323                                                   ett_nr_rrc_T_ra_OccasionList_01, T_ra_OccasionList_01_sequence_of,
27324                                                   1, maxRA_OccasionsPerCSIRS, FALSE);
27325
27326   return offset;
27327 }
27328
27329
27330 static const per_sequence_t CFRA_CSIRS_Resource_sequence[] = {
27331   { &hf_nr_rrc_csi_RS_02    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_RS_Index },
27332   { &hf_nr_rrc_ra_OccasionList_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_ra_OccasionList_01 },
27333   { &hf_nr_rrc_ra_PreambleIndex, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_63 },
27334   { NULL, 0, 0, NULL }
27335 };
27336
27337 static int
27338 dissect_nr_rrc_CFRA_CSIRS_Resource(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27339   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
27340                                    ett_nr_rrc_CFRA_CSIRS_Resource, CFRA_CSIRS_Resource_sequence);
27341
27342   return offset;
27343 }
27344
27345
27346 static const per_sequence_t SEQUENCE_SIZE_1_maxRA_CSIRS_Resources_OF_CFRA_CSIRS_Resource_sequence_of[1] = {
27347   { &hf_nr_rrc_csirs_ResourceList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CFRA_CSIRS_Resource },
27348 };
27349
27350 static int
27351 dissect_nr_rrc_SEQUENCE_SIZE_1_maxRA_CSIRS_Resources_OF_CFRA_CSIRS_Resource(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27352   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
27353                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxRA_CSIRS_Resources_OF_CFRA_CSIRS_Resource, SEQUENCE_SIZE_1_maxRA_CSIRS_Resources_OF_CFRA_CSIRS_Resource_sequence_of,
27354                                                   1, maxRA_CSIRS_Resources, FALSE);
27355
27356   return offset;
27357 }
27358
27359
27360 static const per_sequence_t T_csirs_sequence[] = {
27361   { &hf_nr_rrc_csirs_ResourceList, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SEQUENCE_SIZE_1_maxRA_CSIRS_Resources_OF_CFRA_CSIRS_Resource },
27362   { &hf_nr_rrc_rsrp_ThresholdCSI_RS, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RSRP_Range },
27363   { NULL, 0, 0, NULL }
27364 };
27365
27366 static int
27367 dissect_nr_rrc_T_csirs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27368   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
27369                                    ett_nr_rrc_T_csirs, T_csirs_sequence);
27370
27371   return offset;
27372 }
27373
27374
27375 static const value_string nr_rrc_T_resources_vals[] = {
27376   {   0, "ssb" },
27377   {   1, "csirs" },
27378   { 0, NULL }
27379 };
27380
27381 static const per_choice_t T_resources_choice[] = {
27382   {   0, &hf_nr_rrc_ssb_02       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_ssb },
27383   {   1, &hf_nr_rrc_csirs        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_csirs },
27384   { 0, NULL, 0, NULL }
27385 };
27386
27387 static int
27388 dissect_nr_rrc_T_resources(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27389   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
27390                                  ett_nr_rrc_T_resources, T_resources_choice,
27391                                  NULL);
27392
27393   return offset;
27394 }
27395
27396
27397 static const per_sequence_t CFRA_eag_1_sequence[] = {
27398   { &hf_nr_rrc_totalNumberOfRA_Preambles_v1530, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_63 },
27399   { NULL, 0, 0, NULL }
27400 };
27401
27402 static int
27403 dissect_nr_rrc_CFRA_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27404   offset = dissect_per_sequence_eag(tvb, offset, actx, tree, CFRA_eag_1_sequence);
27405
27406   return offset;
27407 }
27408
27409
27410 static const per_sequence_t CFRA_sequence[] = {
27411   { &hf_nr_rrc_occasions    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_occasions },
27412   { &hf_nr_rrc_resources    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_resources },
27413   { &dummy_hf_nr_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_nr_rrc_CFRA_eag_1 },
27414   { NULL, 0, 0, NULL }
27415 };
27416
27417 static int
27418 dissect_nr_rrc_CFRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27419   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
27420                                    ett_nr_rrc_CFRA, CFRA_sequence);
27421
27422   return offset;
27423 }
27424
27425
27426 static const per_sequence_t RACH_ConfigDedicated_sequence[] = {
27427   { &hf_nr_rrc_cfra         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_CFRA },
27428   { &hf_nr_rrc_ra_Prioritization, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_RA_Prioritization },
27429   { NULL, 0, 0, NULL }
27430 };
27431
27432 static int
27433 dissect_nr_rrc_RACH_ConfigDedicated(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27434   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
27435                                    ett_nr_rrc_RACH_ConfigDedicated, RACH_ConfigDedicated_sequence);
27436
27437   return offset;
27438 }
27439
27440
27441 static const value_string nr_rrc_T_rach_ConfigDedicated_vals[] = {
27442   {   0, "uplink" },
27443   {   1, "supplementaryUplink" },
27444   { 0, NULL }
27445 };
27446
27447 static const per_choice_t T_rach_ConfigDedicated_choice[] = {
27448   {   0, &hf_nr_rrc_uplink       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RACH_ConfigDedicated },
27449   {   1, &hf_nr_rrc_supplementaryUplink, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RACH_ConfigDedicated },
27450   { 0, NULL, 0, NULL }
27451 };
27452
27453 static int
27454 dissect_nr_rrc_T_rach_ConfigDedicated(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27455   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
27456                                  ett_nr_rrc_T_rach_ConfigDedicated, T_rach_ConfigDedicated_choice,
27457                                  NULL);
27458
27459   return offset;
27460 }
27461
27462
27463 static const per_sequence_t ReconfigurationWithSync_eag_1_sequence[] = {
27464   { &hf_nr_rrc_smtc         , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SSB_MTC },
27465   { NULL, 0, 0, NULL }
27466 };
27467
27468 static int
27469 dissect_nr_rrc_ReconfigurationWithSync_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27470   offset = dissect_per_sequence_eag(tvb, offset, actx, tree, ReconfigurationWithSync_eag_1_sequence);
27471
27472   return offset;
27473 }
27474
27475
27476 static const per_sequence_t ReconfigurationWithSync_sequence[] = {
27477   { &hf_nr_rrc_spCellConfigCommon, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ServingCellConfigCommon },
27478   { &hf_nr_rrc_newUE_Identity, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RNTI_Value },
27479   { &hf_nr_rrc_t304         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_t304 },
27480   { &hf_nr_rrc_rach_ConfigDedicated, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_rach_ConfigDedicated },
27481   { &dummy_hf_nr_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_nr_rrc_ReconfigurationWithSync_eag_1 },
27482   { NULL, 0, 0, NULL }
27483 };
27484
27485 static int
27486 dissect_nr_rrc_ReconfigurationWithSync(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27487   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
27488                                    ett_nr_rrc_ReconfigurationWithSync, ReconfigurationWithSync_sequence);
27489
27490   return offset;
27491 }
27492
27493
27494 static const value_string nr_rrc_T_t310_vals[] = {
27495   {   0, "ms0" },
27496   {   1, "ms50" },
27497   {   2, "ms100" },
27498   {   3, "ms200" },
27499   {   4, "ms500" },
27500   {   5, "ms1000" },
27501   {   6, "ms2000" },
27502   {   7, "ms4000" },
27503   {   8, "ms6000" },
27504   { 0, NULL }
27505 };
27506
27507
27508 static int
27509 dissect_nr_rrc_T_t310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27510   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
27511                                      9, NULL, FALSE, 0, NULL);
27512
27513   return offset;
27514 }
27515
27516
27517 static const value_string nr_rrc_T_n310_vals[] = {
27518   {   0, "n1" },
27519   {   1, "n2" },
27520   {   2, "n3" },
27521   {   3, "n4" },
27522   {   4, "n6" },
27523   {   5, "n8" },
27524   {   6, "n10" },
27525   {   7, "n20" },
27526   { 0, NULL }
27527 };
27528
27529
27530 static int
27531 dissect_nr_rrc_T_n310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27532   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
27533                                      8, NULL, FALSE, 0, NULL);
27534
27535   return offset;
27536 }
27537
27538
27539 static const value_string nr_rrc_T_n311_vals[] = {
27540   {   0, "n1" },
27541   {   1, "n2" },
27542   {   2, "n3" },
27543   {   3, "n4" },
27544   {   4, "n5" },
27545   {   5, "n6" },
27546   {   6, "n8" },
27547   {   7, "n10" },
27548   { 0, NULL }
27549 };
27550
27551
27552 static int
27553 dissect_nr_rrc_T_n311(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27554   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
27555                                      8, NULL, FALSE, 0, NULL);
27556
27557   return offset;
27558 }
27559
27560
27561 static const value_string nr_rrc_T_t311_v1530_vals[] = {
27562   {   0, "ms1000" },
27563   {   1, "ms3000" },
27564   {   2, "ms5000" },
27565   {   3, "ms10000" },
27566   {   4, "ms15000" },
27567   {   5, "ms20000" },
27568   {   6, "ms30000" },
27569   { 0, NULL }
27570 };
27571
27572
27573 static int
27574 dissect_nr_rrc_T_t311_v1530(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27575   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
27576                                      7, NULL, FALSE, 0, NULL);
27577
27578   return offset;
27579 }
27580
27581
27582 static const per_sequence_t RLF_TimersAndConstants_eag_1_sequence[] = {
27583   { &hf_nr_rrc_t311_v1530   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_t311_v1530 },
27584   { NULL, 0, 0, NULL }
27585 };
27586
27587 static int
27588 dissect_nr_rrc_RLF_TimersAndConstants_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27589   offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RLF_TimersAndConstants_eag_1_sequence);
27590
27591   return offset;
27592 }
27593
27594
27595 static const per_sequence_t RLF_TimersAndConstants_sequence[] = {
27596   { &hf_nr_rrc_t310         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_t310 },
27597   { &hf_nr_rrc_n310         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_n310 },
27598   { &hf_nr_rrc_n311         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_n311 },
27599   { &dummy_hf_nr_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_nr_rrc_RLF_TimersAndConstants_eag_1 },
27600   { NULL, 0, 0, NULL }
27601 };
27602
27603 static int
27604 dissect_nr_rrc_RLF_TimersAndConstants(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27605   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
27606                                    ett_nr_rrc_RLF_TimersAndConstants, RLF_TimersAndConstants_sequence);
27607
27608   return offset;
27609 }
27610
27611
27612 static const value_string nr_rrc_T_rlf_TimersAndConstants_vals[] = {
27613   {   0, "release" },
27614   {   1, "setup" },
27615   { 0, NULL }
27616 };
27617
27618 static const per_choice_t T_rlf_TimersAndConstants_choice[] = {
27619   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
27620   {   1, &hf_nr_rrc_setup_16     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_RLF_TimersAndConstants },
27621   { 0, NULL, 0, NULL }
27622 };
27623
27624 static int
27625 dissect_nr_rrc_T_rlf_TimersAndConstants(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27626   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
27627                                  ett_nr_rrc_T_rlf_TimersAndConstants, T_rlf_TimersAndConstants_choice,
27628                                  NULL);
27629
27630   return offset;
27631 }
27632
27633
27634 static const value_string nr_rrc_T_rlmInSyncOutOfSyncThreshold_vals[] = {
27635   {   0, "n1" },
27636   { 0, NULL }
27637 };
27638
27639
27640 static int
27641 dissect_nr_rrc_T_rlmInSyncOutOfSyncThreshold(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27642   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
27643                                      1, NULL, FALSE, 0, NULL);
27644
27645   return offset;
27646 }
27647
27648
27649
27650 static int
27651 dissect_nr_rrc_TDD_UL_DL_SlotIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27652   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
27653                                                             0U, maxNrofSlots_1, NULL, FALSE);
27654
27655   return offset;
27656 }
27657
27658
27659
27660 static int
27661 dissect_nr_rrc_INTEGER_1_maxNrofSymbols_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27662   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
27663                                                             1U, maxNrofSymbols_1, NULL, FALSE);
27664
27665   return offset;
27666 }
27667
27668
27669 static const per_sequence_t T_explicit_sequence[] = {
27670   { &hf_nr_rrc_nrofDownlinkSymbols_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_maxNrofSymbols_1 },
27671   { &hf_nr_rrc_nrofUplinkSymbols_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_maxNrofSymbols_1 },
27672   { NULL, 0, 0, NULL }
27673 };
27674
27675 static int
27676 dissect_nr_rrc_T_explicit(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27677   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
27678                                    ett_nr_rrc_T_explicit, T_explicit_sequence);
27679
27680   return offset;
27681 }
27682
27683
27684 static const value_string nr_rrc_T_symbols_vals[] = {
27685   {   0, "allDownlink" },
27686   {   1, "allUplink" },
27687   {   2, "explicit" },
27688   { 0, NULL }
27689 };
27690
27691 static const per_choice_t T_symbols_choice[] = {
27692   {   0, &hf_nr_rrc_allDownlink  , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
27693   {   1, &hf_nr_rrc_allUplink    , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
27694   {   2, &hf_nr_rrc_explicit     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_explicit },
27695   { 0, NULL, 0, NULL }
27696 };
27697
27698 static int
27699 dissect_nr_rrc_T_symbols(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27700   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
27701                                  ett_nr_rrc_T_symbols, T_symbols_choice,
27702                                  NULL);
27703
27704   return offset;
27705 }
27706
27707
27708 static const per_sequence_t TDD_UL_DL_SlotConfig_sequence[] = {
27709   { &hf_nr_rrc_slotIndex    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_TDD_UL_DL_SlotIndex },
27710   { &hf_nr_rrc_symbols      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_symbols },
27711   { NULL, 0, 0, NULL }
27712 };
27713
27714 static int
27715 dissect_nr_rrc_TDD_UL_DL_SlotConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27716   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
27717                                    ett_nr_rrc_TDD_UL_DL_SlotConfig, TDD_UL_DL_SlotConfig_sequence);
27718
27719   return offset;
27720 }
27721
27722
27723 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofSlots_OF_TDD_UL_DL_SlotConfig_sequence_of[1] = {
27724   { &hf_nr_rrc_slotSpecificConfigurationsToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_TDD_UL_DL_SlotConfig },
27725 };
27726
27727 static int
27728 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSlots_OF_TDD_UL_DL_SlotConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27729   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
27730                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSlots_OF_TDD_UL_DL_SlotConfig, SEQUENCE_SIZE_1_maxNrofSlots_OF_TDD_UL_DL_SlotConfig_sequence_of,
27731                                                   1, maxNrofSlots, FALSE);
27732
27733   return offset;
27734 }
27735
27736
27737 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofSlots_OF_TDD_UL_DL_SlotIndex_sequence_of[1] = {
27738   { &hf_nr_rrc_slotSpecificConfigurationsToreleaseList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_TDD_UL_DL_SlotIndex },
27739 };
27740
27741 static int
27742 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSlots_OF_TDD_UL_DL_SlotIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27743   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
27744                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSlots_OF_TDD_UL_DL_SlotIndex, SEQUENCE_SIZE_1_maxNrofSlots_OF_TDD_UL_DL_SlotIndex_sequence_of,
27745                                                   1, maxNrofSlots, FALSE);
27746
27747   return offset;
27748 }
27749
27750
27751 static const per_sequence_t TDD_UL_DL_ConfigDedicated_sequence[] = {
27752   { &hf_nr_rrc_slotSpecificConfigurationsToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSlots_OF_TDD_UL_DL_SlotConfig },
27753   { &hf_nr_rrc_slotSpecificConfigurationsToreleaseList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSlots_OF_TDD_UL_DL_SlotIndex },
27754   { NULL, 0, 0, NULL }
27755 };
27756
27757 static int
27758 dissect_nr_rrc_TDD_UL_DL_ConfigDedicated(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27759   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
27760                                    ett_nr_rrc_TDD_UL_DL_ConfigDedicated, TDD_UL_DL_ConfigDedicated_sequence);
27761
27762   return offset;
27763 }
27764
27765
27766 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofBWPs_OF_BWP_Id_sequence_of[1] = {
27767   { &hf_nr_rrc_downlinkBWP_ToReleaseList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BWP_Id },
27768 };
27769
27770 static int
27771 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofBWPs_OF_BWP_Id(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27772   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
27773                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofBWPs_OF_BWP_Id, SEQUENCE_SIZE_1_maxNrofBWPs_OF_BWP_Id_sequence_of,
27774                                                   1, maxNrofBWPs, FALSE);
27775
27776   return offset;
27777 }
27778
27779
27780 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofBWPs_OF_BWP_Downlink_sequence_of[1] = {
27781   { &hf_nr_rrc_downlinkBWP_ToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BWP_Downlink },
27782 };
27783
27784 static int
27785 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofBWPs_OF_BWP_Downlink(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27786   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
27787                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofBWPs_OF_BWP_Downlink, SEQUENCE_SIZE_1_maxNrofBWPs_OF_BWP_Downlink_sequence_of,
27788                                                   1, maxNrofBWPs, FALSE);
27789
27790   return offset;
27791 }
27792
27793
27794 static const value_string nr_rrc_T_bwp_InactivityTimer_vals[] = {
27795   {   0, "ms2" },
27796   {   1, "ms3" },
27797   {   2, "ms4" },
27798   {   3, "ms5" },
27799   {   4, "ms6" },
27800   {   5, "ms8" },
27801   {   6, "ms10" },
27802   {   7, "ms20" },
27803   {   8, "ms30" },
27804   {   9, "ms40" },
27805   {  10, "ms50" },
27806   {  11, "ms60" },
27807   {  12, "ms80" },
27808   {  13, "ms100" },
27809   {  14, "ms200" },
27810   {  15, "ms300" },
27811   {  16, "ms500" },
27812   {  17, "ms750" },
27813   {  18, "ms1280" },
27814   {  19, "ms1920" },
27815   {  20, "ms2560" },
27816   {  21, "spare10" },
27817   {  22, "spare9" },
27818   {  23, "spare8" },
27819   {  24, "spare7" },
27820   {  25, "spare6" },
27821   {  26, "spare5" },
27822   {  27, "spare4" },
27823   {  28, "spare3" },
27824   {  29, "spare2" },
27825   {  30, "spare1" },
27826   { 0, NULL }
27827 };
27828
27829 static value_string_ext nr_rrc_T_bwp_InactivityTimer_vals_ext = VALUE_STRING_EXT_INIT(nr_rrc_T_bwp_InactivityTimer_vals);
27830
27831
27832 static int
27833 dissect_nr_rrc_T_bwp_InactivityTimer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27834   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
27835                                      31, NULL, FALSE, 0, NULL);
27836
27837   return offset;
27838 }
27839
27840
27841 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofBWPs_OF_BWP_Uplink_sequence_of[1] = {
27842   { &hf_nr_rrc_uplinkBWP_ToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BWP_Uplink },
27843 };
27844
27845 static int
27846 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofBWPs_OF_BWP_Uplink(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27847   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
27848                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofBWPs_OF_BWP_Uplink, SEQUENCE_SIZE_1_maxNrofBWPs_OF_BWP_Uplink_sequence_of,
27849                                                   1, maxNrofBWPs, FALSE);
27850
27851   return offset;
27852 }
27853
27854
27855 static const value_string nr_rrc_T_maxCodeBlockGroupsPerTransportBlock_01_vals[] = {
27856   {   0, "n2" },
27857   {   1, "n4" },
27858   {   2, "n6" },
27859   {   3, "n8" },
27860   { 0, NULL }
27861 };
27862
27863
27864 static int
27865 dissect_nr_rrc_T_maxCodeBlockGroupsPerTransportBlock_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27866   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
27867                                      4, NULL, FALSE, 0, NULL);
27868
27869   return offset;
27870 }
27871
27872
27873 static const per_sequence_t PUSCH_CodeBlockGroupTransmission_sequence[] = {
27874   { &hf_nr_rrc_maxCodeBlockGroupsPerTransportBlock_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_maxCodeBlockGroupsPerTransportBlock_01 },
27875   { NULL, 0, 0, NULL }
27876 };
27877
27878 static int
27879 dissect_nr_rrc_PUSCH_CodeBlockGroupTransmission(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27880   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
27881                                    ett_nr_rrc_PUSCH_CodeBlockGroupTransmission, PUSCH_CodeBlockGroupTransmission_sequence);
27882
27883   return offset;
27884 }
27885
27886
27887 static const value_string nr_rrc_T_codeBlockGroupTransmission_01_vals[] = {
27888   {   0, "release" },
27889   {   1, "setup" },
27890   { 0, NULL }
27891 };
27892
27893 static const per_choice_t T_codeBlockGroupTransmission_01_choice[] = {
27894   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
27895   {   1, &hf_nr_rrc_setup_42     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_PUSCH_CodeBlockGroupTransmission },
27896   { 0, NULL, 0, NULL }
27897 };
27898
27899 static int
27900 dissect_nr_rrc_T_codeBlockGroupTransmission_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27901   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
27902                                  ett_nr_rrc_T_codeBlockGroupTransmission_01, T_codeBlockGroupTransmission_01_choice,
27903                                  NULL);
27904
27905   return offset;
27906 }
27907
27908
27909 static const value_string nr_rrc_T_rateMatching_vals[] = {
27910   {   0, "limitedBufferRM" },
27911   { 0, NULL }
27912 };
27913
27914
27915 static int
27916 dissect_nr_rrc_T_rateMatching(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27917   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
27918                                      1, NULL, FALSE, 0, NULL);
27919
27920   return offset;
27921 }
27922
27923
27924 static const value_string nr_rrc_T_xOverhead_01_vals[] = {
27925   {   0, "xoh6" },
27926   {   1, "xoh12" },
27927   {   2, "xoh18" },
27928   { 0, NULL }
27929 };
27930
27931
27932 static int
27933 dissect_nr_rrc_T_xOverhead_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27934   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
27935                                      3, NULL, FALSE, 0, NULL);
27936
27937   return offset;
27938 }
27939
27940
27941 static const per_sequence_t PUSCH_ServingCellConfig_sequence[] = {
27942   { &hf_nr_rrc_codeBlockGroupTransmission_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_codeBlockGroupTransmission_01 },
27943   { &hf_nr_rrc_rateMatching , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_rateMatching },
27944   { &hf_nr_rrc_xOverhead_01 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_xOverhead_01 },
27945   { NULL, 0, 0, NULL }
27946 };
27947
27948 static int
27949 dissect_nr_rrc_PUSCH_ServingCellConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27950   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
27951                                    ett_nr_rrc_PUSCH_ServingCellConfig, PUSCH_ServingCellConfig_sequence);
27952
27953   return offset;
27954 }
27955
27956
27957 static const value_string nr_rrc_T_pusch_ServingCellConfig_vals[] = {
27958   {   0, "release" },
27959   {   1, "setup" },
27960   { 0, NULL }
27961 };
27962
27963 static const per_choice_t T_pusch_ServingCellConfig_choice[] = {
27964   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
27965   {   1, &hf_nr_rrc_setup_46     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_PUSCH_ServingCellConfig },
27966   { 0, NULL, 0, NULL }
27967 };
27968
27969 static int
27970 dissect_nr_rrc_T_pusch_ServingCellConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27971   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
27972                                  ett_nr_rrc_T_pusch_ServingCellConfig, T_pusch_ServingCellConfig_choice,
27973                                  NULL);
27974
27975   return offset;
27976 }
27977
27978
27979 static const value_string nr_rrc_T_srs_SwitchFromCarrier_vals[] = {
27980   {   0, "sUL" },
27981   {   1, "nUL" },
27982   { 0, NULL }
27983 };
27984
27985
27986 static int
27987 dissect_nr_rrc_T_srs_SwitchFromCarrier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
27988   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
27989                                      2, NULL, FALSE, 0, NULL);
27990
27991   return offset;
27992 }
27993
27994
27995 static const per_sequence_t SRS_CC_SetIndex_sequence[] = {
27996   { &hf_nr_rrc_cc_SetIndex  , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_3 },
27997   { &hf_nr_rrc_cc_IndexInOneCC_Set, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_7 },
27998   { NULL, 0, 0, NULL }
27999 };
28000
28001 static int
28002 dissect_nr_rrc_SRS_CC_SetIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28003   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
28004                                    ett_nr_rrc_SRS_CC_SetIndex, SRS_CC_SetIndex_sequence);
28005
28006   return offset;
28007 }
28008
28009
28010 static const per_sequence_t SEQUENCE_SIZE_1_4_OF_SRS_CC_SetIndex_sequence_of[1] = {
28011   { &hf_nr_rrc_srs_CC_SetIndexlist_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SRS_CC_SetIndex },
28012 };
28013
28014 static int
28015 dissect_nr_rrc_SEQUENCE_SIZE_1_4_OF_SRS_CC_SetIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28016   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
28017                                                   ett_nr_rrc_SEQUENCE_SIZE_1_4_OF_SRS_CC_SetIndex, SEQUENCE_SIZE_1_4_OF_SRS_CC_SetIndex_sequence_of,
28018                                                   1, 4, FALSE);
28019
28020   return offset;
28021 }
28022
28023
28024 static const per_sequence_t SRS_TPC_PDCCH_Config_sequence[] = {
28025   { &hf_nr_rrc_srs_CC_SetIndexlist, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_4_OF_SRS_CC_SetIndex },
28026   { NULL, 0, 0, NULL }
28027 };
28028
28029 static int
28030 dissect_nr_rrc_SRS_TPC_PDCCH_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28031   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
28032                                    ett_nr_rrc_SRS_TPC_PDCCH_Config, SRS_TPC_PDCCH_Config_sequence);
28033
28034   return offset;
28035 }
28036
28037
28038 static const per_sequence_t SEQUENCE_SIZE_1_32_OF_SRS_TPC_PDCCH_Config_sequence_of[1] = {
28039   { &hf_nr_rrc_typeA_item   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SRS_TPC_PDCCH_Config },
28040 };
28041
28042 static int
28043 dissect_nr_rrc_SEQUENCE_SIZE_1_32_OF_SRS_TPC_PDCCH_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28044   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
28045                                                   ett_nr_rrc_SEQUENCE_SIZE_1_32_OF_SRS_TPC_PDCCH_Config, SEQUENCE_SIZE_1_32_OF_SRS_TPC_PDCCH_Config_sequence_of,
28046                                                   1, 32, FALSE);
28047
28048   return offset;
28049 }
28050
28051
28052 static const value_string nr_rrc_T_srs_TPC_PDCCH_Group_vals[] = {
28053   {   0, "typeA" },
28054   {   1, "typeB" },
28055   { 0, NULL }
28056 };
28057
28058 static const per_choice_t T_srs_TPC_PDCCH_Group_choice[] = {
28059   {   0, &hf_nr_rrc_typeA        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SEQUENCE_SIZE_1_32_OF_SRS_TPC_PDCCH_Config },
28060   {   1, &hf_nr_rrc_typeB        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SRS_TPC_PDCCH_Config },
28061   { 0, NULL, 0, NULL }
28062 };
28063
28064 static int
28065 dissect_nr_rrc_T_srs_TPC_PDCCH_Group(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28066   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
28067                                  ett_nr_rrc_T_srs_TPC_PDCCH_Group, T_srs_TPC_PDCCH_Group_choice,
28068                                  NULL);
28069
28070   return offset;
28071 }
28072
28073
28074 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofServingCells_OF_ServCellIndex_sequence_of[1] = {
28075   { &hf_nr_rrc_monitoringCells_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ServCellIndex },
28076 };
28077
28078 static int
28079 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofServingCells_OF_ServCellIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28080   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
28081                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofServingCells_OF_ServCellIndex, SEQUENCE_SIZE_1_maxNrofServingCells_OF_ServCellIndex_sequence_of,
28082                                                   1, maxNrofServingCells, FALSE);
28083
28084   return offset;
28085 }
28086
28087
28088 static const per_sequence_t SRS_CarrierSwitching_sequence[] = {
28089   { &hf_nr_rrc_srs_SwitchFromServCellIndex, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_31 },
28090   { &hf_nr_rrc_srs_SwitchFromCarrier, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_srs_SwitchFromCarrier },
28091   { &hf_nr_rrc_srs_TPC_PDCCH_Group, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_srs_TPC_PDCCH_Group },
28092   { &hf_nr_rrc_monitoringCells, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofServingCells_OF_ServCellIndex },
28093   { NULL, 0, 0, NULL }
28094 };
28095
28096 static int
28097 dissect_nr_rrc_SRS_CarrierSwitching(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28098   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
28099                                    ett_nr_rrc_SRS_CarrierSwitching, SRS_CarrierSwitching_sequence);
28100
28101   return offset;
28102 }
28103
28104
28105 static const value_string nr_rrc_T_carrierSwitching_vals[] = {
28106   {   0, "release" },
28107   {   1, "setup" },
28108   { 0, NULL }
28109 };
28110
28111 static const per_choice_t T_carrierSwitching_choice[] = {
28112   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
28113   {   1, &hf_nr_rrc_setup_47     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SRS_CarrierSwitching },
28114   { 0, NULL, 0, NULL }
28115 };
28116
28117 static int
28118 dissect_nr_rrc_T_carrierSwitching(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28119   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
28120                                  ett_nr_rrc_T_carrierSwitching, T_carrierSwitching_choice,
28121                                  NULL);
28122
28123   return offset;
28124 }
28125
28126
28127 static const per_sequence_t UplinkConfig_sequence[] = {
28128   { &hf_nr_rrc_initialUplinkBWP, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_BWP_UplinkDedicated },
28129   { &hf_nr_rrc_uplinkBWP_ToReleaseList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofBWPs_OF_BWP_Id },
28130   { &hf_nr_rrc_uplinkBWP_ToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofBWPs_OF_BWP_Uplink },
28131   { &hf_nr_rrc_firstActiveUplinkBWP_Id, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_BWP_Id },
28132   { &hf_nr_rrc_pusch_ServingCellConfig, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pusch_ServingCellConfig },
28133   { &hf_nr_rrc_carrierSwitching, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_carrierSwitching },
28134   { NULL, 0, 0, NULL }
28135 };
28136
28137 static int
28138 dissect_nr_rrc_UplinkConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28139   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
28140                                    ett_nr_rrc_UplinkConfig, UplinkConfig_sequence);
28141
28142   return offset;
28143 }
28144
28145
28146
28147 static int
28148 dissect_nr_rrc_INTEGER_1_maxSFI_DCI_PayloadSize(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28149   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
28150                                                             1U, maxSFI_DCI_PayloadSize, NULL, FALSE);
28151
28152   return offset;
28153 }
28154
28155
28156
28157 static int
28158 dissect_nr_rrc_SlotFormatCombinationId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28159   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
28160                                                             0U, maxNrofSlotFormatCombinationsPerSet_1, NULL, FALSE);
28161
28162   return offset;
28163 }
28164
28165
28166 static const per_sequence_t T_slotFormats_sequence_of[1] = {
28167   { &hf_nr_rrc_slotFormats_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_255 },
28168 };
28169
28170 static int
28171 dissect_nr_rrc_T_slotFormats(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28172   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
28173                                                   ett_nr_rrc_T_slotFormats, T_slotFormats_sequence_of,
28174                                                   1, maxNrofSlotFormatsPerCombination, FALSE);
28175
28176   return offset;
28177 }
28178
28179
28180 static const per_sequence_t SlotFormatCombination_sequence[] = {
28181   { &hf_nr_rrc_slotFormatCombinationId, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SlotFormatCombinationId },
28182   { &hf_nr_rrc_slotFormats  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_slotFormats },
28183   { NULL, 0, 0, NULL }
28184 };
28185
28186 static int
28187 dissect_nr_rrc_SlotFormatCombination(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28188   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
28189                                    ett_nr_rrc_SlotFormatCombination, SlotFormatCombination_sequence);
28190
28191   return offset;
28192 }
28193
28194
28195 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofSlotFormatCombinationsPerSet_OF_SlotFormatCombination_sequence_of[1] = {
28196   { &hf_nr_rrc_slotFormatCombinations_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SlotFormatCombination },
28197 };
28198
28199 static int
28200 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSlotFormatCombinationsPerSet_OF_SlotFormatCombination(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28201   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
28202                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSlotFormatCombinationsPerSet_OF_SlotFormatCombination, SEQUENCE_SIZE_1_maxNrofSlotFormatCombinationsPerSet_OF_SlotFormatCombination_sequence_of,
28203                                                   1, maxNrofSlotFormatCombinationsPerSet, FALSE);
28204
28205   return offset;
28206 }
28207
28208
28209
28210 static int
28211 dissect_nr_rrc_INTEGER_0_maxSFI_DCI_PayloadSize_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28212   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
28213                                                             0U, maxSFI_DCI_PayloadSize_1, NULL, FALSE);
28214
28215   return offset;
28216 }
28217
28218
28219 static const per_sequence_t SlotFormatCombinationsPerCell_sequence[] = {
28220   { &hf_nr_rrc_servingCellId, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ServCellIndex },
28221   { &hf_nr_rrc_subcarrierSpacing, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SubcarrierSpacing },
28222   { &hf_nr_rrc_subcarrierSpacing2, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SubcarrierSpacing },
28223   { &hf_nr_rrc_slotFormatCombinations, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSlotFormatCombinationsPerSet_OF_SlotFormatCombination },
28224   { &hf_nr_rrc_positionInDCI_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_maxSFI_DCI_PayloadSize_1 },
28225   { NULL, 0, 0, NULL }
28226 };
28227
28228 static int
28229 dissect_nr_rrc_SlotFormatCombinationsPerCell(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28230   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
28231                                    ett_nr_rrc_SlotFormatCombinationsPerCell, SlotFormatCombinationsPerCell_sequence);
28232
28233   return offset;
28234 }
28235
28236
28237 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofAggregatedCellsPerCellGroup_OF_SlotFormatCombinationsPerCell_sequence_of[1] = {
28238   { &hf_nr_rrc_slotFormatCombToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SlotFormatCombinationsPerCell },
28239 };
28240
28241 static int
28242 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofAggregatedCellsPerCellGroup_OF_SlotFormatCombinationsPerCell(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28243   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
28244                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofAggregatedCellsPerCellGroup_OF_SlotFormatCombinationsPerCell, SEQUENCE_SIZE_1_maxNrofAggregatedCellsPerCellGroup_OF_SlotFormatCombinationsPerCell_sequence_of,
28245                                                   1, maxNrofAggregatedCellsPerCellGroup, FALSE);
28246
28247   return offset;
28248 }
28249
28250
28251 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofAggregatedCellsPerCellGroup_OF_ServCellIndex_sequence_of[1] = {
28252   { &hf_nr_rrc_slotFormatCombToReleaseList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ServCellIndex },
28253 };
28254
28255 static int
28256 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofAggregatedCellsPerCellGroup_OF_ServCellIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28257   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
28258                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofAggregatedCellsPerCellGroup_OF_ServCellIndex, SEQUENCE_SIZE_1_maxNrofAggregatedCellsPerCellGroup_OF_ServCellIndex_sequence_of,
28259                                                   1, maxNrofAggregatedCellsPerCellGroup, FALSE);
28260
28261   return offset;
28262 }
28263
28264
28265 static const per_sequence_t SlotFormatIndicator_sequence[] = {
28266   { &hf_nr_rrc_sfi_RNTI     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RNTI_Value },
28267   { &hf_nr_rrc_dci_PayloadSize_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_maxSFI_DCI_PayloadSize },
28268   { &hf_nr_rrc_slotFormatCombToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofAggregatedCellsPerCellGroup_OF_SlotFormatCombinationsPerCell },
28269   { &hf_nr_rrc_slotFormatCombToReleaseList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofAggregatedCellsPerCellGroup_OF_ServCellIndex },
28270   { NULL, 0, 0, NULL }
28271 };
28272
28273 static int
28274 dissect_nr_rrc_SlotFormatIndicator(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28275   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
28276                                    ett_nr_rrc_SlotFormatIndicator, SlotFormatIndicator_sequence);
28277
28278   return offset;
28279 }
28280
28281
28282 static const value_string nr_rrc_T_slotFormatIndicator_vals[] = {
28283   {   0, "release" },
28284   {   1, "setup" },
28285   { 0, NULL }
28286 };
28287
28288 static const per_choice_t T_slotFormatIndicator_choice[] = {
28289   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
28290   {   1, &hf_nr_rrc_setup_32     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SlotFormatIndicator },
28291   { 0, NULL, 0, NULL }
28292 };
28293
28294 static int
28295 dissect_nr_rrc_T_slotFormatIndicator(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28296   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
28297                                  ett_nr_rrc_T_slotFormatIndicator, T_slotFormatIndicator_choice,
28298                                  NULL);
28299
28300   return offset;
28301 }
28302
28303
28304 static const per_sequence_t PDCCH_ServingCellConfig_sequence[] = {
28305   { &hf_nr_rrc_slotFormatIndicator, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_slotFormatIndicator },
28306   { NULL, 0, 0, NULL }
28307 };
28308
28309 static int
28310 dissect_nr_rrc_PDCCH_ServingCellConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28311   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
28312                                    ett_nr_rrc_PDCCH_ServingCellConfig, PDCCH_ServingCellConfig_sequence);
28313
28314   return offset;
28315 }
28316
28317
28318 static const value_string nr_rrc_T_pdcch_ServingCellConfig_vals[] = {
28319   {   0, "release" },
28320   {   1, "setup" },
28321   { 0, NULL }
28322 };
28323
28324 static const per_choice_t T_pdcch_ServingCellConfig_choice[] = {
28325   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
28326   {   1, &hf_nr_rrc_setup_43     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_PDCCH_ServingCellConfig },
28327   { 0, NULL, 0, NULL }
28328 };
28329
28330 static int
28331 dissect_nr_rrc_T_pdcch_ServingCellConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28332   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
28333                                  ett_nr_rrc_T_pdcch_ServingCellConfig, T_pdcch_ServingCellConfig_choice,
28334                                  NULL);
28335
28336   return offset;
28337 }
28338
28339
28340 static const value_string nr_rrc_T_maxCodeBlockGroupsPerTransportBlock_vals[] = {
28341   {   0, "n2" },
28342   {   1, "n4" },
28343   {   2, "n6" },
28344   {   3, "n8" },
28345   { 0, NULL }
28346 };
28347
28348
28349 static int
28350 dissect_nr_rrc_T_maxCodeBlockGroupsPerTransportBlock(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28351   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
28352                                      4, NULL, FALSE, 0, NULL);
28353
28354   return offset;
28355 }
28356
28357
28358 static const per_sequence_t PDSCH_CodeBlockGroupTransmission_sequence[] = {
28359   { &hf_nr_rrc_maxCodeBlockGroupsPerTransportBlock, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_maxCodeBlockGroupsPerTransportBlock },
28360   { &hf_nr_rrc_codeBlockGroupFlushIndicator, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
28361   { NULL, 0, 0, NULL }
28362 };
28363
28364 static int
28365 dissect_nr_rrc_PDSCH_CodeBlockGroupTransmission(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28366   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
28367                                    ett_nr_rrc_PDSCH_CodeBlockGroupTransmission, PDSCH_CodeBlockGroupTransmission_sequence);
28368
28369   return offset;
28370 }
28371
28372
28373 static const value_string nr_rrc_T_codeBlockGroupTransmission_vals[] = {
28374   {   0, "release" },
28375   {   1, "setup" },
28376   { 0, NULL }
28377 };
28378
28379 static const per_choice_t T_codeBlockGroupTransmission_choice[] = {
28380   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
28381   {   1, &hf_nr_rrc_setup_36     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_PDSCH_CodeBlockGroupTransmission },
28382   { 0, NULL, 0, NULL }
28383 };
28384
28385 static int
28386 dissect_nr_rrc_T_codeBlockGroupTransmission(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28387   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
28388                                  ett_nr_rrc_T_codeBlockGroupTransmission, T_codeBlockGroupTransmission_choice,
28389                                  NULL);
28390
28391   return offset;
28392 }
28393
28394
28395 static const value_string nr_rrc_T_xOverhead_vals[] = {
28396   {   0, "xOh6" },
28397   {   1, "xOh12" },
28398   {   2, "xOh18" },
28399   { 0, NULL }
28400 };
28401
28402
28403 static int
28404 dissect_nr_rrc_T_xOverhead(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28405   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
28406                                      3, NULL, FALSE, 0, NULL);
28407
28408   return offset;
28409 }
28410
28411
28412 static const value_string nr_rrc_T_nrofHARQ_ProcessesForPDSCH_vals[] = {
28413   {   0, "n2" },
28414   {   1, "n4" },
28415   {   2, "n6" },
28416   {   3, "n10" },
28417   {   4, "n12" },
28418   {   5, "n16" },
28419   { 0, NULL }
28420 };
28421
28422
28423 static int
28424 dissect_nr_rrc_T_nrofHARQ_ProcessesForPDSCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28425   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
28426                                      6, NULL, FALSE, 0, NULL);
28427
28428   return offset;
28429 }
28430
28431
28432 static const per_sequence_t PDSCH_ServingCellConfig_sequence[] = {
28433   { &hf_nr_rrc_codeBlockGroupTransmission, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_codeBlockGroupTransmission },
28434   { &hf_nr_rrc_xOverhead    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_xOverhead },
28435   { &hf_nr_rrc_nrofHARQ_ProcessesForPDSCH, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_nrofHARQ_ProcessesForPDSCH },
28436   { &hf_nr_rrc_pucch_Cell   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ServCellIndex },
28437   { NULL, 0, 0, NULL }
28438 };
28439
28440 static int
28441 dissect_nr_rrc_PDSCH_ServingCellConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28442   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
28443                                    ett_nr_rrc_PDSCH_ServingCellConfig, PDSCH_ServingCellConfig_sequence);
28444
28445   return offset;
28446 }
28447
28448
28449 static const value_string nr_rrc_T_pdsch_ServingCellConfig_vals[] = {
28450   {   0, "release" },
28451   {   1, "setup" },
28452   { 0, NULL }
28453 };
28454
28455 static const per_choice_t T_pdsch_ServingCellConfig_choice[] = {
28456   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
28457   {   1, &hf_nr_rrc_setup_44     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_PDSCH_ServingCellConfig },
28458   { 0, NULL, 0, NULL }
28459 };
28460
28461 static int
28462 dissect_nr_rrc_T_pdsch_ServingCellConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28463   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
28464                                  ett_nr_rrc_T_pdsch_ServingCellConfig, T_pdsch_ServingCellConfig_choice,
28465                                  NULL);
28466
28467   return offset;
28468 }
28469
28470
28471
28472 static int
28473 dissect_nr_rrc_INTEGER_M8_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28474   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
28475                                                             -8, 15U, NULL, FALSE);
28476
28477   return offset;
28478 }
28479
28480
28481 static const value_string nr_rrc_T_powerControlOffsetSS_vals[] = {
28482   {   0, "db-3" },
28483   {   1, "db0" },
28484   {   2, "db3" },
28485   {   3, "db6" },
28486   { 0, NULL }
28487 };
28488
28489
28490 static int
28491 dissect_nr_rrc_T_powerControlOffsetSS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28492   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
28493                                      4, NULL, FALSE, 0, NULL);
28494
28495   return offset;
28496 }
28497
28498
28499
28500 static int
28501 dissect_nr_rrc_ScramblingId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28502   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
28503                                                             0U, 1023U, NULL, FALSE);
28504
28505   return offset;
28506 }
28507
28508
28509 static const per_sequence_t NZP_CSI_RS_Resource_sequence[] = {
28510   { &hf_nr_rrc_nzp_CSI_RS_ResourceId, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_NZP_CSI_RS_ResourceId },
28511   { &hf_nr_rrc_resourceMapping, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_RS_ResourceMapping },
28512   { &hf_nr_rrc_powerControlOffset, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_M8_15 },
28513   { &hf_nr_rrc_powerControlOffsetSS, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_powerControlOffsetSS },
28514   { &hf_nr_rrc_scramblingID , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ScramblingId },
28515   { &hf_nr_rrc_periodicityAndOffset, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_CSI_ResourcePeriodicityAndOffset },
28516   { &hf_nr_rrc_qcl_InfoPeriodicCSI_RS, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_TCI_StateId },
28517   { NULL, 0, 0, NULL }
28518 };
28519
28520 static int
28521 dissect_nr_rrc_NZP_CSI_RS_Resource(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28522   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
28523                                    ett_nr_rrc_NZP_CSI_RS_Resource, NZP_CSI_RS_Resource_sequence);
28524
28525   return offset;
28526 }
28527
28528
28529 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_Resources_OF_NZP_CSI_RS_Resource_sequence_of[1] = {
28530   { &hf_nr_rrc_nzp_CSI_RS_ResourceToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_NZP_CSI_RS_Resource },
28531 };
28532
28533 static int
28534 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_Resources_OF_NZP_CSI_RS_Resource(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28535   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
28536                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_Resources_OF_NZP_CSI_RS_Resource, SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_Resources_OF_NZP_CSI_RS_Resource_sequence_of,
28537                                                   1, maxNrofNZP_CSI_RS_Resources, FALSE);
28538
28539   return offset;
28540 }
28541
28542
28543 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_Resources_OF_NZP_CSI_RS_ResourceId_sequence_of[1] = {
28544   { &hf_nr_rrc_nzp_CSI_RS_ResourceToReleaseList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_NZP_CSI_RS_ResourceId },
28545 };
28546
28547 static int
28548 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_Resources_OF_NZP_CSI_RS_ResourceId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28549   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
28550                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_Resources_OF_NZP_CSI_RS_ResourceId, SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_Resources_OF_NZP_CSI_RS_ResourceId_sequence_of,
28551                                                   1, maxNrofNZP_CSI_RS_Resources, FALSE);
28552
28553   return offset;
28554 }
28555
28556
28557
28558 static int
28559 dissect_nr_rrc_NZP_CSI_RS_ResourceSetId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28560   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
28561                                                             0U, maxNrofNZP_CSI_RS_ResourceSets_1, NULL, FALSE);
28562
28563   return offset;
28564 }
28565
28566
28567 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourcesPerSet_OF_NZP_CSI_RS_ResourceId_sequence_of[1] = {
28568   { &hf_nr_rrc_nzp_CSI_RS_Resources_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_NZP_CSI_RS_ResourceId },
28569 };
28570
28571 static int
28572 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourcesPerSet_OF_NZP_CSI_RS_ResourceId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28573   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
28574                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourcesPerSet_OF_NZP_CSI_RS_ResourceId, SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourcesPerSet_OF_NZP_CSI_RS_ResourceId_sequence_of,
28575                                                   1, maxNrofNZP_CSI_RS_ResourcesPerSet, FALSE);
28576
28577   return offset;
28578 }
28579
28580
28581 static const value_string nr_rrc_T_repetition_vals[] = {
28582   {   0, "on" },
28583   {   1, "off" },
28584   { 0, NULL }
28585 };
28586
28587
28588 static int
28589 dissect_nr_rrc_T_repetition(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28590   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
28591                                      2, NULL, FALSE, 0, NULL);
28592
28593   return offset;
28594 }
28595
28596
28597 static const value_string nr_rrc_T_trs_Info_vals[] = {
28598   {   0, "true" },
28599   { 0, NULL }
28600 };
28601
28602
28603 static int
28604 dissect_nr_rrc_T_trs_Info(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28605   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
28606                                      1, NULL, FALSE, 0, NULL);
28607
28608   return offset;
28609 }
28610
28611
28612 static const per_sequence_t NZP_CSI_RS_ResourceSet_sequence[] = {
28613   { &hf_nr_rrc_nzp_CSI_ResourceSetId, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_NZP_CSI_RS_ResourceSetId },
28614   { &hf_nr_rrc_nzp_CSI_RS_Resources, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourcesPerSet_OF_NZP_CSI_RS_ResourceId },
28615   { &hf_nr_rrc_repetition   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_repetition },
28616   { &hf_nr_rrc_aperiodicTriggeringOffset, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_4 },
28617   { &hf_nr_rrc_trs_Info     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_trs_Info },
28618   { NULL, 0, 0, NULL }
28619 };
28620
28621 static int
28622 dissect_nr_rrc_NZP_CSI_RS_ResourceSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28623   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
28624                                    ett_nr_rrc_NZP_CSI_RS_ResourceSet, NZP_CSI_RS_ResourceSet_sequence);
28625
28626   return offset;
28627 }
28628
28629
28630 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourceSets_OF_NZP_CSI_RS_ResourceSet_sequence_of[1] = {
28631   { &hf_nr_rrc_nzp_CSI_RS_ResourceSetToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_NZP_CSI_RS_ResourceSet },
28632 };
28633
28634 static int
28635 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourceSets_OF_NZP_CSI_RS_ResourceSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28636   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
28637                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourceSets_OF_NZP_CSI_RS_ResourceSet, SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourceSets_OF_NZP_CSI_RS_ResourceSet_sequence_of,
28638                                                   1, maxNrofNZP_CSI_RS_ResourceSets, FALSE);
28639
28640   return offset;
28641 }
28642
28643
28644 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourceSets_OF_NZP_CSI_RS_ResourceSetId_sequence_of[1] = {
28645   { &hf_nr_rrc_nzp_CSI_RS_ResourceSetToReleaseList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_NZP_CSI_RS_ResourceSetId },
28646 };
28647
28648 static int
28649 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourceSets_OF_NZP_CSI_RS_ResourceSetId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28650   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
28651                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourceSets_OF_NZP_CSI_RS_ResourceSetId, SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourceSets_OF_NZP_CSI_RS_ResourceSetId_sequence_of,
28652                                                   1, maxNrofNZP_CSI_RS_ResourceSets, FALSE);
28653
28654   return offset;
28655 }
28656
28657
28658
28659 static int
28660 dissect_nr_rrc_CSI_IM_ResourceId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28661   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
28662                                                             0U, maxNrofCSI_IM_Resources_1, NULL, FALSE);
28663
28664   return offset;
28665 }
28666
28667
28668 static const value_string nr_rrc_T_subcarrierLocation_p0_vals[] = {
28669   {   0, "s0" },
28670   {   1, "s2" },
28671   {   2, "s4" },
28672   {   3, "s6" },
28673   {   4, "s8" },
28674   {   5, "s10" },
28675   { 0, NULL }
28676 };
28677
28678
28679 static int
28680 dissect_nr_rrc_T_subcarrierLocation_p0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28681   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
28682                                      6, NULL, FALSE, 0, NULL);
28683
28684   return offset;
28685 }
28686
28687
28688
28689 static int
28690 dissect_nr_rrc_INTEGER_0_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28691   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
28692                                                             0U, 12U, NULL, FALSE);
28693
28694   return offset;
28695 }
28696
28697
28698 static const per_sequence_t T_pattern0_sequence[] = {
28699   { &hf_nr_rrc_subcarrierLocation_p0, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_subcarrierLocation_p0 },
28700   { &hf_nr_rrc_symbolLocation_p0, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_12 },
28701   { NULL, 0, 0, NULL }
28702 };
28703
28704 static int
28705 dissect_nr_rrc_T_pattern0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28706   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
28707                                    ett_nr_rrc_T_pattern0, T_pattern0_sequence);
28708
28709   return offset;
28710 }
28711
28712
28713 static const value_string nr_rrc_T_subcarrierLocation_p1_vals[] = {
28714   {   0, "s0" },
28715   {   1, "s4" },
28716   {   2, "s8" },
28717   { 0, NULL }
28718 };
28719
28720
28721 static int
28722 dissect_nr_rrc_T_subcarrierLocation_p1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28723   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
28724                                      3, NULL, FALSE, 0, NULL);
28725
28726   return offset;
28727 }
28728
28729
28730 static const per_sequence_t T_pattern1_sequence[] = {
28731   { &hf_nr_rrc_subcarrierLocation_p1, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_subcarrierLocation_p1 },
28732   { &hf_nr_rrc_symbolLocation_p1, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_13 },
28733   { NULL, 0, 0, NULL }
28734 };
28735
28736 static int
28737 dissect_nr_rrc_T_pattern1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28738   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
28739                                    ett_nr_rrc_T_pattern1, T_pattern1_sequence);
28740
28741   return offset;
28742 }
28743
28744
28745 static const value_string nr_rrc_T_csi_IM_ResourceElementPattern_vals[] = {
28746   {   0, "pattern0" },
28747   {   1, "pattern1" },
28748   { 0, NULL }
28749 };
28750
28751 static const per_choice_t T_csi_IM_ResourceElementPattern_choice[] = {
28752   {   0, &hf_nr_rrc_pattern0     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_pattern0 },
28753   {   1, &hf_nr_rrc_pattern1     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_pattern1 },
28754   { 0, NULL, 0, NULL }
28755 };
28756
28757 static int
28758 dissect_nr_rrc_T_csi_IM_ResourceElementPattern(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28759   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
28760                                  ett_nr_rrc_T_csi_IM_ResourceElementPattern, T_csi_IM_ResourceElementPattern_choice,
28761                                  NULL);
28762
28763   return offset;
28764 }
28765
28766
28767 static const per_sequence_t CSI_IM_Resource_sequence[] = {
28768   { &hf_nr_rrc_csi_IM_ResourceId, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_IM_ResourceId },
28769   { &hf_nr_rrc_csi_IM_ResourceElementPattern, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_csi_IM_ResourceElementPattern },
28770   { &hf_nr_rrc_freqBand     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_CSI_FrequencyOccupation },
28771   { &hf_nr_rrc_periodicityAndOffset, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_CSI_ResourcePeriodicityAndOffset },
28772   { NULL, 0, 0, NULL }
28773 };
28774
28775 static int
28776 dissect_nr_rrc_CSI_IM_Resource(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28777   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
28778                                    ett_nr_rrc_CSI_IM_Resource, CSI_IM_Resource_sequence);
28779
28780   return offset;
28781 }
28782
28783
28784 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofCSI_IM_Resources_OF_CSI_IM_Resource_sequence_of[1] = {
28785   { &hf_nr_rrc_csi_IM_ResourceToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_IM_Resource },
28786 };
28787
28788 static int
28789 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_IM_Resources_OF_CSI_IM_Resource(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28790   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
28791                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_IM_Resources_OF_CSI_IM_Resource, SEQUENCE_SIZE_1_maxNrofCSI_IM_Resources_OF_CSI_IM_Resource_sequence_of,
28792                                                   1, maxNrofCSI_IM_Resources, FALSE);
28793
28794   return offset;
28795 }
28796
28797
28798 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofCSI_IM_Resources_OF_CSI_IM_ResourceId_sequence_of[1] = {
28799   { &hf_nr_rrc_csi_IM_ResourceToReleaseList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_IM_ResourceId },
28800 };
28801
28802 static int
28803 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_IM_Resources_OF_CSI_IM_ResourceId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28804   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
28805                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_IM_Resources_OF_CSI_IM_ResourceId, SEQUENCE_SIZE_1_maxNrofCSI_IM_Resources_OF_CSI_IM_ResourceId_sequence_of,
28806                                                   1, maxNrofCSI_IM_Resources, FALSE);
28807
28808   return offset;
28809 }
28810
28811
28812
28813 static int
28814 dissect_nr_rrc_CSI_IM_ResourceSetId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28815   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
28816                                                             0U, maxNrofCSI_IM_ResourceSets_1, NULL, FALSE);
28817
28818   return offset;
28819 }
28820
28821
28822 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourcesPerSet_OF_CSI_IM_ResourceId_sequence_of[1] = {
28823   { &hf_nr_rrc_csi_IM_Resources_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_IM_ResourceId },
28824 };
28825
28826 static int
28827 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourcesPerSet_OF_CSI_IM_ResourceId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28828   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
28829                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourcesPerSet_OF_CSI_IM_ResourceId, SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourcesPerSet_OF_CSI_IM_ResourceId_sequence_of,
28830                                                   1, maxNrofCSI_IM_ResourcesPerSet, FALSE);
28831
28832   return offset;
28833 }
28834
28835
28836 static const per_sequence_t CSI_IM_ResourceSet_sequence[] = {
28837   { &hf_nr_rrc_csi_IM_ResourceSetId, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_IM_ResourceSetId },
28838   { &hf_nr_rrc_csi_IM_Resources, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourcesPerSet_OF_CSI_IM_ResourceId },
28839   { NULL, 0, 0, NULL }
28840 };
28841
28842 static int
28843 dissect_nr_rrc_CSI_IM_ResourceSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28844   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
28845                                    ett_nr_rrc_CSI_IM_ResourceSet, CSI_IM_ResourceSet_sequence);
28846
28847   return offset;
28848 }
28849
28850
28851 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourceSets_OF_CSI_IM_ResourceSet_sequence_of[1] = {
28852   { &hf_nr_rrc_csi_IM_ResourceSetToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_IM_ResourceSet },
28853 };
28854
28855 static int
28856 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourceSets_OF_CSI_IM_ResourceSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28857   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
28858                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourceSets_OF_CSI_IM_ResourceSet, SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourceSets_OF_CSI_IM_ResourceSet_sequence_of,
28859                                                   1, maxNrofCSI_IM_ResourceSets, FALSE);
28860
28861   return offset;
28862 }
28863
28864
28865 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourceSets_OF_CSI_IM_ResourceSetId_sequence_of[1] = {
28866   { &hf_nr_rrc_csi_IM_ResourceSetToReleaseList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_IM_ResourceSetId },
28867 };
28868
28869 static int
28870 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourceSets_OF_CSI_IM_ResourceSetId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28871   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
28872                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourceSets_OF_CSI_IM_ResourceSetId, SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourceSets_OF_CSI_IM_ResourceSetId_sequence_of,
28873                                                   1, maxNrofCSI_IM_ResourceSets, FALSE);
28874
28875   return offset;
28876 }
28877
28878
28879
28880 static int
28881 dissect_nr_rrc_CSI_SSB_ResourceSetId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28882   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
28883                                                             0U, maxNrofCSI_SSB_ResourceSets_1, NULL, FALSE);
28884
28885   return offset;
28886 }
28887
28888
28889 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourcePerSet_OF_SSB_Index_sequence_of[1] = {
28890   { &hf_nr_rrc_csi_SSB_ResourceList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SSB_Index },
28891 };
28892
28893 static int
28894 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourcePerSet_OF_SSB_Index(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28895   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
28896                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourcePerSet_OF_SSB_Index, SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourcePerSet_OF_SSB_Index_sequence_of,
28897                                                   1, maxNrofCSI_SSB_ResourcePerSet, FALSE);
28898
28899   return offset;
28900 }
28901
28902
28903 static const per_sequence_t CSI_SSB_ResourceSet_sequence[] = {
28904   { &hf_nr_rrc_csi_SSB_ResourceSetId, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_SSB_ResourceSetId },
28905   { &hf_nr_rrc_csi_SSB_ResourceList, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourcePerSet_OF_SSB_Index },
28906   { NULL, 0, 0, NULL }
28907 };
28908
28909 static int
28910 dissect_nr_rrc_CSI_SSB_ResourceSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28911   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
28912                                    ett_nr_rrc_CSI_SSB_ResourceSet, CSI_SSB_ResourceSet_sequence);
28913
28914   return offset;
28915 }
28916
28917
28918 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourceSets_OF_CSI_SSB_ResourceSet_sequence_of[1] = {
28919   { &hf_nr_rrc_csi_SSB_ResourceSetToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_SSB_ResourceSet },
28920 };
28921
28922 static int
28923 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourceSets_OF_CSI_SSB_ResourceSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28924   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
28925                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourceSets_OF_CSI_SSB_ResourceSet, SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourceSets_OF_CSI_SSB_ResourceSet_sequence_of,
28926                                                   1, maxNrofCSI_SSB_ResourceSets, FALSE);
28927
28928   return offset;
28929 }
28930
28931
28932 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourceSets_OF_CSI_SSB_ResourceSetId_sequence_of[1] = {
28933   { &hf_nr_rrc_csi_SSB_ResourceSetToAddReleaseList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_SSB_ResourceSetId },
28934 };
28935
28936 static int
28937 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourceSets_OF_CSI_SSB_ResourceSetId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28938   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
28939                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourceSets_OF_CSI_SSB_ResourceSetId, SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourceSets_OF_CSI_SSB_ResourceSetId_sequence_of,
28940                                                   1, maxNrofCSI_SSB_ResourceSets, FALSE);
28941
28942   return offset;
28943 }
28944
28945
28946
28947 static int
28948 dissect_nr_rrc_CSI_ResourceConfigId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28949   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
28950                                                             0U, maxNrofCSI_ResourceConfigurations_1, NULL, FALSE);
28951
28952   return offset;
28953 }
28954
28955
28956 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourceSetsPerConfig_OF_NZP_CSI_RS_ResourceSetId_sequence_of[1] = {
28957   { &hf_nr_rrc_nzp_CSI_RS_ResourceSetList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_NZP_CSI_RS_ResourceSetId },
28958 };
28959
28960 static int
28961 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourceSetsPerConfig_OF_NZP_CSI_RS_ResourceSetId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28962   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
28963                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourceSetsPerConfig_OF_NZP_CSI_RS_ResourceSetId, SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourceSetsPerConfig_OF_NZP_CSI_RS_ResourceSetId_sequence_of,
28964                                                   1, maxNrofNZP_CSI_RS_ResourceSetsPerConfig, FALSE);
28965
28966   return offset;
28967 }
28968
28969
28970 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourceSetsPerConfig_OF_CSI_SSB_ResourceSetId_sequence_of[1] = {
28971   { &hf_nr_rrc_csi_SSB_ResourceSetList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_SSB_ResourceSetId },
28972 };
28973
28974 static int
28975 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourceSetsPerConfig_OF_CSI_SSB_ResourceSetId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28976   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
28977                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourceSetsPerConfig_OF_CSI_SSB_ResourceSetId, SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourceSetsPerConfig_OF_CSI_SSB_ResourceSetId_sequence_of,
28978                                                   1, maxNrofCSI_SSB_ResourceSetsPerConfig, FALSE);
28979
28980   return offset;
28981 }
28982
28983
28984 static const per_sequence_t T_nzp_CSI_RS_SSB_sequence[] = {
28985   { &hf_nr_rrc_nzp_CSI_RS_ResourceSetList, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourceSetsPerConfig_OF_NZP_CSI_RS_ResourceSetId },
28986   { &hf_nr_rrc_csi_SSB_ResourceSetList, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourceSetsPerConfig_OF_CSI_SSB_ResourceSetId },
28987   { NULL, 0, 0, NULL }
28988 };
28989
28990 static int
28991 dissect_nr_rrc_T_nzp_CSI_RS_SSB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
28992   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
28993                                    ett_nr_rrc_T_nzp_CSI_RS_SSB, T_nzp_CSI_RS_SSB_sequence);
28994
28995   return offset;
28996 }
28997
28998
28999 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourceSetsPerConfig_OF_CSI_IM_ResourceSetId_sequence_of[1] = {
29000   { &hf_nr_rrc_csi_IM_ResourceSetList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_IM_ResourceSetId },
29001 };
29002
29003 static int
29004 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourceSetsPerConfig_OF_CSI_IM_ResourceSetId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29005   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
29006                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourceSetsPerConfig_OF_CSI_IM_ResourceSetId, SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourceSetsPerConfig_OF_CSI_IM_ResourceSetId_sequence_of,
29007                                                   1, maxNrofCSI_IM_ResourceSetsPerConfig, FALSE);
29008
29009   return offset;
29010 }
29011
29012
29013 static const value_string nr_rrc_T_csi_RS_ResourceSetList_vals[] = {
29014   {   0, "nzp-CSI-RS-SSB" },
29015   {   1, "csi-IM-ResourceSetList" },
29016   { 0, NULL }
29017 };
29018
29019 static const per_choice_t T_csi_RS_ResourceSetList_choice[] = {
29020   {   0, &hf_nr_rrc_nzp_CSI_RS_SSB, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_nzp_CSI_RS_SSB },
29021   {   1, &hf_nr_rrc_csi_IM_ResourceSetList, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourceSetsPerConfig_OF_CSI_IM_ResourceSetId },
29022   { 0, NULL, 0, NULL }
29023 };
29024
29025 static int
29026 dissect_nr_rrc_T_csi_RS_ResourceSetList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29027   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
29028                                  ett_nr_rrc_T_csi_RS_ResourceSetList, T_csi_RS_ResourceSetList_choice,
29029                                  NULL);
29030
29031   return offset;
29032 }
29033
29034
29035 static const value_string nr_rrc_T_resourceType_vals[] = {
29036   {   0, "aperiodic" },
29037   {   1, "semiPersistent" },
29038   {   2, "periodic" },
29039   { 0, NULL }
29040 };
29041
29042
29043 static int
29044 dissect_nr_rrc_T_resourceType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29045   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
29046                                      3, NULL, FALSE, 0, NULL);
29047
29048   return offset;
29049 }
29050
29051
29052 static const per_sequence_t CSI_ResourceConfig_sequence[] = {
29053   { &hf_nr_rrc_csi_ResourceConfigId, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_ResourceConfigId },
29054   { &hf_nr_rrc_csi_RS_ResourceSetList, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_csi_RS_ResourceSetList },
29055   { &hf_nr_rrc_bwp_Id       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BWP_Id },
29056   { &hf_nr_rrc_resourceType , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_resourceType },
29057   { NULL, 0, 0, NULL }
29058 };
29059
29060 static int
29061 dissect_nr_rrc_CSI_ResourceConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29062   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
29063                                    ett_nr_rrc_CSI_ResourceConfig, CSI_ResourceConfig_sequence);
29064
29065   return offset;
29066 }
29067
29068
29069 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofCSI_ResourceConfigurations_OF_CSI_ResourceConfig_sequence_of[1] = {
29070   { &hf_nr_rrc_csi_ResourceConfigToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_ResourceConfig },
29071 };
29072
29073 static int
29074 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_ResourceConfigurations_OF_CSI_ResourceConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29075   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
29076                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_ResourceConfigurations_OF_CSI_ResourceConfig, SEQUENCE_SIZE_1_maxNrofCSI_ResourceConfigurations_OF_CSI_ResourceConfig_sequence_of,
29077                                                   1, maxNrofCSI_ResourceConfigurations, FALSE);
29078
29079   return offset;
29080 }
29081
29082
29083 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofCSI_ResourceConfigurations_OF_CSI_ResourceConfigId_sequence_of[1] = {
29084   { &hf_nr_rrc_csi_ResourceConfigToReleaseList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_ResourceConfigId },
29085 };
29086
29087 static int
29088 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_ResourceConfigurations_OF_CSI_ResourceConfigId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29089   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
29090                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_ResourceConfigurations_OF_CSI_ResourceConfigId, SEQUENCE_SIZE_1_maxNrofCSI_ResourceConfigurations_OF_CSI_ResourceConfigId_sequence_of,
29091                                                   1, maxNrofCSI_ResourceConfigurations, FALSE);
29092
29093   return offset;
29094 }
29095
29096
29097
29098 static int
29099 dissect_nr_rrc_CSI_ReportConfigId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29100   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
29101                                                             0U, maxNrofCSI_ReportConfigurations_1, NULL, FALSE);
29102
29103   return offset;
29104 }
29105
29106
29107 static const value_string nr_rrc_CSI_ReportPeriodicityAndOffset_vals[] = {
29108   {   0, "slots4" },
29109   {   1, "slots5" },
29110   {   2, "slots8" },
29111   {   3, "slots10" },
29112   {   4, "slots16" },
29113   {   5, "slots20" },
29114   {   6, "slots40" },
29115   {   7, "slots80" },
29116   {   8, "slots160" },
29117   {   9, "slots320" },
29118   { 0, NULL }
29119 };
29120
29121 static const per_choice_t CSI_ReportPeriodicityAndOffset_choice[] = {
29122   {   0, &hf_nr_rrc_slots4       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_3 },
29123   {   1, &hf_nr_rrc_slots5       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_4 },
29124   {   2, &hf_nr_rrc_slots8       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_7 },
29125   {   3, &hf_nr_rrc_slots10      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_9 },
29126   {   4, &hf_nr_rrc_slots16      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_15 },
29127   {   5, &hf_nr_rrc_slots20      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_19 },
29128   {   6, &hf_nr_rrc_slots40      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_39 },
29129   {   7, &hf_nr_rrc_slots80      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_79 },
29130   {   8, &hf_nr_rrc_slots160     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_159 },
29131   {   9, &hf_nr_rrc_slots320     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_0_319 },
29132   { 0, NULL, 0, NULL }
29133 };
29134
29135 static int
29136 dissect_nr_rrc_CSI_ReportPeriodicityAndOffset(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29137   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
29138                                  ett_nr_rrc_CSI_ReportPeriodicityAndOffset, CSI_ReportPeriodicityAndOffset_choice,
29139                                  NULL);
29140
29141   return offset;
29142 }
29143
29144
29145 static const per_sequence_t PUCCH_CSI_Resource_sequence[] = {
29146   { &hf_nr_rrc_uplinkBandwidthPartId, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BWP_Id },
29147   { &hf_nr_rrc_pucch_Resource, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PUCCH_ResourceId },
29148   { NULL, 0, 0, NULL }
29149 };
29150
29151 static int
29152 dissect_nr_rrc_PUCCH_CSI_Resource(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29153   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
29154                                    ett_nr_rrc_PUCCH_CSI_Resource, PUCCH_CSI_Resource_sequence);
29155
29156   return offset;
29157 }
29158
29159
29160 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofBWPs_OF_PUCCH_CSI_Resource_sequence_of[1] = {
29161   { &hf_nr_rrc_pucch_CSI_ResourceList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PUCCH_CSI_Resource },
29162 };
29163
29164 static int
29165 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofBWPs_OF_PUCCH_CSI_Resource(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29166   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
29167                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofBWPs_OF_PUCCH_CSI_Resource, SEQUENCE_SIZE_1_maxNrofBWPs_OF_PUCCH_CSI_Resource_sequence_of,
29168                                                   1, maxNrofBWPs, FALSE);
29169
29170   return offset;
29171 }
29172
29173
29174 static const per_sequence_t T_periodic_sequence[] = {
29175   { &hf_nr_rrc_reportSlotConfig, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_ReportPeriodicityAndOffset },
29176   { &hf_nr_rrc_pucch_CSI_ResourceList, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofBWPs_OF_PUCCH_CSI_Resource },
29177   { NULL, 0, 0, NULL }
29178 };
29179
29180 static int
29181 dissect_nr_rrc_T_periodic(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29182   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
29183                                    ett_nr_rrc_T_periodic, T_periodic_sequence);
29184
29185   return offset;
29186 }
29187
29188
29189 static const per_sequence_t T_semiPersistentOnPUCCH_sequence[] = {
29190   { &hf_nr_rrc_reportSlotConfig, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_ReportPeriodicityAndOffset },
29191   { &hf_nr_rrc_pucch_CSI_ResourceList, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofBWPs_OF_PUCCH_CSI_Resource },
29192   { NULL, 0, 0, NULL }
29193 };
29194
29195 static int
29196 dissect_nr_rrc_T_semiPersistentOnPUCCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29197   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
29198                                    ett_nr_rrc_T_semiPersistentOnPUCCH, T_semiPersistentOnPUCCH_sequence);
29199
29200   return offset;
29201 }
29202
29203
29204 static const value_string nr_rrc_T_reportSlotConfig_vals[] = {
29205   {   0, "sl5" },
29206   {   1, "sl10" },
29207   {   2, "sl20" },
29208   {   3, "sl40" },
29209   {   4, "sl80" },
29210   {   5, "sl160" },
29211   {   6, "sl320" },
29212   { 0, NULL }
29213 };
29214
29215
29216 static int
29217 dissect_nr_rrc_T_reportSlotConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29218   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
29219                                      7, NULL, FALSE, 0, NULL);
29220
29221   return offset;
29222 }
29223
29224
29225 static const per_sequence_t T_reportSlotOffsetList_sequence_of[1] = {
29226   { &hf_nr_rrc_reportSlotOffsetList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_32 },
29227 };
29228
29229 static int
29230 dissect_nr_rrc_T_reportSlotOffsetList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29231   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
29232                                                   ett_nr_rrc_T_reportSlotOffsetList, T_reportSlotOffsetList_sequence_of,
29233                                                   1, maxNrofUL_Allocations, FALSE);
29234
29235   return offset;
29236 }
29237
29238
29239 static const per_sequence_t T_semiPersistentOnPUSCH_sequence[] = {
29240   { &hf_nr_rrc_reportSlotConfig_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_reportSlotConfig },
29241   { &hf_nr_rrc_reportSlotOffsetList, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_reportSlotOffsetList },
29242   { &hf_nr_rrc_p0alpha      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_P0_PUSCH_AlphaSetId },
29243   { NULL, 0, 0, NULL }
29244 };
29245
29246 static int
29247 dissect_nr_rrc_T_semiPersistentOnPUSCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29248   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
29249                                    ett_nr_rrc_T_semiPersistentOnPUSCH, T_semiPersistentOnPUSCH_sequence);
29250
29251   return offset;
29252 }
29253
29254
29255 static const per_sequence_t T_reportSlotOffsetList_01_sequence_of[1] = {
29256   { &hf_nr_rrc_reportSlotOffsetList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_32 },
29257 };
29258
29259 static int
29260 dissect_nr_rrc_T_reportSlotOffsetList_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29261   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
29262                                                   ett_nr_rrc_T_reportSlotOffsetList_01, T_reportSlotOffsetList_01_sequence_of,
29263                                                   1, maxNrofUL_Allocations, FALSE);
29264
29265   return offset;
29266 }
29267
29268
29269 static const per_sequence_t T_aperiodic_sequence[] = {
29270   { &hf_nr_rrc_reportSlotOffsetList_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_reportSlotOffsetList_01 },
29271   { NULL, 0, 0, NULL }
29272 };
29273
29274 static int
29275 dissect_nr_rrc_T_aperiodic(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29276   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
29277                                    ett_nr_rrc_T_aperiodic, T_aperiodic_sequence);
29278
29279   return offset;
29280 }
29281
29282
29283 static const value_string nr_rrc_T_reportConfigType_vals[] = {
29284   {   0, "periodic" },
29285   {   1, "semiPersistentOnPUCCH" },
29286   {   2, "semiPersistentOnPUSCH" },
29287   {   3, "aperiodic" },
29288   { 0, NULL }
29289 };
29290
29291 static const per_choice_t T_reportConfigType_choice[] = {
29292   {   0, &hf_nr_rrc_periodic     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_periodic },
29293   {   1, &hf_nr_rrc_semiPersistentOnPUCCH, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_semiPersistentOnPUCCH },
29294   {   2, &hf_nr_rrc_semiPersistentOnPUSCH, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_semiPersistentOnPUSCH },
29295   {   3, &hf_nr_rrc_aperiodic    , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_aperiodic },
29296   { 0, NULL, 0, NULL }
29297 };
29298
29299 static int
29300 dissect_nr_rrc_T_reportConfigType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29301   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
29302                                  ett_nr_rrc_T_reportConfigType, T_reportConfigType_choice,
29303                                  NULL);
29304
29305   return offset;
29306 }
29307
29308
29309 static const value_string nr_rrc_T_pdsch_BundleSizeForCSI_vals[] = {
29310   {   0, "n2" },
29311   {   1, "n4" },
29312   { 0, NULL }
29313 };
29314
29315
29316 static int
29317 dissect_nr_rrc_T_pdsch_BundleSizeForCSI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29318   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
29319                                      2, NULL, FALSE, 0, NULL);
29320
29321   return offset;
29322 }
29323
29324
29325 static const per_sequence_t T_cri_RI_i1_CQI_sequence[] = {
29326   { &hf_nr_rrc_pdsch_BundleSizeForCSI, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_pdsch_BundleSizeForCSI },
29327   { NULL, 0, 0, NULL }
29328 };
29329
29330 static int
29331 dissect_nr_rrc_T_cri_RI_i1_CQI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29332   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
29333                                    ett_nr_rrc_T_cri_RI_i1_CQI, T_cri_RI_i1_CQI_sequence);
29334
29335   return offset;
29336 }
29337
29338
29339 static const value_string nr_rrc_T_reportQuantity_vals[] = {
29340   {   0, "none" },
29341   {   1, "cri-RI-PMI-CQI" },
29342   {   2, "cri-RI-i1" },
29343   {   3, "cri-RI-i1-CQI" },
29344   {   4, "cri-RI-CQI" },
29345   {   5, "cri-RSRP" },
29346   {   6, "ssb-Index-RSRP" },
29347   {   7, "cri-RI-LI-PMI-CQI" },
29348   { 0, NULL }
29349 };
29350
29351 static const per_choice_t T_reportQuantity_choice[] = {
29352   {   0, &hf_nr_rrc_none         , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
29353   {   1, &hf_nr_rrc_cri_RI_PMI_CQI, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
29354   {   2, &hf_nr_rrc_cri_RI_i1    , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
29355   {   3, &hf_nr_rrc_cri_RI_i1_CQI, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_cri_RI_i1_CQI },
29356   {   4, &hf_nr_rrc_cri_RI_CQI   , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
29357   {   5, &hf_nr_rrc_cri_RSRP     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
29358   {   6, &hf_nr_rrc_ssb_Index_RSRP, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
29359   {   7, &hf_nr_rrc_cri_RI_LI_PMI_CQI, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
29360   { 0, NULL, 0, NULL }
29361 };
29362
29363 static int
29364 dissect_nr_rrc_T_reportQuantity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29365   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
29366                                  ett_nr_rrc_T_reportQuantity, T_reportQuantity_choice,
29367                                  NULL);
29368
29369   return offset;
29370 }
29371
29372
29373 static const value_string nr_rrc_T_cqi_FormatIndicator_vals[] = {
29374   {   0, "widebandCQI" },
29375   {   1, "subbandCQI" },
29376   { 0, NULL }
29377 };
29378
29379
29380 static int
29381 dissect_nr_rrc_T_cqi_FormatIndicator(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29382   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
29383                                      2, NULL, FALSE, 0, NULL);
29384
29385   return offset;
29386 }
29387
29388
29389 static const value_string nr_rrc_T_pmi_FormatIndicator_vals[] = {
29390   {   0, "widebandPMI" },
29391   {   1, "subbandPMI" },
29392   { 0, NULL }
29393 };
29394
29395
29396 static int
29397 dissect_nr_rrc_T_pmi_FormatIndicator(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29398   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
29399                                      2, NULL, FALSE, 0, NULL);
29400
29401   return offset;
29402 }
29403
29404
29405
29406 static int
29407 dissect_nr_rrc_BIT_STRING_SIZE_11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29408   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
29409                                      11, 11, FALSE, NULL, NULL);
29410
29411   return offset;
29412 }
29413
29414
29415
29416 static int
29417 dissect_nr_rrc_BIT_STRING_SIZE_13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29418   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
29419                                      13, 13, FALSE, NULL, NULL);
29420
29421   return offset;
29422 }
29423
29424
29425
29426 static int
29427 dissect_nr_rrc_BIT_STRING_SIZE_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29428   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
29429                                      15, 15, FALSE, NULL, NULL);
29430
29431   return offset;
29432 }
29433
29434
29435
29436 static int
29437 dissect_nr_rrc_BIT_STRING_SIZE_17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29438   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
29439                                      17, 17, FALSE, NULL, NULL);
29440
29441   return offset;
29442 }
29443
29444
29445
29446 static int
29447 dissect_nr_rrc_BIT_STRING_SIZE_19(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29448   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
29449                                      19, 19, FALSE, NULL, NULL);
29450
29451   return offset;
29452 }
29453
29454
29455 static const value_string nr_rrc_T_csi_ReportingBand_vals[] = {
29456   {   0, "subbands3" },
29457   {   1, "subbands4" },
29458   {   2, "subbands5" },
29459   {   3, "subbands6" },
29460   {   4, "subbands7" },
29461   {   5, "subbands8" },
29462   {   6, "subbands9" },
29463   {   7, "subbands10" },
29464   {   8, "subbands11" },
29465   {   9, "subbands12" },
29466   {  10, "subbands13" },
29467   {  11, "subbands14" },
29468   {  12, "subbands15" },
29469   {  13, "subbands16" },
29470   {  14, "subbands17" },
29471   {  15, "subbands18" },
29472   {  16, "subbands19-v1530" },
29473   { 0, NULL }
29474 };
29475
29476 static value_string_ext nr_rrc_T_csi_ReportingBand_vals_ext = VALUE_STRING_EXT_INIT(nr_rrc_T_csi_ReportingBand_vals);
29477
29478 static const per_choice_t T_csi_ReportingBand_choice[] = {
29479   {   0, &hf_nr_rrc_subbands3    , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_BIT_STRING_SIZE_3 },
29480   {   1, &hf_nr_rrc_subbands4    , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_BIT_STRING_SIZE_4 },
29481   {   2, &hf_nr_rrc_subbands5    , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_BIT_STRING_SIZE_5 },
29482   {   3, &hf_nr_rrc_subbands6    , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_BIT_STRING_SIZE_6 },
29483   {   4, &hf_nr_rrc_subbands7    , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_BIT_STRING_SIZE_7 },
29484   {   5, &hf_nr_rrc_subbands8    , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_BIT_STRING_SIZE_8 },
29485   {   6, &hf_nr_rrc_subbands9    , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_BIT_STRING_SIZE_9 },
29486   {   7, &hf_nr_rrc_subbands10   , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_BIT_STRING_SIZE_10 },
29487   {   8, &hf_nr_rrc_subbands11   , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_BIT_STRING_SIZE_11 },
29488   {   9, &hf_nr_rrc_subbands12   , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_BIT_STRING_SIZE_12 },
29489   {  10, &hf_nr_rrc_subbands13   , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_BIT_STRING_SIZE_13 },
29490   {  11, &hf_nr_rrc_subbands14   , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_BIT_STRING_SIZE_14 },
29491   {  12, &hf_nr_rrc_subbands15   , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_BIT_STRING_SIZE_15 },
29492   {  13, &hf_nr_rrc_subbands16   , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_BIT_STRING_SIZE_16 },
29493   {  14, &hf_nr_rrc_subbands17   , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_BIT_STRING_SIZE_17 },
29494   {  15, &hf_nr_rrc_subbands18   , ASN1_EXTENSION_ROOT    , dissect_nr_rrc_BIT_STRING_SIZE_18 },
29495   {  16, &hf_nr_rrc_subbands19_v1530, ASN1_NOT_EXTENSION_ROOT, dissect_nr_rrc_BIT_STRING_SIZE_19 },
29496   { 0, NULL, 0, NULL }
29497 };
29498
29499 static int
29500 dissect_nr_rrc_T_csi_ReportingBand(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29501   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
29502                                  ett_nr_rrc_T_csi_ReportingBand, T_csi_ReportingBand_choice,
29503                                  NULL);
29504
29505   return offset;
29506 }
29507
29508
29509 static const per_sequence_t T_reportFreqConfiguration_sequence[] = {
29510   { &hf_nr_rrc_cqi_FormatIndicator, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_cqi_FormatIndicator },
29511   { &hf_nr_rrc_pmi_FormatIndicator, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_pmi_FormatIndicator },
29512   { &hf_nr_rrc_csi_ReportingBand, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_csi_ReportingBand },
29513   { NULL, 0, 0, NULL }
29514 };
29515
29516 static int
29517 dissect_nr_rrc_T_reportFreqConfiguration(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29518   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
29519                                    ett_nr_rrc_T_reportFreqConfiguration, T_reportFreqConfiguration_sequence);
29520
29521   return offset;
29522 }
29523
29524
29525 static const value_string nr_rrc_T_timeRestrictionForChannelMeasurements_vals[] = {
29526   {   0, "configured" },
29527   {   1, "notConfigured" },
29528   { 0, NULL }
29529 };
29530
29531
29532 static int
29533 dissect_nr_rrc_T_timeRestrictionForChannelMeasurements(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29534   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
29535                                      2, NULL, FALSE, 0, NULL);
29536
29537   return offset;
29538 }
29539
29540
29541 static const value_string nr_rrc_T_timeRestrictionForInterferenceMeasurements_vals[] = {
29542   {   0, "configured" },
29543   {   1, "notConfigured" },
29544   { 0, NULL }
29545 };
29546
29547
29548 static int
29549 dissect_nr_rrc_T_timeRestrictionForInterferenceMeasurements(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29550   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
29551                                      2, NULL, FALSE, 0, NULL);
29552
29553   return offset;
29554 }
29555
29556
29557 static const per_sequence_t T_two_sequence[] = {
29558   { &hf_nr_rrc_twoTX_CodebookSubsetRestriction, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BIT_STRING_SIZE_6 },
29559   { NULL, 0, 0, NULL }
29560 };
29561
29562 static int
29563 dissect_nr_rrc_T_two(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29564   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
29565                                    ett_nr_rrc_T_two, T_two_sequence);
29566
29567   return offset;
29568 }
29569
29570
29571
29572 static int
29573 dissect_nr_rrc_BIT_STRING_SIZE_96(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29574   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
29575                                      96, 96, FALSE, NULL, NULL);
29576
29577   return offset;
29578 }
29579
29580
29581
29582 static int
29583 dissect_nr_rrc_BIT_STRING_SIZE_128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29584   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
29585                                      128, 128, FALSE, NULL, NULL);
29586
29587   return offset;
29588 }
29589
29590
29591
29592 static int
29593 dissect_nr_rrc_BIT_STRING_SIZE_192(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29594   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
29595                                      192, 192, FALSE, NULL, NULL);
29596
29597   return offset;
29598 }
29599
29600
29601
29602 static int
29603 dissect_nr_rrc_BIT_STRING_SIZE_48(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29604   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
29605                                      48, 48, FALSE, NULL, NULL);
29606
29607   return offset;
29608 }
29609
29610
29611 static const value_string nr_rrc_T_n1_n2_vals[] = {
29612   {   0, "two-one-TypeI-SinglePanel-Restriction" },
29613   {   1, "two-two-TypeI-SinglePanel-Restriction" },
29614   {   2, "four-one-TypeI-SinglePanel-Restriction" },
29615   {   3, "three-two-TypeI-SinglePanel-Restriction" },
29616   {   4, "six-one-TypeI-SinglePanel-Restriction" },
29617   {   5, "four-two-TypeI-SinglePanel-Restriction" },
29618   {   6, "eight-one-TypeI-SinglePanel-Restriction" },
29619   {   7, "four-three-TypeI-SinglePanel-Restriction" },
29620   {   8, "six-two-TypeI-SinglePanel-Restriction" },
29621   {   9, "twelve-one-TypeI-SinglePanel-Restriction" },
29622   {  10, "four-four-TypeI-SinglePanel-Restriction" },
29623   {  11, "eight-two-TypeI-SinglePanel-Restriction" },
29624   {  12, "sixteen-one-TypeI-SinglePanel-Restriction" },
29625   { 0, NULL }
29626 };
29627
29628 static const per_choice_t T_n1_n2_choice[] = {
29629   {   0, &hf_nr_rrc_two_one_TypeI_SinglePanel_Restriction, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_8 },
29630   {   1, &hf_nr_rrc_two_two_TypeI_SinglePanel_Restriction, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_64 },
29631   {   2, &hf_nr_rrc_four_one_TypeI_SinglePanel_Restriction, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_16 },
29632   {   3, &hf_nr_rrc_three_two_TypeI_SinglePanel_Restriction, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_96 },
29633   {   4, &hf_nr_rrc_six_one_TypeI_SinglePanel_Restriction, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_24 },
29634   {   5, &hf_nr_rrc_four_two_TypeI_SinglePanel_Restriction, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_128 },
29635   {   6, &hf_nr_rrc_eight_one_TypeI_SinglePanel_Restriction, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_32 },
29636   {   7, &hf_nr_rrc_four_three_TypeI_SinglePanel_Restriction, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_192 },
29637   {   8, &hf_nr_rrc_six_two_TypeI_SinglePanel_Restriction, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_192 },
29638   {   9, &hf_nr_rrc_twelve_one_TypeI_SinglePanel_Restriction, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_48 },
29639   {  10, &hf_nr_rrc_four_four_TypeI_SinglePanel_Restriction, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_256 },
29640   {  11, &hf_nr_rrc_eight_two_TypeI_SinglePanel_Restriction, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_256 },
29641   {  12, &hf_nr_rrc_sixteen_one_TypeI_SinglePanel_Restriction, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_64 },
29642   { 0, NULL, 0, NULL }
29643 };
29644
29645 static int
29646 dissect_nr_rrc_T_n1_n2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29647   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
29648                                  ett_nr_rrc_T_n1_n2, T_n1_n2_choice,
29649                                  NULL);
29650
29651   return offset;
29652 }
29653
29654
29655 static const per_sequence_t T_moreThanTwo_sequence[] = {
29656   { &hf_nr_rrc_n1_n2        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_n1_n2 },
29657   { &hf_nr_rrc_typeI_SinglePanel_codebookSubsetRestriction_i2, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_BIT_STRING_SIZE_16 },
29658   { NULL, 0, 0, NULL }
29659 };
29660
29661 static int
29662 dissect_nr_rrc_T_moreThanTwo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29663   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
29664                                    ett_nr_rrc_T_moreThanTwo, T_moreThanTwo_sequence);
29665
29666   return offset;
29667 }
29668
29669
29670 static const value_string nr_rrc_T_nrOfAntennaPorts_vals[] = {
29671   {   0, "two" },
29672   {   1, "moreThanTwo" },
29673   { 0, NULL }
29674 };
29675
29676 static const per_choice_t T_nrOfAntennaPorts_choice[] = {
29677   {   0, &hf_nr_rrc_two          , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_two },
29678   {   1, &hf_nr_rrc_moreThanTwo  , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_moreThanTwo },
29679   { 0, NULL, 0, NULL }
29680 };
29681
29682 static int
29683 dissect_nr_rrc_T_nrOfAntennaPorts(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29684   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
29685                                  ett_nr_rrc_T_nrOfAntennaPorts, T_nrOfAntennaPorts_choice,
29686                                  NULL);
29687
29688   return offset;
29689 }
29690
29691
29692 static const per_sequence_t T_typeI_SinglePanel_sequence[] = {
29693   { &hf_nr_rrc_nrOfAntennaPorts, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_nrOfAntennaPorts },
29694   { &hf_nr_rrc_typeI_SinglePanel_ri_Restriction, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BIT_STRING_SIZE_8 },
29695   { NULL, 0, 0, NULL }
29696 };
29697
29698 static int
29699 dissect_nr_rrc_T_typeI_SinglePanel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29700   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
29701                                    ett_nr_rrc_T_typeI_SinglePanel, T_typeI_SinglePanel_sequence);
29702
29703   return offset;
29704 }
29705
29706
29707 static const value_string nr_rrc_T_ng_n1_n2_vals[] = {
29708   {   0, "two-two-one-TypeI-MultiPanel-Restriction" },
29709   {   1, "two-four-one-TypeI-MultiPanel-Restriction" },
29710   {   2, "four-two-one-TypeI-MultiPanel-Restriction" },
29711   {   3, "two-two-two-TypeI-MultiPanel-Restriction" },
29712   {   4, "two-eight-one-TypeI-MultiPanel-Restriction" },
29713   {   5, "four-four-one-TypeI-MultiPanel-Restriction" },
29714   {   6, "two-four-two-TypeI-MultiPanel-Restriction" },
29715   {   7, "four-two-two-TypeI-MultiPanel-Restriction" },
29716   { 0, NULL }
29717 };
29718
29719 static const per_choice_t T_ng_n1_n2_choice[] = {
29720   {   0, &hf_nr_rrc_two_two_one_TypeI_MultiPanel_Restriction, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_8 },
29721   {   1, &hf_nr_rrc_two_four_one_TypeI_MultiPanel_Restriction, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_16 },
29722   {   2, &hf_nr_rrc_four_two_one_TypeI_MultiPanel_Restriction, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_8 },
29723   {   3, &hf_nr_rrc_two_two_two_TypeI_MultiPanel_Restriction, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_64 },
29724   {   4, &hf_nr_rrc_two_eight_one_TypeI_MultiPanel_Restriction, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_32 },
29725   {   5, &hf_nr_rrc_four_four_one_TypeI_MultiPanel_Restriction, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_16 },
29726   {   6, &hf_nr_rrc_two_four_two_TypeI_MultiPanel_Restriction, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_128 },
29727   {   7, &hf_nr_rrc_four_two_two_TypeI_MultiPanel_Restriction, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_64 },
29728   { 0, NULL, 0, NULL }
29729 };
29730
29731 static int
29732 dissect_nr_rrc_T_ng_n1_n2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29733   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
29734                                  ett_nr_rrc_T_ng_n1_n2, T_ng_n1_n2_choice,
29735                                  NULL);
29736
29737   return offset;
29738 }
29739
29740
29741 static const per_sequence_t T_typeI_MultiPanel_sequence[] = {
29742   { &hf_nr_rrc_ng_n1_n2     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_ng_n1_n2 },
29743   { &hf_nr_rrc_ri_Restriction, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BIT_STRING_SIZE_4 },
29744   { NULL, 0, 0, NULL }
29745 };
29746
29747 static int
29748 dissect_nr_rrc_T_typeI_MultiPanel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29749   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
29750                                    ett_nr_rrc_T_typeI_MultiPanel, T_typeI_MultiPanel_sequence);
29751
29752   return offset;
29753 }
29754
29755
29756 static const value_string nr_rrc_T_subType_vals[] = {
29757   {   0, "typeI-SinglePanel" },
29758   {   1, "typeI-MultiPanel" },
29759   { 0, NULL }
29760 };
29761
29762 static const per_choice_t T_subType_choice[] = {
29763   {   0, &hf_nr_rrc_typeI_SinglePanel, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_typeI_SinglePanel },
29764   {   1, &hf_nr_rrc_typeI_MultiPanel, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_typeI_MultiPanel },
29765   { 0, NULL, 0, NULL }
29766 };
29767
29768 static int
29769 dissect_nr_rrc_T_subType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29770   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
29771                                  ett_nr_rrc_T_subType, T_subType_choice,
29772                                  NULL);
29773
29774   return offset;
29775 }
29776
29777
29778 static const per_sequence_t T_type1_01_sequence[] = {
29779   { &hf_nr_rrc_subType      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_subType },
29780   { &hf_nr_rrc_codebookMode , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_2 },
29781   { NULL, 0, 0, NULL }
29782 };
29783
29784 static int
29785 dissect_nr_rrc_T_type1_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29786   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
29787                                    ett_nr_rrc_T_type1_01, T_type1_01_sequence);
29788
29789   return offset;
29790 }
29791
29792
29793
29794 static int
29795 dissect_nr_rrc_BIT_STRING_SIZE_43(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29796   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
29797                                      43, 43, FALSE, NULL, NULL);
29798
29799   return offset;
29800 }
29801
29802
29803
29804 static int
29805 dissect_nr_rrc_BIT_STRING_SIZE_59(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29806   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
29807                                      59, 59, FALSE, NULL, NULL);
29808
29809   return offset;
29810 }
29811
29812
29813
29814 static int
29815 dissect_nr_rrc_BIT_STRING_SIZE_75(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29816   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
29817                                      75, 75, FALSE, NULL, NULL);
29818
29819   return offset;
29820 }
29821
29822
29823
29824 static int
29825 dissect_nr_rrc_BIT_STRING_SIZE_107(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29826   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
29827                                      107, 107, FALSE, NULL, NULL);
29828
29829   return offset;
29830 }
29831
29832
29833
29834 static int
29835 dissect_nr_rrc_BIT_STRING_SIZE_139(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29836   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
29837                                      139, 139, FALSE, NULL, NULL);
29838
29839   return offset;
29840 }
29841
29842
29843 static const value_string nr_rrc_T_n1_n2_codebookSubsetRestriction_vals[] = {
29844   {   0, "two-one" },
29845   {   1, "two-two" },
29846   {   2, "four-one" },
29847   {   3, "three-two" },
29848   {   4, "six-one" },
29849   {   5, "four-two" },
29850   {   6, "eight-one" },
29851   {   7, "four-three" },
29852   {   8, "six-two" },
29853   {   9, "twelve-one" },
29854   {  10, "four-four" },
29855   {  11, "eight-two" },
29856   {  12, "sixteen-one" },
29857   { 0, NULL }
29858 };
29859
29860 static const per_choice_t T_n1_n2_codebookSubsetRestriction_choice[] = {
29861   {   0, &hf_nr_rrc_two_one      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_16 },
29862   {   1, &hf_nr_rrc_two_two      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_43 },
29863   {   2, &hf_nr_rrc_four_one     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_32 },
29864   {   3, &hf_nr_rrc_three_two    , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_59 },
29865   {   4, &hf_nr_rrc_six_one      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_48 },
29866   {   5, &hf_nr_rrc_four_two     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_75 },
29867   {   6, &hf_nr_rrc_eight_one    , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_64 },
29868   {   7, &hf_nr_rrc_four_three   , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_107 },
29869   {   8, &hf_nr_rrc_six_two      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_107 },
29870   {   9, &hf_nr_rrc_twelve_one   , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_96 },
29871   {  10, &hf_nr_rrc_four_four    , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_139 },
29872   {  11, &hf_nr_rrc_eight_two    , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_139 },
29873   {  12, &hf_nr_rrc_sixteen_one  , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_BIT_STRING_SIZE_128 },
29874   { 0, NULL, 0, NULL }
29875 };
29876
29877 static int
29878 dissect_nr_rrc_T_n1_n2_codebookSubsetRestriction(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29879   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
29880                                  ett_nr_rrc_T_n1_n2_codebookSubsetRestriction, T_n1_n2_codebookSubsetRestriction_choice,
29881                                  NULL);
29882
29883   return offset;
29884 }
29885
29886
29887 static const per_sequence_t T_typeII_sequence[] = {
29888   { &hf_nr_rrc_n1_n2_codebookSubsetRestriction, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_n1_n2_codebookSubsetRestriction },
29889   { &hf_nr_rrc_typeII_RI_Restriction, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BIT_STRING_SIZE_2 },
29890   { NULL, 0, 0, NULL }
29891 };
29892
29893 static int
29894 dissect_nr_rrc_T_typeII(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29895   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
29896                                    ett_nr_rrc_T_typeII, T_typeII_sequence);
29897
29898   return offset;
29899 }
29900
29901
29902 static const value_string nr_rrc_T_portSelectionSamplingSize_vals[] = {
29903   {   0, "n1" },
29904   {   1, "n2" },
29905   {   2, "n3" },
29906   {   3, "n4" },
29907   { 0, NULL }
29908 };
29909
29910
29911 static int
29912 dissect_nr_rrc_T_portSelectionSamplingSize(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29913   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
29914                                      4, NULL, FALSE, 0, NULL);
29915
29916   return offset;
29917 }
29918
29919
29920 static const per_sequence_t T_typeII_PortSelection_sequence[] = {
29921   { &hf_nr_rrc_portSelectionSamplingSize, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_portSelectionSamplingSize },
29922   { &hf_nr_rrc_typeII_PortSelectionRI_Restriction, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BIT_STRING_SIZE_2 },
29923   { NULL, 0, 0, NULL }
29924 };
29925
29926 static int
29927 dissect_nr_rrc_T_typeII_PortSelection(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29928   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
29929                                    ett_nr_rrc_T_typeII_PortSelection, T_typeII_PortSelection_sequence);
29930
29931   return offset;
29932 }
29933
29934
29935 static const value_string nr_rrc_T_subType_01_vals[] = {
29936   {   0, "typeII" },
29937   {   1, "typeII-PortSelection" },
29938   { 0, NULL }
29939 };
29940
29941 static const per_choice_t T_subType_01_choice[] = {
29942   {   0, &hf_nr_rrc_typeII       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_typeII },
29943   {   1, &hf_nr_rrc_typeII_PortSelection, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_typeII_PortSelection },
29944   { 0, NULL, 0, NULL }
29945 };
29946
29947 static int
29948 dissect_nr_rrc_T_subType_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29949   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
29950                                  ett_nr_rrc_T_subType_01, T_subType_01_choice,
29951                                  NULL);
29952
29953   return offset;
29954 }
29955
29956
29957 static const value_string nr_rrc_T_phaseAlphabetSize_vals[] = {
29958   {   0, "n4" },
29959   {   1, "n8" },
29960   { 0, NULL }
29961 };
29962
29963
29964 static int
29965 dissect_nr_rrc_T_phaseAlphabetSize(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29966   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
29967                                      2, NULL, FALSE, 0, NULL);
29968
29969   return offset;
29970 }
29971
29972
29973 static const value_string nr_rrc_T_numberOfBeams_vals[] = {
29974   {   0, "two" },
29975   {   1, "three" },
29976   {   2, "four" },
29977   { 0, NULL }
29978 };
29979
29980
29981 static int
29982 dissect_nr_rrc_T_numberOfBeams(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
29983   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
29984                                      3, NULL, FALSE, 0, NULL);
29985
29986   return offset;
29987 }
29988
29989
29990 static const per_sequence_t T_type2_sequence[] = {
29991   { &hf_nr_rrc_subType_01   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_subType_01 },
29992   { &hf_nr_rrc_phaseAlphabetSize, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_phaseAlphabetSize },
29993   { &hf_nr_rrc_subbandAmplitude, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
29994   { &hf_nr_rrc_numberOfBeams, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_numberOfBeams },
29995   { NULL, 0, 0, NULL }
29996 };
29997
29998 static int
29999 dissect_nr_rrc_T_type2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30000   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
30001                                    ett_nr_rrc_T_type2, T_type2_sequence);
30002
30003   return offset;
30004 }
30005
30006
30007 static const value_string nr_rrc_T_codebookType_vals[] = {
30008   {   0, "type1" },
30009   {   1, "type2" },
30010   { 0, NULL }
30011 };
30012
30013 static const per_choice_t T_codebookType_choice[] = {
30014   {   0, &hf_nr_rrc_type1_01     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_type1_01 },
30015   {   1, &hf_nr_rrc_type2        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_type2 },
30016   { 0, NULL, 0, NULL }
30017 };
30018
30019 static int
30020 dissect_nr_rrc_T_codebookType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30021   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
30022                                  ett_nr_rrc_T_codebookType, T_codebookType_choice,
30023                                  NULL);
30024
30025   return offset;
30026 }
30027
30028
30029 static const per_sequence_t CodebookConfig_sequence[] = {
30030   { &hf_nr_rrc_codebookType , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_codebookType },
30031   { NULL, 0, 0, NULL }
30032 };
30033
30034 static int
30035 dissect_nr_rrc_CodebookConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30036   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
30037                                    ett_nr_rrc_CodebookConfig, CodebookConfig_sequence);
30038
30039   return offset;
30040 }
30041
30042
30043 static const value_string nr_rrc_T_nrofCQIsPerReport_vals[] = {
30044   {   0, "n1" },
30045   {   1, "n2" },
30046   { 0, NULL }
30047 };
30048
30049
30050 static int
30051 dissect_nr_rrc_T_nrofCQIsPerReport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30052   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
30053                                      2, NULL, FALSE, 0, NULL);
30054
30055   return offset;
30056 }
30057
30058
30059 static const value_string nr_rrc_T_nrofReportedRS_vals[] = {
30060   {   0, "n1" },
30061   {   1, "n2" },
30062   {   2, "n3" },
30063   {   3, "n4" },
30064   { 0, NULL }
30065 };
30066
30067
30068 static int
30069 dissect_nr_rrc_T_nrofReportedRS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30070   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
30071                                      4, NULL, FALSE, 0, NULL);
30072
30073   return offset;
30074 }
30075
30076
30077 static const per_sequence_t T_disabled_sequence[] = {
30078   { &hf_nr_rrc_nrofReportedRS, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nrofReportedRS },
30079   { NULL, 0, 0, NULL }
30080 };
30081
30082 static int
30083 dissect_nr_rrc_T_disabled(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30084   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
30085                                    ett_nr_rrc_T_disabled, T_disabled_sequence);
30086
30087   return offset;
30088 }
30089
30090
30091 static const value_string nr_rrc_T_groupBasedBeamReporting_vals[] = {
30092   {   0, "enabled" },
30093   {   1, "disabled" },
30094   { 0, NULL }
30095 };
30096
30097 static const per_choice_t T_groupBasedBeamReporting_choice[] = {
30098   {   0, &hf_nr_rrc_enabled      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
30099   {   1, &hf_nr_rrc_disabled     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_disabled },
30100   { 0, NULL, 0, NULL }
30101 };
30102
30103 static int
30104 dissect_nr_rrc_T_groupBasedBeamReporting(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30105   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
30106                                  ett_nr_rrc_T_groupBasedBeamReporting, T_groupBasedBeamReporting_choice,
30107                                  NULL);
30108
30109   return offset;
30110 }
30111
30112
30113 static const value_string nr_rrc_T_cqi_Table_vals[] = {
30114   {   0, "table1" },
30115   {   1, "table2" },
30116   {   2, "table3" },
30117   {   3, "spare1" },
30118   { 0, NULL }
30119 };
30120
30121
30122 static int
30123 dissect_nr_rrc_T_cqi_Table(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30124   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
30125                                      4, NULL, FALSE, 0, NULL);
30126
30127   return offset;
30128 }
30129
30130
30131 static const value_string nr_rrc_T_subbandSize_vals[] = {
30132   {   0, "value1" },
30133   {   1, "value2" },
30134   { 0, NULL }
30135 };
30136
30137
30138 static int
30139 dissect_nr_rrc_T_subbandSize(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30140   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
30141                                      2, NULL, FALSE, 0, NULL);
30142
30143   return offset;
30144 }
30145
30146
30147
30148 static int
30149 dissect_nr_rrc_PortIndex8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30150   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
30151                                                             0U, 7U, NULL, FALSE);
30152
30153   return offset;
30154 }
30155
30156
30157 static const per_sequence_t SEQUENCE_SIZE_2_OF_PortIndex8_sequence_of[1] = {
30158   { &hf_nr_rrc_rank2_8_item , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PortIndex8 },
30159 };
30160
30161 static int
30162 dissect_nr_rrc_SEQUENCE_SIZE_2_OF_PortIndex8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30163   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
30164                                                   ett_nr_rrc_SEQUENCE_SIZE_2_OF_PortIndex8, SEQUENCE_SIZE_2_OF_PortIndex8_sequence_of,
30165                                                   2, 2, FALSE);
30166
30167   return offset;
30168 }
30169
30170
30171 static const per_sequence_t SEQUENCE_SIZE_3_OF_PortIndex8_sequence_of[1] = {
30172   { &hf_nr_rrc_rank3_8_item , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PortIndex8 },
30173 };
30174
30175 static int
30176 dissect_nr_rrc_SEQUENCE_SIZE_3_OF_PortIndex8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30177   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
30178                                                   ett_nr_rrc_SEQUENCE_SIZE_3_OF_PortIndex8, SEQUENCE_SIZE_3_OF_PortIndex8_sequence_of,
30179                                                   3, 3, FALSE);
30180
30181   return offset;
30182 }
30183
30184
30185 static const per_sequence_t SEQUENCE_SIZE_4_OF_PortIndex8_sequence_of[1] = {
30186   { &hf_nr_rrc_rank4_8_item , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PortIndex8 },
30187 };
30188
30189 static int
30190 dissect_nr_rrc_SEQUENCE_SIZE_4_OF_PortIndex8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30191   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
30192                                                   ett_nr_rrc_SEQUENCE_SIZE_4_OF_PortIndex8, SEQUENCE_SIZE_4_OF_PortIndex8_sequence_of,
30193                                                   4, 4, FALSE);
30194
30195   return offset;
30196 }
30197
30198
30199 static const per_sequence_t SEQUENCE_SIZE_5_OF_PortIndex8_sequence_of[1] = {
30200   { &hf_nr_rrc_rank5_8_item , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PortIndex8 },
30201 };
30202
30203 static int
30204 dissect_nr_rrc_SEQUENCE_SIZE_5_OF_PortIndex8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30205   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
30206                                                   ett_nr_rrc_SEQUENCE_SIZE_5_OF_PortIndex8, SEQUENCE_SIZE_5_OF_PortIndex8_sequence_of,
30207                                                   5, 5, FALSE);
30208
30209   return offset;
30210 }
30211
30212
30213 static const per_sequence_t SEQUENCE_SIZE_6_OF_PortIndex8_sequence_of[1] = {
30214   { &hf_nr_rrc_rank6_8_item , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PortIndex8 },
30215 };
30216
30217 static int
30218 dissect_nr_rrc_SEQUENCE_SIZE_6_OF_PortIndex8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30219   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
30220                                                   ett_nr_rrc_SEQUENCE_SIZE_6_OF_PortIndex8, SEQUENCE_SIZE_6_OF_PortIndex8_sequence_of,
30221                                                   6, 6, FALSE);
30222
30223   return offset;
30224 }
30225
30226
30227 static const per_sequence_t SEQUENCE_SIZE_7_OF_PortIndex8_sequence_of[1] = {
30228   { &hf_nr_rrc_rank7_8_item , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PortIndex8 },
30229 };
30230
30231 static int
30232 dissect_nr_rrc_SEQUENCE_SIZE_7_OF_PortIndex8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30233   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
30234                                                   ett_nr_rrc_SEQUENCE_SIZE_7_OF_PortIndex8, SEQUENCE_SIZE_7_OF_PortIndex8_sequence_of,
30235                                                   7, 7, FALSE);
30236
30237   return offset;
30238 }
30239
30240
30241 static const per_sequence_t SEQUENCE_SIZE_8_OF_PortIndex8_sequence_of[1] = {
30242   { &hf_nr_rrc_rank8_8_item , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PortIndex8 },
30243 };
30244
30245 static int
30246 dissect_nr_rrc_SEQUENCE_SIZE_8_OF_PortIndex8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30247   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
30248                                                   ett_nr_rrc_SEQUENCE_SIZE_8_OF_PortIndex8, SEQUENCE_SIZE_8_OF_PortIndex8_sequence_of,
30249                                                   8, 8, FALSE);
30250
30251   return offset;
30252 }
30253
30254
30255 static const per_sequence_t T_portIndex8_sequence[] = {
30256   { &hf_nr_rrc_rank1_8      , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_PortIndex8 },
30257   { &hf_nr_rrc_rank2_8      , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_2_OF_PortIndex8 },
30258   { &hf_nr_rrc_rank3_8      , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_3_OF_PortIndex8 },
30259   { &hf_nr_rrc_rank4_8      , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_4_OF_PortIndex8 },
30260   { &hf_nr_rrc_rank5_8      , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_5_OF_PortIndex8 },
30261   { &hf_nr_rrc_rank6_8      , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_6_OF_PortIndex8 },
30262   { &hf_nr_rrc_rank7_8      , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_7_OF_PortIndex8 },
30263   { &hf_nr_rrc_rank8_8      , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_8_OF_PortIndex8 },
30264   { NULL, 0, 0, NULL }
30265 };
30266
30267 static int
30268 dissect_nr_rrc_T_portIndex8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30269   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
30270                                    ett_nr_rrc_T_portIndex8, T_portIndex8_sequence);
30271
30272   return offset;
30273 }
30274
30275
30276
30277 static int
30278 dissect_nr_rrc_PortIndex4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30279   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
30280                                                             0U, 3U, NULL, FALSE);
30281
30282   return offset;
30283 }
30284
30285
30286 static const per_sequence_t SEQUENCE_SIZE_2_OF_PortIndex4_sequence_of[1] = {
30287   { &hf_nr_rrc_rank2_4_item , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PortIndex4 },
30288 };
30289
30290 static int
30291 dissect_nr_rrc_SEQUENCE_SIZE_2_OF_PortIndex4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30292   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
30293                                                   ett_nr_rrc_SEQUENCE_SIZE_2_OF_PortIndex4, SEQUENCE_SIZE_2_OF_PortIndex4_sequence_of,
30294                                                   2, 2, FALSE);
30295
30296   return offset;
30297 }
30298
30299
30300 static const per_sequence_t SEQUENCE_SIZE_3_OF_PortIndex4_sequence_of[1] = {
30301   { &hf_nr_rrc_rank3_4_item , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PortIndex4 },
30302 };
30303
30304 static int
30305 dissect_nr_rrc_SEQUENCE_SIZE_3_OF_PortIndex4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30306   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
30307                                                   ett_nr_rrc_SEQUENCE_SIZE_3_OF_PortIndex4, SEQUENCE_SIZE_3_OF_PortIndex4_sequence_of,
30308                                                   3, 3, FALSE);
30309
30310   return offset;
30311 }
30312
30313
30314 static const per_sequence_t SEQUENCE_SIZE_4_OF_PortIndex4_sequence_of[1] = {
30315   { &hf_nr_rrc_rank4_4_item , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PortIndex4 },
30316 };
30317
30318 static int
30319 dissect_nr_rrc_SEQUENCE_SIZE_4_OF_PortIndex4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30320   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
30321                                                   ett_nr_rrc_SEQUENCE_SIZE_4_OF_PortIndex4, SEQUENCE_SIZE_4_OF_PortIndex4_sequence_of,
30322                                                   4, 4, FALSE);
30323
30324   return offset;
30325 }
30326
30327
30328 static const per_sequence_t T_portIndex4_sequence[] = {
30329   { &hf_nr_rrc_rank1_4      , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_PortIndex4 },
30330   { &hf_nr_rrc_rank2_4      , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_2_OF_PortIndex4 },
30331   { &hf_nr_rrc_rank3_4      , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_3_OF_PortIndex4 },
30332   { &hf_nr_rrc_rank4_4      , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_4_OF_PortIndex4 },
30333   { NULL, 0, 0, NULL }
30334 };
30335
30336 static int
30337 dissect_nr_rrc_T_portIndex4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30338   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
30339                                    ett_nr_rrc_T_portIndex4, T_portIndex4_sequence);
30340
30341   return offset;
30342 }
30343
30344
30345
30346 static int
30347 dissect_nr_rrc_PortIndex2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30348   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
30349                                                             0U, 1U, NULL, FALSE);
30350
30351   return offset;
30352 }
30353
30354
30355 static const per_sequence_t SEQUENCE_SIZE_2_OF_PortIndex2_sequence_of[1] = {
30356   { &hf_nr_rrc_rank2_2_item , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PortIndex2 },
30357 };
30358
30359 static int
30360 dissect_nr_rrc_SEQUENCE_SIZE_2_OF_PortIndex2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30361   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
30362                                                   ett_nr_rrc_SEQUENCE_SIZE_2_OF_PortIndex2, SEQUENCE_SIZE_2_OF_PortIndex2_sequence_of,
30363                                                   2, 2, FALSE);
30364
30365   return offset;
30366 }
30367
30368
30369 static const per_sequence_t T_portIndex2_sequence[] = {
30370   { &hf_nr_rrc_rank1_2      , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_PortIndex2 },
30371   { &hf_nr_rrc_rank2_2      , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_2_OF_PortIndex2 },
30372   { NULL, 0, 0, NULL }
30373 };
30374
30375 static int
30376 dissect_nr_rrc_T_portIndex2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30377   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
30378                                    ett_nr_rrc_T_portIndex2, T_portIndex2_sequence);
30379
30380   return offset;
30381 }
30382
30383
30384 static const value_string nr_rrc_PortIndexFor8Ranks_vals[] = {
30385   {   0, "portIndex8" },
30386   {   1, "portIndex4" },
30387   {   2, "portIndex2" },
30388   {   3, "portIndex1" },
30389   { 0, NULL }
30390 };
30391
30392 static const per_choice_t PortIndexFor8Ranks_choice[] = {
30393   {   0, &hf_nr_rrc_portIndex8   , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_portIndex8 },
30394   {   1, &hf_nr_rrc_portIndex4   , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_portIndex4 },
30395   {   2, &hf_nr_rrc_portIndex2   , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_portIndex2 },
30396   {   3, &hf_nr_rrc_portIndex1   , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
30397   { 0, NULL, 0, NULL }
30398 };
30399
30400 static int
30401 dissect_nr_rrc_PortIndexFor8Ranks(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30402   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
30403                                  ett_nr_rrc_PortIndexFor8Ranks, PortIndexFor8Ranks_choice,
30404                                  NULL);
30405
30406   return offset;
30407 }
30408
30409
30410 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourcesPerConfig_OF_PortIndexFor8Ranks_sequence_of[1] = {
30411   { &hf_nr_rrc_non_PMI_PortIndication_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PortIndexFor8Ranks },
30412 };
30413
30414 static int
30415 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourcesPerConfig_OF_PortIndexFor8Ranks(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30416   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
30417                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourcesPerConfig_OF_PortIndexFor8Ranks, SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourcesPerConfig_OF_PortIndexFor8Ranks_sequence_of,
30418                                                   1, maxNrofNZP_CSI_RS_ResourcesPerConfig, FALSE);
30419
30420   return offset;
30421 }
30422
30423
30424 static const value_string nr_rrc_T_reportSlotConfig_v1530_vals[] = {
30425   {   0, "sl4" },
30426   {   1, "sl8" },
30427   {   2, "sl16" },
30428   { 0, NULL }
30429 };
30430
30431
30432 static int
30433 dissect_nr_rrc_T_reportSlotConfig_v1530(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30434   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
30435                                      3, NULL, FALSE, 0, NULL);
30436
30437   return offset;
30438 }
30439
30440
30441 static const per_sequence_t T_semiPersistentOnPUSCH_v1530_sequence[] = {
30442   { &hf_nr_rrc_reportSlotConfig_v1530, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_reportSlotConfig_v1530 },
30443   { NULL, 0, 0, NULL }
30444 };
30445
30446 static int
30447 dissect_nr_rrc_T_semiPersistentOnPUSCH_v1530(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30448   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
30449                                    ett_nr_rrc_T_semiPersistentOnPUSCH_v1530, T_semiPersistentOnPUSCH_v1530_sequence);
30450
30451   return offset;
30452 }
30453
30454
30455 static const per_sequence_t CSI_ReportConfig_eag_1_sequence[] = {
30456   { &hf_nr_rrc_semiPersistentOnPUSCH_v1530, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_semiPersistentOnPUSCH_v1530 },
30457   { NULL, 0, 0, NULL }
30458 };
30459
30460 static int
30461 dissect_nr_rrc_CSI_ReportConfig_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30462   offset = dissect_per_sequence_eag(tvb, offset, actx, tree, CSI_ReportConfig_eag_1_sequence);
30463
30464   return offset;
30465 }
30466
30467
30468 static const per_sequence_t CSI_ReportConfig_sequence[] = {
30469   { &hf_nr_rrc_reportConfigId, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_ReportConfigId },
30470   { &hf_nr_rrc_carrier      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ServCellIndex },
30471   { &hf_nr_rrc_resourcesForChannelMeasurement, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_ResourceConfigId },
30472   { &hf_nr_rrc_csi_IM_ResourcesForInterference_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_CSI_ResourceConfigId },
30473   { &hf_nr_rrc_nzp_CSI_RS_ResourcesForInterference_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_CSI_ResourceConfigId },
30474   { &hf_nr_rrc_reportConfigType, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_reportConfigType },
30475   { &hf_nr_rrc_reportQuantity, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_reportQuantity },
30476   { &hf_nr_rrc_reportFreqConfiguration, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_reportFreqConfiguration },
30477   { &hf_nr_rrc_timeRestrictionForChannelMeasurements, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_timeRestrictionForChannelMeasurements },
30478   { &hf_nr_rrc_timeRestrictionForInterferenceMeasurements, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_timeRestrictionForInterferenceMeasurements },
30479   { &hf_nr_rrc_codebookConfig, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_CodebookConfig },
30480   { &hf_nr_rrc_nrofCQIsPerReport, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_nrofCQIsPerReport },
30481   { &hf_nr_rrc_groupBasedBeamReporting, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_groupBasedBeamReporting },
30482   { &hf_nr_rrc_cqi_Table    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_cqi_Table },
30483   { &hf_nr_rrc_subbandSize  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_subbandSize },
30484   { &hf_nr_rrc_non_PMI_PortIndication, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourcesPerConfig_OF_PortIndexFor8Ranks },
30485   { &dummy_hf_nr_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_ReportConfig_eag_1 },
30486   { NULL, 0, 0, NULL }
30487 };
30488
30489 static int
30490 dissect_nr_rrc_CSI_ReportConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30491   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
30492                                    ett_nr_rrc_CSI_ReportConfig, CSI_ReportConfig_sequence);
30493
30494   return offset;
30495 }
30496
30497
30498 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofCSI_ReportConfigurations_OF_CSI_ReportConfig_sequence_of[1] = {
30499   { &hf_nr_rrc_csi_ReportConfigToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_ReportConfig },
30500 };
30501
30502 static int
30503 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_ReportConfigurations_OF_CSI_ReportConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30504   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
30505                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_ReportConfigurations_OF_CSI_ReportConfig, SEQUENCE_SIZE_1_maxNrofCSI_ReportConfigurations_OF_CSI_ReportConfig_sequence_of,
30506                                                   1, maxNrofCSI_ReportConfigurations, FALSE);
30507
30508   return offset;
30509 }
30510
30511
30512 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofCSI_ReportConfigurations_OF_CSI_ReportConfigId_sequence_of[1] = {
30513   { &hf_nr_rrc_csi_ReportConfigToReleaseList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_ReportConfigId },
30514 };
30515
30516 static int
30517 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_ReportConfigurations_OF_CSI_ReportConfigId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30518   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
30519                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_ReportConfigurations_OF_CSI_ReportConfigId, SEQUENCE_SIZE_1_maxNrofCSI_ReportConfigurations_OF_CSI_ReportConfigId_sequence_of,
30520                                                   1, maxNrofCSI_ReportConfigurations, FALSE);
30521
30522   return offset;
30523 }
30524
30525
30526
30527 static int
30528 dissect_nr_rrc_INTEGER_1_maxNrofNZP_CSI_RS_ResourceSetsPerConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30529   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
30530                                                             1U, maxNrofNZP_CSI_RS_ResourceSetsPerConfig, NULL, FALSE);
30531
30532   return offset;
30533 }
30534
30535
30536 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofAP_CSI_RS_ResourcesPerSet_OF_TCI_StateId_sequence_of[1] = {
30537   { &hf_nr_rrc_qcl_info_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_TCI_StateId },
30538 };
30539
30540 static int
30541 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofAP_CSI_RS_ResourcesPerSet_OF_TCI_StateId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30542   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
30543                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofAP_CSI_RS_ResourcesPerSet_OF_TCI_StateId, SEQUENCE_SIZE_1_maxNrofAP_CSI_RS_ResourcesPerSet_OF_TCI_StateId_sequence_of,
30544                                                   1, maxNrofAP_CSI_RS_ResourcesPerSet, FALSE);
30545
30546   return offset;
30547 }
30548
30549
30550 static const per_sequence_t T_nzp_CSI_RS_sequence[] = {
30551   { &hf_nr_rrc_resourceSet  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_maxNrofNZP_CSI_RS_ResourceSetsPerConfig },
30552   { &hf_nr_rrc_qcl_info     , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofAP_CSI_RS_ResourcesPerSet_OF_TCI_StateId },
30553   { NULL, 0, 0, NULL }
30554 };
30555
30556 static int
30557 dissect_nr_rrc_T_nzp_CSI_RS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30558   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
30559                                    ett_nr_rrc_T_nzp_CSI_RS, T_nzp_CSI_RS_sequence);
30560
30561   return offset;
30562 }
30563
30564
30565
30566 static int
30567 dissect_nr_rrc_INTEGER_1_maxNrofCSI_SSB_ResourceSetsPerConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30568   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
30569                                                             1U, maxNrofCSI_SSB_ResourceSetsPerConfig, NULL, FALSE);
30570
30571   return offset;
30572 }
30573
30574
30575 static const value_string nr_rrc_T_resourcesForChannel_vals[] = {
30576   {   0, "nzp-CSI-RS" },
30577   {   1, "csi-SSB-ResourceSet" },
30578   { 0, NULL }
30579 };
30580
30581 static const per_choice_t T_resourcesForChannel_choice[] = {
30582   {   0, &hf_nr_rrc_nzp_CSI_RS   , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_nzp_CSI_RS },
30583   {   1, &hf_nr_rrc_csi_SSB_ResourceSet, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_INTEGER_1_maxNrofCSI_SSB_ResourceSetsPerConfig },
30584   { 0, NULL, 0, NULL }
30585 };
30586
30587 static int
30588 dissect_nr_rrc_T_resourcesForChannel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30589   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
30590                                  ett_nr_rrc_T_resourcesForChannel, T_resourcesForChannel_choice,
30591                                  NULL);
30592
30593   return offset;
30594 }
30595
30596
30597
30598 static int
30599 dissect_nr_rrc_INTEGER_1_maxNrofCSI_IM_ResourceSetsPerConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30600   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
30601                                                             1U, maxNrofCSI_IM_ResourceSetsPerConfig, NULL, FALSE);
30602
30603   return offset;
30604 }
30605
30606
30607 static const per_sequence_t CSI_AssociatedReportConfigInfo_sequence[] = {
30608   { &hf_nr_rrc_reportConfigId, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_ReportConfigId },
30609   { &hf_nr_rrc_resourcesForChannel, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_resourcesForChannel },
30610   { &hf_nr_rrc_csi_IM_ResourcesForInterference, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_maxNrofCSI_IM_ResourceSetsPerConfig },
30611   { &hf_nr_rrc_nzp_CSI_RS_ResourcesForInterference, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_maxNrofNZP_CSI_RS_ResourceSetsPerConfig },
30612   { NULL, 0, 0, NULL }
30613 };
30614
30615 static int
30616 dissect_nr_rrc_CSI_AssociatedReportConfigInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30617   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
30618                                    ett_nr_rrc_CSI_AssociatedReportConfigInfo, CSI_AssociatedReportConfigInfo_sequence);
30619
30620   return offset;
30621 }
30622
30623
30624 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofReportConfigPerAperiodicTrigger_OF_CSI_AssociatedReportConfigInfo_sequence_of[1] = {
30625   { &hf_nr_rrc_associatedReportConfigInfoList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_AssociatedReportConfigInfo },
30626 };
30627
30628 static int
30629 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofReportConfigPerAperiodicTrigger_OF_CSI_AssociatedReportConfigInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30630   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
30631                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofReportConfigPerAperiodicTrigger_OF_CSI_AssociatedReportConfigInfo, SEQUENCE_SIZE_1_maxNrofReportConfigPerAperiodicTrigger_OF_CSI_AssociatedReportConfigInfo_sequence_of,
30632                                                   1, maxNrofReportConfigPerAperiodicTrigger, FALSE);
30633
30634   return offset;
30635 }
30636
30637
30638 static const per_sequence_t CSI_AperiodicTriggerState_sequence[] = {
30639   { &hf_nr_rrc_associatedReportConfigInfoList, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofReportConfigPerAperiodicTrigger_OF_CSI_AssociatedReportConfigInfo },
30640   { NULL, 0, 0, NULL }
30641 };
30642
30643 static int
30644 dissect_nr_rrc_CSI_AperiodicTriggerState(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30645   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
30646                                    ett_nr_rrc_CSI_AperiodicTriggerState, CSI_AperiodicTriggerState_sequence);
30647
30648   return offset;
30649 }
30650
30651
30652 static const per_sequence_t CSI_AperiodicTriggerStateList_sequence_of[1] = {
30653   { &hf_nr_rrc_CSI_AperiodicTriggerStateList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_AperiodicTriggerState },
30654 };
30655
30656 static int
30657 dissect_nr_rrc_CSI_AperiodicTriggerStateList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30658   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
30659                                                   ett_nr_rrc_CSI_AperiodicTriggerStateList, CSI_AperiodicTriggerStateList_sequence_of,
30660                                                   1, maxNrOfCSI_AperiodicTriggers, FALSE);
30661
30662   return offset;
30663 }
30664
30665
30666 static const value_string nr_rrc_T_aperiodicTriggerStateList_vals[] = {
30667   {   0, "release" },
30668   {   1, "setup" },
30669   { 0, NULL }
30670 };
30671
30672 static const per_choice_t T_aperiodicTriggerStateList_choice[] = {
30673   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
30674   {   1, &hf_nr_rrc_setup_18     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_CSI_AperiodicTriggerStateList },
30675   { 0, NULL, 0, NULL }
30676 };
30677
30678 static int
30679 dissect_nr_rrc_T_aperiodicTriggerStateList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30680   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
30681                                  ett_nr_rrc_T_aperiodicTriggerStateList, T_aperiodicTriggerStateList_choice,
30682                                  NULL);
30683
30684   return offset;
30685 }
30686
30687
30688 static const per_sequence_t CSI_SemiPersistentOnPUSCH_TriggerState_sequence[] = {
30689   { &hf_nr_rrc_associatedReportConfigInfo, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_ReportConfigId },
30690   { NULL, 0, 0, NULL }
30691 };
30692
30693 static int
30694 dissect_nr_rrc_CSI_SemiPersistentOnPUSCH_TriggerState(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30695   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
30696                                    ett_nr_rrc_CSI_SemiPersistentOnPUSCH_TriggerState, CSI_SemiPersistentOnPUSCH_TriggerState_sequence);
30697
30698   return offset;
30699 }
30700
30701
30702 static const per_sequence_t CSI_SemiPersistentOnPUSCH_TriggerStateList_sequence_of[1] = {
30703   { &hf_nr_rrc_CSI_SemiPersistentOnPUSCH_TriggerStateList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CSI_SemiPersistentOnPUSCH_TriggerState },
30704 };
30705
30706 static int
30707 dissect_nr_rrc_CSI_SemiPersistentOnPUSCH_TriggerStateList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30708   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
30709                                                   ett_nr_rrc_CSI_SemiPersistentOnPUSCH_TriggerStateList, CSI_SemiPersistentOnPUSCH_TriggerStateList_sequence_of,
30710                                                   1, maxNrOfSemiPersistentPUSCH_Triggers, FALSE);
30711
30712   return offset;
30713 }
30714
30715
30716 static const value_string nr_rrc_T_semiPersistentOnPUSCH_TriggerStateList_vals[] = {
30717   {   0, "release" },
30718   {   1, "setup" },
30719   { 0, NULL }
30720 };
30721
30722 static const per_choice_t T_semiPersistentOnPUSCH_TriggerStateList_choice[] = {
30723   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
30724   {   1, &hf_nr_rrc_setup_19     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_CSI_SemiPersistentOnPUSCH_TriggerStateList },
30725   { 0, NULL, 0, NULL }
30726 };
30727
30728 static int
30729 dissect_nr_rrc_T_semiPersistentOnPUSCH_TriggerStateList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30730   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
30731                                  ett_nr_rrc_T_semiPersistentOnPUSCH_TriggerStateList, T_semiPersistentOnPUSCH_TriggerStateList_choice,
30732                                  NULL);
30733
30734   return offset;
30735 }
30736
30737
30738 static const per_sequence_t CSI_MeasConfig_sequence[] = {
30739   { &hf_nr_rrc_nzp_CSI_RS_ResourceToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_Resources_OF_NZP_CSI_RS_Resource },
30740   { &hf_nr_rrc_nzp_CSI_RS_ResourceToReleaseList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_Resources_OF_NZP_CSI_RS_ResourceId },
30741   { &hf_nr_rrc_nzp_CSI_RS_ResourceSetToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourceSets_OF_NZP_CSI_RS_ResourceSet },
30742   { &hf_nr_rrc_nzp_CSI_RS_ResourceSetToReleaseList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourceSets_OF_NZP_CSI_RS_ResourceSetId },
30743   { &hf_nr_rrc_csi_IM_ResourceToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_IM_Resources_OF_CSI_IM_Resource },
30744   { &hf_nr_rrc_csi_IM_ResourceToReleaseList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_IM_Resources_OF_CSI_IM_ResourceId },
30745   { &hf_nr_rrc_csi_IM_ResourceSetToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourceSets_OF_CSI_IM_ResourceSet },
30746   { &hf_nr_rrc_csi_IM_ResourceSetToReleaseList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourceSets_OF_CSI_IM_ResourceSetId },
30747   { &hf_nr_rrc_csi_SSB_ResourceSetToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourceSets_OF_CSI_SSB_ResourceSet },
30748   { &hf_nr_rrc_csi_SSB_ResourceSetToAddReleaseList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourceSets_OF_CSI_SSB_ResourceSetId },
30749   { &hf_nr_rrc_csi_ResourceConfigToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_ResourceConfigurations_OF_CSI_ResourceConfig },
30750   { &hf_nr_rrc_csi_ResourceConfigToReleaseList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_ResourceConfigurations_OF_CSI_ResourceConfigId },
30751   { &hf_nr_rrc_csi_ReportConfigToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_ReportConfigurations_OF_CSI_ReportConfig },
30752   { &hf_nr_rrc_csi_ReportConfigToReleaseList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_ReportConfigurations_OF_CSI_ReportConfigId },
30753   { &hf_nr_rrc_reportTriggerSize, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_0_6 },
30754   { &hf_nr_rrc_aperiodicTriggerStateList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_aperiodicTriggerStateList },
30755   { &hf_nr_rrc_semiPersistentOnPUSCH_TriggerStateList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_semiPersistentOnPUSCH_TriggerStateList },
30756   { NULL, 0, 0, NULL }
30757 };
30758
30759 static int
30760 dissect_nr_rrc_CSI_MeasConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30761   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
30762                                    ett_nr_rrc_CSI_MeasConfig, CSI_MeasConfig_sequence);
30763
30764   return offset;
30765 }
30766
30767
30768 static const value_string nr_rrc_T_csi_MeasConfig_vals[] = {
30769   {   0, "release" },
30770   {   1, "setup" },
30771   { 0, NULL }
30772 };
30773
30774 static const per_choice_t T_csi_MeasConfig_choice[] = {
30775   {   0, &hf_nr_rrc_release      , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_NULL },
30776   {   1, &hf_nr_rrc_setup_45     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_CSI_MeasConfig },
30777   { 0, NULL, 0, NULL }
30778 };
30779
30780 static int
30781 dissect_nr_rrc_T_csi_MeasConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30782   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
30783                                  ett_nr_rrc_T_csi_MeasConfig, T_csi_MeasConfig_choice,
30784                                  NULL);
30785
30786   return offset;
30787 }
30788
30789
30790 static const value_string nr_rrc_T_sCellDeactivationTimer_vals[] = {
30791   {   0, "ms20" },
30792   {   1, "ms40" },
30793   {   2, "ms80" },
30794   {   3, "ms160" },
30795   {   4, "ms200" },
30796   {   5, "ms240" },
30797   {   6, "ms320" },
30798   {   7, "ms400" },
30799   {   8, "ms480" },
30800   {   9, "ms520" },
30801   {  10, "ms640" },
30802   {  11, "ms720" },
30803   {  12, "ms840" },
30804   {  13, "ms1280" },
30805   {  14, "spare2" },
30806   {  15, "spare1" },
30807   { 0, NULL }
30808 };
30809
30810
30811 static int
30812 dissect_nr_rrc_T_sCellDeactivationTimer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30813   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
30814                                      16, NULL, FALSE, 0, NULL);
30815
30816   return offset;
30817 }
30818
30819
30820 static const per_sequence_t T_own_sequence[] = {
30821   { &hf_nr_rrc_cif_Presence , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
30822   { NULL, 0, 0, NULL }
30823 };
30824
30825 static int
30826 dissect_nr_rrc_T_own(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30827   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
30828                                    ett_nr_rrc_T_own, T_own_sequence);
30829
30830   return offset;
30831 }
30832
30833
30834
30835 static int
30836 dissect_nr_rrc_INTEGER_1_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30837   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
30838                                                             1U, 7U, NULL, FALSE);
30839
30840   return offset;
30841 }
30842
30843
30844 static const per_sequence_t T_other_sequence[] = {
30845   { &hf_nr_rrc_schedulingCellId, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_ServCellIndex },
30846   { &hf_nr_rrc_cif_InSchedulingCell, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_7 },
30847   { NULL, 0, 0, NULL }
30848 };
30849
30850 static int
30851 dissect_nr_rrc_T_other(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30852   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
30853                                    ett_nr_rrc_T_other, T_other_sequence);
30854
30855   return offset;
30856 }
30857
30858
30859 static const value_string nr_rrc_T_schedulingCellInfo_vals[] = {
30860   {   0, "own" },
30861   {   1, "other" },
30862   { 0, NULL }
30863 };
30864
30865 static const per_choice_t T_schedulingCellInfo_choice[] = {
30866   {   0, &hf_nr_rrc_own          , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_own },
30867   {   1, &hf_nr_rrc_other        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_other },
30868   { 0, NULL, 0, NULL }
30869 };
30870
30871 static int
30872 dissect_nr_rrc_T_schedulingCellInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30873   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
30874                                  ett_nr_rrc_T_schedulingCellInfo, T_schedulingCellInfo_choice,
30875                                  NULL);
30876
30877   return offset;
30878 }
30879
30880
30881 static const per_sequence_t CrossCarrierSchedulingConfig_sequence[] = {
30882   { &hf_nr_rrc_schedulingCellInfo, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_schedulingCellInfo },
30883   { NULL, 0, 0, NULL }
30884 };
30885
30886 static int
30887 dissect_nr_rrc_CrossCarrierSchedulingConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30888   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
30889                                    ett_nr_rrc_CrossCarrierSchedulingConfig, CrossCarrierSchedulingConfig_sequence);
30890
30891   return offset;
30892 }
30893
30894
30895 static const value_string nr_rrc_T_ue_BeamLockFunction_vals[] = {
30896   {   0, "enabled" },
30897   { 0, NULL }
30898 };
30899
30900
30901 static int
30902 dissect_nr_rrc_T_ue_BeamLockFunction(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30903   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
30904                                      1, NULL, FALSE, 0, NULL);
30905
30906   return offset;
30907 }
30908
30909
30910 static const value_string nr_rrc_T_pathlossReferenceLinking_vals[] = {
30911   {   0, "pCell" },
30912   {   1, "sCell" },
30913   { 0, NULL }
30914 };
30915
30916
30917 static int
30918 dissect_nr_rrc_T_pathlossReferenceLinking(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30919   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
30920                                      2, NULL, FALSE, 0, NULL);
30921
30922   return offset;
30923 }
30924
30925
30926 static const per_sequence_t ServingCellConfig_sequence[] = {
30927   { &hf_nr_rrc_tdd_UL_DL_ConfigurationDedicated, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_TDD_UL_DL_ConfigDedicated },
30928   { &hf_nr_rrc_initialDownlinkBWP_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_BWP_DownlinkDedicated },
30929   { &hf_nr_rrc_downlinkBWP_ToReleaseList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofBWPs_OF_BWP_Id },
30930   { &hf_nr_rrc_downlinkBWP_ToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofBWPs_OF_BWP_Downlink },
30931   { &hf_nr_rrc_firstActiveDownlinkBWP_Id, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_BWP_Id },
30932   { &hf_nr_rrc_bwp_InactivityTimer, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_bwp_InactivityTimer },
30933   { &hf_nr_rrc_defaultDownlinkBWP_Id, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_BWP_Id },
30934   { &hf_nr_rrc_uplinkConfig , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_UplinkConfig },
30935   { &hf_nr_rrc_supplementaryUplink_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_UplinkConfig },
30936   { &hf_nr_rrc_pdcch_ServingCellConfig, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pdcch_ServingCellConfig },
30937   { &hf_nr_rrc_pdsch_ServingCellConfig, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pdsch_ServingCellConfig },
30938   { &hf_nr_rrc_csi_MeasConfig, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_csi_MeasConfig },
30939   { &hf_nr_rrc_sCellDeactivationTimer, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_sCellDeactivationTimer },
30940   { &hf_nr_rrc_crossCarrierSchedulingConfig, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_CrossCarrierSchedulingConfig },
30941   { &hf_nr_rrc_tag_Id       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_TAG_Id },
30942   { &hf_nr_rrc_ue_BeamLockFunction, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_ue_BeamLockFunction },
30943   { &hf_nr_rrc_pathlossReferenceLinking, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pathlossReferenceLinking },
30944   { &hf_nr_rrc_servingCellMO, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_MeasObjectId },
30945   { NULL, 0, 0, NULL }
30946 };
30947
30948 static int
30949 dissect_nr_rrc_ServingCellConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30950   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
30951                                    ett_nr_rrc_ServingCellConfig, ServingCellConfig_sequence);
30952
30953   return offset;
30954 }
30955
30956
30957 static const per_sequence_t SpCellConfig_sequence[] = {
30958   { &hf_nr_rrc_servCellIndex, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ServCellIndex },
30959   { &hf_nr_rrc_reconfigurationWithSync, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ReconfigurationWithSync },
30960   { &hf_nr_rrc_rlf_TimersAndConstants, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_rlf_TimersAndConstants },
30961   { &hf_nr_rrc_rlmInSyncOutOfSyncThreshold, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_rlmInSyncOutOfSyncThreshold },
30962   { &hf_nr_rrc_spCellConfigDedicated, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ServingCellConfig },
30963   { NULL, 0, 0, NULL }
30964 };
30965
30966 static int
30967 dissect_nr_rrc_SpCellConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30968   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
30969                                    ett_nr_rrc_SpCellConfig, SpCellConfig_sequence);
30970
30971   return offset;
30972 }
30973
30974
30975
30976 static int
30977 dissect_nr_rrc_SCellIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30978   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
30979                                                             1U, 31U, NULL, FALSE);
30980
30981   return offset;
30982 }
30983
30984
30985 static const per_sequence_t SCellConfig_eag_1_sequence[] = {
30986   { &hf_nr_rrc_smtc         , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SSB_MTC },
30987   { NULL, 0, 0, NULL }
30988 };
30989
30990 static int
30991 dissect_nr_rrc_SCellConfig_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
30992   offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SCellConfig_eag_1_sequence);
30993
30994   return offset;
30995 }
30996
30997
30998 static const per_sequence_t SCellConfig_sequence[] = {
30999   { &hf_nr_rrc_sCellIndex   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SCellIndex },
31000   { &hf_nr_rrc_sCellConfigCommon, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ServingCellConfigCommon },
31001   { &hf_nr_rrc_sCellConfigDedicated, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_ServingCellConfig },
31002   { &dummy_hf_nr_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_nr_rrc_SCellConfig_eag_1 },
31003   { NULL, 0, 0, NULL }
31004 };
31005
31006 static int
31007 dissect_nr_rrc_SCellConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31008   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
31009                                    ett_nr_rrc_SCellConfig, SCellConfig_sequence);
31010
31011   return offset;
31012 }
31013
31014
31015 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofSCells_OF_SCellConfig_sequence_of[1] = {
31016   { &hf_nr_rrc_sCellToAddModList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SCellConfig },
31017 };
31018
31019 static int
31020 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSCells_OF_SCellConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31021   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
31022                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSCells_OF_SCellConfig, SEQUENCE_SIZE_1_maxNrofSCells_OF_SCellConfig_sequence_of,
31023                                                   1, maxNrofSCells, FALSE);
31024
31025   return offset;
31026 }
31027
31028
31029 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofSCells_OF_SCellIndex_sequence_of[1] = {
31030   { &hf_nr_rrc_sCellToReleaseList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SCellIndex },
31031 };
31032
31033 static int
31034 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSCells_OF_SCellIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31035   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
31036                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSCells_OF_SCellIndex, SEQUENCE_SIZE_1_maxNrofSCells_OF_SCellIndex_sequence_of,
31037                                                   1, maxNrofSCells, FALSE);
31038
31039   return offset;
31040 }
31041
31042
31043 static const value_string nr_rrc_T_reportUplinkTxDirectCurrent_v1530_vals[] = {
31044   {   0, "true" },
31045   { 0, NULL }
31046 };
31047
31048
31049 static int
31050 dissect_nr_rrc_T_reportUplinkTxDirectCurrent_v1530(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31051   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31052                                      1, NULL, FALSE, 0, NULL);
31053
31054   return offset;
31055 }
31056
31057
31058 static const per_sequence_t CellGroupConfig_eag_1_sequence[] = {
31059   { &hf_nr_rrc_reportUplinkTxDirectCurrent_v1530, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_reportUplinkTxDirectCurrent_v1530 },
31060   { NULL, 0, 0, NULL }
31061 };
31062
31063 static int
31064 dissect_nr_rrc_CellGroupConfig_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31065   offset = dissect_per_sequence_eag(tvb, offset, actx, tree, CellGroupConfig_eag_1_sequence);
31066
31067   return offset;
31068 }
31069
31070
31071 static const per_sequence_t CellGroupConfig_sequence[] = {
31072   { &hf_nr_rrc_cellGroupId  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_CellGroupId },
31073   { &hf_nr_rrc_rlc_BearerToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxLC_ID_OF_RLC_BearerConfig },
31074   { &hf_nr_rrc_rlc_BearerToReleaseList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxLC_ID_OF_LogicalChannelIdentity },
31075   { &hf_nr_rrc_mac_CellGroupConfig, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_MAC_CellGroupConfig },
31076   { &hf_nr_rrc_physicalCellGroupConfig, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_PhysicalCellGroupConfig },
31077   { &hf_nr_rrc_spCellConfig , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SpCellConfig },
31078   { &hf_nr_rrc_sCellToAddModList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSCells_OF_SCellConfig },
31079   { &hf_nr_rrc_sCellToReleaseList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofSCells_OF_SCellIndex },
31080   { &dummy_hf_nr_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_nr_rrc_CellGroupConfig_eag_1 },
31081   { NULL, 0, 0, NULL }
31082 };
31083
31084 static int
31085 dissect_nr_rrc_CellGroupConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31086   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
31087                                    ett_nr_rrc_CellGroupConfig, CellGroupConfig_sequence);
31088
31089   return offset;
31090 }
31091
31092
31093 static const per_sequence_t MeasResultSCG_Failure_sequence[] = {
31094   { &hf_nr_rrc_measResultPerMOList, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasResultList2NR },
31095   { NULL, 0, 0, NULL }
31096 };
31097
31098 static int
31099 dissect_nr_rrc_MeasResultSCG_Failure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31100   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
31101                                    ett_nr_rrc_MeasResultSCG_Failure, MeasResultSCG_Failure_sequence);
31102
31103   return offset;
31104 }
31105
31106
31107 static const value_string nr_rrc_AccessStratumRelease_vals[] = {
31108   {   0, "rel15" },
31109   {   1, "spare7" },
31110   {   2, "spare6" },
31111   {   3, "spare5" },
31112   {   4, "spare4" },
31113   {   5, "spare3" },
31114   {   6, "spare2" },
31115   {   7, "spare1" },
31116   { 0, NULL }
31117 };
31118
31119
31120 static int
31121 dissect_nr_rrc_AccessStratumRelease(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31122   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31123                                      8, NULL, TRUE, 0, NULL);
31124
31125   return offset;
31126 }
31127
31128
31129 static const value_string nr_rrc_CA_BandwidthClassEUTRA_vals[] = {
31130   {   0, "a" },
31131   {   1, "b" },
31132   {   2, "c" },
31133   {   3, "d" },
31134   {   4, "e" },
31135   {   5, "f" },
31136   { 0, NULL }
31137 };
31138
31139
31140 static int
31141 dissect_nr_rrc_CA_BandwidthClassEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31142   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31143                                      6, NULL, TRUE, 0, NULL);
31144
31145   return offset;
31146 }
31147
31148
31149 static const per_sequence_t T_eutra_sequence[] = {
31150   { &hf_nr_rrc_bandEUTRA    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FreqBandIndicatorEUTRA },
31151   { &hf_nr_rrc_ca_BandwidthClassDL_EUTRA, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_CA_BandwidthClassEUTRA },
31152   { &hf_nr_rrc_ca_BandwidthClassUL_EUTRA, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_CA_BandwidthClassEUTRA },
31153   { NULL, 0, 0, NULL }
31154 };
31155
31156 static int
31157 dissect_nr_rrc_T_eutra(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31158   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
31159                                    ett_nr_rrc_T_eutra, T_eutra_sequence);
31160
31161   return offset;
31162 }
31163
31164
31165 static const value_string nr_rrc_CA_BandwidthClassNR_vals[] = {
31166   {   0, "a" },
31167   {   1, "b" },
31168   {   2, "c" },
31169   {   3, "d" },
31170   {   4, "e" },
31171   {   5, "f" },
31172   {   6, "g" },
31173   {   7, "h" },
31174   {   8, "i" },
31175   {   9, "j" },
31176   {  10, "k" },
31177   {  11, "l" },
31178   {  12, "m" },
31179   {  13, "n" },
31180   {  14, "o" },
31181   {  15, "p" },
31182   {  16, "q" },
31183   { 0, NULL }
31184 };
31185
31186 static value_string_ext nr_rrc_CA_BandwidthClassNR_vals_ext = VALUE_STRING_EXT_INIT(nr_rrc_CA_BandwidthClassNR_vals);
31187
31188
31189 static int
31190 dissect_nr_rrc_CA_BandwidthClassNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31191   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31192                                      17, NULL, TRUE, 0, NULL);
31193
31194   return offset;
31195 }
31196
31197
31198 static const per_sequence_t T_nr_sequence[] = {
31199   { &hf_nr_rrc_bandNR       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FreqBandIndicatorNR },
31200   { &hf_nr_rrc_ca_BandwidthClassDL_NR, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_CA_BandwidthClassNR },
31201   { &hf_nr_rrc_ca_BandwidthClassUL_NR, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_CA_BandwidthClassNR },
31202   { NULL, 0, 0, NULL }
31203 };
31204
31205 static int
31206 dissect_nr_rrc_T_nr(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31207   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
31208                                    ett_nr_rrc_T_nr, T_nr_sequence);
31209
31210   return offset;
31211 }
31212
31213
31214 static const value_string nr_rrc_BandParameters_vals[] = {
31215   {   0, "eutra" },
31216   {   1, "nr" },
31217   { 0, NULL }
31218 };
31219
31220 static const per_choice_t BandParameters_choice[] = {
31221   {   0, &hf_nr_rrc_eutra_01     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_eutra },
31222   {   1, &hf_nr_rrc_nr_01        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_nr },
31223   { 0, NULL, 0, NULL }
31224 };
31225
31226 static int
31227 dissect_nr_rrc_BandParameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31228   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
31229                                  ett_nr_rrc_BandParameters, BandParameters_choice,
31230                                  NULL);
31231
31232   return offset;
31233 }
31234
31235
31236 static const per_sequence_t SEQUENCE_SIZE_1_maxSimultaneousBands_OF_BandParameters_sequence_of[1] = {
31237   { &hf_nr_rrc_bandList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BandParameters },
31238 };
31239
31240 static int
31241 dissect_nr_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_OF_BandParameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31242   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
31243                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_OF_BandParameters, SEQUENCE_SIZE_1_maxSimultaneousBands_OF_BandParameters_sequence_of,
31244                                                   1, maxSimultaneousBands, FALSE);
31245
31246   return offset;
31247 }
31248
31249
31250
31251 static int
31252 dissect_nr_rrc_FeatureSetCombinationId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31253   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
31254                                                             0U, maxFeatureSetCombinations, NULL, FALSE);
31255
31256   return offset;
31257 }
31258
31259
31260 static const value_string nr_rrc_T_multipleTimingAdvance_vals[] = {
31261   {   0, "supported" },
31262   { 0, NULL }
31263 };
31264
31265
31266 static int
31267 dissect_nr_rrc_T_multipleTimingAdvance(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31268   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31269                                      1, NULL, FALSE, 0, NULL);
31270
31271   return offset;
31272 }
31273
31274
31275 static const value_string nr_rrc_T_simultaneousRx_Tx_vals[] = {
31276   {   0, "supported" },
31277   { 0, NULL }
31278 };
31279
31280
31281 static int
31282 dissect_nr_rrc_T_simultaneousRx_Tx(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31283   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31284                                      1, NULL, FALSE, 0, NULL);
31285
31286   return offset;
31287 }
31288
31289
31290
31291 static int
31292 dissect_nr_rrc_BIT_STRING_SIZE_1_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31293   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
31294                                      1, 8, FALSE, NULL, NULL);
31295
31296   return offset;
31297 }
31298
31299
31300 static const value_string nr_rrc_T_additionalRx_Tx_PerformanceReq_vals[] = {
31301   {   0, "supported" },
31302   { 0, NULL }
31303 };
31304
31305
31306 static int
31307 dissect_nr_rrc_T_additionalRx_Tx_PerformanceReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31308   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31309                                      1, NULL, FALSE, 0, NULL);
31310
31311   return offset;
31312 }
31313
31314
31315 static const value_string nr_rrc_T_ue_CA_PowerClass_N_vals[] = {
31316   {   0, "class2" },
31317   { 0, NULL }
31318 };
31319
31320
31321 static int
31322 dissect_nr_rrc_T_ue_CA_PowerClass_N(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31323   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31324                                      1, NULL, FALSE, 0, NULL);
31325
31326   return offset;
31327 }
31328
31329
31330
31331 static int
31332 dissect_nr_rrc_BIT_STRING_SIZE_1_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31333   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
31334                                      1, 32, FALSE, NULL, NULL);
31335
31336   return offset;
31337 }
31338
31339
31340 static const per_sequence_t CA_ParametersEUTRA_sequence[] = {
31341   { &hf_nr_rrc_multipleTimingAdvance, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_multipleTimingAdvance },
31342   { &hf_nr_rrc_simultaneousRx_Tx, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_simultaneousRx_Tx },
31343   { &hf_nr_rrc_supportedNAICS_2CRS_AP, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_BIT_STRING_SIZE_1_8 },
31344   { &hf_nr_rrc_additionalRx_Tx_PerformanceReq, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_additionalRx_Tx_PerformanceReq },
31345   { &hf_nr_rrc_ue_CA_PowerClass_N, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_ue_CA_PowerClass_N },
31346   { &hf_nr_rrc_supportedBandwidthCombinationSetEUTRA_v1530, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_BIT_STRING_SIZE_1_32 },
31347   { NULL, 0, 0, NULL }
31348 };
31349
31350 static int
31351 dissect_nr_rrc_CA_ParametersEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31352   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
31353                                    ett_nr_rrc_CA_ParametersEUTRA, CA_ParametersEUTRA_sequence);
31354
31355   return offset;
31356 }
31357
31358
31359 static const value_string nr_rrc_T_multipleTimingAdvances_vals[] = {
31360   {   0, "supported" },
31361   { 0, NULL }
31362 };
31363
31364
31365 static int
31366 dissect_nr_rrc_T_multipleTimingAdvances(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31367   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31368                                      1, NULL, FALSE, 0, NULL);
31369
31370   return offset;
31371 }
31372
31373
31374 static const value_string nr_rrc_T_parallelTxSRS_PUCCH_PUSCH_vals[] = {
31375   {   0, "supported" },
31376   { 0, NULL }
31377 };
31378
31379
31380 static int
31381 dissect_nr_rrc_T_parallelTxSRS_PUCCH_PUSCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31382   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31383                                      1, NULL, FALSE, 0, NULL);
31384
31385   return offset;
31386 }
31387
31388
31389 static const value_string nr_rrc_T_parallelTxPRACH_SRS_PUCCH_PUSCH_vals[] = {
31390   {   0, "supported" },
31391   { 0, NULL }
31392 };
31393
31394
31395 static int
31396 dissect_nr_rrc_T_parallelTxPRACH_SRS_PUCCH_PUSCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31397   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31398                                      1, NULL, FALSE, 0, NULL);
31399
31400   return offset;
31401 }
31402
31403
31404 static const value_string nr_rrc_T_simultaneousRxTxInterBandCA_vals[] = {
31405   {   0, "supported" },
31406   { 0, NULL }
31407 };
31408
31409
31410 static int
31411 dissect_nr_rrc_T_simultaneousRxTxInterBandCA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31412   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31413                                      1, NULL, FALSE, 0, NULL);
31414
31415   return offset;
31416 }
31417
31418
31419 static const value_string nr_rrc_T_simultaneousRxTxSUL_vals[] = {
31420   {   0, "supported" },
31421   { 0, NULL }
31422 };
31423
31424
31425 static int
31426 dissect_nr_rrc_T_simultaneousRxTxSUL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31427   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31428                                      1, NULL, FALSE, 0, NULL);
31429
31430   return offset;
31431 }
31432
31433
31434 static const value_string nr_rrc_T_diffNumerologyAcrossPUCCH_Group_vals[] = {
31435   {   0, "supported" },
31436   { 0, NULL }
31437 };
31438
31439
31440 static int
31441 dissect_nr_rrc_T_diffNumerologyAcrossPUCCH_Group(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31442   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31443                                      1, NULL, FALSE, 0, NULL);
31444
31445   return offset;
31446 }
31447
31448
31449 static const value_string nr_rrc_T_diffNumerologyWithinPUCCH_Group_vals[] = {
31450   {   0, "supported" },
31451   { 0, NULL }
31452 };
31453
31454
31455 static int
31456 dissect_nr_rrc_T_diffNumerologyWithinPUCCH_Group(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31457   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31458                                      1, NULL, FALSE, 0, NULL);
31459
31460   return offset;
31461 }
31462
31463
31464 static const value_string nr_rrc_T_supportedNumberTAG_vals[] = {
31465   {   0, "n2" },
31466   {   1, "n3" },
31467   {   2, "n4" },
31468   { 0, NULL }
31469 };
31470
31471
31472 static int
31473 dissect_nr_rrc_T_supportedNumberTAG(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31474   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31475                                      3, NULL, FALSE, 0, NULL);
31476
31477   return offset;
31478 }
31479
31480
31481 static const per_sequence_t CA_ParametersNR_sequence[] = {
31482   { &hf_nr_rrc_multipleTimingAdvances, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_multipleTimingAdvances },
31483   { &hf_nr_rrc_parallelTxSRS_PUCCH_PUSCH, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_parallelTxSRS_PUCCH_PUSCH },
31484   { &hf_nr_rrc_parallelTxPRACH_SRS_PUCCH_PUSCH, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_parallelTxPRACH_SRS_PUCCH_PUSCH },
31485   { &hf_nr_rrc_simultaneousRxTxInterBandCA, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_simultaneousRxTxInterBandCA },
31486   { &hf_nr_rrc_simultaneousRxTxSUL, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_simultaneousRxTxSUL },
31487   { &hf_nr_rrc_diffNumerologyAcrossPUCCH_Group, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_diffNumerologyAcrossPUCCH_Group },
31488   { &hf_nr_rrc_diffNumerologyWithinPUCCH_Group, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_diffNumerologyWithinPUCCH_Group },
31489   { &hf_nr_rrc_supportedNumberTAG, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_supportedNumberTAG },
31490   { NULL, 0, 0, NULL }
31491 };
31492
31493 static int
31494 dissect_nr_rrc_CA_ParametersNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31495   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
31496                                    ett_nr_rrc_CA_ParametersNR, CA_ParametersNR_sequence);
31497
31498   return offset;
31499 }
31500
31501
31502 static const value_string nr_rrc_T_singleUL_Transmission_vals[] = {
31503   {   0, "supported" },
31504   { 0, NULL }
31505 };
31506
31507
31508 static int
31509 dissect_nr_rrc_T_singleUL_Transmission(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31510   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31511                                      1, NULL, FALSE, 0, NULL);
31512
31513   return offset;
31514 }
31515
31516
31517 static const value_string nr_rrc_T_dynamicPowerSharing_vals[] = {
31518   {   0, "supported" },
31519   { 0, NULL }
31520 };
31521
31522
31523 static int
31524 dissect_nr_rrc_T_dynamicPowerSharing(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31525   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31526                                      1, NULL, FALSE, 0, NULL);
31527
31528   return offset;
31529 }
31530
31531
31532 static const value_string nr_rrc_T_tdm_Pattern_vals[] = {
31533   {   0, "supported" },
31534   { 0, NULL }
31535 };
31536
31537
31538 static int
31539 dissect_nr_rrc_T_tdm_Pattern(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31540   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31541                                      1, NULL, FALSE, 0, NULL);
31542
31543   return offset;
31544 }
31545
31546
31547 static const value_string nr_rrc_T_ul_SharingEUTRA_NR_vals[] = {
31548   {   0, "tdm" },
31549   {   1, "fdm" },
31550   {   2, "both" },
31551   { 0, NULL }
31552 };
31553
31554
31555 static int
31556 dissect_nr_rrc_T_ul_SharingEUTRA_NR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31557   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31558                                      3, NULL, FALSE, 0, NULL);
31559
31560   return offset;
31561 }
31562
31563
31564 static const value_string nr_rrc_T_ul_SwitchingTimeEUTRA_NR_vals[] = {
31565   {   0, "type1" },
31566   {   1, "type2" },
31567   { 0, NULL }
31568 };
31569
31570
31571 static int
31572 dissect_nr_rrc_T_ul_SwitchingTimeEUTRA_NR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31573   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31574                                      2, NULL, FALSE, 0, NULL);
31575
31576   return offset;
31577 }
31578
31579
31580 static const value_string nr_rrc_T_simultaneousRxTxInterBandENDC_vals[] = {
31581   {   0, "supported" },
31582   { 0, NULL }
31583 };
31584
31585
31586 static int
31587 dissect_nr_rrc_T_simultaneousRxTxInterBandENDC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31588   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31589                                      1, NULL, FALSE, 0, NULL);
31590
31591   return offset;
31592 }
31593
31594
31595 static const value_string nr_rrc_T_asyncIntraBandENDC_vals[] = {
31596   {   0, "supported" },
31597   { 0, NULL }
31598 };
31599
31600
31601 static int
31602 dissect_nr_rrc_T_asyncIntraBandENDC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31603   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31604                                      1, NULL, FALSE, 0, NULL);
31605
31606   return offset;
31607 }
31608
31609
31610 static const per_sequence_t MRDC_Parameters_sequence[] = {
31611   { &hf_nr_rrc_singleUL_Transmission, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_singleUL_Transmission },
31612   { &hf_nr_rrc_dynamicPowerSharing, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_dynamicPowerSharing },
31613   { &hf_nr_rrc_tdm_Pattern  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_tdm_Pattern },
31614   { &hf_nr_rrc_ul_SharingEUTRA_NR, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_ul_SharingEUTRA_NR },
31615   { &hf_nr_rrc_ul_SwitchingTimeEUTRA_NR, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_ul_SwitchingTimeEUTRA_NR },
31616   { &hf_nr_rrc_simultaneousRxTxInterBandENDC, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_simultaneousRxTxInterBandENDC },
31617   { &hf_nr_rrc_asyncIntraBandENDC, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_asyncIntraBandENDC },
31618   { NULL, 0, 0, NULL }
31619 };
31620
31621 static int
31622 dissect_nr_rrc_MRDC_Parameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31623   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
31624                                    ett_nr_rrc_MRDC_Parameters, MRDC_Parameters_sequence);
31625
31626   return offset;
31627 }
31628
31629
31630 static const value_string nr_rrc_T_powerClass_v1530_vals[] = {
31631   {   0, "pc2" },
31632   { 0, NULL }
31633 };
31634
31635
31636 static int
31637 dissect_nr_rrc_T_powerClass_v1530(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31638   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31639                                      1, NULL, FALSE, 0, NULL);
31640
31641   return offset;
31642 }
31643
31644
31645 static const per_sequence_t BandCombination_sequence[] = {
31646   { &hf_nr_rrc_bandList     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_OF_BandParameters },
31647   { &hf_nr_rrc_featureSetCombination, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FeatureSetCombinationId },
31648   { &hf_nr_rrc_ca_ParametersEUTRA, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_CA_ParametersEUTRA },
31649   { &hf_nr_rrc_ca_ParametersNR, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_CA_ParametersNR },
31650   { &hf_nr_rrc_mrdc_Parameters, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MRDC_Parameters },
31651   { &hf_nr_rrc_supportedBandwidthCombinationSet, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_BIT_STRING_SIZE_1_32 },
31652   { &hf_nr_rrc_powerClass_v1530, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_powerClass_v1530 },
31653   { NULL, 0, 0, NULL }
31654 };
31655
31656 static int
31657 dissect_nr_rrc_BandCombination(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31658   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
31659                                    ett_nr_rrc_BandCombination, BandCombination_sequence);
31660
31661   return offset;
31662 }
31663
31664
31665 static const per_sequence_t BandCombinationList_sequence_of[1] = {
31666   { &hf_nr_rrc_BandCombinationList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BandCombination },
31667 };
31668
31669 static int
31670 dissect_nr_rrc_BandCombinationList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31671   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
31672                                                   ett_nr_rrc_BandCombinationList, BandCombinationList_sequence_of,
31673                                                   1, maxBandComb, FALSE);
31674
31675   return offset;
31676 }
31677
31678
31679
31680 static int
31681 dissect_nr_rrc_FeatureSetEUTRA_DownlinkId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31682   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
31683                                                             0U, maxEUTRA_DL_FeatureSets, NULL, FALSE);
31684
31685   return offset;
31686 }
31687
31688
31689
31690 static int
31691 dissect_nr_rrc_FeatureSetEUTRA_UplinkId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31692   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
31693                                                             0U, maxEUTRA_UL_FeatureSets, NULL, FALSE);
31694
31695   return offset;
31696 }
31697
31698
31699 static const per_sequence_t T_eutra_01_sequence[] = {
31700   { &hf_nr_rrc_downlinkSetEUTRA, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FeatureSetEUTRA_DownlinkId },
31701   { &hf_nr_rrc_uplinkSetEUTRA, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FeatureSetEUTRA_UplinkId },
31702   { NULL, 0, 0, NULL }
31703 };
31704
31705 static int
31706 dissect_nr_rrc_T_eutra_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31707   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
31708                                    ett_nr_rrc_T_eutra_01, T_eutra_01_sequence);
31709
31710   return offset;
31711 }
31712
31713
31714
31715 static int
31716 dissect_nr_rrc_FeatureSetDownlinkId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31717   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
31718                                                             0U, maxDownlinkFeatureSets, NULL, FALSE);
31719
31720   return offset;
31721 }
31722
31723
31724
31725 static int
31726 dissect_nr_rrc_FeatureSetUplinkId(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31727   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
31728                                                             0U, maxUplinkFeatureSets, NULL, FALSE);
31729
31730   return offset;
31731 }
31732
31733
31734 static const per_sequence_t T_nr_01_sequence[] = {
31735   { &hf_nr_rrc_downlinkSetNR, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FeatureSetDownlinkId },
31736   { &hf_nr_rrc_uplinkSetNR  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FeatureSetUplinkId },
31737   { NULL, 0, 0, NULL }
31738 };
31739
31740 static int
31741 dissect_nr_rrc_T_nr_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31742   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
31743                                    ett_nr_rrc_T_nr_01, T_nr_01_sequence);
31744
31745   return offset;
31746 }
31747
31748
31749 static const value_string nr_rrc_FeatureSet_vals[] = {
31750   {   0, "eutra" },
31751   {   1, "nr" },
31752   { 0, NULL }
31753 };
31754
31755 static const per_choice_t FeatureSet_choice[] = {
31756   {   0, &hf_nr_rrc_eutra_02     , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_eutra_01 },
31757   {   1, &hf_nr_rrc_nr_02        , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_nr_01 },
31758   { 0, NULL, 0, NULL }
31759 };
31760
31761 static int
31762 dissect_nr_rrc_FeatureSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31763   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
31764                                  ett_nr_rrc_FeatureSet, FeatureSet_choice,
31765                                  NULL);
31766
31767   return offset;
31768 }
31769
31770
31771 static const per_sequence_t FeatureSetsPerBand_sequence_of[1] = {
31772   { &hf_nr_rrc_FeatureSetsPerBand_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FeatureSet },
31773 };
31774
31775 static int
31776 dissect_nr_rrc_FeatureSetsPerBand(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31777   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
31778                                                   ett_nr_rrc_FeatureSetsPerBand, FeatureSetsPerBand_sequence_of,
31779                                                   1, maxFeatureSetsPerBand, FALSE);
31780
31781   return offset;
31782 }
31783
31784
31785 static const per_sequence_t FeatureSetCombination_sequence_of[1] = {
31786   { &hf_nr_rrc_FeatureSetCombination_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FeatureSetsPerBand },
31787 };
31788
31789 static int
31790 dissect_nr_rrc_FeatureSetCombination(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31791   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
31792                                                   ett_nr_rrc_FeatureSetCombination, FeatureSetCombination_sequence_of,
31793                                                   1, maxSimultaneousBands, FALSE);
31794
31795   return offset;
31796 }
31797
31798
31799
31800 static int
31801 dissect_nr_rrc_FeatureSetDownlinkPerCC_Id(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31802   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
31803                                                             1U, maxPerCC_FeatureSets, NULL, FALSE);
31804
31805   return offset;
31806 }
31807
31808
31809 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofServingCells_OF_FeatureSetDownlinkPerCC_Id_sequence_of[1] = {
31810   { &hf_nr_rrc_featureSetListPerDownlinkCC_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FeatureSetDownlinkPerCC_Id },
31811 };
31812
31813 static int
31814 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofServingCells_OF_FeatureSetDownlinkPerCC_Id(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31815   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
31816                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofServingCells_OF_FeatureSetDownlinkPerCC_Id, SEQUENCE_SIZE_1_maxNrofServingCells_OF_FeatureSetDownlinkPerCC_Id_sequence_of,
31817                                                   1, maxNrofServingCells, FALSE);
31818
31819   return offset;
31820 }
31821
31822
31823 static const value_string nr_rrc_FreqSeparationClass_vals[] = {
31824   {   0, "c1" },
31825   {   1, "c2" },
31826   {   2, "c3" },
31827   { 0, NULL }
31828 };
31829
31830
31831 static int
31832 dissect_nr_rrc_FreqSeparationClass(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31833   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31834                                      3, NULL, TRUE, 0, NULL);
31835
31836   return offset;
31837 }
31838
31839
31840 static const value_string nr_rrc_T_scalingFactor_vals[] = {
31841   {   0, "f0p4" },
31842   {   1, "f0p75" },
31843   {   2, "f0p8" },
31844   { 0, NULL }
31845 };
31846
31847
31848 static int
31849 dissect_nr_rrc_T_scalingFactor(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31850   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31851                                      3, NULL, FALSE, 0, NULL);
31852
31853   return offset;
31854 }
31855
31856
31857 static const value_string nr_rrc_T_crossCarrierScheduling_OtherSCS_vals[] = {
31858   {   0, "supported" },
31859   { 0, NULL }
31860 };
31861
31862
31863 static int
31864 dissect_nr_rrc_T_crossCarrierScheduling_OtherSCS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31865   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31866                                      1, NULL, FALSE, 0, NULL);
31867
31868   return offset;
31869 }
31870
31871
31872 static const value_string nr_rrc_T_scellWithoutSSB_vals[] = {
31873   {   0, "supported" },
31874   { 0, NULL }
31875 };
31876
31877
31878 static int
31879 dissect_nr_rrc_T_scellWithoutSSB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31880   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31881                                      1, NULL, FALSE, 0, NULL);
31882
31883   return offset;
31884 }
31885
31886
31887 static const value_string nr_rrc_T_csi_RS_MeasSCellWithoutSSB_vals[] = {
31888   {   0, "supported" },
31889   { 0, NULL }
31890 };
31891
31892
31893 static int
31894 dissect_nr_rrc_T_csi_RS_MeasSCellWithoutSSB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31895   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31896                                      1, NULL, FALSE, 0, NULL);
31897
31898   return offset;
31899 }
31900
31901
31902 static const value_string nr_rrc_T_srs_AssocCSI_RS_vals[] = {
31903   {   0, "supported" },
31904   { 0, NULL }
31905 };
31906
31907
31908 static int
31909 dissect_nr_rrc_T_srs_AssocCSI_RS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31910   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31911                                      1, NULL, FALSE, 0, NULL);
31912
31913   return offset;
31914 }
31915
31916
31917 static const value_string nr_rrc_T_type1_3_CSS_vals[] = {
31918   {   0, "supported" },
31919   { 0, NULL }
31920 };
31921
31922
31923 static int
31924 dissect_nr_rrc_T_type1_3_CSS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31925   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31926                                      1, NULL, FALSE, 0, NULL);
31927
31928   return offset;
31929 }
31930
31931
31932 static const value_string nr_rrc_T_pdcch_MonitoringAnyOccasions_vals[] = {
31933   {   0, "withoutDCI-Gap" },
31934   {   1, "withDCI-Gap" },
31935   { 0, NULL }
31936 };
31937
31938
31939 static int
31940 dissect_nr_rrc_T_pdcch_MonitoringAnyOccasions(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31941   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31942                                      2, NULL, FALSE, 0, NULL);
31943
31944   return offset;
31945 }
31946
31947
31948 static const value_string nr_rrc_T_pdcch_MonitoringAnyOccasionsWithSpanGap_vals[] = {
31949   {   0, "supported" },
31950   { 0, NULL }
31951 };
31952
31953
31954 static int
31955 dissect_nr_rrc_T_pdcch_MonitoringAnyOccasionsWithSpanGap(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31956   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31957                                      1, NULL, FALSE, 0, NULL);
31958
31959   return offset;
31960 }
31961
31962
31963 static const value_string nr_rrc_T_ue_SpecificUL_DL_Assignment_vals[] = {
31964   {   0, "supported" },
31965   { 0, NULL }
31966 };
31967
31968
31969 static int
31970 dissect_nr_rrc_T_ue_SpecificUL_DL_Assignment(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31971   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31972                                      1, NULL, FALSE, 0, NULL);
31973
31974   return offset;
31975 }
31976
31977
31978 static const value_string nr_rrc_T_searchSpaceSharingCA_DL_vals[] = {
31979   {   0, "supported" },
31980   { 0, NULL }
31981 };
31982
31983
31984 static int
31985 dissect_nr_rrc_T_searchSpaceSharingCA_DL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
31986   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
31987                                      1, NULL, FALSE, 0, NULL);
31988
31989   return offset;
31990 }
31991
31992
31993 static const value_string nr_rrc_T_scs_60kHz_vals[] = {
31994   {   0, "s7" },
31995   {   1, "s14" },
31996   {   2, "s28" },
31997   { 0, NULL }
31998 };
31999
32000
32001 static int
32002 dissect_nr_rrc_T_scs_60kHz(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32003   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32004                                      3, NULL, FALSE, 0, NULL);
32005
32006   return offset;
32007 }
32008
32009
32010 static const value_string nr_rrc_T_sch_120kHz_vals[] = {
32011   {   0, "s14" },
32012   {   1, "s28" },
32013   { 0, NULL }
32014 };
32015
32016
32017 static int
32018 dissect_nr_rrc_T_sch_120kHz(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32019   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32020                                      2, NULL, FALSE, 0, NULL);
32021
32022   return offset;
32023 }
32024
32025
32026 static const per_sequence_t T_timeDurationForQCL_sequence[] = {
32027   { &hf_nr_rrc_scs_60kHz    , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_scs_60kHz },
32028   { &hf_nr_rrc_sch_120kHz   , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_sch_120kHz },
32029   { NULL, 0, 0, NULL }
32030 };
32031
32032 static int
32033 dissect_nr_rrc_T_timeDurationForQCL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32034   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
32035                                    ett_nr_rrc_T_timeDurationForQCL, T_timeDurationForQCL_sequence);
32036
32037   return offset;
32038 }
32039
32040
32041 static const value_string nr_rrc_T_scs_15kHz_vals[] = {
32042   {   0, "upto2" },
32043   {   1, "upto4" },
32044   {   2, "upto7" },
32045   { 0, NULL }
32046 };
32047
32048
32049 static int
32050 dissect_nr_rrc_T_scs_15kHz(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32051   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32052                                      3, NULL, FALSE, 0, NULL);
32053
32054   return offset;
32055 }
32056
32057
32058 static const value_string nr_rrc_T_scs_30kHz_vals[] = {
32059   {   0, "upto2" },
32060   {   1, "upto4" },
32061   {   2, "upto7" },
32062   { 0, NULL }
32063 };
32064
32065
32066 static int
32067 dissect_nr_rrc_T_scs_30kHz(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32068   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32069                                      3, NULL, FALSE, 0, NULL);
32070
32071   return offset;
32072 }
32073
32074
32075 static const value_string nr_rrc_T_scs_60kHz_01_vals[] = {
32076   {   0, "upto2" },
32077   {   1, "upto4" },
32078   {   2, "upto7" },
32079   { 0, NULL }
32080 };
32081
32082
32083 static int
32084 dissect_nr_rrc_T_scs_60kHz_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32085   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32086                                      3, NULL, FALSE, 0, NULL);
32087
32088   return offset;
32089 }
32090
32091
32092 static const value_string nr_rrc_T_scs_120kHz_vals[] = {
32093   {   0, "upto2" },
32094   {   1, "upto4" },
32095   {   2, "upto7" },
32096   { 0, NULL }
32097 };
32098
32099
32100 static int
32101 dissect_nr_rrc_T_scs_120kHz(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32102   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32103                                      3, NULL, FALSE, 0, NULL);
32104
32105   return offset;
32106 }
32107
32108
32109 static const per_sequence_t T_pdsch_DifferentTB_PerSlot_sequence[] = {
32110   { &hf_nr_rrc_scs_15kHz    , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_scs_15kHz },
32111   { &hf_nr_rrc_scs_30kHz    , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_scs_30kHz },
32112   { &hf_nr_rrc_scs_60kHz_01 , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_scs_60kHz_01 },
32113   { &hf_nr_rrc_scs_120kHz   , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_scs_120kHz },
32114   { NULL, 0, 0, NULL }
32115 };
32116
32117 static int
32118 dissect_nr_rrc_T_pdsch_DifferentTB_PerSlot(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32119   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
32120                                    ett_nr_rrc_T_pdsch_DifferentTB_PerSlot, T_pdsch_DifferentTB_PerSlot_sequence);
32121
32122   return offset;
32123 }
32124
32125
32126 static const value_string nr_rrc_T_maxNumberPortsAcrossNZP_CSI_RS_PerCC_vals[] = {
32127   {   0, "p2" },
32128   {   1, "p4" },
32129   {   2, "p8" },
32130   {   3, "p12" },
32131   {   4, "p16" },
32132   {   5, "p24" },
32133   {   6, "p32" },
32134   {   7, "p40" },
32135   {   8, "p48" },
32136   {   9, "p56" },
32137   {  10, "p64" },
32138   {  11, "p72" },
32139   {  12, "p80" },
32140   {  13, "p88" },
32141   {  14, "p96" },
32142   {  15, "p104" },
32143   {  16, "p112" },
32144   {  17, "p120" },
32145   {  18, "p128" },
32146   {  19, "p136" },
32147   {  20, "p144" },
32148   {  21, "p152" },
32149   {  22, "p160" },
32150   {  23, "p168" },
32151   {  24, "p176" },
32152   {  25, "p184" },
32153   {  26, "p192" },
32154   {  27, "p200" },
32155   {  28, "p208" },
32156   {  29, "p216" },
32157   {  30, "p224" },
32158   {  31, "p232" },
32159   {  32, "p240" },
32160   {  33, "p248" },
32161   {  34, "p256" },
32162   { 0, NULL }
32163 };
32164
32165 static value_string_ext nr_rrc_T_maxNumberPortsAcrossNZP_CSI_RS_PerCC_vals_ext = VALUE_STRING_EXT_INIT(nr_rrc_T_maxNumberPortsAcrossNZP_CSI_RS_PerCC_vals);
32166
32167
32168 static int
32169 dissect_nr_rrc_T_maxNumberPortsAcrossNZP_CSI_RS_PerCC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32170   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32171                                      35, NULL, FALSE, 0, NULL);
32172
32173   return offset;
32174 }
32175
32176
32177 static const value_string nr_rrc_T_maxNumberCS_IM_PerCC_vals[] = {
32178   {   0, "n1" },
32179   {   1, "n2" },
32180   {   2, "n4" },
32181   {   3, "n8" },
32182   {   4, "n16" },
32183   {   5, "n32" },
32184   { 0, NULL }
32185 };
32186
32187
32188 static int
32189 dissect_nr_rrc_T_maxNumberCS_IM_PerCC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32190   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32191                                      6, NULL, FALSE, 0, NULL);
32192
32193   return offset;
32194 }
32195
32196
32197 static const value_string nr_rrc_T_maxNumberSimultaneousCSI_RS_ActBWP_AllCC_vals[] = {
32198   {   0, "n5" },
32199   {   1, "n6" },
32200   {   2, "n7" },
32201   {   3, "n8" },
32202   {   4, "n9" },
32203   {   5, "n10" },
32204   {   6, "n12" },
32205   {   7, "n14" },
32206   {   8, "n16" },
32207   {   9, "n18" },
32208   {  10, "n20" },
32209   {  11, "n22" },
32210   {  12, "n24" },
32211   {  13, "n26" },
32212   {  14, "n28" },
32213   {  15, "n30" },
32214   {  16, "n32" },
32215   {  17, "n34" },
32216   {  18, "n36" },
32217   {  19, "n38" },
32218   {  20, "n40" },
32219   {  21, "n42" },
32220   {  22, "n44" },
32221   {  23, "n46" },
32222   {  24, "n48" },
32223   {  25, "n50" },
32224   {  26, "n52" },
32225   {  27, "n54" },
32226   {  28, "n56" },
32227   {  29, "n58" },
32228   {  30, "n60" },
32229   {  31, "n62" },
32230   {  32, "n64" },
32231   { 0, NULL }
32232 };
32233
32234 static value_string_ext nr_rrc_T_maxNumberSimultaneousCSI_RS_ActBWP_AllCC_vals_ext = VALUE_STRING_EXT_INIT(nr_rrc_T_maxNumberSimultaneousCSI_RS_ActBWP_AllCC_vals);
32235
32236
32237 static int
32238 dissect_nr_rrc_T_maxNumberSimultaneousCSI_RS_ActBWP_AllCC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32239   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32240                                      33, NULL, FALSE, 0, NULL);
32241
32242   return offset;
32243 }
32244
32245
32246 static const value_string nr_rrc_T_totalNumberPortsSimultaneousCSI_RS_ActBWP_AllCC_vals[] = {
32247   {   0, "p8" },
32248   {   1, "p12" },
32249   {   2, "p16" },
32250   {   3, "p24" },
32251   {   4, "p32" },
32252   {   5, "p40" },
32253   {   6, "p48" },
32254   {   7, "p56" },
32255   {   8, "p64" },
32256   {   9, "p72" },
32257   {  10, "p80" },
32258   {  11, "p88" },
32259   {  12, "p96" },
32260   {  13, "p104" },
32261   {  14, "p112" },
32262   {  15, "p120" },
32263   {  16, "p128" },
32264   {  17, "p136" },
32265   {  18, "p144" },
32266   {  19, "p152" },
32267   {  20, "p160" },
32268   {  21, "p168" },
32269   {  22, "p176" },
32270   {  23, "p184" },
32271   {  24, "p192" },
32272   {  25, "p200" },
32273   {  26, "p208" },
32274   {  27, "p216" },
32275   {  28, "p224" },
32276   {  29, "p232" },
32277   {  30, "p240" },
32278   {  31, "p248" },
32279   {  32, "p256" },
32280   { 0, NULL }
32281 };
32282
32283 static value_string_ext nr_rrc_T_totalNumberPortsSimultaneousCSI_RS_ActBWP_AllCC_vals_ext = VALUE_STRING_EXT_INIT(nr_rrc_T_totalNumberPortsSimultaneousCSI_RS_ActBWP_AllCC_vals);
32284
32285
32286 static int
32287 dissect_nr_rrc_T_totalNumberPortsSimultaneousCSI_RS_ActBWP_AllCC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32288   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32289                                      33, NULL, FALSE, 0, NULL);
32290
32291   return offset;
32292 }
32293
32294
32295 static const per_sequence_t CSI_RS_IM_ReceptionForFeedback_sequence[] = {
32296   { &hf_nr_rrc_maxNumberNZP_CSI_RS_PerCC, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_32 },
32297   { &hf_nr_rrc_maxNumberPortsAcrossNZP_CSI_RS_PerCC, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_maxNumberPortsAcrossNZP_CSI_RS_PerCC },
32298   { &hf_nr_rrc_maxNumberCS_IM_PerCC, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_maxNumberCS_IM_PerCC },
32299   { &hf_nr_rrc_maxNumberSimultaneousCSI_RS_ActBWP_AllCC, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_maxNumberSimultaneousCSI_RS_ActBWP_AllCC },
32300   { &hf_nr_rrc_totalNumberPortsSimultaneousCSI_RS_ActBWP_AllCC, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_totalNumberPortsSimultaneousCSI_RS_ActBWP_AllCC },
32301   { NULL, 0, 0, NULL }
32302 };
32303
32304 static int
32305 dissect_nr_rrc_CSI_RS_IM_ReceptionForFeedback(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32306   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
32307                                    ett_nr_rrc_CSI_RS_IM_ReceptionForFeedback, CSI_RS_IM_ReceptionForFeedback_sequence);
32308
32309   return offset;
32310 }
32311
32312
32313 static const value_string nr_rrc_T_maxNumberTxPortsPerResource_vals[] = {
32314   {   0, "p2" },
32315   {   1, "p4" },
32316   {   2, "p8" },
32317   {   3, "p12" },
32318   {   4, "p16" },
32319   {   5, "p24" },
32320   {   6, "p32" },
32321   { 0, NULL }
32322 };
32323
32324
32325 static int
32326 dissect_nr_rrc_T_maxNumberTxPortsPerResource(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32327   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32328                                      7, NULL, FALSE, 0, NULL);
32329
32330   return offset;
32331 }
32332
32333
32334
32335 static int
32336 dissect_nr_rrc_INTEGER_2_256(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32337   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
32338                                                             2U, 256U, NULL, FALSE);
32339
32340   return offset;
32341 }
32342
32343
32344 static const value_string nr_rrc_T_supportedCodebookMode_vals[] = {
32345   {   0, "mode1" },
32346   {   1, "mode1AndMode2" },
32347   { 0, NULL }
32348 };
32349
32350
32351 static int
32352 dissect_nr_rrc_T_supportedCodebookMode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32353   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32354                                      2, NULL, FALSE, 0, NULL);
32355
32356   return offset;
32357 }
32358
32359
32360 static const per_sequence_t TypeI_SinglePanelCodebook_sequence[] = {
32361   { &hf_nr_rrc_maxNumberTxPortsPerResource, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_maxNumberTxPortsPerResource },
32362   { &hf_nr_rrc_maxNumberResources, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_64 },
32363   { &hf_nr_rrc_totalNumberTxPorts, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_2_256 },
32364   { &hf_nr_rrc_supportedCodebookMode, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_supportedCodebookMode },
32365   { &hf_nr_rrc_maxNumberCSI_RS_PerResourceSet, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_8 },
32366   { NULL, 0, 0, NULL }
32367 };
32368
32369 static int
32370 dissect_nr_rrc_TypeI_SinglePanelCodebook(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32371   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
32372                                    ett_nr_rrc_TypeI_SinglePanelCodebook, TypeI_SinglePanelCodebook_sequence);
32373
32374   return offset;
32375 }
32376
32377
32378 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeI_SinglePanelCodebook_sequence_of[1] = {
32379   { &hf_nr_rrc_typeI_SinglePanelCodebookList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_TypeI_SinglePanelCodebook },
32380 };
32381
32382 static int
32383 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeI_SinglePanelCodebook(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32384   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
32385                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeI_SinglePanelCodebook, SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeI_SinglePanelCodebook_sequence_of,
32386                                                   1, maxNrofCodebooks, FALSE);
32387
32388   return offset;
32389 }
32390
32391
32392 static const value_string nr_rrc_T_maxNumberTxPortsPerResource_01_vals[] = {
32393   {   0, "p8" },
32394   {   1, "p16" },
32395   {   2, "p32" },
32396   { 0, NULL }
32397 };
32398
32399
32400 static int
32401 dissect_nr_rrc_T_maxNumberTxPortsPerResource_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32402   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32403                                      3, NULL, FALSE, 0, NULL);
32404
32405   return offset;
32406 }
32407
32408
32409 static const value_string nr_rrc_T_supportedCodebookMode_01_vals[] = {
32410   {   0, "mode1" },
32411   {   1, "mode2" },
32412   {   2, "both" },
32413   { 0, NULL }
32414 };
32415
32416
32417 static int
32418 dissect_nr_rrc_T_supportedCodebookMode_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32419   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32420                                      3, NULL, FALSE, 0, NULL);
32421
32422   return offset;
32423 }
32424
32425
32426 static const value_string nr_rrc_T_supportedNumberPanels_vals[] = {
32427   {   0, "n2" },
32428   {   1, "n4" },
32429   { 0, NULL }
32430 };
32431
32432
32433 static int
32434 dissect_nr_rrc_T_supportedNumberPanels(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32435   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32436                                      2, NULL, FALSE, 0, NULL);
32437
32438   return offset;
32439 }
32440
32441
32442 static const per_sequence_t TypeI_MultiPanelCodebook_sequence[] = {
32443   { &hf_nr_rrc_maxNumberTxPortsPerResource_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_maxNumberTxPortsPerResource_01 },
32444   { &hf_nr_rrc_maxNumberResources, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_64 },
32445   { &hf_nr_rrc_totalNumberTxPorts, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_2_256 },
32446   { &hf_nr_rrc_supportedCodebookMode_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_supportedCodebookMode_01 },
32447   { &hf_nr_rrc_supportedNumberPanels, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_supportedNumberPanels },
32448   { &hf_nr_rrc_maxNumberCSI_RS_PerResourceSet, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_8 },
32449   { NULL, 0, 0, NULL }
32450 };
32451
32452 static int
32453 dissect_nr_rrc_TypeI_MultiPanelCodebook(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32454   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
32455                                    ett_nr_rrc_TypeI_MultiPanelCodebook, TypeI_MultiPanelCodebook_sequence);
32456
32457   return offset;
32458 }
32459
32460
32461 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeI_MultiPanelCodebook_sequence_of[1] = {
32462   { &hf_nr_rrc_typeI_MultiPanelCodebookList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_TypeI_MultiPanelCodebook },
32463 };
32464
32465 static int
32466 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeI_MultiPanelCodebook(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32467   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
32468                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeI_MultiPanelCodebook, SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeI_MultiPanelCodebook_sequence_of,
32469                                                   1, maxNrofCodebooks, FALSE);
32470
32471   return offset;
32472 }
32473
32474
32475 static const value_string nr_rrc_T_maxNumberTxPortsPerResource_02_vals[] = {
32476   {   0, "p4" },
32477   {   1, "p8" },
32478   {   2, "p12" },
32479   {   3, "p16" },
32480   {   4, "p24" },
32481   {   5, "p32" },
32482   { 0, NULL }
32483 };
32484
32485
32486 static int
32487 dissect_nr_rrc_T_maxNumberTxPortsPerResource_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32488   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32489                                      6, NULL, FALSE, 0, NULL);
32490
32491   return offset;
32492 }
32493
32494
32495
32496 static int
32497 dissect_nr_rrc_INTEGER_2_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32498   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
32499                                                             2U, 4U, NULL, FALSE);
32500
32501   return offset;
32502 }
32503
32504
32505 static const value_string nr_rrc_T_amplitudeScalingType_vals[] = {
32506   {   0, "wideband" },
32507   {   1, "widebandAndSubband" },
32508   { 0, NULL }
32509 };
32510
32511
32512 static int
32513 dissect_nr_rrc_T_amplitudeScalingType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32514   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32515                                      2, NULL, FALSE, 0, NULL);
32516
32517   return offset;
32518 }
32519
32520
32521 static const value_string nr_rrc_T_amplitudeSubsetRestriction_vals[] = {
32522   {   0, "supported" },
32523   { 0, NULL }
32524 };
32525
32526
32527 static int
32528 dissect_nr_rrc_T_amplitudeSubsetRestriction(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32529   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32530                                      1, NULL, FALSE, 0, NULL);
32531
32532   return offset;
32533 }
32534
32535
32536 static const per_sequence_t TypeII_Codebook_sequence[] = {
32537   { &hf_nr_rrc_maxNumberTxPortsPerResource_02, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_maxNumberTxPortsPerResource_02 },
32538   { &hf_nr_rrc_maxNumberResources, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_64 },
32539   { &hf_nr_rrc_totalNumberTxPorts, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_2_256 },
32540   { &hf_nr_rrc_parameterLx  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_2_4 },
32541   { &hf_nr_rrc_amplitudeScalingType, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_amplitudeScalingType },
32542   { &hf_nr_rrc_amplitudeSubsetRestriction, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_amplitudeSubsetRestriction },
32543   { &hf_nr_rrc_maxNumberCSI_RS_PerResourceSet, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_8 },
32544   { NULL, 0, 0, NULL }
32545 };
32546
32547 static int
32548 dissect_nr_rrc_TypeII_Codebook(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32549   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
32550                                    ett_nr_rrc_TypeII_Codebook, TypeII_Codebook_sequence);
32551
32552   return offset;
32553 }
32554
32555
32556 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeII_Codebook_sequence_of[1] = {
32557   { &hf_nr_rrc_typeII_CodebookList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_TypeII_Codebook },
32558 };
32559
32560 static int
32561 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeII_Codebook(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32562   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
32563                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeII_Codebook, SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeII_Codebook_sequence_of,
32564                                                   1, maxNrofCodebooks, FALSE);
32565
32566   return offset;
32567 }
32568
32569
32570 static const value_string nr_rrc_T_maxNumberTxPortsPerResource_03_vals[] = {
32571   {   0, "p4" },
32572   {   1, "p8" },
32573   {   2, "p12" },
32574   {   3, "p16" },
32575   {   4, "p24" },
32576   {   5, "p32" },
32577   { 0, NULL }
32578 };
32579
32580
32581 static int
32582 dissect_nr_rrc_T_maxNumberTxPortsPerResource_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32583   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32584                                      6, NULL, FALSE, 0, NULL);
32585
32586   return offset;
32587 }
32588
32589
32590 static const value_string nr_rrc_T_amplitudeScalingType_01_vals[] = {
32591   {   0, "wideband" },
32592   {   1, "widebandAndSubband" },
32593   { 0, NULL }
32594 };
32595
32596
32597 static int
32598 dissect_nr_rrc_T_amplitudeScalingType_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32599   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32600                                      2, NULL, FALSE, 0, NULL);
32601
32602   return offset;
32603 }
32604
32605
32606 static const per_sequence_t TypeII_CodebookPortSelection_sequence[] = {
32607   { &hf_nr_rrc_maxNumberTxPortsPerResource_03, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_maxNumberTxPortsPerResource_03 },
32608   { &hf_nr_rrc_maxNumberResources, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_64 },
32609   { &hf_nr_rrc_totalNumberTxPorts, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_2_256 },
32610   { &hf_nr_rrc_parameterLx  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_2_4 },
32611   { &hf_nr_rrc_amplitudeScalingType_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_amplitudeScalingType_01 },
32612   { &hf_nr_rrc_maxNumberCSI_RS_PerResourceSet, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_8 },
32613   { NULL, 0, 0, NULL }
32614 };
32615
32616 static int
32617 dissect_nr_rrc_TypeII_CodebookPortSelection(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32618   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
32619                                    ett_nr_rrc_TypeII_CodebookPortSelection, TypeII_CodebookPortSelection_sequence);
32620
32621   return offset;
32622 }
32623
32624
32625 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeII_CodebookPortSelection_sequence_of[1] = {
32626   { &hf_nr_rrc_typeII_CodebookPortSelectionList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_TypeII_CodebookPortSelection },
32627 };
32628
32629 static int
32630 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeII_CodebookPortSelection(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32631   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
32632                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeII_CodebookPortSelection, SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeII_CodebookPortSelection_sequence_of,
32633                                                   1, maxNrofCodebooks, FALSE);
32634
32635   return offset;
32636 }
32637
32638
32639 static const per_sequence_t FeatureSetDownlink_sequence[] = {
32640   { &hf_nr_rrc_featureSetListPerDownlinkCC, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofServingCells_OF_FeatureSetDownlinkPerCC_Id },
32641   { &hf_nr_rrc_intraBandFreqSeparationDL, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_FreqSeparationClass },
32642   { &hf_nr_rrc_scalingFactor, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_scalingFactor },
32643   { &hf_nr_rrc_crossCarrierScheduling_OtherSCS, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_crossCarrierScheduling_OtherSCS },
32644   { &hf_nr_rrc_scellWithoutSSB, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_scellWithoutSSB },
32645   { &hf_nr_rrc_csi_RS_MeasSCellWithoutSSB, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_csi_RS_MeasSCellWithoutSSB },
32646   { &hf_nr_rrc_srs_AssocCSI_RS, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_srs_AssocCSI_RS },
32647   { &hf_nr_rrc_type1_3_CSS  , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_type1_3_CSS },
32648   { &hf_nr_rrc_pdcch_MonitoringAnyOccasions, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_pdcch_MonitoringAnyOccasions },
32649   { &hf_nr_rrc_pdcch_MonitoringAnyOccasionsWithSpanGap, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_pdcch_MonitoringAnyOccasionsWithSpanGap },
32650   { &hf_nr_rrc_ue_SpecificUL_DL_Assignment, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_ue_SpecificUL_DL_Assignment },
32651   { &hf_nr_rrc_searchSpaceSharingCA_DL, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_searchSpaceSharingCA_DL },
32652   { &hf_nr_rrc_timeDurationForQCL, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_timeDurationForQCL },
32653   { &hf_nr_rrc_pdsch_DifferentTB_PerSlot, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_pdsch_DifferentTB_PerSlot },
32654   { &hf_nr_rrc_csi_RS_IM_ReceptionForFeedback, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_CSI_RS_IM_ReceptionForFeedback },
32655   { &hf_nr_rrc_typeI_SinglePanelCodebookList, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeI_SinglePanelCodebook },
32656   { &hf_nr_rrc_typeI_MultiPanelCodebookList, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeI_MultiPanelCodebook },
32657   { &hf_nr_rrc_typeII_CodebookList, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeII_Codebook },
32658   { &hf_nr_rrc_typeII_CodebookPortSelectionList, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeII_CodebookPortSelection },
32659   { NULL, 0, 0, NULL }
32660 };
32661
32662 static int
32663 dissect_nr_rrc_FeatureSetDownlink(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32664   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
32665                                    ett_nr_rrc_FeatureSetDownlink, FeatureSetDownlink_sequence);
32666
32667   return offset;
32668 }
32669
32670
32671 static const value_string nr_rrc_T_fr1_02_vals[] = {
32672   {   0, "mhz5" },
32673   {   1, "mhz10" },
32674   {   2, "mhz15" },
32675   {   3, "mhz20" },
32676   {   4, "mhz25" },
32677   {   5, "mhz30" },
32678   {   6, "mhz40" },
32679   {   7, "mhz50" },
32680   {   8, "mhz60" },
32681   {   9, "mhz80" },
32682   {  10, "mhz100" },
32683   { 0, NULL }
32684 };
32685
32686
32687 static int
32688 dissect_nr_rrc_T_fr1_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32689   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32690                                      11, NULL, FALSE, 0, NULL);
32691
32692   return offset;
32693 }
32694
32695
32696 static const value_string nr_rrc_T_fr2_02_vals[] = {
32697   {   0, "mhz50" },
32698   {   1, "mhz100" },
32699   {   2, "mhz200" },
32700   {   3, "mhz400" },
32701   { 0, NULL }
32702 };
32703
32704
32705 static int
32706 dissect_nr_rrc_T_fr2_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32707   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32708                                      4, NULL, FALSE, 0, NULL);
32709
32710   return offset;
32711 }
32712
32713
32714 static const value_string nr_rrc_SupportedBandwidth_vals[] = {
32715   {   0, "fr1" },
32716   {   1, "fr2" },
32717   { 0, NULL }
32718 };
32719
32720 static const per_choice_t SupportedBandwidth_choice[] = {
32721   {   0, &hf_nr_rrc_fr1_02       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_fr1_02 },
32722   {   1, &hf_nr_rrc_fr2_02       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_fr2_02 },
32723   { 0, NULL, 0, NULL }
32724 };
32725
32726 static int
32727 dissect_nr_rrc_SupportedBandwidth(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32728   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
32729                                  ett_nr_rrc_SupportedBandwidth, SupportedBandwidth_choice,
32730                                  NULL);
32731
32732   return offset;
32733 }
32734
32735
32736 static const value_string nr_rrc_T_channelBW_90mhz_vals[] = {
32737   {   0, "supported" },
32738   { 0, NULL }
32739 };
32740
32741
32742 static int
32743 dissect_nr_rrc_T_channelBW_90mhz(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32744   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32745                                      1, NULL, FALSE, 0, NULL);
32746
32747   return offset;
32748 }
32749
32750
32751 static const value_string nr_rrc_MIMO_LayersDL_vals[] = {
32752   {   0, "twoLayers" },
32753   {   1, "fourLayers" },
32754   {   2, "eightLayers" },
32755   { 0, NULL }
32756 };
32757
32758
32759 static int
32760 dissect_nr_rrc_MIMO_LayersDL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32761   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32762                                      3, NULL, FALSE, 0, NULL);
32763
32764   return offset;
32765 }
32766
32767
32768 static const value_string nr_rrc_ModulationOrder_vals[] = {
32769   {   0, "bpsk-halfpi" },
32770   {   1, "bpsk" },
32771   {   2, "qpsk" },
32772   {   3, "qam16" },
32773   {   4, "qam64" },
32774   {   5, "qam256" },
32775   { 0, NULL }
32776 };
32777
32778
32779 static int
32780 dissect_nr_rrc_ModulationOrder(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32781   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32782                                      6, NULL, FALSE, 0, NULL);
32783
32784   return offset;
32785 }
32786
32787
32788 static const per_sequence_t FeatureSetDownlinkPerCC_sequence[] = {
32789   { &hf_nr_rrc_supportedSubcarrierSpacingDL, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SubcarrierSpacing },
32790   { &hf_nr_rrc_supportedBandwidthDL, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SupportedBandwidth },
32791   { &hf_nr_rrc_channelBW_90mhz, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_channelBW_90mhz },
32792   { &hf_nr_rrc_maxNumberMIMO_LayersPDSCH, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MIMO_LayersDL },
32793   { &hf_nr_rrc_supportedModulationOrderDL, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_ModulationOrder },
32794   { NULL, 0, 0, NULL }
32795 };
32796
32797 static int
32798 dissect_nr_rrc_FeatureSetDownlinkPerCC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32799   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
32800                                    ett_nr_rrc_FeatureSetDownlinkPerCC, FeatureSetDownlinkPerCC_sequence);
32801
32802   return offset;
32803 }
32804
32805
32806 static const per_sequence_t SEQUENCE_SIZE_1_maxDownlinkFeatureSets_OF_FeatureSetDownlink_sequence_of[1] = {
32807   { &hf_nr_rrc_featureSetsDownlink_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FeatureSetDownlink },
32808 };
32809
32810 static int
32811 dissect_nr_rrc_SEQUENCE_SIZE_1_maxDownlinkFeatureSets_OF_FeatureSetDownlink(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32812   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
32813                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxDownlinkFeatureSets_OF_FeatureSetDownlink, SEQUENCE_SIZE_1_maxDownlinkFeatureSets_OF_FeatureSetDownlink_sequence_of,
32814                                                   1, maxDownlinkFeatureSets, FALSE);
32815
32816   return offset;
32817 }
32818
32819
32820 static const per_sequence_t SEQUENCE_SIZE_1_maxPerCC_FeatureSets_OF_FeatureSetDownlinkPerCC_sequence_of[1] = {
32821   { &hf_nr_rrc_featureSetsDownlinkPerCC_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FeatureSetDownlinkPerCC },
32822 };
32823
32824 static int
32825 dissect_nr_rrc_SEQUENCE_SIZE_1_maxPerCC_FeatureSets_OF_FeatureSetDownlinkPerCC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32826   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
32827                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxPerCC_FeatureSets_OF_FeatureSetDownlinkPerCC, SEQUENCE_SIZE_1_maxPerCC_FeatureSets_OF_FeatureSetDownlinkPerCC_sequence_of,
32828                                                   1, maxPerCC_FeatureSets, FALSE);
32829
32830   return offset;
32831 }
32832
32833
32834
32835 static int
32836 dissect_nr_rrc_FeatureSetUplinkPerCC_Id(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32837   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
32838                                                             1U, maxPerCC_FeatureSets, NULL, FALSE);
32839
32840   return offset;
32841 }
32842
32843
32844 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofServingCells_OF_FeatureSetUplinkPerCC_Id_sequence_of[1] = {
32845   { &hf_nr_rrc_featureSetListPerUplinkCC_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FeatureSetUplinkPerCC_Id },
32846 };
32847
32848 static int
32849 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofServingCells_OF_FeatureSetUplinkPerCC_Id(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32850   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
32851                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofServingCells_OF_FeatureSetUplinkPerCC_Id, SEQUENCE_SIZE_1_maxNrofServingCells_OF_FeatureSetUplinkPerCC_Id_sequence_of,
32852                                                   1, maxNrofServingCells, FALSE);
32853
32854   return offset;
32855 }
32856
32857
32858 static const value_string nr_rrc_T_scalingFactor_01_vals[] = {
32859   {   0, "f0p4" },
32860   {   1, "f0p75" },
32861   {   2, "f0p8" },
32862   { 0, NULL }
32863 };
32864
32865
32866 static int
32867 dissect_nr_rrc_T_scalingFactor_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32868   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32869                                      3, NULL, FALSE, 0, NULL);
32870
32871   return offset;
32872 }
32873
32874
32875 static const value_string nr_rrc_T_crossCarrierScheduling_OtherSCS_01_vals[] = {
32876   {   0, "supported" },
32877   { 0, NULL }
32878 };
32879
32880
32881 static int
32882 dissect_nr_rrc_T_crossCarrierScheduling_OtherSCS_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32883   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32884                                      1, NULL, FALSE, 0, NULL);
32885
32886   return offset;
32887 }
32888
32889
32890 static const value_string nr_rrc_T_searchSpaceSharingCA_UL_vals[] = {
32891   {   0, "supported" },
32892   { 0, NULL }
32893 };
32894
32895
32896 static int
32897 dissect_nr_rrc_T_searchSpaceSharingCA_UL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32898   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32899                                      1, NULL, FALSE, 0, NULL);
32900
32901   return offset;
32902 }
32903
32904
32905 static const value_string nr_rrc_T_supportedSRS_TxPortSwitch_vals[] = {
32906   {   0, "t1r2" },
32907   {   1, "t1r4" },
32908   {   2, "t2r4" },
32909   {   3, "t1r4-t2r4" },
32910   {   4, "tr-equal" },
32911   { 0, NULL }
32912 };
32913
32914
32915 static int
32916 dissect_nr_rrc_T_supportedSRS_TxPortSwitch(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32917   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32918                                      5, NULL, FALSE, 0, NULL);
32919
32920   return offset;
32921 }
32922
32923
32924 static const value_string nr_rrc_T_txSwitchImpactToRx_vals[] = {
32925   {   0, "true" },
32926   { 0, NULL }
32927 };
32928
32929
32930 static int
32931 dissect_nr_rrc_T_txSwitchImpactToRx(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32932   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32933                                      1, NULL, FALSE, 0, NULL);
32934
32935   return offset;
32936 }
32937
32938
32939 static const per_sequence_t SRS_TxSwitch_sequence[] = {
32940   { &hf_nr_rrc_supportedSRS_TxPortSwitch, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_supportedSRS_TxPortSwitch },
32941   { &hf_nr_rrc_txSwitchImpactToRx, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_txSwitchImpactToRx },
32942   { NULL, 0, 0, NULL }
32943 };
32944
32945 static int
32946 dissect_nr_rrc_SRS_TxSwitch(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32947   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
32948                                    ett_nr_rrc_SRS_TxSwitch, SRS_TxSwitch_sequence);
32949
32950   return offset;
32951 }
32952
32953
32954 static const value_string nr_rrc_T_maxNumberAperiodicSRS_PerBWP_vals[] = {
32955   {   0, "n1" },
32956   {   1, "n2" },
32957   {   2, "n4" },
32958   {   3, "n8" },
32959   {   4, "n16" },
32960   { 0, NULL }
32961 };
32962
32963
32964 static int
32965 dissect_nr_rrc_T_maxNumberAperiodicSRS_PerBWP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32966   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32967                                      5, NULL, FALSE, 0, NULL);
32968
32969   return offset;
32970 }
32971
32972
32973
32974 static int
32975 dissect_nr_rrc_INTEGER_1_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32976   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
32977                                                             1U, 6U, NULL, FALSE);
32978
32979   return offset;
32980 }
32981
32982
32983 static const value_string nr_rrc_T_maxNumberPeriodicSRS_PerBWP_vals[] = {
32984   {   0, "n1" },
32985   {   1, "n2" },
32986   {   2, "n4" },
32987   {   3, "n8" },
32988   {   4, "n16" },
32989   { 0, NULL }
32990 };
32991
32992
32993 static int
32994 dissect_nr_rrc_T_maxNumberPeriodicSRS_PerBWP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
32995   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
32996                                      5, NULL, FALSE, 0, NULL);
32997
32998   return offset;
32999 }
33000
33001
33002 static const value_string nr_rrc_T_maxNumberSemiPersitentSRS_PerBWP_vals[] = {
33003   {   0, "n1" },
33004   {   1, "n2" },
33005   {   2, "n4" },
33006   {   3, "n8" },
33007   {   4, "n16" },
33008   { 0, NULL }
33009 };
33010
33011
33012 static int
33013 dissect_nr_rrc_T_maxNumberSemiPersitentSRS_PerBWP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33014   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33015                                      5, NULL, FALSE, 0, NULL);
33016
33017   return offset;
33018 }
33019
33020
33021 static const value_string nr_rrc_T_maxNumberSRS_Ports_PerResource_vals[] = {
33022   {   0, "n1" },
33023   {   1, "n2" },
33024   {   2, "n4" },
33025   { 0, NULL }
33026 };
33027
33028
33029 static int
33030 dissect_nr_rrc_T_maxNumberSRS_Ports_PerResource(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33031   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33032                                      3, NULL, FALSE, 0, NULL);
33033
33034   return offset;
33035 }
33036
33037
33038 static const per_sequence_t SRS_Resources_sequence[] = {
33039   { &hf_nr_rrc_maxNumberAperiodicSRS_PerBWP, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_maxNumberAperiodicSRS_PerBWP },
33040   { &hf_nr_rrc_maxNumberAperiodicSRS_PerBWP_PerSlot, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_6 },
33041   { &hf_nr_rrc_maxNumberPeriodicSRS_PerBWP, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_maxNumberPeriodicSRS_PerBWP },
33042   { &hf_nr_rrc_maxNumberPeriodicSRS_PerBWP_PerSlot, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_6 },
33043   { &hf_nr_rrc_maxNumberSemiPersitentSRS_PerBWP, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_maxNumberSemiPersitentSRS_PerBWP },
33044   { &hf_nr_rrc_maxNumberSP_SRS_PerBWP_PerSlot, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_6 },
33045   { &hf_nr_rrc_maxNumberSRS_Ports_PerResource, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_maxNumberSRS_Ports_PerResource },
33046   { NULL, 0, 0, NULL }
33047 };
33048
33049 static int
33050 dissect_nr_rrc_SRS_Resources(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33051   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
33052                                    ett_nr_rrc_SRS_Resources, SRS_Resources_sequence);
33053
33054   return offset;
33055 }
33056
33057
33058 static const value_string nr_rrc_T_twoPUCCH_Group_vals[] = {
33059   {   0, "supported" },
33060   { 0, NULL }
33061 };
33062
33063
33064 static int
33065 dissect_nr_rrc_T_twoPUCCH_Group(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33066   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33067                                      1, NULL, FALSE, 0, NULL);
33068
33069   return offset;
33070 }
33071
33072
33073 static const value_string nr_rrc_T_dynamicSwitchSUL_vals[] = {
33074   {   0, "supported" },
33075   { 0, NULL }
33076 };
33077
33078
33079 static int
33080 dissect_nr_rrc_T_dynamicSwitchSUL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33081   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33082                                      1, NULL, FALSE, 0, NULL);
33083
33084   return offset;
33085 }
33086
33087
33088 static const value_string nr_rrc_T_simultaneousTxSUL_NonSUL_v1530_vals[] = {
33089   {   0, "supported" },
33090   { 0, NULL }
33091 };
33092
33093
33094 static int
33095 dissect_nr_rrc_T_simultaneousTxSUL_NonSUL_v1530(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33096   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33097                                      1, NULL, FALSE, 0, NULL);
33098
33099   return offset;
33100 }
33101
33102
33103 static const value_string nr_rrc_T_scs_15kHz_01_vals[] = {
33104   {   0, "upto2" },
33105   {   1, "upto4" },
33106   {   2, "upto7" },
33107   { 0, NULL }
33108 };
33109
33110
33111 static int
33112 dissect_nr_rrc_T_scs_15kHz_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33113   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33114                                      3, NULL, FALSE, 0, NULL);
33115
33116   return offset;
33117 }
33118
33119
33120 static const value_string nr_rrc_T_scs_30kHz_01_vals[] = {
33121   {   0, "upto2" },
33122   {   1, "upto4" },
33123   {   2, "upto7" },
33124   { 0, NULL }
33125 };
33126
33127
33128 static int
33129 dissect_nr_rrc_T_scs_30kHz_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33130   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33131                                      3, NULL, FALSE, 0, NULL);
33132
33133   return offset;
33134 }
33135
33136
33137 static const value_string nr_rrc_T_scs_60kHz_02_vals[] = {
33138   {   0, "upto2" },
33139   {   1, "upto4" },
33140   {   2, "upto7" },
33141   { 0, NULL }
33142 };
33143
33144
33145 static int
33146 dissect_nr_rrc_T_scs_60kHz_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33147   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33148                                      3, NULL, FALSE, 0, NULL);
33149
33150   return offset;
33151 }
33152
33153
33154 static const value_string nr_rrc_T_scs_120kHz_01_vals[] = {
33155   {   0, "upto2" },
33156   {   1, "upto4" },
33157   {   2, "upto7" },
33158   { 0, NULL }
33159 };
33160
33161
33162 static int
33163 dissect_nr_rrc_T_scs_120kHz_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33164   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33165                                      3, NULL, FALSE, 0, NULL);
33166
33167   return offset;
33168 }
33169
33170
33171 static const per_sequence_t T_pusch_DifferentTB_PerSlot_sequence[] = {
33172   { &hf_nr_rrc_scs_15kHz_01 , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_scs_15kHz_01 },
33173   { &hf_nr_rrc_scs_30kHz_01 , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_scs_30kHz_01 },
33174   { &hf_nr_rrc_scs_60kHz_02 , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_scs_60kHz_02 },
33175   { &hf_nr_rrc_scs_120kHz_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_scs_120kHz_01 },
33176   { NULL, 0, 0, NULL }
33177 };
33178
33179 static int
33180 dissect_nr_rrc_T_pusch_DifferentTB_PerSlot(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33181   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
33182                                    ett_nr_rrc_T_pusch_DifferentTB_PerSlot, T_pusch_DifferentTB_PerSlot_sequence);
33183
33184   return offset;
33185 }
33186
33187
33188
33189 static int
33190 dissect_nr_rrc_INTEGER_5_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33191   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
33192                                                             5U, 32U, NULL, FALSE);
33193
33194   return offset;
33195 }
33196
33197
33198 static const per_sequence_t CSI_ReportFramework_sequence[] = {
33199   { &hf_nr_rrc_maxNumberPeriodicCSI_ReportPerBWP, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_4 },
33200   { &hf_nr_rrc_maxNumberAperiodicCSI_ReportPerBWP, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_4 },
33201   { &hf_nr_rrc_maxNumberSemiPersistentCSI_ReportPerBWP, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_4 },
33202   { &hf_nr_rrc_simultaneousCSI_ReportsAllCC, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_5_32 },
33203   { NULL, 0, 0, NULL }
33204 };
33205
33206 static int
33207 dissect_nr_rrc_CSI_ReportFramework(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33208   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
33209                                    ett_nr_rrc_CSI_ReportFramework, CSI_ReportFramework_sequence);
33210
33211   return offset;
33212 }
33213
33214
33215 static const per_sequence_t FeatureSetUplink_sequence[] = {
33216   { &hf_nr_rrc_featureSetListPerUplinkCC, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofServingCells_OF_FeatureSetUplinkPerCC_Id },
33217   { &hf_nr_rrc_scalingFactor_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_scalingFactor_01 },
33218   { &hf_nr_rrc_crossCarrierScheduling_OtherSCS_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_crossCarrierScheduling_OtherSCS_01 },
33219   { &hf_nr_rrc_intraBandFreqSeparationUL, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_FreqSeparationClass },
33220   { &hf_nr_rrc_searchSpaceSharingCA_UL, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_searchSpaceSharingCA_UL },
33221   { &hf_nr_rrc_srs_TxSwitch , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SRS_TxSwitch },
33222   { &hf_nr_rrc_supportedSRS_Resources, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SRS_Resources },
33223   { &hf_nr_rrc_twoPUCCH_Group, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_twoPUCCH_Group },
33224   { &hf_nr_rrc_dynamicSwitchSUL, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_dynamicSwitchSUL },
33225   { &hf_nr_rrc_simultaneousTxSUL_NonSUL_v1530, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_simultaneousTxSUL_NonSUL_v1530 },
33226   { &hf_nr_rrc_pusch_DifferentTB_PerSlot, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_pusch_DifferentTB_PerSlot },
33227   { &hf_nr_rrc_csi_ReportFramework, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_CSI_ReportFramework },
33228   { NULL, 0, 0, NULL }
33229 };
33230
33231 static int
33232 dissect_nr_rrc_FeatureSetUplink(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33233   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
33234                                    ett_nr_rrc_FeatureSetUplink, FeatureSetUplink_sequence);
33235
33236   return offset;
33237 }
33238
33239
33240 static const per_sequence_t SEQUENCE_SIZE_1_maxUplinkFeatureSets_OF_FeatureSetUplink_sequence_of[1] = {
33241   { &hf_nr_rrc_featureSetsUplink_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FeatureSetUplink },
33242 };
33243
33244 static int
33245 dissect_nr_rrc_SEQUENCE_SIZE_1_maxUplinkFeatureSets_OF_FeatureSetUplink(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33246   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
33247                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxUplinkFeatureSets_OF_FeatureSetUplink, SEQUENCE_SIZE_1_maxUplinkFeatureSets_OF_FeatureSetUplink_sequence_of,
33248                                                   1, maxUplinkFeatureSets, FALSE);
33249
33250   return offset;
33251 }
33252
33253
33254 static const value_string nr_rrc_T_channelBW_90mhz_01_vals[] = {
33255   {   0, "supported" },
33256   { 0, NULL }
33257 };
33258
33259
33260 static int
33261 dissect_nr_rrc_T_channelBW_90mhz_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33262   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33263                                      1, NULL, FALSE, 0, NULL);
33264
33265   return offset;
33266 }
33267
33268
33269 static const value_string nr_rrc_MIMO_LayersUL_vals[] = {
33270   {   0, "oneLayer" },
33271   {   1, "twoLayers" },
33272   {   2, "fourLayers" },
33273   { 0, NULL }
33274 };
33275
33276
33277 static int
33278 dissect_nr_rrc_MIMO_LayersUL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33279   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33280                                      3, NULL, FALSE, 0, NULL);
33281
33282   return offset;
33283 }
33284
33285
33286 static const per_sequence_t T_mimo_CB_PUSCH_sequence[] = {
33287   { &hf_nr_rrc_maxNumberMIMO_LayersCB_PUSCH, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MIMO_LayersUL },
33288   { &hf_nr_rrc_maxNumberSRS_ResourcePerSet, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_2 },
33289   { NULL, 0, 0, NULL }
33290 };
33291
33292 static int
33293 dissect_nr_rrc_T_mimo_CB_PUSCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33294   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
33295                                    ett_nr_rrc_T_mimo_CB_PUSCH, T_mimo_CB_PUSCH_sequence);
33296
33297   return offset;
33298 }
33299
33300
33301 static const per_sequence_t FeatureSetUplinkPerCC_sequence[] = {
33302   { &hf_nr_rrc_supportedSubcarrierSpacingUL, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SubcarrierSpacing },
33303   { &hf_nr_rrc_supportedBandwidthUL, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SupportedBandwidth },
33304   { &hf_nr_rrc_channelBW_90mhz_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_channelBW_90mhz_01 },
33305   { &hf_nr_rrc_mimo_CB_PUSCH, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_mimo_CB_PUSCH },
33306   { &hf_nr_rrc_maxNumberMIMO_LayersNonCB_PUSCH, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MIMO_LayersUL },
33307   { &hf_nr_rrc_supportedModulationOrderUL, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_ModulationOrder },
33308   { NULL, 0, 0, NULL }
33309 };
33310
33311 static int
33312 dissect_nr_rrc_FeatureSetUplinkPerCC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33313   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
33314                                    ett_nr_rrc_FeatureSetUplinkPerCC, FeatureSetUplinkPerCC_sequence);
33315
33316   return offset;
33317 }
33318
33319
33320 static const per_sequence_t SEQUENCE_SIZE_1_maxPerCC_FeatureSets_OF_FeatureSetUplinkPerCC_sequence_of[1] = {
33321   { &hf_nr_rrc_featureSetsUplinkPerCC_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FeatureSetUplinkPerCC },
33322 };
33323
33324 static int
33325 dissect_nr_rrc_SEQUENCE_SIZE_1_maxPerCC_FeatureSets_OF_FeatureSetUplinkPerCC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33326   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
33327                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxPerCC_FeatureSets_OF_FeatureSetUplinkPerCC, SEQUENCE_SIZE_1_maxPerCC_FeatureSets_OF_FeatureSetUplinkPerCC_sequence_of,
33328                                                   1, maxPerCC_FeatureSets, FALSE);
33329
33330   return offset;
33331 }
33332
33333
33334 static const per_sequence_t FeatureSets_sequence[] = {
33335   { &hf_nr_rrc_featureSetsDownlink, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxDownlinkFeatureSets_OF_FeatureSetDownlink },
33336   { &hf_nr_rrc_featureSetsDownlinkPerCC, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxPerCC_FeatureSets_OF_FeatureSetDownlinkPerCC },
33337   { &hf_nr_rrc_featureSetsUplink, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxUplinkFeatureSets_OF_FeatureSetUplink },
33338   { &hf_nr_rrc_featureSetsUplinkPerCC, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxPerCC_FeatureSets_OF_FeatureSetUplinkPerCC },
33339   { NULL, 0, 0, NULL }
33340 };
33341
33342 static int
33343 dissect_nr_rrc_FeatureSets(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33344   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
33345                                    ett_nr_rrc_FeatureSets, FeatureSets_sequence);
33346
33347   return offset;
33348 }
33349
33350
33351 static const per_sequence_t FreqBandInformationEUTRA_sequence[] = {
33352   { &hf_nr_rrc_bandEUTRA    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FreqBandIndicatorEUTRA },
33353   { &hf_nr_rrc_ca_BandwidthClassDL_EUTRA, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_CA_BandwidthClassEUTRA },
33354   { &hf_nr_rrc_ca_BandwidthClassUL_EUTRA, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_CA_BandwidthClassEUTRA },
33355   { NULL, 0, 0, NULL }
33356 };
33357
33358 static int
33359 dissect_nr_rrc_FreqBandInformationEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33360   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
33361                                    ett_nr_rrc_FreqBandInformationEUTRA, FreqBandInformationEUTRA_sequence);
33362
33363   return offset;
33364 }
33365
33366
33367 static const value_string nr_rrc_AggregatedBandwidth_vals[] = {
33368   {   0, "mhz50" },
33369   {   1, "mhz100" },
33370   {   2, "mhz150" },
33371   {   3, "mhz200" },
33372   {   4, "mhz250" },
33373   {   5, "mhz300" },
33374   {   6, "mhz350" },
33375   {   7, "mhz400" },
33376   {   8, "mhz450" },
33377   {   9, "mhz500" },
33378   {  10, "mhz550" },
33379   {  11, "mhz600" },
33380   {  12, "mhz650" },
33381   {  13, "mhz700" },
33382   {  14, "mhz750" },
33383   {  15, "mhz800" },
33384   { 0, NULL }
33385 };
33386
33387
33388 static int
33389 dissect_nr_rrc_AggregatedBandwidth(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33390   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33391                                      16, NULL, FALSE, 0, NULL);
33392
33393   return offset;
33394 }
33395
33396
33397
33398 static int
33399 dissect_nr_rrc_INTEGER_1_maxNrofServingCells(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33400   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
33401                                                             1U, maxNrofServingCells, NULL, FALSE);
33402
33403   return offset;
33404 }
33405
33406
33407 static const per_sequence_t FreqBandInformationNR_sequence[] = {
33408   { &hf_nr_rrc_bandNR       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FreqBandIndicatorNR },
33409   { &hf_nr_rrc_maxBandwidthRequestedDL, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_AggregatedBandwidth },
33410   { &hf_nr_rrc_maxBandwidthRequestedUL, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_AggregatedBandwidth },
33411   { &hf_nr_rrc_maxCarriersRequestedDL, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_maxNrofServingCells },
33412   { &hf_nr_rrc_maxCarriersRequestedUL, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_maxNrofServingCells },
33413   { NULL, 0, 0, NULL }
33414 };
33415
33416 static int
33417 dissect_nr_rrc_FreqBandInformationNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33418   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
33419                                    ett_nr_rrc_FreqBandInformationNR, FreqBandInformationNR_sequence);
33420
33421   return offset;
33422 }
33423
33424
33425 static const value_string nr_rrc_FreqBandInformation_vals[] = {
33426   {   0, "bandInformationEUTRA" },
33427   {   1, "bandInformationNR" },
33428   { 0, NULL }
33429 };
33430
33431 static const per_choice_t FreqBandInformation_choice[] = {
33432   {   0, &hf_nr_rrc_bandInformationEUTRA, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_FreqBandInformationEUTRA },
33433   {   1, &hf_nr_rrc_bandInformationNR, ASN1_NO_EXTENSIONS     , dissect_nr_rrc_FreqBandInformationNR },
33434   { 0, NULL, 0, NULL }
33435 };
33436
33437 static int
33438 dissect_nr_rrc_FreqBandInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33439   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
33440                                  ett_nr_rrc_FreqBandInformation, FreqBandInformation_choice,
33441                                  NULL);
33442
33443   return offset;
33444 }
33445
33446
33447 static const per_sequence_t FreqBandList_sequence_of[1] = {
33448   { &hf_nr_rrc_FreqBandList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FreqBandInformation },
33449 };
33450
33451 static int
33452 dissect_nr_rrc_FreqBandList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33453   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
33454                                                   ett_nr_rrc_FreqBandList, FreqBandList_sequence_of,
33455                                                   1, maxBandsMRDC, FALSE);
33456
33457   return offset;
33458 }
33459
33460
33461 static const per_sequence_t SEQUENCE_SIZE_1_maxBandsEUTRA_OF_FreqBandIndicatorEUTRA_sequence_of[1] = {
33462   { &hf_nr_rrc_supportedBandListEUTRA_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FreqBandIndicatorEUTRA },
33463 };
33464
33465 static int
33466 dissect_nr_rrc_SEQUENCE_SIZE_1_maxBandsEUTRA_OF_FreqBandIndicatorEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33467   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
33468                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxBandsEUTRA_OF_FreqBandIndicatorEUTRA, SEQUENCE_SIZE_1_maxBandsEUTRA_OF_FreqBandIndicatorEUTRA_sequence_of,
33469                                                   1, maxBandsEUTRA, FALSE);
33470
33471   return offset;
33472 }
33473
33474
33475 static const value_string nr_rrc_T_mfbi_EUTRA_vals[] = {
33476   {   0, "supported" },
33477   { 0, NULL }
33478 };
33479
33480
33481 static int
33482 dissect_nr_rrc_T_mfbi_EUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33483   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33484                                      1, NULL, FALSE, 0, NULL);
33485
33486   return offset;
33487 }
33488
33489
33490 static const value_string nr_rrc_T_multiNS_Pmax_EUTRA_vals[] = {
33491   {   0, "supported" },
33492   { 0, NULL }
33493 };
33494
33495
33496 static int
33497 dissect_nr_rrc_T_multiNS_Pmax_EUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33498   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33499                                      1, NULL, FALSE, 0, NULL);
33500
33501   return offset;
33502 }
33503
33504
33505 static const value_string nr_rrc_T_rs_SINR_MeasEUTRA_vals[] = {
33506   {   0, "supported" },
33507   { 0, NULL }
33508 };
33509
33510
33511 static int
33512 dissect_nr_rrc_T_rs_SINR_MeasEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33513   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33514                                      1, NULL, FALSE, 0, NULL);
33515
33516   return offset;
33517 }
33518
33519
33520 static const per_sequence_t EUTRA_ParametersCommon_sequence[] = {
33521   { &hf_nr_rrc_mfbi_EUTRA   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_mfbi_EUTRA },
33522   { &hf_nr_rrc_modifiedMRP_BehaviorEUTRA, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_BIT_STRING_SIZE_32 },
33523   { &hf_nr_rrc_multiNS_Pmax_EUTRA, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_multiNS_Pmax_EUTRA },
33524   { &hf_nr_rrc_rs_SINR_MeasEUTRA, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_rs_SINR_MeasEUTRA },
33525   { NULL, 0, 0, NULL }
33526 };
33527
33528 static int
33529 dissect_nr_rrc_EUTRA_ParametersCommon(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33530   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
33531                                    ett_nr_rrc_EUTRA_ParametersCommon, EUTRA_ParametersCommon_sequence);
33532
33533   return offset;
33534 }
33535
33536
33537 static const value_string nr_rrc_T_rsrqMeasWidebandEUTRA_vals[] = {
33538   {   0, "supported" },
33539   { 0, NULL }
33540 };
33541
33542
33543 static int
33544 dissect_nr_rrc_T_rsrqMeasWidebandEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33545   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33546                                      1, NULL, FALSE, 0, NULL);
33547
33548   return offset;
33549 }
33550
33551
33552 static const per_sequence_t EUTRA_ParametersXDD_Diff_sequence[] = {
33553   { &hf_nr_rrc_rsrqMeasWidebandEUTRA, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_rsrqMeasWidebandEUTRA },
33554   { NULL, 0, 0, NULL }
33555 };
33556
33557 static int
33558 dissect_nr_rrc_EUTRA_ParametersXDD_Diff(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33559   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
33560                                    ett_nr_rrc_EUTRA_ParametersXDD_Diff, EUTRA_ParametersXDD_Diff_sequence);
33561
33562   return offset;
33563 }
33564
33565
33566 static const per_sequence_t EUTRA_Parameters_sequence[] = {
33567   { &hf_nr_rrc_supportedBandListEUTRA, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SEQUENCE_SIZE_1_maxBandsEUTRA_OF_FreqBandIndicatorEUTRA },
33568   { &hf_nr_rrc_eutra_ParametersCommon, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_EUTRA_ParametersCommon },
33569   { &hf_nr_rrc_eutra_ParametersXDD_Diff, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_EUTRA_ParametersXDD_Diff },
33570   { NULL, 0, 0, NULL }
33571 };
33572
33573 static int
33574 dissect_nr_rrc_EUTRA_Parameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33575   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
33576                                    ett_nr_rrc_EUTRA_Parameters, EUTRA_Parameters_sequence);
33577
33578   return offset;
33579 }
33580
33581
33582 static const per_sequence_t InterRAT_Parameters_sequence[] = {
33583   { &hf_nr_rrc_eutra_03     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_EUTRA_Parameters },
33584   { NULL, 0, 0, NULL }
33585 };
33586
33587 static int
33588 dissect_nr_rrc_InterRAT_Parameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33589   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
33590                                    ett_nr_rrc_InterRAT_Parameters, InterRAT_Parameters_sequence);
33591
33592   return offset;
33593 }
33594
33595
33596 static const value_string nr_rrc_T_lcp_Restriction_vals[] = {
33597   {   0, "supported" },
33598   { 0, NULL }
33599 };
33600
33601
33602 static int
33603 dissect_nr_rrc_T_lcp_Restriction(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33604   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33605                                      1, NULL, FALSE, 0, NULL);
33606
33607   return offset;
33608 }
33609
33610
33611 static const value_string nr_rrc_T_pucch_SpatialRelInfoMAC_CE_vals[] = {
33612   {   0, "supported" },
33613   { 0, NULL }
33614 };
33615
33616
33617 static int
33618 dissect_nr_rrc_T_pucch_SpatialRelInfoMAC_CE(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33619   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33620                                      1, NULL, FALSE, 0, NULL);
33621
33622   return offset;
33623 }
33624
33625
33626 static const value_string nr_rrc_T_lch_ToSCellRestriction_vals[] = {
33627   {   0, "supported" },
33628   { 0, NULL }
33629 };
33630
33631
33632 static int
33633 dissect_nr_rrc_T_lch_ToSCellRestriction(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33634   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33635                                      1, NULL, FALSE, 0, NULL);
33636
33637   return offset;
33638 }
33639
33640
33641 static const value_string nr_rrc_T_recommendedBitRate_vals[] = {
33642   {   0, "supported" },
33643   { 0, NULL }
33644 };
33645
33646
33647 static int
33648 dissect_nr_rrc_T_recommendedBitRate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33649   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33650                                      1, NULL, FALSE, 0, NULL);
33651
33652   return offset;
33653 }
33654
33655
33656 static const value_string nr_rrc_T_recommendedBitRateQuery_vals[] = {
33657   {   0, "supported" },
33658   { 0, NULL }
33659 };
33660
33661
33662 static int
33663 dissect_nr_rrc_T_recommendedBitRateQuery(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33664   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33665                                      1, NULL, FALSE, 0, NULL);
33666
33667   return offset;
33668 }
33669
33670
33671 static const per_sequence_t MAC_ParametersCommon_eag_1_sequence[] = {
33672   { &hf_nr_rrc_recommendedBitRate, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_recommendedBitRate },
33673   { &hf_nr_rrc_recommendedBitRateQuery, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_recommendedBitRateQuery },
33674   { NULL, 0, 0, NULL }
33675 };
33676
33677 static int
33678 dissect_nr_rrc_MAC_ParametersCommon_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33679   offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MAC_ParametersCommon_eag_1_sequence);
33680
33681   return offset;
33682 }
33683
33684
33685 static const per_sequence_t MAC_ParametersCommon_sequence[] = {
33686   { &hf_nr_rrc_lcp_Restriction, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_lcp_Restriction },
33687   { &hf_nr_rrc_pucch_SpatialRelInfoMAC_CE, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pucch_SpatialRelInfoMAC_CE },
33688   { &hf_nr_rrc_lch_ToSCellRestriction, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_lch_ToSCellRestriction },
33689   { &dummy_hf_nr_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_nr_rrc_MAC_ParametersCommon_eag_1 },
33690   { NULL, 0, 0, NULL }
33691 };
33692
33693 static int
33694 dissect_nr_rrc_MAC_ParametersCommon(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33695   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
33696                                    ett_nr_rrc_MAC_ParametersCommon, MAC_ParametersCommon_sequence);
33697
33698   return offset;
33699 }
33700
33701
33702 static const value_string nr_rrc_T_skipUplinkTxDynamic_vals[] = {
33703   {   0, "supported" },
33704   { 0, NULL }
33705 };
33706
33707
33708 static int
33709 dissect_nr_rrc_T_skipUplinkTxDynamic(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33710   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33711                                      1, NULL, FALSE, 0, NULL);
33712
33713   return offset;
33714 }
33715
33716
33717 static const value_string nr_rrc_T_logicalChannelSR_DelayTimer_01_vals[] = {
33718   {   0, "supported" },
33719   { 0, NULL }
33720 };
33721
33722
33723 static int
33724 dissect_nr_rrc_T_logicalChannelSR_DelayTimer_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33725   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33726                                      1, NULL, FALSE, 0, NULL);
33727
33728   return offset;
33729 }
33730
33731
33732 static const value_string nr_rrc_T_longDRX_Cycle_vals[] = {
33733   {   0, "supported" },
33734   { 0, NULL }
33735 };
33736
33737
33738 static int
33739 dissect_nr_rrc_T_longDRX_Cycle(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33740   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33741                                      1, NULL, FALSE, 0, NULL);
33742
33743   return offset;
33744 }
33745
33746
33747 static const value_string nr_rrc_T_shortDRX_Cycle_vals[] = {
33748   {   0, "supported" },
33749   { 0, NULL }
33750 };
33751
33752
33753 static int
33754 dissect_nr_rrc_T_shortDRX_Cycle(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33755   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33756                                      1, NULL, FALSE, 0, NULL);
33757
33758   return offset;
33759 }
33760
33761
33762 static const value_string nr_rrc_T_multipleSR_Configurations_vals[] = {
33763   {   0, "supported" },
33764   { 0, NULL }
33765 };
33766
33767
33768 static int
33769 dissect_nr_rrc_T_multipleSR_Configurations(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33770   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33771                                      1, NULL, FALSE, 0, NULL);
33772
33773   return offset;
33774 }
33775
33776
33777 static const value_string nr_rrc_T_multipleConfiguredGrants_vals[] = {
33778   {   0, "supported" },
33779   { 0, NULL }
33780 };
33781
33782
33783 static int
33784 dissect_nr_rrc_T_multipleConfiguredGrants(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33785   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33786                                      1, NULL, FALSE, 0, NULL);
33787
33788   return offset;
33789 }
33790
33791
33792 static const per_sequence_t MAC_ParametersXDD_Diff_sequence[] = {
33793   { &hf_nr_rrc_skipUplinkTxDynamic_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_skipUplinkTxDynamic },
33794   { &hf_nr_rrc_logicalChannelSR_DelayTimer_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_logicalChannelSR_DelayTimer_01 },
33795   { &hf_nr_rrc_longDRX_Cycle, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_longDRX_Cycle },
33796   { &hf_nr_rrc_shortDRX_Cycle, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_shortDRX_Cycle },
33797   { &hf_nr_rrc_multipleSR_Configurations, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_multipleSR_Configurations },
33798   { &hf_nr_rrc_multipleConfiguredGrants, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_multipleConfiguredGrants },
33799   { NULL, 0, 0, NULL }
33800 };
33801
33802 static int
33803 dissect_nr_rrc_MAC_ParametersXDD_Diff(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33804   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
33805                                    ett_nr_rrc_MAC_ParametersXDD_Diff, MAC_ParametersXDD_Diff_sequence);
33806
33807   return offset;
33808 }
33809
33810
33811 static const per_sequence_t MAC_Parameters_sequence[] = {
33812   { &hf_nr_rrc_mac_ParametersCommon, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MAC_ParametersCommon },
33813   { &hf_nr_rrc_mac_ParametersXDD_Diff, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MAC_ParametersXDD_Diff },
33814   { NULL, 0, 0, NULL }
33815 };
33816
33817 static int
33818 dissect_nr_rrc_MAC_Parameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33819   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
33820                                    ett_nr_rrc_MAC_Parameters, MAC_Parameters_sequence);
33821
33822   return offset;
33823 }
33824
33825
33826
33827 static int
33828 dissect_nr_rrc_BIT_STRING_SIZE_22(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33829   offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
33830                                      22, 22, FALSE, NULL, NULL);
33831
33832   return offset;
33833 }
33834
33835
33836 static const value_string nr_rrc_T_ssb_RLM_vals[] = {
33837   {   0, "supported" },
33838   { 0, NULL }
33839 };
33840
33841
33842 static int
33843 dissect_nr_rrc_T_ssb_RLM(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33844   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33845                                      1, NULL, FALSE, 0, NULL);
33846
33847   return offset;
33848 }
33849
33850
33851 static const value_string nr_rrc_T_ssb_AndCSI_RS_RLM_vals[] = {
33852   {   0, "supported" },
33853   { 0, NULL }
33854 };
33855
33856
33857 static int
33858 dissect_nr_rrc_T_ssb_AndCSI_RS_RLM(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33859   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33860                                      1, NULL, FALSE, 0, NULL);
33861
33862   return offset;
33863 }
33864
33865
33866 static const value_string nr_rrc_T_eventB_MeasAndReport_vals[] = {
33867   {   0, "supported" },
33868   { 0, NULL }
33869 };
33870
33871
33872 static int
33873 dissect_nr_rrc_T_eventB_MeasAndReport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33874   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33875                                      1, NULL, FALSE, 0, NULL);
33876
33877   return offset;
33878 }
33879
33880
33881 static const value_string nr_rrc_T_handoverFDD_TDD_vals[] = {
33882   {   0, "supported" },
33883   { 0, NULL }
33884 };
33885
33886
33887 static int
33888 dissect_nr_rrc_T_handoverFDD_TDD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33889   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33890                                      1, NULL, FALSE, 0, NULL);
33891
33892   return offset;
33893 }
33894
33895
33896 static const value_string nr_rrc_T_eutra_CGI_Reporting_vals[] = {
33897   {   0, "supported" },
33898   { 0, NULL }
33899 };
33900
33901
33902 static int
33903 dissect_nr_rrc_T_eutra_CGI_Reporting(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33904   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33905                                      1, NULL, FALSE, 0, NULL);
33906
33907   return offset;
33908 }
33909
33910
33911 static const value_string nr_rrc_T_nr_CGI_Reporting_vals[] = {
33912   {   0, "supported" },
33913   { 0, NULL }
33914 };
33915
33916
33917 static int
33918 dissect_nr_rrc_T_nr_CGI_Reporting(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33919   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33920                                      1, NULL, FALSE, 0, NULL);
33921
33922   return offset;
33923 }
33924
33925
33926 static const per_sequence_t MeasAndMobParametersCommon_eag_1_sequence[] = {
33927   { &hf_nr_rrc_eventB_MeasAndReport, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_eventB_MeasAndReport },
33928   { &hf_nr_rrc_handoverFDD_TDD, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_handoverFDD_TDD },
33929   { &hf_nr_rrc_eutra_CGI_Reporting, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_eutra_CGI_Reporting },
33930   { &hf_nr_rrc_nr_CGI_Reporting, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nr_CGI_Reporting },
33931   { NULL, 0, 0, NULL }
33932 };
33933
33934 static int
33935 dissect_nr_rrc_MeasAndMobParametersCommon_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33936   offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasAndMobParametersCommon_eag_1_sequence);
33937
33938   return offset;
33939 }
33940
33941
33942 static const per_sequence_t MeasAndMobParametersCommon_sequence[] = {
33943   { &hf_nr_rrc_supportedGapPattern, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_BIT_STRING_SIZE_22 },
33944   { &hf_nr_rrc_ssb_RLM      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_ssb_RLM },
33945   { &hf_nr_rrc_ssb_AndCSI_RS_RLM, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_ssb_AndCSI_RS_RLM },
33946   { &dummy_hf_nr_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasAndMobParametersCommon_eag_1 },
33947   { NULL, 0, 0, NULL }
33948 };
33949
33950 static int
33951 dissect_nr_rrc_MeasAndMobParametersCommon(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33952   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
33953                                    ett_nr_rrc_MeasAndMobParametersCommon, MeasAndMobParametersCommon_sequence);
33954
33955   return offset;
33956 }
33957
33958
33959 static const value_string nr_rrc_T_intraAndInterF_MeasAndReport_vals[] = {
33960   {   0, "supported" },
33961   { 0, NULL }
33962 };
33963
33964
33965 static int
33966 dissect_nr_rrc_T_intraAndInterF_MeasAndReport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33967   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33968                                      1, NULL, FALSE, 0, NULL);
33969
33970   return offset;
33971 }
33972
33973
33974 static const value_string nr_rrc_T_eventA_MeasAndReport_vals[] = {
33975   {   0, "supported" },
33976   { 0, NULL }
33977 };
33978
33979
33980 static int
33981 dissect_nr_rrc_T_eventA_MeasAndReport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33982   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33983                                      1, NULL, FALSE, 0, NULL);
33984
33985   return offset;
33986 }
33987
33988
33989 static const value_string nr_rrc_T_handoverInterF_vals[] = {
33990   {   0, "supported" },
33991   { 0, NULL }
33992 };
33993
33994
33995 static int
33996 dissect_nr_rrc_T_handoverInterF(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
33997   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
33998                                      1, NULL, FALSE, 0, NULL);
33999
34000   return offset;
34001 }
34002
34003
34004 static const value_string nr_rrc_T_handoverLTE_vals[] = {
34005   {   0, "supported" },
34006   { 0, NULL }
34007 };
34008
34009
34010 static int
34011 dissect_nr_rrc_T_handoverLTE(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34012   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34013                                      1, NULL, FALSE, 0, NULL);
34014
34015   return offset;
34016 }
34017
34018
34019 static const value_string nr_rrc_T_handover_eLTE_vals[] = {
34020   {   0, "supported" },
34021   { 0, NULL }
34022 };
34023
34024
34025 static int
34026 dissect_nr_rrc_T_handover_eLTE(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34027   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34028                                      1, NULL, FALSE, 0, NULL);
34029
34030   return offset;
34031 }
34032
34033
34034 static const per_sequence_t MeasAndMobParametersXDD_Diff_eag_1_sequence[] = {
34035   { &hf_nr_rrc_handoverInterF, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_handoverInterF },
34036   { &hf_nr_rrc_handoverLTE  , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_handoverLTE },
34037   { &hf_nr_rrc_handover_eLTE, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_handover_eLTE },
34038   { NULL, 0, 0, NULL }
34039 };
34040
34041 static int
34042 dissect_nr_rrc_MeasAndMobParametersXDD_Diff_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34043   offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasAndMobParametersXDD_Diff_eag_1_sequence);
34044
34045   return offset;
34046 }
34047
34048
34049 static const per_sequence_t MeasAndMobParametersXDD_Diff_sequence[] = {
34050   { &hf_nr_rrc_intraAndInterF_MeasAndReport, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_intraAndInterF_MeasAndReport },
34051   { &hf_nr_rrc_eventA_MeasAndReport, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_eventA_MeasAndReport },
34052   { &dummy_hf_nr_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasAndMobParametersXDD_Diff_eag_1 },
34053   { NULL, 0, 0, NULL }
34054 };
34055
34056 static int
34057 dissect_nr_rrc_MeasAndMobParametersXDD_Diff(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34058   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
34059                                    ett_nr_rrc_MeasAndMobParametersXDD_Diff, MeasAndMobParametersXDD_Diff_sequence);
34060
34061   return offset;
34062 }
34063
34064
34065 static const value_string nr_rrc_T_ss_SINR_Meas_vals[] = {
34066   {   0, "supported" },
34067   { 0, NULL }
34068 };
34069
34070
34071 static int
34072 dissect_nr_rrc_T_ss_SINR_Meas(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34073   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34074                                      1, NULL, FALSE, 0, NULL);
34075
34076   return offset;
34077 }
34078
34079
34080 static const value_string nr_rrc_T_csi_RSRP_AndRSRQ_MeasWithSSB_vals[] = {
34081   {   0, "supported" },
34082   { 0, NULL }
34083 };
34084
34085
34086 static int
34087 dissect_nr_rrc_T_csi_RSRP_AndRSRQ_MeasWithSSB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34088   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34089                                      1, NULL, FALSE, 0, NULL);
34090
34091   return offset;
34092 }
34093
34094
34095 static const value_string nr_rrc_T_csi_RSRP_AndRSRQ_MeasWithoutSSB_vals[] = {
34096   {   0, "supported" },
34097   { 0, NULL }
34098 };
34099
34100
34101 static int
34102 dissect_nr_rrc_T_csi_RSRP_AndRSRQ_MeasWithoutSSB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34103   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34104                                      1, NULL, FALSE, 0, NULL);
34105
34106   return offset;
34107 }
34108
34109
34110 static const value_string nr_rrc_T_csi_SINR_Meas_vals[] = {
34111   {   0, "supported" },
34112   { 0, NULL }
34113 };
34114
34115
34116 static int
34117 dissect_nr_rrc_T_csi_SINR_Meas(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34118   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34119                                      1, NULL, FALSE, 0, NULL);
34120
34121   return offset;
34122 }
34123
34124
34125 static const value_string nr_rrc_T_csi_RS_RLM_vals[] = {
34126   {   0, "supported" },
34127   { 0, NULL }
34128 };
34129
34130
34131 static int
34132 dissect_nr_rrc_T_csi_RS_RLM(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34133   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34134                                      1, NULL, FALSE, 0, NULL);
34135
34136   return offset;
34137 }
34138
34139
34140 static const value_string nr_rrc_T_handoverInterF_01_vals[] = {
34141   {   0, "supported" },
34142   { 0, NULL }
34143 };
34144
34145
34146 static int
34147 dissect_nr_rrc_T_handoverInterF_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34148   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34149                                      1, NULL, FALSE, 0, NULL);
34150
34151   return offset;
34152 }
34153
34154
34155 static const value_string nr_rrc_T_handoverLTE_01_vals[] = {
34156   {   0, "supported" },
34157   { 0, NULL }
34158 };
34159
34160
34161 static int
34162 dissect_nr_rrc_T_handoverLTE_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34163   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34164                                      1, NULL, FALSE, 0, NULL);
34165
34166   return offset;
34167 }
34168
34169
34170 static const value_string nr_rrc_T_handover_eLTE_01_vals[] = {
34171   {   0, "supported" },
34172   { 0, NULL }
34173 };
34174
34175
34176 static int
34177 dissect_nr_rrc_T_handover_eLTE_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34178   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34179                                      1, NULL, FALSE, 0, NULL);
34180
34181   return offset;
34182 }
34183
34184
34185 static const per_sequence_t MeasAndMobParametersFRX_Diff_eag_1_sequence[] = {
34186   { &hf_nr_rrc_handoverInterF_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_handoverInterF_01 },
34187   { &hf_nr_rrc_handoverLTE_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_handoverLTE_01 },
34188   { &hf_nr_rrc_handover_eLTE_01, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_handover_eLTE_01 },
34189   { NULL, 0, 0, NULL }
34190 };
34191
34192 static int
34193 dissect_nr_rrc_MeasAndMobParametersFRX_Diff_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34194   offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasAndMobParametersFRX_Diff_eag_1_sequence);
34195
34196   return offset;
34197 }
34198
34199
34200 static const per_sequence_t MeasAndMobParametersFRX_Diff_sequence[] = {
34201   { &hf_nr_rrc_ss_SINR_Meas , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_ss_SINR_Meas },
34202   { &hf_nr_rrc_csi_RSRP_AndRSRQ_MeasWithSSB, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_csi_RSRP_AndRSRQ_MeasWithSSB },
34203   { &hf_nr_rrc_csi_RSRP_AndRSRQ_MeasWithoutSSB, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_csi_RSRP_AndRSRQ_MeasWithoutSSB },
34204   { &hf_nr_rrc_csi_SINR_Meas, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_csi_SINR_Meas },
34205   { &hf_nr_rrc_csi_RS_RLM   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_csi_RS_RLM },
34206   { &dummy_hf_nr_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasAndMobParametersFRX_Diff_eag_1 },
34207   { NULL, 0, 0, NULL }
34208 };
34209
34210 static int
34211 dissect_nr_rrc_MeasAndMobParametersFRX_Diff(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34212   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
34213                                    ett_nr_rrc_MeasAndMobParametersFRX_Diff, MeasAndMobParametersFRX_Diff_sequence);
34214
34215   return offset;
34216 }
34217
34218
34219 static const per_sequence_t MeasAndMobParameters_sequence[] = {
34220   { &hf_nr_rrc_measAndMobParametersCommon, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MeasAndMobParametersCommon },
34221   { &hf_nr_rrc_measAndMobParametersXDD_Diff, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MeasAndMobParametersXDD_Diff },
34222   { &hf_nr_rrc_measAndMobParametersFRX_Diff, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MeasAndMobParametersFRX_Diff },
34223   { NULL, 0, 0, NULL }
34224 };
34225
34226 static int
34227 dissect_nr_rrc_MeasAndMobParameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34228   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
34229                                    ett_nr_rrc_MeasAndMobParameters, MeasAndMobParameters_sequence);
34230
34231   return offset;
34232 }
34233
34234
34235 static const value_string nr_rrc_T_independentGapConfig_vals[] = {
34236   {   0, "supported" },
34237   { 0, NULL }
34238 };
34239
34240
34241 static int
34242 dissect_nr_rrc_T_independentGapConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34243   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34244                                      1, NULL, FALSE, 0, NULL);
34245
34246   return offset;
34247 }
34248
34249
34250 static const per_sequence_t MeasAndMobParametersMRDC_Common_sequence[] = {
34251   { &hf_nr_rrc_independentGapConfig, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_independentGapConfig },
34252   { NULL, 0, 0, NULL }
34253 };
34254
34255 static int
34256 dissect_nr_rrc_MeasAndMobParametersMRDC_Common(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34257   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
34258                                    ett_nr_rrc_MeasAndMobParametersMRDC_Common, MeasAndMobParametersMRDC_Common_sequence);
34259
34260   return offset;
34261 }
34262
34263
34264 static const value_string nr_rrc_T_sftd_MeasPSCell_vals[] = {
34265   {   0, "supported" },
34266   { 0, NULL }
34267 };
34268
34269
34270 static int
34271 dissect_nr_rrc_T_sftd_MeasPSCell(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34272   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34273                                      1, NULL, FALSE, 0, NULL);
34274
34275   return offset;
34276 }
34277
34278
34279 static const value_string nr_rrc_T_sftd_MeasNR_Cell_vals[] = {
34280   {   0, "supported" },
34281   { 0, NULL }
34282 };
34283
34284
34285 static int
34286 dissect_nr_rrc_T_sftd_MeasNR_Cell(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34287   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34288                                      1, NULL, FALSE, 0, NULL);
34289
34290   return offset;
34291 }
34292
34293
34294 static const per_sequence_t MeasAndMobParametersMRDC_XDD_Diff_sequence[] = {
34295   { &hf_nr_rrc_sftd_MeasPSCell, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_sftd_MeasPSCell },
34296   { &hf_nr_rrc_sftd_MeasNR_Cell, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_sftd_MeasNR_Cell },
34297   { NULL, 0, 0, NULL }
34298 };
34299
34300 static int
34301 dissect_nr_rrc_MeasAndMobParametersMRDC_XDD_Diff(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34302   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
34303                                    ett_nr_rrc_MeasAndMobParametersMRDC_XDD_Diff, MeasAndMobParametersMRDC_XDD_Diff_sequence);
34304
34305   return offset;
34306 }
34307
34308
34309 static const value_string nr_rrc_T_simultaneousRxDataSSB_DiffNumerology_vals[] = {
34310   {   0, "supported" },
34311   { 0, NULL }
34312 };
34313
34314
34315 static int
34316 dissect_nr_rrc_T_simultaneousRxDataSSB_DiffNumerology(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34317   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34318                                      1, NULL, FALSE, 0, NULL);
34319
34320   return offset;
34321 }
34322
34323
34324 static const per_sequence_t MeasAndMobParametersMRDC_FRX_Diff_sequence[] = {
34325   { &hf_nr_rrc_simultaneousRxDataSSB_DiffNumerology, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_simultaneousRxDataSSB_DiffNumerology },
34326   { NULL, 0, 0, NULL }
34327 };
34328
34329 static int
34330 dissect_nr_rrc_MeasAndMobParametersMRDC_FRX_Diff(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34331   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
34332                                    ett_nr_rrc_MeasAndMobParametersMRDC_FRX_Diff, MeasAndMobParametersMRDC_FRX_Diff_sequence);
34333
34334   return offset;
34335 }
34336
34337
34338 static const per_sequence_t MeasAndMobParametersMRDC_sequence[] = {
34339   { &hf_nr_rrc_measAndMobParametersMRDC_Common, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MeasAndMobParametersMRDC_Common },
34340   { &hf_nr_rrc_measAndMobParametersMRDC_XDD_Diff, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MeasAndMobParametersMRDC_XDD_Diff },
34341   { &hf_nr_rrc_measAndMobParametersMRDC_FRX_Diff, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MeasAndMobParametersMRDC_FRX_Diff },
34342   { NULL, 0, 0, NULL }
34343 };
34344
34345 static int
34346 dissect_nr_rrc_MeasAndMobParametersMRDC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34347   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
34348                                    ett_nr_rrc_MeasAndMobParametersMRDC, MeasAndMobParametersMRDC_sequence);
34349
34350   return offset;
34351 }
34352
34353
34354 static const value_string nr_rrc_T_maxNumberConfiguredTCIstatesPerCC_vals[] = {
34355   {   0, "n4" },
34356   {   1, "n8" },
34357   {   2, "n16" },
34358   {   3, "n32" },
34359   {   4, "n64" },
34360   {   5, "n128" },
34361   { 0, NULL }
34362 };
34363
34364
34365 static int
34366 dissect_nr_rrc_T_maxNumberConfiguredTCIstatesPerCC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34367   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34368                                      6, NULL, FALSE, 0, NULL);
34369
34370   return offset;
34371 }
34372
34373
34374 static const value_string nr_rrc_T_maxNumberActiveTCI_PerBWP_vals[] = {
34375   {   0, "n1" },
34376   {   1, "n2" },
34377   {   2, "n4" },
34378   {   3, "n8" },
34379   { 0, NULL }
34380 };
34381
34382
34383 static int
34384 dissect_nr_rrc_T_maxNumberActiveTCI_PerBWP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34385   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34386                                      4, NULL, FALSE, 0, NULL);
34387
34388   return offset;
34389 }
34390
34391
34392 static const per_sequence_t T_tci_StatePDSCH_sequence[] = {
34393   { &hf_nr_rrc_maxNumberConfiguredTCIstatesPerCC, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_maxNumberConfiguredTCIstatesPerCC },
34394   { &hf_nr_rrc_maxNumberActiveTCI_PerBWP, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_maxNumberActiveTCI_PerBWP },
34395   { NULL, 0, 0, NULL }
34396 };
34397
34398 static int
34399 dissect_nr_rrc_T_tci_StatePDSCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34400   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
34401                                    ett_nr_rrc_T_tci_StatePDSCH, T_tci_StatePDSCH_sequence);
34402
34403   return offset;
34404 }
34405
34406
34407 static const value_string nr_rrc_T_additionalActiveTCI_StatePDCCH_vals[] = {
34408   {   0, "supported" },
34409   { 0, NULL }
34410 };
34411
34412
34413 static int
34414 dissect_nr_rrc_T_additionalActiveTCI_StatePDCCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34415   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34416                                      1, NULL, FALSE, 0, NULL);
34417
34418   return offset;
34419 }
34420
34421
34422 static const value_string nr_rrc_T_pusch_TransCoherence_vals[] = {
34423   {   0, "nonCoherent" },
34424   {   1, "partialNonCoherent" },
34425   {   2, "fullCoherent" },
34426   { 0, NULL }
34427 };
34428
34429
34430 static int
34431 dissect_nr_rrc_T_pusch_TransCoherence(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34432   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34433                                      3, NULL, FALSE, 0, NULL);
34434
34435   return offset;
34436 }
34437
34438
34439 static const value_string nr_rrc_T_beamCorrespondence_vals[] = {
34440   {   0, "supported" },
34441   { 0, NULL }
34442 };
34443
34444
34445 static int
34446 dissect_nr_rrc_T_beamCorrespondence(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34447   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34448                                      1, NULL, FALSE, 0, NULL);
34449
34450   return offset;
34451 }
34452
34453
34454 static const value_string nr_rrc_T_periodicBeamReport_vals[] = {
34455   {   0, "supported" },
34456   { 0, NULL }
34457 };
34458
34459
34460 static int
34461 dissect_nr_rrc_T_periodicBeamReport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34462   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34463                                      1, NULL, FALSE, 0, NULL);
34464
34465   return offset;
34466 }
34467
34468
34469 static const value_string nr_rrc_T_aperiodicBeamReport_vals[] = {
34470   {   0, "supported" },
34471   { 0, NULL }
34472 };
34473
34474
34475 static int
34476 dissect_nr_rrc_T_aperiodicBeamReport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34477   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34478                                      1, NULL, FALSE, 0, NULL);
34479
34480   return offset;
34481 }
34482
34483
34484 static const value_string nr_rrc_T_sp_BeamReportPUCCH_vals[] = {
34485   {   0, "supported" },
34486   { 0, NULL }
34487 };
34488
34489
34490 static int
34491 dissect_nr_rrc_T_sp_BeamReportPUCCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34492   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34493                                      1, NULL, FALSE, 0, NULL);
34494
34495   return offset;
34496 }
34497
34498
34499 static const value_string nr_rrc_T_sp_BeamReportPUSCH_vals[] = {
34500   {   0, "supported" },
34501   { 0, NULL }
34502 };
34503
34504
34505 static int
34506 dissect_nr_rrc_T_sp_BeamReportPUSCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34507   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34508                                      1, NULL, FALSE, 0, NULL);
34509
34510   return offset;
34511 }
34512
34513
34514 static const value_string nr_rrc_T_maxNumberSSB_CSI_RS_ResourceOneTx_vals[] = {
34515   {   0, "n8" },
34516   {   1, "n16" },
34517   {   2, "n32" },
34518   {   3, "n64" },
34519   { 0, NULL }
34520 };
34521
34522
34523 static int
34524 dissect_nr_rrc_T_maxNumberSSB_CSI_RS_ResourceOneTx(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34525   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34526                                      4, NULL, FALSE, 0, NULL);
34527
34528   return offset;
34529 }
34530
34531
34532 static const value_string nr_rrc_T_maxNumberSSB_CSI_RS_ResourceTwoTx_vals[] = {
34533   {   0, "n0" },
34534   {   1, "n4" },
34535   {   2, "n8" },
34536   {   3, "n16" },
34537   {   4, "n32" },
34538   {   5, "n64" },
34539   { 0, NULL }
34540 };
34541
34542
34543 static int
34544 dissect_nr_rrc_T_maxNumberSSB_CSI_RS_ResourceTwoTx(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34545   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34546                                      6, NULL, FALSE, 0, NULL);
34547
34548   return offset;
34549 }
34550
34551
34552 static const value_string nr_rrc_T_supportedCSI_RS_Density_vals[] = {
34553   {   0, "one" },
34554   {   1, "three" },
34555   {   2, "oneAndThree" },
34556   { 0, NULL }
34557 };
34558
34559
34560 static int
34561 dissect_nr_rrc_T_supportedCSI_RS_Density(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34562   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34563                                      3, NULL, FALSE, 0, NULL);
34564
34565   return offset;
34566 }
34567
34568
34569 static const per_sequence_t BeamManagementSSB_CSI_RS_sequence[] = {
34570   { &hf_nr_rrc_maxNumberSSB_CSI_RS_ResourceOneTx, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_maxNumberSSB_CSI_RS_ResourceOneTx },
34571   { &hf_nr_rrc_maxNumberSSB_CSI_RS_ResourceTwoTx, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_maxNumberSSB_CSI_RS_ResourceTwoTx },
34572   { &hf_nr_rrc_supportedCSI_RS_Density, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_supportedCSI_RS_Density },
34573   { NULL, 0, 0, NULL }
34574 };
34575
34576 static int
34577 dissect_nr_rrc_BeamManagementSSB_CSI_RS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34578   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
34579                                    ett_nr_rrc_BeamManagementSSB_CSI_RS, BeamManagementSSB_CSI_RS_sequence);
34580
34581   return offset;
34582 }
34583
34584
34585
34586 static int
34587 dissect_nr_rrc_INTEGER_2_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34588   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
34589                                                             2U, 8U, NULL, FALSE);
34590
34591   return offset;
34592 }
34593
34594
34595 static const value_string nr_rrc_T_scs_15kHz_02_vals[] = {
34596   {   0, "n4" },
34597   {   1, "n7" },
34598   {   2, "n14" },
34599   { 0, NULL }
34600 };
34601
34602
34603 static int
34604 dissect_nr_rrc_T_scs_15kHz_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34605   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34606                                      3, NULL, FALSE, 0, NULL);
34607
34608   return offset;
34609 }
34610
34611
34612 static const value_string nr_rrc_T_scs_30kHz_02_vals[] = {
34613   {   0, "n4" },
34614   {   1, "n7" },
34615   {   2, "n14" },
34616   { 0, NULL }
34617 };
34618
34619
34620 static int
34621 dissect_nr_rrc_T_scs_30kHz_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34622   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34623                                      3, NULL, FALSE, 0, NULL);
34624
34625   return offset;
34626 }
34627
34628
34629 static const value_string nr_rrc_T_scs_60kHz_03_vals[] = {
34630   {   0, "n4" },
34631   {   1, "n7" },
34632   {   2, "n14" },
34633   { 0, NULL }
34634 };
34635
34636
34637 static int
34638 dissect_nr_rrc_T_scs_60kHz_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34639   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34640                                      3, NULL, FALSE, 0, NULL);
34641
34642   return offset;
34643 }
34644
34645
34646 static const value_string nr_rrc_T_scs_120kHz_02_vals[] = {
34647   {   0, "n4" },
34648   {   1, "n7" },
34649   {   2, "n14" },
34650   { 0, NULL }
34651 };
34652
34653
34654 static int
34655 dissect_nr_rrc_T_scs_120kHz_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34656   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34657                                      3, NULL, FALSE, 0, NULL);
34658
34659   return offset;
34660 }
34661
34662
34663 static const value_string nr_rrc_T_scs_240kHz_vals[] = {
34664   {   0, "n4" },
34665   {   1, "n7" },
34666   {   2, "n14" },
34667   { 0, NULL }
34668 };
34669
34670
34671 static int
34672 dissect_nr_rrc_T_scs_240kHz(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34673   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34674                                      3, NULL, FALSE, 0, NULL);
34675
34676   return offset;
34677 }
34678
34679
34680 static const per_sequence_t T_maxNumberRxTxBeamSwitchDL_sequence[] = {
34681   { &hf_nr_rrc_scs_15kHz_02 , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_scs_15kHz_02 },
34682   { &hf_nr_rrc_scs_30kHz_02 , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_scs_30kHz_02 },
34683   { &hf_nr_rrc_scs_60kHz_03 , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_scs_60kHz_03 },
34684   { &hf_nr_rrc_scs_120kHz_02, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_scs_120kHz_02 },
34685   { &hf_nr_rrc_scs_240kHz   , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_scs_240kHz },
34686   { NULL, 0, 0, NULL }
34687 };
34688
34689 static int
34690 dissect_nr_rrc_T_maxNumberRxTxBeamSwitchDL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34691   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
34692                                    ett_nr_rrc_T_maxNumberRxTxBeamSwitchDL, T_maxNumberRxTxBeamSwitchDL_sequence);
34693
34694   return offset;
34695 }
34696
34697
34698 static const value_string nr_rrc_T_maxNumberNonGroupBeamReporting_vals[] = {
34699   {   0, "n1" },
34700   {   1, "n2" },
34701   {   2, "n4" },
34702   { 0, NULL }
34703 };
34704
34705
34706 static int
34707 dissect_nr_rrc_T_maxNumberNonGroupBeamReporting(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34708   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34709                                      3, NULL, FALSE, 0, NULL);
34710
34711   return offset;
34712 }
34713
34714
34715 static const value_string nr_rrc_T_groupBeamReporting_vals[] = {
34716   {   0, "supported" },
34717   { 0, NULL }
34718 };
34719
34720
34721 static int
34722 dissect_nr_rrc_T_groupBeamReporting(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34723   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34724                                      1, NULL, FALSE, 0, NULL);
34725
34726   return offset;
34727 }
34728
34729
34730 static const value_string nr_rrc_T_maxNumberSRS_ResourcePerSet_BM_vals[] = {
34731   {   0, "n2" },
34732   {   1, "n4" },
34733   {   2, "n8" },
34734   {   3, "n16" },
34735   { 0, NULL }
34736 };
34737
34738
34739 static int
34740 dissect_nr_rrc_T_maxNumberSRS_ResourcePerSet_BM(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34741   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34742                                      4, NULL, FALSE, 0, NULL);
34743
34744   return offset;
34745 }
34746
34747
34748 static const per_sequence_t T_uplinkBeamManagement_sequence[] = {
34749   { &hf_nr_rrc_maxNumberSRS_ResourcePerSet_BM, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_maxNumberSRS_ResourcePerSet_BM },
34750   { &hf_nr_rrc_maxNumberSRS_ResourceSet, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_8 },
34751   { NULL, 0, 0, NULL }
34752 };
34753
34754 static int
34755 dissect_nr_rrc_T_uplinkBeamManagement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34756   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
34757                                    ett_nr_rrc_T_uplinkBeamManagement, T_uplinkBeamManagement_sequence);
34758
34759   return offset;
34760 }
34761
34762
34763
34764 static int
34765 dissect_nr_rrc_INTEGER_1_256(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34766   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
34767                                                             1U, 256U, NULL, FALSE);
34768
34769   return offset;
34770 }
34771
34772
34773 static const value_string nr_rrc_T_twoPortsPTRS_DL_vals[] = {
34774   {   0, "supported" },
34775   { 0, NULL }
34776 };
34777
34778
34779 static int
34780 dissect_nr_rrc_T_twoPortsPTRS_DL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34781   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34782                                      1, NULL, FALSE, 0, NULL);
34783
34784   return offset;
34785 }
34786
34787
34788 static const value_string nr_rrc_T_twoPortsPTRS_UL_vals[] = {
34789   {   0, "supported" },
34790   { 0, NULL }
34791 };
34792
34793
34794 static int
34795 dissect_nr_rrc_T_twoPortsPTRS_UL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34796   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34797                                      1, NULL, FALSE, 0, NULL);
34798
34799   return offset;
34800 }
34801
34802
34803 static const value_string nr_rrc_T_scs_15kHz_03_vals[] = {
34804   {   0, "sym2" },
34805   {   1, "sym4" },
34806   {   2, "sym8" },
34807   { 0, NULL }
34808 };
34809
34810
34811 static int
34812 dissect_nr_rrc_T_scs_15kHz_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34813   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34814                                      3, NULL, FALSE, 0, NULL);
34815
34816   return offset;
34817 }
34818
34819
34820 static const value_string nr_rrc_T_scs_30kHz_03_vals[] = {
34821   {   0, "sym4" },
34822   {   1, "sym8" },
34823   {   2, "sym14" },
34824   { 0, NULL }
34825 };
34826
34827
34828 static int
34829 dissect_nr_rrc_T_scs_30kHz_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34830   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34831                                      3, NULL, FALSE, 0, NULL);
34832
34833   return offset;
34834 }
34835
34836
34837 static const value_string nr_rrc_T_scs_60kHz_04_vals[] = {
34838   {   0, "sym8" },
34839   {   1, "sym14" },
34840   {   2, "sym28" },
34841   { 0, NULL }
34842 };
34843
34844
34845 static int
34846 dissect_nr_rrc_T_scs_60kHz_04(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34847   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34848                                      3, NULL, FALSE, 0, NULL);
34849
34850   return offset;
34851 }
34852
34853
34854 static const value_string nr_rrc_T_scs_120kHz_03_vals[] = {
34855   {   0, "sym14" },
34856   {   1, "sym28" },
34857   {   2, "sym56" },
34858   { 0, NULL }
34859 };
34860
34861
34862 static int
34863 dissect_nr_rrc_T_scs_120kHz_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34864   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34865                                      3, NULL, FALSE, 0, NULL);
34866
34867   return offset;
34868 }
34869
34870
34871 static const per_sequence_t T_beamReportTiming_sequence[] = {
34872   { &hf_nr_rrc_scs_15kHz_03 , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_scs_15kHz_03 },
34873   { &hf_nr_rrc_scs_30kHz_03 , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_scs_30kHz_03 },
34874   { &hf_nr_rrc_scs_60kHz_04 , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_scs_60kHz_04 },
34875   { &hf_nr_rrc_scs_120kHz_03, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_scs_120kHz_03 },
34876   { NULL, 0, 0, NULL }
34877 };
34878
34879 static int
34880 dissect_nr_rrc_T_beamReportTiming(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34881   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
34882                                    ett_nr_rrc_T_beamReportTiming, T_beamReportTiming_sequence);
34883
34884   return offset;
34885 }
34886
34887
34888 static const per_sequence_t PTRS_DensityRecommendationDL_sequence[] = {
34889   { &hf_nr_rrc_frequencyDensity1, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_276 },
34890   { &hf_nr_rrc_frequencyDensity2, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_276 },
34891   { &hf_nr_rrc_timeDensity1 , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_29 },
34892   { &hf_nr_rrc_timeDensity2 , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_29 },
34893   { &hf_nr_rrc_timeDensity3 , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_29 },
34894   { NULL, 0, 0, NULL }
34895 };
34896
34897 static int
34898 dissect_nr_rrc_PTRS_DensityRecommendationDL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34899   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
34900                                    ett_nr_rrc_PTRS_DensityRecommendationDL, PTRS_DensityRecommendationDL_sequence);
34901
34902   return offset;
34903 }
34904
34905
34906 static const per_sequence_t T_ptrs_DensityRecommendationSetDL_sequence[] = {
34907   { &hf_nr_rrc_scs_15kHz_04 , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_PTRS_DensityRecommendationDL },
34908   { &hf_nr_rrc_scs_30kHz_04 , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_PTRS_DensityRecommendationDL },
34909   { &hf_nr_rrc_scs_60kHz_05 , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_PTRS_DensityRecommendationDL },
34910   { &hf_nr_rrc_scs_120kHz_04, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_PTRS_DensityRecommendationDL },
34911   { NULL, 0, 0, NULL }
34912 };
34913
34914 static int
34915 dissect_nr_rrc_T_ptrs_DensityRecommendationSetDL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34916   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
34917                                    ett_nr_rrc_T_ptrs_DensityRecommendationSetDL, T_ptrs_DensityRecommendationSetDL_sequence);
34918
34919   return offset;
34920 }
34921
34922
34923 static const per_sequence_t PTRS_DensityRecommendationUL_sequence[] = {
34924   { &hf_nr_rrc_frequencyDensity1, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_276 },
34925   { &hf_nr_rrc_frequencyDensity2, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_276 },
34926   { &hf_nr_rrc_timeDensity1 , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_29 },
34927   { &hf_nr_rrc_timeDensity2 , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_29 },
34928   { &hf_nr_rrc_timeDensity3 , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_0_29 },
34929   { &hf_nr_rrc_sampleDensity1, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_276 },
34930   { &hf_nr_rrc_sampleDensity2, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_276 },
34931   { &hf_nr_rrc_sampleDensity3, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_276 },
34932   { &hf_nr_rrc_sampleDensity4, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_276 },
34933   { &hf_nr_rrc_sampleDensity5, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_276 },
34934   { NULL, 0, 0, NULL }
34935 };
34936
34937 static int
34938 dissect_nr_rrc_PTRS_DensityRecommendationUL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34939   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
34940                                    ett_nr_rrc_PTRS_DensityRecommendationUL, PTRS_DensityRecommendationUL_sequence);
34941
34942   return offset;
34943 }
34944
34945
34946 static const per_sequence_t T_ptrs_DensityRecommendationSetUL_sequence[] = {
34947   { &hf_nr_rrc_scs_15kHz_05 , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_PTRS_DensityRecommendationUL },
34948   { &hf_nr_rrc_scs_30kHz_05 , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_PTRS_DensityRecommendationUL },
34949   { &hf_nr_rrc_scs_60kHz_06 , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_PTRS_DensityRecommendationUL },
34950   { &hf_nr_rrc_scs_120kHz_05, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_PTRS_DensityRecommendationUL },
34951   { NULL, 0, 0, NULL }
34952 };
34953
34954 static int
34955 dissect_nr_rrc_T_ptrs_DensityRecommendationSetUL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34956   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
34957                                    ett_nr_rrc_T_ptrs_DensityRecommendationSetUL, T_ptrs_DensityRecommendationSetUL_sequence);
34958
34959   return offset;
34960 }
34961
34962
34963
34964 static int
34965 dissect_nr_rrc_INTEGER_1_128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34966   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
34967                                                             1U, 128U, NULL, FALSE);
34968
34969   return offset;
34970 }
34971
34972
34973 static const per_sequence_t CSI_RS_ForTracking_sequence[] = {
34974   { &hf_nr_rrc_burstLength  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_2 },
34975   { &hf_nr_rrc_maxSimultaneousResourceSetsPerCC, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_8 },
34976   { &hf_nr_rrc_maxConfiguredResourceSetsPerCC, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_64 },
34977   { &hf_nr_rrc_maxConfiguredResourceSetsAllCC, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_128 },
34978   { NULL, 0, 0, NULL }
34979 };
34980
34981 static int
34982 dissect_nr_rrc_CSI_RS_ForTracking(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34983   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
34984                                    ett_nr_rrc_CSI_RS_ForTracking, CSI_RS_ForTracking_sequence);
34985
34986   return offset;
34987 }
34988
34989
34990 static const value_string nr_rrc_T_aperiodicTRS_vals[] = {
34991   {   0, "supported" },
34992   { 0, NULL }
34993 };
34994
34995
34996 static int
34997 dissect_nr_rrc_T_aperiodicTRS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
34998   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
34999                                      1, NULL, FALSE, 0, NULL);
35000
35001   return offset;
35002 }
35003
35004
35005 static const per_sequence_t MIMO_ParametersPerBand_sequence[] = {
35006   { &hf_nr_rrc_tci_StatePDSCH, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_tci_StatePDSCH },
35007   { &hf_nr_rrc_additionalActiveTCI_StatePDCCH, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_additionalActiveTCI_StatePDCCH },
35008   { &hf_nr_rrc_pusch_TransCoherence, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pusch_TransCoherence },
35009   { &hf_nr_rrc_beamCorrespondence, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_beamCorrespondence },
35010   { &hf_nr_rrc_periodicBeamReport, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_periodicBeamReport },
35011   { &hf_nr_rrc_aperiodicBeamReport, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_aperiodicBeamReport },
35012   { &hf_nr_rrc_sp_BeamReportPUCCH, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_sp_BeamReportPUCCH },
35013   { &hf_nr_rrc_sp_BeamReportPUSCH, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_sp_BeamReportPUSCH },
35014   { &hf_nr_rrc_beamManagementSSB_CSI_RS, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_BeamManagementSSB_CSI_RS },
35015   { &hf_nr_rrc_maxNumberRxBeam, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_2_8 },
35016   { &hf_nr_rrc_maxNumberRxTxBeamSwitchDL, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_maxNumberRxTxBeamSwitchDL },
35017   { &hf_nr_rrc_maxNumberNonGroupBeamReporting, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_maxNumberNonGroupBeamReporting },
35018   { &hf_nr_rrc_groupBeamReporting, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_groupBeamReporting },
35019   { &hf_nr_rrc_uplinkBeamManagement, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_uplinkBeamManagement },
35020   { &hf_nr_rrc_maxNumberCSI_RS_BFR, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_64 },
35021   { &hf_nr_rrc_maxNumberSSB_BFR, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_64 },
35022   { &hf_nr_rrc_maxNumberCSI_RS_SSB_BFR, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_256 },
35023   { &hf_nr_rrc_twoPortsPTRS_DL, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_twoPortsPTRS_DL },
35024   { &hf_nr_rrc_twoPortsPTRS_UL, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_twoPortsPTRS_UL },
35025   { &hf_nr_rrc_supportedSRS_Resources, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SRS_Resources },
35026   { &hf_nr_rrc_maxNumberSimultaneousSRS_PerCC, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_1_4 },
35027   { &hf_nr_rrc_beamReportTiming, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_beamReportTiming },
35028   { &hf_nr_rrc_ptrs_DensityRecommendationSetDL, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_ptrs_DensityRecommendationSetDL },
35029   { &hf_nr_rrc_ptrs_DensityRecommendationSetUL, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_ptrs_DensityRecommendationSetUL },
35030   { &hf_nr_rrc_csi_RS_ForTracking, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_CSI_RS_ForTracking },
35031   { &hf_nr_rrc_aperiodicTRS , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_aperiodicTRS },
35032   { NULL, 0, 0, NULL }
35033 };
35034
35035 static int
35036 dissect_nr_rrc_MIMO_ParametersPerBand(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35037   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
35038                                    ett_nr_rrc_MIMO_ParametersPerBand, MIMO_ParametersPerBand_sequence);
35039
35040   return offset;
35041 }
35042
35043
35044 static const per_sequence_t T_supportedROHC_Profiles_sequence[] = {
35045   { &hf_nr_rrc_profile0x0000, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
35046   { &hf_nr_rrc_profile0x0001, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
35047   { &hf_nr_rrc_profile0x0002, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
35048   { &hf_nr_rrc_profile0x0003, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
35049   { &hf_nr_rrc_profile0x0004, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
35050   { &hf_nr_rrc_profile0x0006, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
35051   { &hf_nr_rrc_profile0x0101, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
35052   { &hf_nr_rrc_profile0x0102, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
35053   { &hf_nr_rrc_profile0x0103, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
35054   { &hf_nr_rrc_profile0x0104, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BOOLEAN },
35055   { NULL, 0, 0, NULL }
35056 };
35057
35058 static int
35059 dissect_nr_rrc_T_supportedROHC_Profiles(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35060   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
35061                                    ett_nr_rrc_T_supportedROHC_Profiles, T_supportedROHC_Profiles_sequence);
35062
35063   return offset;
35064 }
35065
35066
35067 static const value_string nr_rrc_T_maxNumberROHC_ContextSessions_vals[] = {
35068   {   0, "cs2" },
35069   {   1, "cs4" },
35070   {   2, "cs8" },
35071   {   3, "cs12" },
35072   {   4, "cs16" },
35073   {   5, "cs24" },
35074   {   6, "cs32" },
35075   {   7, "cs48" },
35076   {   8, "cs64" },
35077   {   9, "cs128" },
35078   {  10, "cs256" },
35079   {  11, "cs512" },
35080   {  12, "cs1024" },
35081   {  13, "cs16384" },
35082   {  14, "spare2" },
35083   {  15, "spare1" },
35084   { 0, NULL }
35085 };
35086
35087
35088 static int
35089 dissect_nr_rrc_T_maxNumberROHC_ContextSessions(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35090   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35091                                      16, NULL, FALSE, 0, NULL);
35092
35093   return offset;
35094 }
35095
35096
35097 static const value_string nr_rrc_T_uplinkOnlyROHC_Profiles_vals[] = {
35098   {   0, "supported" },
35099   { 0, NULL }
35100 };
35101
35102
35103 static int
35104 dissect_nr_rrc_T_uplinkOnlyROHC_Profiles(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35105   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35106                                      1, NULL, FALSE, 0, NULL);
35107
35108   return offset;
35109 }
35110
35111
35112 static const value_string nr_rrc_T_continueROHC_Context_vals[] = {
35113   {   0, "supported" },
35114   { 0, NULL }
35115 };
35116
35117
35118 static int
35119 dissect_nr_rrc_T_continueROHC_Context(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35120   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35121                                      1, NULL, FALSE, 0, NULL);
35122
35123   return offset;
35124 }
35125
35126
35127 static const value_string nr_rrc_T_outOfOrderDelivery_01_vals[] = {
35128   {   0, "supported" },
35129   { 0, NULL }
35130 };
35131
35132
35133 static int
35134 dissect_nr_rrc_T_outOfOrderDelivery_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35135   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35136                                      1, NULL, FALSE, 0, NULL);
35137
35138   return offset;
35139 }
35140
35141
35142 static const value_string nr_rrc_T_shortSN_vals[] = {
35143   {   0, "supported" },
35144   { 0, NULL }
35145 };
35146
35147
35148 static int
35149 dissect_nr_rrc_T_shortSN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35150   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35151                                      1, NULL, FALSE, 0, NULL);
35152
35153   return offset;
35154 }
35155
35156
35157 static const value_string nr_rrc_T_pdcp_DuplicationSRB3_vals[] = {
35158   {   0, "supported" },
35159   { 0, NULL }
35160 };
35161
35162
35163 static int
35164 dissect_nr_rrc_T_pdcp_DuplicationSRB3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35165   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35166                                      1, NULL, FALSE, 0, NULL);
35167
35168   return offset;
35169 }
35170
35171
35172 static const value_string nr_rrc_T_pdcp_DuplicationMCG_OrSCG_vals[] = {
35173   {   0, "supported" },
35174   { 0, NULL }
35175 };
35176
35177
35178 static int
35179 dissect_nr_rrc_T_pdcp_DuplicationMCG_OrSCG(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35180   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35181                                      1, NULL, FALSE, 0, NULL);
35182
35183   return offset;
35184 }
35185
35186
35187 static const per_sequence_t PDCP_Parameters_sequence[] = {
35188   { &hf_nr_rrc_supportedROHC_Profiles, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_supportedROHC_Profiles },
35189   { &hf_nr_rrc_maxNumberROHC_ContextSessions, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_maxNumberROHC_ContextSessions },
35190   { &hf_nr_rrc_uplinkOnlyROHC_Profiles, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_uplinkOnlyROHC_Profiles },
35191   { &hf_nr_rrc_continueROHC_Context, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_continueROHC_Context },
35192   { &hf_nr_rrc_outOfOrderDelivery_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_outOfOrderDelivery_01 },
35193   { &hf_nr_rrc_shortSN      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_shortSN },
35194   { &hf_nr_rrc_pdcp_DuplicationSRB3, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pdcp_DuplicationSRB3 },
35195   { &hf_nr_rrc_pdcp_DuplicationMCG_OrSCG, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pdcp_DuplicationMCG_OrSCG },
35196   { NULL, 0, 0, NULL }
35197 };
35198
35199 static int
35200 dissect_nr_rrc_PDCP_Parameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35201   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
35202                                    ett_nr_rrc_PDCP_Parameters, PDCP_Parameters_sequence);
35203
35204   return offset;
35205 }
35206
35207
35208 static const value_string nr_rrc_T_pdcp_DuplicationSplitSRB_vals[] = {
35209   {   0, "supported" },
35210   { 0, NULL }
35211 };
35212
35213
35214 static int
35215 dissect_nr_rrc_T_pdcp_DuplicationSplitSRB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35216   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35217                                      1, NULL, FALSE, 0, NULL);
35218
35219   return offset;
35220 }
35221
35222
35223 static const value_string nr_rrc_T_pdcp_DuplicationSplitDRB_vals[] = {
35224   {   0, "supported" },
35225   { 0, NULL }
35226 };
35227
35228
35229 static int
35230 dissect_nr_rrc_T_pdcp_DuplicationSplitDRB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35231   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35232                                      1, NULL, FALSE, 0, NULL);
35233
35234   return offset;
35235 }
35236
35237
35238 static const per_sequence_t PDCP_ParametersMRDC_sequence[] = {
35239   { &hf_nr_rrc_pdcp_DuplicationSplitSRB, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_pdcp_DuplicationSplitSRB },
35240   { &hf_nr_rrc_pdcp_DuplicationSplitDRB, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_pdcp_DuplicationSplitDRB },
35241   { NULL, 0, 0, NULL }
35242 };
35243
35244 static int
35245 dissect_nr_rrc_PDCP_ParametersMRDC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35246   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
35247                                    ett_nr_rrc_PDCP_ParametersMRDC, PDCP_ParametersMRDC_sequence);
35248
35249   return offset;
35250 }
35251
35252
35253 static const value_string nr_rrc_T_csi_RS_CFRA_ForHO_vals[] = {
35254   {   0, "supported" },
35255   { 0, NULL }
35256 };
35257
35258
35259 static int
35260 dissect_nr_rrc_T_csi_RS_CFRA_ForHO(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35261   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35262                                      1, NULL, FALSE, 0, NULL);
35263
35264   return offset;
35265 }
35266
35267
35268 static const value_string nr_rrc_T_dynamicPRB_BundlingDL_vals[] = {
35269   {   0, "supported" },
35270   { 0, NULL }
35271 };
35272
35273
35274 static int
35275 dissect_nr_rrc_T_dynamicPRB_BundlingDL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35276   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35277                                      1, NULL, FALSE, 0, NULL);
35278
35279   return offset;
35280 }
35281
35282
35283 static const value_string nr_rrc_T_sp_CSI_ReportPUCCH_vals[] = {
35284   {   0, "supported" },
35285   { 0, NULL }
35286 };
35287
35288
35289 static int
35290 dissect_nr_rrc_T_sp_CSI_ReportPUCCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35291   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35292                                      1, NULL, FALSE, 0, NULL);
35293
35294   return offset;
35295 }
35296
35297
35298 static const value_string nr_rrc_T_sp_CSI_ReportPUSCH_vals[] = {
35299   {   0, "supported" },
35300   { 0, NULL }
35301 };
35302
35303
35304 static int
35305 dissect_nr_rrc_T_sp_CSI_ReportPUSCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35306   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35307                                      1, NULL, FALSE, 0, NULL);
35308
35309   return offset;
35310 }
35311
35312
35313 static const value_string nr_rrc_T_nzp_CSI_RS_IntefMgmt_vals[] = {
35314   {   0, "supported" },
35315   { 0, NULL }
35316 };
35317
35318
35319 static int
35320 dissect_nr_rrc_T_nzp_CSI_RS_IntefMgmt(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35321   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35322                                      1, NULL, FALSE, 0, NULL);
35323
35324   return offset;
35325 }
35326
35327
35328 static const value_string nr_rrc_T_type2_SP_CSI_Feedback_LongPUCCH_vals[] = {
35329   {   0, "supported" },
35330   { 0, NULL }
35331 };
35332
35333
35334 static int
35335 dissect_nr_rrc_T_type2_SP_CSI_Feedback_LongPUCCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35336   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35337                                      1, NULL, FALSE, 0, NULL);
35338
35339   return offset;
35340 }
35341
35342
35343 static const value_string nr_rrc_T_precoderGranularityCORESET_vals[] = {
35344   {   0, "supported" },
35345   { 0, NULL }
35346 };
35347
35348
35349 static int
35350 dissect_nr_rrc_T_precoderGranularityCORESET(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35351   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35352                                      1, NULL, FALSE, 0, NULL);
35353
35354   return offset;
35355 }
35356
35357
35358 static const value_string nr_rrc_T_dynamicHARQ_ACK_Codebook_vals[] = {
35359   {   0, "supported" },
35360   { 0, NULL }
35361 };
35362
35363
35364 static int
35365 dissect_nr_rrc_T_dynamicHARQ_ACK_Codebook(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35366   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35367                                      1, NULL, FALSE, 0, NULL);
35368
35369   return offset;
35370 }
35371
35372
35373 static const value_string nr_rrc_T_semiStaticHARQ_ACK_Codebook_vals[] = {
35374   {   0, "supported" },
35375   { 0, NULL }
35376 };
35377
35378
35379 static int
35380 dissect_nr_rrc_T_semiStaticHARQ_ACK_Codebook(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35381   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35382                                      1, NULL, FALSE, 0, NULL);
35383
35384   return offset;
35385 }
35386
35387
35388 static const value_string nr_rrc_T_spatialBundlingHARQ_ACK_vals[] = {
35389   {   0, "supported" },
35390   { 0, NULL }
35391 };
35392
35393
35394 static int
35395 dissect_nr_rrc_T_spatialBundlingHARQ_ACK(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35396   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35397                                      1, NULL, FALSE, 0, NULL);
35398
35399   return offset;
35400 }
35401
35402
35403 static const value_string nr_rrc_T_dynamicBetaOffsetInd_HARQ_ACK_CSI_vals[] = {
35404   {   0, "supported" },
35405   { 0, NULL }
35406 };
35407
35408
35409 static int
35410 dissect_nr_rrc_T_dynamicBetaOffsetInd_HARQ_ACK_CSI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35411   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35412                                      1, NULL, FALSE, 0, NULL);
35413
35414   return offset;
35415 }
35416
35417
35418 static const value_string nr_rrc_T_pucch_Repetition_F1_3_4_vals[] = {
35419   {   0, "supported" },
35420   { 0, NULL }
35421 };
35422
35423
35424 static int
35425 dissect_nr_rrc_T_pucch_Repetition_F1_3_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35426   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35427                                      1, NULL, FALSE, 0, NULL);
35428
35429   return offset;
35430 }
35431
35432
35433 static const value_string nr_rrc_T_ra_Type0_PUSCH_vals[] = {
35434   {   0, "supported" },
35435   { 0, NULL }
35436 };
35437
35438
35439 static int
35440 dissect_nr_rrc_T_ra_Type0_PUSCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35441   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35442                                      1, NULL, FALSE, 0, NULL);
35443
35444   return offset;
35445 }
35446
35447
35448 static const value_string nr_rrc_T_dynamicSwitchRA_Type0_1_PDSCH_vals[] = {
35449   {   0, "supported" },
35450   { 0, NULL }
35451 };
35452
35453
35454 static int
35455 dissect_nr_rrc_T_dynamicSwitchRA_Type0_1_PDSCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35456   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35457                                      1, NULL, FALSE, 0, NULL);
35458
35459   return offset;
35460 }
35461
35462
35463 static const value_string nr_rrc_T_dynamicSwitchRA_Type0_1_PUSCH_vals[] = {
35464   {   0, "supported" },
35465   { 0, NULL }
35466 };
35467
35468
35469 static int
35470 dissect_nr_rrc_T_dynamicSwitchRA_Type0_1_PUSCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35471   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35472                                      1, NULL, FALSE, 0, NULL);
35473
35474   return offset;
35475 }
35476
35477
35478 static const value_string nr_rrc_T_pdsch_MappingTypeA_vals[] = {
35479   {   0, "supported" },
35480   { 0, NULL }
35481 };
35482
35483
35484 static int
35485 dissect_nr_rrc_T_pdsch_MappingTypeA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35486   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35487                                      1, NULL, FALSE, 0, NULL);
35488
35489   return offset;
35490 }
35491
35492
35493 static const value_string nr_rrc_T_pdsch_MappingTypeB_vals[] = {
35494   {   0, "supported" },
35495   { 0, NULL }
35496 };
35497
35498
35499 static int
35500 dissect_nr_rrc_T_pdsch_MappingTypeB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35501   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35502                                      1, NULL, FALSE, 0, NULL);
35503
35504   return offset;
35505 }
35506
35507
35508 static const value_string nr_rrc_T_interleavingVRB_ToPRB_PDSCH_vals[] = {
35509   {   0, "supported" },
35510   { 0, NULL }
35511 };
35512
35513
35514 static int
35515 dissect_nr_rrc_T_interleavingVRB_ToPRB_PDSCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35516   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35517                                      1, NULL, FALSE, 0, NULL);
35518
35519   return offset;
35520 }
35521
35522
35523 static const value_string nr_rrc_T_interSlotFreqHopping_PUSCH_vals[] = {
35524   {   0, "supported" },
35525   { 0, NULL }
35526 };
35527
35528
35529 static int
35530 dissect_nr_rrc_T_interSlotFreqHopping_PUSCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35531   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35532                                      1, NULL, FALSE, 0, NULL);
35533
35534   return offset;
35535 }
35536
35537
35538 static const value_string nr_rrc_T_type1_PUSCH_RepetitionMultiSlots_vals[] = {
35539   {   0, "supported" },
35540   { 0, NULL }
35541 };
35542
35543
35544 static int
35545 dissect_nr_rrc_T_type1_PUSCH_RepetitionMultiSlots(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35546   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35547                                      1, NULL, FALSE, 0, NULL);
35548
35549   return offset;
35550 }
35551
35552
35553 static const value_string nr_rrc_T_type2_PUSCH_RepetitionMultiSlots_vals[] = {
35554   {   0, "supported" },
35555   { 0, NULL }
35556 };
35557
35558
35559 static int
35560 dissect_nr_rrc_T_type2_PUSCH_RepetitionMultiSlots(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35561   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35562                                      1, NULL, FALSE, 0, NULL);
35563
35564   return offset;
35565 }
35566
35567
35568 static const value_string nr_rrc_T_pusch_RepetitionMultiSlots_vals[] = {
35569   {   0, "supported" },
35570   { 0, NULL }
35571 };
35572
35573
35574 static int
35575 dissect_nr_rrc_T_pusch_RepetitionMultiSlots(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35576   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35577                                      1, NULL, FALSE, 0, NULL);
35578
35579   return offset;
35580 }
35581
35582
35583 static const value_string nr_rrc_T_pdsch_RepetitionMultiSlots_vals[] = {
35584   {   0, "supported" },
35585   { 0, NULL }
35586 };
35587
35588
35589 static int
35590 dissect_nr_rrc_T_pdsch_RepetitionMultiSlots(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35591   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35592                                      1, NULL, FALSE, 0, NULL);
35593
35594   return offset;
35595 }
35596
35597
35598 static const value_string nr_rrc_T_downlinkSPS_vals[] = {
35599   {   0, "supported" },
35600   { 0, NULL }
35601 };
35602
35603
35604 static int
35605 dissect_nr_rrc_T_downlinkSPS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35606   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35607                                      1, NULL, FALSE, 0, NULL);
35608
35609   return offset;
35610 }
35611
35612
35613 static const value_string nr_rrc_T_configuredUL_GrantType1_vals[] = {
35614   {   0, "supported" },
35615   { 0, NULL }
35616 };
35617
35618
35619 static int
35620 dissect_nr_rrc_T_configuredUL_GrantType1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35621   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35622                                      1, NULL, FALSE, 0, NULL);
35623
35624   return offset;
35625 }
35626
35627
35628 static const value_string nr_rrc_T_configuredUL_GrantType2_vals[] = {
35629   {   0, "supported" },
35630   { 0, NULL }
35631 };
35632
35633
35634 static int
35635 dissect_nr_rrc_T_configuredUL_GrantType2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35636   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35637                                      1, NULL, FALSE, 0, NULL);
35638
35639   return offset;
35640 }
35641
35642
35643 static const value_string nr_rrc_T_pre_EmptIndication_DL_vals[] = {
35644   {   0, "supported" },
35645   { 0, NULL }
35646 };
35647
35648
35649 static int
35650 dissect_nr_rrc_T_pre_EmptIndication_DL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35651   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35652                                      1, NULL, FALSE, 0, NULL);
35653
35654   return offset;
35655 }
35656
35657
35658 static const value_string nr_rrc_T_cbg_TransIndication_DL_vals[] = {
35659   {   0, "supported" },
35660   { 0, NULL }
35661 };
35662
35663
35664 static int
35665 dissect_nr_rrc_T_cbg_TransIndication_DL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35666   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35667                                      1, NULL, FALSE, 0, NULL);
35668
35669   return offset;
35670 }
35671
35672
35673 static const value_string nr_rrc_T_cbg_TransIndication_UL_vals[] = {
35674   {   0, "supported" },
35675   { 0, NULL }
35676 };
35677
35678
35679 static int
35680 dissect_nr_rrc_T_cbg_TransIndication_UL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35681   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35682                                      1, NULL, FALSE, 0, NULL);
35683
35684   return offset;
35685 }
35686
35687
35688 static const value_string nr_rrc_T_cbg_FlushIndication_DL_vals[] = {
35689   {   0, "supported" },
35690   { 0, NULL }
35691 };
35692
35693
35694 static int
35695 dissect_nr_rrc_T_cbg_FlushIndication_DL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35696   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35697                                      1, NULL, FALSE, 0, NULL);
35698
35699   return offset;
35700 }
35701
35702
35703 static const value_string nr_rrc_T_dynamicHARQ_ACK_CodeB_CBG_Retx_DL_vals[] = {
35704   {   0, "supported" },
35705   { 0, NULL }
35706 };
35707
35708
35709 static int
35710 dissect_nr_rrc_T_dynamicHARQ_ACK_CodeB_CBG_Retx_DL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35711   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35712                                      1, NULL, FALSE, 0, NULL);
35713
35714   return offset;
35715 }
35716
35717
35718 static const value_string nr_rrc_T_rateMatchingResrcSetSemi_Static_vals[] = {
35719   {   0, "supported" },
35720   { 0, NULL }
35721 };
35722
35723
35724 static int
35725 dissect_nr_rrc_T_rateMatchingResrcSetSemi_Static(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35726   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35727                                      1, NULL, FALSE, 0, NULL);
35728
35729   return offset;
35730 }
35731
35732
35733 static const value_string nr_rrc_T_rateMatchingResrcSetDynamic_vals[] = {
35734   {   0, "supported" },
35735   { 0, NULL }
35736 };
35737
35738
35739 static int
35740 dissect_nr_rrc_T_rateMatchingResrcSetDynamic(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35741   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35742                                      1, NULL, FALSE, 0, NULL);
35743
35744   return offset;
35745 }
35746
35747
35748 static const value_string nr_rrc_T_bwp_SwitchingDelay_vals[] = {
35749   {   0, "type1" },
35750   {   1, "type2" },
35751   { 0, NULL }
35752 };
35753
35754
35755 static int
35756 dissect_nr_rrc_T_bwp_SwitchingDelay(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35757   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35758                                      2, NULL, FALSE, 0, NULL);
35759
35760   return offset;
35761 }
35762
35763
35764 static const value_string nr_rrc_T_eutra_RS_SINR_measurement_vals[] = {
35765   {   0, "supported" },
35766   { 0, NULL }
35767 };
35768
35769
35770 static int
35771 dissect_nr_rrc_T_eutra_RS_SINR_measurement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35772   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35773                                      1, NULL, FALSE, 0, NULL);
35774
35775   return offset;
35776 }
35777
35778
35779 static const per_sequence_t Phy_ParametersCommon_eag_1_sequence[] = {
35780   { &hf_nr_rrc_eutra_RS_SINR_measurement, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_eutra_RS_SINR_measurement },
35781   { NULL, 0, 0, NULL }
35782 };
35783
35784 static int
35785 dissect_nr_rrc_Phy_ParametersCommon_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35786   offset = dissect_per_sequence_eag(tvb, offset, actx, tree, Phy_ParametersCommon_eag_1_sequence);
35787
35788   return offset;
35789 }
35790
35791
35792 static const per_sequence_t Phy_ParametersCommon_sequence[] = {
35793   { &hf_nr_rrc_csi_RS_CFRA_ForHO, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_csi_RS_CFRA_ForHO },
35794   { &hf_nr_rrc_dynamicPRB_BundlingDL, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_dynamicPRB_BundlingDL },
35795   { &hf_nr_rrc_sp_CSI_ReportPUCCH, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_sp_CSI_ReportPUCCH },
35796   { &hf_nr_rrc_sp_CSI_ReportPUSCH, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_sp_CSI_ReportPUSCH },
35797   { &hf_nr_rrc_nzp_CSI_RS_IntefMgmt, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_nzp_CSI_RS_IntefMgmt },
35798   { &hf_nr_rrc_type2_SP_CSI_Feedback_LongPUCCH, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_type2_SP_CSI_Feedback_LongPUCCH },
35799   { &hf_nr_rrc_precoderGranularityCORESET, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_precoderGranularityCORESET },
35800   { &hf_nr_rrc_dynamicHARQ_ACK_Codebook, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_dynamicHARQ_ACK_Codebook },
35801   { &hf_nr_rrc_semiStaticHARQ_ACK_Codebook, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_semiStaticHARQ_ACK_Codebook },
35802   { &hf_nr_rrc_spatialBundlingHARQ_ACK, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_spatialBundlingHARQ_ACK },
35803   { &hf_nr_rrc_dynamicBetaOffsetInd_HARQ_ACK_CSI, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_dynamicBetaOffsetInd_HARQ_ACK_CSI },
35804   { &hf_nr_rrc_pucch_Repetition_F1_3_4, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pucch_Repetition_F1_3_4 },
35805   { &hf_nr_rrc_ra_Type0_PUSCH, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_ra_Type0_PUSCH },
35806   { &hf_nr_rrc_dynamicSwitchRA_Type0_1_PDSCH, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_dynamicSwitchRA_Type0_1_PDSCH },
35807   { &hf_nr_rrc_dynamicSwitchRA_Type0_1_PUSCH, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_dynamicSwitchRA_Type0_1_PUSCH },
35808   { &hf_nr_rrc_pdsch_MappingTypeA, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pdsch_MappingTypeA },
35809   { &hf_nr_rrc_pdsch_MappingTypeB, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pdsch_MappingTypeB },
35810   { &hf_nr_rrc_interleavingVRB_ToPRB_PDSCH, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_interleavingVRB_ToPRB_PDSCH },
35811   { &hf_nr_rrc_interSlotFreqHopping_PUSCH, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_interSlotFreqHopping_PUSCH },
35812   { &hf_nr_rrc_type1_PUSCH_RepetitionMultiSlots, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_type1_PUSCH_RepetitionMultiSlots },
35813   { &hf_nr_rrc_type2_PUSCH_RepetitionMultiSlots, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_type2_PUSCH_RepetitionMultiSlots },
35814   { &hf_nr_rrc_pusch_RepetitionMultiSlots, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pusch_RepetitionMultiSlots },
35815   { &hf_nr_rrc_pdsch_RepetitionMultiSlots, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pdsch_RepetitionMultiSlots },
35816   { &hf_nr_rrc_downlinkSPS  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_downlinkSPS },
35817   { &hf_nr_rrc_configuredUL_GrantType1, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_configuredUL_GrantType1 },
35818   { &hf_nr_rrc_configuredUL_GrantType2, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_configuredUL_GrantType2 },
35819   { &hf_nr_rrc_pre_EmptIndication_DL, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pre_EmptIndication_DL },
35820   { &hf_nr_rrc_cbg_TransIndication_DL, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_cbg_TransIndication_DL },
35821   { &hf_nr_rrc_cbg_TransIndication_UL, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_cbg_TransIndication_UL },
35822   { &hf_nr_rrc_cbg_FlushIndication_DL, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_cbg_FlushIndication_DL },
35823   { &hf_nr_rrc_dynamicHARQ_ACK_CodeB_CBG_Retx_DL, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_dynamicHARQ_ACK_CodeB_CBG_Retx_DL },
35824   { &hf_nr_rrc_rateMatchingResrcSetSemi_Static, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_rateMatchingResrcSetSemi_Static },
35825   { &hf_nr_rrc_rateMatchingResrcSetDynamic, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_rateMatchingResrcSetDynamic },
35826   { &hf_nr_rrc_bwp_SwitchingDelay, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_bwp_SwitchingDelay },
35827   { &dummy_hf_nr_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_nr_rrc_Phy_ParametersCommon_eag_1 },
35828   { NULL, 0, 0, NULL }
35829 };
35830
35831 static int
35832 dissect_nr_rrc_Phy_ParametersCommon(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35833   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
35834                                    ett_nr_rrc_Phy_ParametersCommon, Phy_ParametersCommon_sequence);
35835
35836   return offset;
35837 }
35838
35839
35840 static const value_string nr_rrc_T_dynamicSFI_vals[] = {
35841   {   0, "supported" },
35842   { 0, NULL }
35843 };
35844
35845
35846 static int
35847 dissect_nr_rrc_T_dynamicSFI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35848   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35849                                      1, NULL, FALSE, 0, NULL);
35850
35851   return offset;
35852 }
35853
35854
35855 static const value_string nr_rrc_T_twoPUCCH_F0_2_ConsecSymbols_vals[] = {
35856   {   0, "supported" },
35857   { 0, NULL }
35858 };
35859
35860
35861 static int
35862 dissect_nr_rrc_T_twoPUCCH_F0_2_ConsecSymbols(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35863   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35864                                      1, NULL, FALSE, 0, NULL);
35865
35866   return offset;
35867 }
35868
35869
35870 static const value_string nr_rrc_T_twoDifferentTPC_Loop_PUSCH_vals[] = {
35871   {   0, "supported" },
35872   { 0, NULL }
35873 };
35874
35875
35876 static int
35877 dissect_nr_rrc_T_twoDifferentTPC_Loop_PUSCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35878   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35879                                      1, NULL, FALSE, 0, NULL);
35880
35881   return offset;
35882 }
35883
35884
35885 static const value_string nr_rrc_T_twoDifferentTPC_Loop_PUCCH_vals[] = {
35886   {   0, "supported" },
35887   { 0, NULL }
35888 };
35889
35890
35891 static int
35892 dissect_nr_rrc_T_twoDifferentTPC_Loop_PUCCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35893   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35894                                      1, NULL, FALSE, 0, NULL);
35895
35896   return offset;
35897 }
35898
35899
35900 static const per_sequence_t Phy_ParametersXDD_Diff_sequence[] = {
35901   { &hf_nr_rrc_dynamicSFI   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_dynamicSFI },
35902   { &hf_nr_rrc_twoPUCCH_F0_2_ConsecSymbols, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_twoPUCCH_F0_2_ConsecSymbols },
35903   { &hf_nr_rrc_twoDifferentTPC_Loop_PUSCH, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_twoDifferentTPC_Loop_PUSCH },
35904   { &hf_nr_rrc_twoDifferentTPC_Loop_PUCCH, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_twoDifferentTPC_Loop_PUCCH },
35905   { NULL, 0, 0, NULL }
35906 };
35907
35908 static int
35909 dissect_nr_rrc_Phy_ParametersXDD_Diff(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35910   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
35911                                    ett_nr_rrc_Phy_ParametersXDD_Diff, Phy_ParametersXDD_Diff_sequence);
35912
35913   return offset;
35914 }
35915
35916
35917 static const value_string nr_rrc_T_dynamicSFI_01_vals[] = {
35918   {   0, "supported" },
35919   { 0, NULL }
35920 };
35921
35922
35923 static int
35924 dissect_nr_rrc_T_dynamicSFI_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35925   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35926                                      1, NULL, FALSE, 0, NULL);
35927
35928   return offset;
35929 }
35930
35931
35932 static const value_string nr_rrc_T_supportedDMRS_TypeDL_vals[] = {
35933   {   0, "type1" },
35934   {   1, "type1And2" },
35935   { 0, NULL }
35936 };
35937
35938
35939 static int
35940 dissect_nr_rrc_T_supportedDMRS_TypeDL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35941   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35942                                      2, NULL, FALSE, 0, NULL);
35943
35944   return offset;
35945 }
35946
35947
35948 static const value_string nr_rrc_T_supportedDMRS_TypeUL_vals[] = {
35949   {   0, "type1" },
35950   {   1, "type1And2" },
35951   { 0, NULL }
35952 };
35953
35954
35955 static int
35956 dissect_nr_rrc_T_supportedDMRS_TypeUL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35957   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35958                                      2, NULL, FALSE, 0, NULL);
35959
35960   return offset;
35961 }
35962
35963
35964 static const value_string nr_rrc_T_semiOpenLoopCSI_vals[] = {
35965   {   0, "supported" },
35966   { 0, NULL }
35967 };
35968
35969
35970 static int
35971 dissect_nr_rrc_T_semiOpenLoopCSI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35972   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35973                                      1, NULL, FALSE, 0, NULL);
35974
35975   return offset;
35976 }
35977
35978
35979 static const value_string nr_rrc_T_csi_ReportWithoutPMI_vals[] = {
35980   {   0, "supported" },
35981   { 0, NULL }
35982 };
35983
35984
35985 static int
35986 dissect_nr_rrc_T_csi_ReportWithoutPMI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
35987   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
35988                                      1, NULL, FALSE, 0, NULL);
35989
35990   return offset;
35991 }
35992
35993
35994 static const value_string nr_rrc_T_csi_ReportWithoutCQI_vals[] = {
35995   {   0, "supported" },
35996   { 0, NULL }
35997 };
35998
35999
36000 static int
36001 dissect_nr_rrc_T_csi_ReportWithoutCQI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36002   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36003                                      1, NULL, FALSE, 0, NULL);
36004
36005   return offset;
36006 }
36007
36008
36009 static const value_string nr_rrc_T_twoPUCCH_F0_2_ConsecSymbols_01_vals[] = {
36010   {   0, "supported" },
36011   { 0, NULL }
36012 };
36013
36014
36015 static int
36016 dissect_nr_rrc_T_twoPUCCH_F0_2_ConsecSymbols_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36017   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36018                                      1, NULL, FALSE, 0, NULL);
36019
36020   return offset;
36021 }
36022
36023
36024 static const value_string nr_rrc_T_pucch_F2_WithFH_vals[] = {
36025   {   0, "supported" },
36026   { 0, NULL }
36027 };
36028
36029
36030 static int
36031 dissect_nr_rrc_T_pucch_F2_WithFH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36032   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36033                                      1, NULL, FALSE, 0, NULL);
36034
36035   return offset;
36036 }
36037
36038
36039 static const value_string nr_rrc_T_pucch_F3_WithFH_vals[] = {
36040   {   0, "supported" },
36041   { 0, NULL }
36042 };
36043
36044
36045 static int
36046 dissect_nr_rrc_T_pucch_F3_WithFH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36047   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36048                                      1, NULL, FALSE, 0, NULL);
36049
36050   return offset;
36051 }
36052
36053
36054 static const value_string nr_rrc_T_pucch_F4_WithFH_vals[] = {
36055   {   0, "supported" },
36056   { 0, NULL }
36057 };
36058
36059
36060 static int
36061 dissect_nr_rrc_T_pucch_F4_WithFH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36062   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36063                                      1, NULL, FALSE, 0, NULL);
36064
36065   return offset;
36066 }
36067
36068
36069 static const value_string nr_rrc_T_freqHoppingPUCCH_F0_2_vals[] = {
36070   {   0, "notSupported" },
36071   { 0, NULL }
36072 };
36073
36074
36075 static int
36076 dissect_nr_rrc_T_freqHoppingPUCCH_F0_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36077   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36078                                      1, NULL, FALSE, 0, NULL);
36079
36080   return offset;
36081 }
36082
36083
36084 static const value_string nr_rrc_T_freqHoppingPUCCH_F1_3_4_vals[] = {
36085   {   0, "notSupported" },
36086   { 0, NULL }
36087 };
36088
36089
36090 static int
36091 dissect_nr_rrc_T_freqHoppingPUCCH_F1_3_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36092   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36093                                      1, NULL, FALSE, 0, NULL);
36094
36095   return offset;
36096 }
36097
36098
36099 static const value_string nr_rrc_T_mux_SR_HARQ_ACK_CSI_PUCCH_vals[] = {
36100   {   0, "supported" },
36101   { 0, NULL }
36102 };
36103
36104
36105 static int
36106 dissect_nr_rrc_T_mux_SR_HARQ_ACK_CSI_PUCCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36107   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36108                                      1, NULL, FALSE, 0, NULL);
36109
36110   return offset;
36111 }
36112
36113
36114 static const value_string nr_rrc_T_uci_CodeBlockSegmentation_vals[] = {
36115   {   0, "supported" },
36116   { 0, NULL }
36117 };
36118
36119
36120 static int
36121 dissect_nr_rrc_T_uci_CodeBlockSegmentation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36122   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36123                                      1, NULL, FALSE, 0, NULL);
36124
36125   return offset;
36126 }
36127
36128
36129 static const value_string nr_rrc_T_onePUCCH_LongAndShortFormat_vals[] = {
36130   {   0, "supported" },
36131   { 0, NULL }
36132 };
36133
36134
36135 static int
36136 dissect_nr_rrc_T_onePUCCH_LongAndShortFormat(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36137   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36138                                      1, NULL, FALSE, 0, NULL);
36139
36140   return offset;
36141 }
36142
36143
36144 static const value_string nr_rrc_T_twoPUCCH_AnyOthersInSlot_vals[] = {
36145   {   0, "supported" },
36146   { 0, NULL }
36147 };
36148
36149
36150 static int
36151 dissect_nr_rrc_T_twoPUCCH_AnyOthersInSlot(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36152   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36153                                      1, NULL, FALSE, 0, NULL);
36154
36155   return offset;
36156 }
36157
36158
36159 static const value_string nr_rrc_T_intraSlotFreqHopping_PUSCH_vals[] = {
36160   {   0, "supported" },
36161   { 0, NULL }
36162 };
36163
36164
36165 static int
36166 dissect_nr_rrc_T_intraSlotFreqHopping_PUSCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36167   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36168                                      1, NULL, FALSE, 0, NULL);
36169
36170   return offset;
36171 }
36172
36173
36174 static const value_string nr_rrc_T_pusch_LBRM_vals[] = {
36175   {   0, "supported" },
36176   { 0, NULL }
36177 };
36178
36179
36180 static int
36181 dissect_nr_rrc_T_pusch_LBRM(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36182   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36183                                      1, NULL, FALSE, 0, NULL);
36184
36185   return offset;
36186 }
36187
36188
36189
36190 static int
36191 dissect_nr_rrc_INTEGER_4_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36192   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
36193                                                             4U, 16U, NULL, FALSE);
36194
36195   return offset;
36196 }
36197
36198
36199 static const value_string nr_rrc_T_tpc_PUSCH_RNTI_vals[] = {
36200   {   0, "supported" },
36201   { 0, NULL }
36202 };
36203
36204
36205 static int
36206 dissect_nr_rrc_T_tpc_PUSCH_RNTI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36207   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36208                                      1, NULL, FALSE, 0, NULL);
36209
36210   return offset;
36211 }
36212
36213
36214 static const value_string nr_rrc_T_tpc_PUCCH_RNTI_vals[] = {
36215   {   0, "supported" },
36216   { 0, NULL }
36217 };
36218
36219
36220 static int
36221 dissect_nr_rrc_T_tpc_PUCCH_RNTI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36222   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36223                                      1, NULL, FALSE, 0, NULL);
36224
36225   return offset;
36226 }
36227
36228
36229 static const value_string nr_rrc_T_tpc_SRS_RNTI_vals[] = {
36230   {   0, "supported" },
36231   { 0, NULL }
36232 };
36233
36234
36235 static int
36236 dissect_nr_rrc_T_tpc_SRS_RNTI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36237   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36238                                      1, NULL, FALSE, 0, NULL);
36239
36240   return offset;
36241 }
36242
36243
36244 static const value_string nr_rrc_T_absoluteTPC_Command_vals[] = {
36245   {   0, "supported" },
36246   { 0, NULL }
36247 };
36248
36249
36250 static int
36251 dissect_nr_rrc_T_absoluteTPC_Command(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36252   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36253                                      1, NULL, FALSE, 0, NULL);
36254
36255   return offset;
36256 }
36257
36258
36259 static const value_string nr_rrc_T_twoDifferentTPC_Loop_PUSCH_01_vals[] = {
36260   {   0, "supported" },
36261   { 0, NULL }
36262 };
36263
36264
36265 static int
36266 dissect_nr_rrc_T_twoDifferentTPC_Loop_PUSCH_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36267   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36268                                      1, NULL, FALSE, 0, NULL);
36269
36270   return offset;
36271 }
36272
36273
36274 static const value_string nr_rrc_T_twoDifferentTPC_Loop_PUCCH_01_vals[] = {
36275   {   0, "supported" },
36276   { 0, NULL }
36277 };
36278
36279
36280 static int
36281 dissect_nr_rrc_T_twoDifferentTPC_Loop_PUCCH_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36282   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36283                                      1, NULL, FALSE, 0, NULL);
36284
36285   return offset;
36286 }
36287
36288
36289 static const value_string nr_rrc_T_pusch_HalfPi_BPSK_vals[] = {
36290   {   0, "supported" },
36291   { 0, NULL }
36292 };
36293
36294
36295 static int
36296 dissect_nr_rrc_T_pusch_HalfPi_BPSK(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36297   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36298                                      1, NULL, FALSE, 0, NULL);
36299
36300   return offset;
36301 }
36302
36303
36304 static const value_string nr_rrc_T_pucch_F3_4_HalfPi_BPSK_vals[] = {
36305   {   0, "supported" },
36306   { 0, NULL }
36307 };
36308
36309
36310 static int
36311 dissect_nr_rrc_T_pucch_F3_4_HalfPi_BPSK(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36312   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36313                                      1, NULL, FALSE, 0, NULL);
36314
36315   return offset;
36316 }
36317
36318
36319 static const value_string nr_rrc_T_almostContiguousCP_OFDM_UL_vals[] = {
36320   {   0, "supported" },
36321   { 0, NULL }
36322 };
36323
36324
36325 static int
36326 dissect_nr_rrc_T_almostContiguousCP_OFDM_UL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36327   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36328                                      1, NULL, FALSE, 0, NULL);
36329
36330   return offset;
36331 }
36332
36333
36334 static const value_string nr_rrc_T_sp_CSI_RS_vals[] = {
36335   {   0, "supported" },
36336   { 0, NULL }
36337 };
36338
36339
36340 static int
36341 dissect_nr_rrc_T_sp_CSI_RS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36342   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36343                                      1, NULL, FALSE, 0, NULL);
36344
36345   return offset;
36346 }
36347
36348
36349 static const value_string nr_rrc_T_sp_CSI_IM_vals[] = {
36350   {   0, "supported" },
36351   { 0, NULL }
36352 };
36353
36354
36355 static int
36356 dissect_nr_rrc_T_sp_CSI_IM(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36357   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36358                                      1, NULL, FALSE, 0, NULL);
36359
36360   return offset;
36361 }
36362
36363
36364 static const value_string nr_rrc_T_tdd_MultiDL_UL_SwitchPerSlot_vals[] = {
36365   {   0, "supported" },
36366   { 0, NULL }
36367 };
36368
36369
36370 static int
36371 dissect_nr_rrc_T_tdd_MultiDL_UL_SwitchPerSlot(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36372   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36373                                      1, NULL, FALSE, 0, NULL);
36374
36375   return offset;
36376 }
36377
36378
36379 static const value_string nr_rrc_T_multipleCORESET_vals[] = {
36380   {   0, "supported" },
36381   { 0, NULL }
36382 };
36383
36384
36385 static int
36386 dissect_nr_rrc_T_multipleCORESET(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36387   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36388                                      1, NULL, FALSE, 0, NULL);
36389
36390   return offset;
36391 }
36392
36393
36394 static const per_sequence_t Phy_ParametersFRX_Diff_sequence[] = {
36395   { &hf_nr_rrc_dynamicSFI_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_dynamicSFI_01 },
36396   { &hf_nr_rrc_oneFL_DMRS_TwoAdditionalDMRS, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_BIT_STRING_SIZE_2 },
36397   { &hf_nr_rrc_twoFL_DMRS   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_BIT_STRING_SIZE_2 },
36398   { &hf_nr_rrc_twoFL_DMRS_TwoAdditionalDMRS, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_BIT_STRING_SIZE_2 },
36399   { &hf_nr_rrc_oneFL_DMRS_ThreeAdditionalDMRS, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_BIT_STRING_SIZE_2 },
36400   { &hf_nr_rrc_supportedDMRS_TypeDL, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_supportedDMRS_TypeDL },
36401   { &hf_nr_rrc_supportedDMRS_TypeUL, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_supportedDMRS_TypeUL },
36402   { &hf_nr_rrc_semiOpenLoopCSI, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_semiOpenLoopCSI },
36403   { &hf_nr_rrc_csi_ReportWithoutPMI, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_csi_ReportWithoutPMI },
36404   { &hf_nr_rrc_csi_ReportWithoutCQI, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_csi_ReportWithoutCQI },
36405   { &hf_nr_rrc_onePortsPTRS , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_BIT_STRING_SIZE_2 },
36406   { &hf_nr_rrc_twoPUCCH_F0_2_ConsecSymbols_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_twoPUCCH_F0_2_ConsecSymbols_01 },
36407   { &hf_nr_rrc_pucch_F2_WithFH, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pucch_F2_WithFH },
36408   { &hf_nr_rrc_pucch_F3_WithFH, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pucch_F3_WithFH },
36409   { &hf_nr_rrc_pucch_F4_WithFH, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pucch_F4_WithFH },
36410   { &hf_nr_rrc_freqHoppingPUCCH_F0_2, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_freqHoppingPUCCH_F0_2 },
36411   { &hf_nr_rrc_freqHoppingPUCCH_F1_3_4, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_freqHoppingPUCCH_F1_3_4 },
36412   { &hf_nr_rrc_mux_SR_HARQ_ACK_CSI_PUCCH, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_mux_SR_HARQ_ACK_CSI_PUCCH },
36413   { &hf_nr_rrc_uci_CodeBlockSegmentation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_uci_CodeBlockSegmentation },
36414   { &hf_nr_rrc_onePUCCH_LongAndShortFormat, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_onePUCCH_LongAndShortFormat },
36415   { &hf_nr_rrc_twoPUCCH_AnyOthersInSlot, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_twoPUCCH_AnyOthersInSlot },
36416   { &hf_nr_rrc_intraSlotFreqHopping_PUSCH, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_intraSlotFreqHopping_PUSCH },
36417   { &hf_nr_rrc_pusch_LBRM   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pusch_LBRM },
36418   { &hf_nr_rrc_pdcch_BlindDetectionCA, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_INTEGER_4_16 },
36419   { &hf_nr_rrc_tpc_PUSCH_RNTI_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_tpc_PUSCH_RNTI },
36420   { &hf_nr_rrc_tpc_PUCCH_RNTI_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_tpc_PUCCH_RNTI },
36421   { &hf_nr_rrc_tpc_SRS_RNTI_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_tpc_SRS_RNTI },
36422   { &hf_nr_rrc_absoluteTPC_Command, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_absoluteTPC_Command },
36423   { &hf_nr_rrc_twoDifferentTPC_Loop_PUSCH_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_twoDifferentTPC_Loop_PUSCH_01 },
36424   { &hf_nr_rrc_twoDifferentTPC_Loop_PUCCH_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_twoDifferentTPC_Loop_PUCCH_01 },
36425   { &hf_nr_rrc_pusch_HalfPi_BPSK, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pusch_HalfPi_BPSK },
36426   { &hf_nr_rrc_pucch_F3_4_HalfPi_BPSK, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pucch_F3_4_HalfPi_BPSK },
36427   { &hf_nr_rrc_almostContiguousCP_OFDM_UL, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_almostContiguousCP_OFDM_UL },
36428   { &hf_nr_rrc_sp_CSI_RS    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_sp_CSI_RS },
36429   { &hf_nr_rrc_sp_CSI_IM    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_sp_CSI_IM },
36430   { &hf_nr_rrc_tdd_MultiDL_UL_SwitchPerSlot, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_tdd_MultiDL_UL_SwitchPerSlot },
36431   { &hf_nr_rrc_multipleCORESET, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_multipleCORESET },
36432   { NULL, 0, 0, NULL }
36433 };
36434
36435 static int
36436 dissect_nr_rrc_Phy_ParametersFRX_Diff(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36437   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
36438                                    ett_nr_rrc_Phy_ParametersFRX_Diff, Phy_ParametersFRX_Diff_sequence);
36439
36440   return offset;
36441 }
36442
36443
36444 static const value_string nr_rrc_T_pdcchMonitoringSingleOccasion_vals[] = {
36445   {   0, "supported" },
36446   { 0, NULL }
36447 };
36448
36449
36450 static int
36451 dissect_nr_rrc_T_pdcchMonitoringSingleOccasion(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36452   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36453                                      1, NULL, FALSE, 0, NULL);
36454
36455   return offset;
36456 }
36457
36458
36459 static const value_string nr_rrc_T_scs_60kHz_05_vals[] = {
36460   {   0, "supported" },
36461   { 0, NULL }
36462 };
36463
36464
36465 static int
36466 dissect_nr_rrc_T_scs_60kHz_05(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36467   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36468                                      1, NULL, FALSE, 0, NULL);
36469
36470   return offset;
36471 }
36472
36473
36474 static const value_string nr_rrc_T_pdsch_256QAM_FR1_vals[] = {
36475   {   0, "supported" },
36476   { 0, NULL }
36477 };
36478
36479
36480 static int
36481 dissect_nr_rrc_T_pdsch_256QAM_FR1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36482   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36483                                      1, NULL, FALSE, 0, NULL);
36484
36485   return offset;
36486 }
36487
36488
36489 static const value_string nr_rrc_T_pdsch_RE_MappingFR1_vals[] = {
36490   {   0, "n10" },
36491   {   1, "n20" },
36492   { 0, NULL }
36493 };
36494
36495
36496 static int
36497 dissect_nr_rrc_T_pdsch_RE_MappingFR1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36498   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36499                                      2, NULL, FALSE, 0, NULL);
36500
36501   return offset;
36502 }
36503
36504
36505 static const per_sequence_t Phy_ParametersFR1_sequence[] = {
36506   { &hf_nr_rrc_pdcchMonitoringSingleOccasion, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pdcchMonitoringSingleOccasion },
36507   { &hf_nr_rrc_scs_60kHz_07 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_scs_60kHz_05 },
36508   { &hf_nr_rrc_pdsch_256QAM_FR1, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pdsch_256QAM_FR1 },
36509   { &hf_nr_rrc_pdsch_RE_MappingFR1, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pdsch_RE_MappingFR1 },
36510   { NULL, 0, 0, NULL }
36511 };
36512
36513 static int
36514 dissect_nr_rrc_Phy_ParametersFR1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36515   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
36516                                    ett_nr_rrc_Phy_ParametersFR1, Phy_ParametersFR1_sequence);
36517
36518   return offset;
36519 }
36520
36521
36522 static const value_string nr_rrc_T_calibrationGapPA_vals[] = {
36523   {   0, "supported" },
36524   { 0, NULL }
36525 };
36526
36527
36528 static int
36529 dissect_nr_rrc_T_calibrationGapPA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36530   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36531                                      1, NULL, FALSE, 0, NULL);
36532
36533   return offset;
36534 }
36535
36536
36537 static const value_string nr_rrc_T_pdsch_RE_MappingFR2_vals[] = {
36538   {   0, "n6" },
36539   {   1, "n20" },
36540   { 0, NULL }
36541 };
36542
36543
36544 static int
36545 dissect_nr_rrc_T_pdsch_RE_MappingFR2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36546   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36547                                      2, NULL, FALSE, 0, NULL);
36548
36549   return offset;
36550 }
36551
36552
36553 static const per_sequence_t Phy_ParametersFR2_sequence[] = {
36554   { &hf_nr_rrc_calibrationGapPA, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_calibrationGapPA },
36555   { &hf_nr_rrc_pdsch_RE_MappingFR2, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pdsch_RE_MappingFR2 },
36556   { NULL, 0, 0, NULL }
36557 };
36558
36559 static int
36560 dissect_nr_rrc_Phy_ParametersFR2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36561   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
36562                                    ett_nr_rrc_Phy_ParametersFR2, Phy_ParametersFR2_sequence);
36563
36564   return offset;
36565 }
36566
36567
36568 static const per_sequence_t Phy_Parameters_sequence[] = {
36569   { &hf_nr_rrc_phy_ParametersCommon, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_Phy_ParametersCommon },
36570   { &hf_nr_rrc_phy_ParametersXDD_Diff, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_Phy_ParametersXDD_Diff },
36571   { &hf_nr_rrc_phy_ParametersFRX_Diff, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_Phy_ParametersFRX_Diff },
36572   { &hf_nr_rrc_phy_ParametersFR1, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_Phy_ParametersFR1 },
36573   { &hf_nr_rrc_phy_ParametersFR2, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_Phy_ParametersFR2 },
36574   { NULL, 0, 0, NULL }
36575 };
36576
36577 static int
36578 dissect_nr_rrc_Phy_Parameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36579   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
36580                                    ett_nr_rrc_Phy_Parameters, Phy_Parameters_sequence);
36581
36582   return offset;
36583 }
36584
36585
36586
36587 static int
36588 dissect_nr_rrc_INTEGER_1_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36589   offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
36590                                                             1U, 5U, NULL, FALSE);
36591
36592   return offset;
36593 }
36594
36595
36596 static const value_string nr_rrc_T_numberOfAggregatedPRB_vals[] = {
36597   {   0, "n50" },
36598   {   1, "n75" },
36599   {   2, "n100" },
36600   {   3, "n125" },
36601   {   4, "n150" },
36602   {   5, "n175" },
36603   {   6, "n200" },
36604   {   7, "n225" },
36605   {   8, "n250" },
36606   {   9, "n275" },
36607   {  10, "n300" },
36608   {  11, "n350" },
36609   {  12, "n400" },
36610   {  13, "n450" },
36611   {  14, "n500" },
36612   {  15, "spare" },
36613   { 0, NULL }
36614 };
36615
36616
36617 static int
36618 dissect_nr_rrc_T_numberOfAggregatedPRB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36619   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36620                                      16, NULL, FALSE, 0, NULL);
36621
36622   return offset;
36623 }
36624
36625
36626 static const per_sequence_t NAICS_Capability_Entry_sequence[] = {
36627   { &hf_nr_rrc_numberOfNAICS_CapableCC, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_INTEGER_1_5 },
36628   { &hf_nr_rrc_numberOfAggregatedPRB, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_T_numberOfAggregatedPRB },
36629   { NULL, 0, 0, NULL }
36630 };
36631
36632 static int
36633 dissect_nr_rrc_NAICS_Capability_Entry(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36634   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
36635                                    ett_nr_rrc_NAICS_Capability_Entry, NAICS_Capability_Entry_sequence);
36636
36637   return offset;
36638 }
36639
36640
36641 static const per_sequence_t SEQUENCE_SIZE_1_maxNrofNAICS_Entries_OF_NAICS_Capability_Entry_sequence_of[1] = {
36642   { &hf_nr_rrc_naics_Capability_List_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_NAICS_Capability_Entry },
36643 };
36644
36645 static int
36646 dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofNAICS_Entries_OF_NAICS_Capability_Entry(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36647   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
36648                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofNAICS_Entries_OF_NAICS_Capability_Entry, SEQUENCE_SIZE_1_maxNrofNAICS_Entries_OF_NAICS_Capability_Entry_sequence_of,
36649                                                   1, maxNrofNAICS_Entries, FALSE);
36650
36651   return offset;
36652 }
36653
36654
36655 static const per_sequence_t Phy_ParametersMRDC_sequence[] = {
36656   { &hf_nr_rrc_naics_Capability_List, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxNrofNAICS_Entries_OF_NAICS_Capability_Entry },
36657   { NULL, 0, 0, NULL }
36658 };
36659
36660 static int
36661 dissect_nr_rrc_Phy_ParametersMRDC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36662   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
36663                                    ett_nr_rrc_Phy_ParametersMRDC, Phy_ParametersMRDC_sequence);
36664
36665   return offset;
36666 }
36667
36668
36669 static const value_string nr_rrc_T_extendedCP_vals[] = {
36670   {   0, "supported" },
36671   { 0, NULL }
36672 };
36673
36674
36675 static int
36676 dissect_nr_rrc_T_extendedCP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36677   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36678                                      1, NULL, FALSE, 0, NULL);
36679
36680   return offset;
36681 }
36682
36683
36684 static const value_string nr_rrc_T_multipleTCI_vals[] = {
36685   {   0, "supported" },
36686   { 0, NULL }
36687 };
36688
36689
36690 static int
36691 dissect_nr_rrc_T_multipleTCI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36692   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36693                                      1, NULL, FALSE, 0, NULL);
36694
36695   return offset;
36696 }
36697
36698
36699 static const value_string nr_rrc_T_bwp_WithoutRestriction_vals[] = {
36700   {   0, "supported" },
36701   { 0, NULL }
36702 };
36703
36704
36705 static int
36706 dissect_nr_rrc_T_bwp_WithoutRestriction(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36707   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36708                                      1, NULL, FALSE, 0, NULL);
36709
36710   return offset;
36711 }
36712
36713
36714 static const value_string nr_rrc_T_bwp_SameNumerology_vals[] = {
36715   {   0, "upto2" },
36716   {   1, "upto4" },
36717   { 0, NULL }
36718 };
36719
36720
36721 static int
36722 dissect_nr_rrc_T_bwp_SameNumerology(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36723   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36724                                      2, NULL, FALSE, 0, NULL);
36725
36726   return offset;
36727 }
36728
36729
36730 static const value_string nr_rrc_T_bwp_DiffNumerology_vals[] = {
36731   {   0, "upto4" },
36732   { 0, NULL }
36733 };
36734
36735
36736 static int
36737 dissect_nr_rrc_T_bwp_DiffNumerology(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36738   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36739                                      1, NULL, FALSE, 0, NULL);
36740
36741   return offset;
36742 }
36743
36744
36745 static const value_string nr_rrc_T_crossCarrierScheduling_SameSCS_vals[] = {
36746   {   0, "supported" },
36747   { 0, NULL }
36748 };
36749
36750
36751 static int
36752 dissect_nr_rrc_T_crossCarrierScheduling_SameSCS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36753   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36754                                      1, NULL, FALSE, 0, NULL);
36755
36756   return offset;
36757 }
36758
36759
36760 static const value_string nr_rrc_T_pdsch_256QAM_FR2_vals[] = {
36761   {   0, "supported" },
36762   { 0, NULL }
36763 };
36764
36765
36766 static int
36767 dissect_nr_rrc_T_pdsch_256QAM_FR2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36768   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36769                                      1, NULL, FALSE, 0, NULL);
36770
36771   return offset;
36772 }
36773
36774
36775 static const value_string nr_rrc_T_pusch_256QAM_vals[] = {
36776   {   0, "supported" },
36777   { 0, NULL }
36778 };
36779
36780
36781 static int
36782 dissect_nr_rrc_T_pusch_256QAM(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36783   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36784                                      1, NULL, FALSE, 0, NULL);
36785
36786   return offset;
36787 }
36788
36789
36790 static const value_string nr_rrc_T_ue_PowerClass_vals[] = {
36791   {   0, "pc1" },
36792   {   1, "pc2" },
36793   {   2, "pc3" },
36794   {   3, "pc4" },
36795   { 0, NULL }
36796 };
36797
36798
36799 static int
36800 dissect_nr_rrc_T_ue_PowerClass(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36801   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36802                                      4, NULL, FALSE, 0, NULL);
36803
36804   return offset;
36805 }
36806
36807
36808 static const value_string nr_rrc_T_rateMatchingLTE_CRS_vals[] = {
36809   {   0, "supported" },
36810   { 0, NULL }
36811 };
36812
36813
36814 static int
36815 dissect_nr_rrc_T_rateMatchingLTE_CRS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36816   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36817                                      1, NULL, FALSE, 0, NULL);
36818
36819   return offset;
36820 }
36821
36822
36823 static const per_sequence_t T_fr1_sequence[] = {
36824   { &hf_nr_rrc_scs_15kHz_06 , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_BIT_STRING_SIZE_10 },
36825   { &hf_nr_rrc_scs_30kHz_06 , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_BIT_STRING_SIZE_10 },
36826   { &hf_nr_rrc_scs_60kHz_08 , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_BIT_STRING_SIZE_10 },
36827   { NULL, 0, 0, NULL }
36828 };
36829
36830 static int
36831 dissect_nr_rrc_T_fr1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36832   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
36833                                    ett_nr_rrc_T_fr1, T_fr1_sequence);
36834
36835   return offset;
36836 }
36837
36838
36839 static const per_sequence_t T_fr2_sequence[] = {
36840   { &hf_nr_rrc_scs_60kHz_09 , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_BIT_STRING_SIZE_3 },
36841   { &hf_nr_rrc_scs_120kHz_06, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_BIT_STRING_SIZE_3 },
36842   { NULL, 0, 0, NULL }
36843 };
36844
36845 static int
36846 dissect_nr_rrc_T_fr2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36847   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
36848                                    ett_nr_rrc_T_fr2, T_fr2_sequence);
36849
36850   return offset;
36851 }
36852
36853
36854 static const value_string nr_rrc_T_channelBWs_DL_v1530_vals[] = {
36855   {   0, "fr1" },
36856   {   1, "fr2" },
36857   { 0, NULL }
36858 };
36859
36860 static const per_choice_t T_channelBWs_DL_v1530_choice[] = {
36861   {   0, &hf_nr_rrc_fr1          , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_fr1 },
36862   {   1, &hf_nr_rrc_fr2          , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_fr2 },
36863   { 0, NULL, 0, NULL }
36864 };
36865
36866 static int
36867 dissect_nr_rrc_T_channelBWs_DL_v1530(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36868   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
36869                                  ett_nr_rrc_T_channelBWs_DL_v1530, T_channelBWs_DL_v1530_choice,
36870                                  NULL);
36871
36872   return offset;
36873 }
36874
36875
36876 static const per_sequence_t T_fr1_01_sequence[] = {
36877   { &hf_nr_rrc_scs_15kHz_06 , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_BIT_STRING_SIZE_10 },
36878   { &hf_nr_rrc_scs_30kHz_06 , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_BIT_STRING_SIZE_10 },
36879   { &hf_nr_rrc_scs_60kHz_08 , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_BIT_STRING_SIZE_10 },
36880   { NULL, 0, 0, NULL }
36881 };
36882
36883 static int
36884 dissect_nr_rrc_T_fr1_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36885   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
36886                                    ett_nr_rrc_T_fr1_01, T_fr1_01_sequence);
36887
36888   return offset;
36889 }
36890
36891
36892 static const per_sequence_t T_fr2_01_sequence[] = {
36893   { &hf_nr_rrc_scs_60kHz_09 , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_BIT_STRING_SIZE_3 },
36894   { &hf_nr_rrc_scs_120kHz_06, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_BIT_STRING_SIZE_3 },
36895   { NULL, 0, 0, NULL }
36896 };
36897
36898 static int
36899 dissect_nr_rrc_T_fr2_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36900   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
36901                                    ett_nr_rrc_T_fr2_01, T_fr2_01_sequence);
36902
36903   return offset;
36904 }
36905
36906
36907 static const value_string nr_rrc_T_channelBWs_UL_v1530_vals[] = {
36908   {   0, "fr1" },
36909   {   1, "fr2" },
36910   { 0, NULL }
36911 };
36912
36913 static const per_choice_t T_channelBWs_UL_v1530_choice[] = {
36914   {   0, &hf_nr_rrc_fr1_01       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_fr1_01 },
36915   {   1, &hf_nr_rrc_fr2_01       , ASN1_NO_EXTENSIONS     , dissect_nr_rrc_T_fr2_01 },
36916   { 0, NULL, 0, NULL }
36917 };
36918
36919 static int
36920 dissect_nr_rrc_T_channelBWs_UL_v1530(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36921   offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
36922                                  ett_nr_rrc_T_channelBWs_UL_v1530, T_channelBWs_UL_v1530_choice,
36923                                  NULL);
36924
36925   return offset;
36926 }
36927
36928
36929 static const value_string nr_rrc_T_maxUplinkDutyCycle_vals[] = {
36930   {   0, "n60" },
36931   {   1, "n70" },
36932   {   2, "n80" },
36933   {   3, "n90" },
36934   {   4, "n100" },
36935   { 0, NULL }
36936 };
36937
36938
36939 static int
36940 dissect_nr_rrc_T_maxUplinkDutyCycle(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36941   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36942                                      5, NULL, FALSE, 0, NULL);
36943
36944   return offset;
36945 }
36946
36947
36948 static const per_sequence_t BandNR_eag_1_sequence[] = {
36949   { &hf_nr_rrc_maxUplinkDutyCycle, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_maxUplinkDutyCycle },
36950   { NULL, 0, 0, NULL }
36951 };
36952
36953 static int
36954 dissect_nr_rrc_BandNR_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36955   offset = dissect_per_sequence_eag(tvb, offset, actx, tree, BandNR_eag_1_sequence);
36956
36957   return offset;
36958 }
36959
36960
36961 static const per_sequence_t BandNR_sequence[] = {
36962   { &hf_nr_rrc_bandNR       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FreqBandIndicatorNR },
36963   { &hf_nr_rrc_modifiedMPR_Behaviour, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_BIT_STRING_SIZE_8 },
36964   { &hf_nr_rrc_mimo_ParametersPerBand, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_MIMO_ParametersPerBand },
36965   { &hf_nr_rrc_extendedCP   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_extendedCP },
36966   { &hf_nr_rrc_multipleTCI  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_multipleTCI },
36967   { &hf_nr_rrc_bwp_WithoutRestriction, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_bwp_WithoutRestriction },
36968   { &hf_nr_rrc_bwp_SameNumerology, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_bwp_SameNumerology },
36969   { &hf_nr_rrc_bwp_DiffNumerology, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_bwp_DiffNumerology },
36970   { &hf_nr_rrc_crossCarrierScheduling_SameSCS, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_crossCarrierScheduling_SameSCS },
36971   { &hf_nr_rrc_pdsch_256QAM_FR2, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pdsch_256QAM_FR2 },
36972   { &hf_nr_rrc_pusch_256QAM , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_pusch_256QAM },
36973   { &hf_nr_rrc_ue_PowerClass, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_ue_PowerClass },
36974   { &hf_nr_rrc_rateMatchingLTE_CRS, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_rateMatchingLTE_CRS },
36975   { &hf_nr_rrc_channelBWs_DL_v1530, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_channelBWs_DL_v1530 },
36976   { &hf_nr_rrc_channelBWs_UL_v1530, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_channelBWs_UL_v1530 },
36977   { &dummy_hf_nr_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_nr_rrc_BandNR_eag_1 },
36978   { NULL, 0, 0, NULL }
36979 };
36980
36981 static int
36982 dissect_nr_rrc_BandNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36983   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
36984                                    ett_nr_rrc_BandNR, BandNR_sequence);
36985
36986   return offset;
36987 }
36988
36989
36990 static const per_sequence_t SEQUENCE_SIZE_1_maxBands_OF_BandNR_sequence_of[1] = {
36991   { &hf_nr_rrc_supportedBandListNR_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_BandNR },
36992 };
36993
36994 static int
36995 dissect_nr_rrc_SEQUENCE_SIZE_1_maxBands_OF_BandNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
36996   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
36997                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxBands_OF_BandNR, SEQUENCE_SIZE_1_maxBands_OF_BandNR_sequence_of,
36998                                                   1, maxBands, FALSE);
36999
37000   return offset;
37001 }
37002
37003
37004 static const per_sequence_t RF_Parameters_sequence[] = {
37005   { &hf_nr_rrc_supportedBandListNR, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_nr_rrc_SEQUENCE_SIZE_1_maxBands_OF_BandNR },
37006   { &hf_nr_rrc_supportedBandCombinationList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_BandCombinationList },
37007   { &hf_nr_rrc_appliedFreqBandListFilter, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_FreqBandList },
37008   { NULL, 0, 0, NULL }
37009 };
37010
37011 static int
37012 dissect_nr_rrc_RF_Parameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
37013   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
37014                                    ett_nr_rrc_RF_Parameters, RF_Parameters_sequence);
37015
37016   return offset;
37017 }
37018
37019
37020 static const per_sequence_t RF_ParametersMRDC_sequence[] = {
37021   { &hf_nr_rrc_supportedBandCombinationList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_BandCombinationList },
37022   { &hf_nr_rrc_appliedFreqBandListFilter, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_FreqBandList },
37023   { NULL, 0, 0, NULL }
37024 };
37025
37026 static int
37027 dissect_nr_rrc_RF_ParametersMRDC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
37028   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
37029                                    ett_nr_rrc_RF_ParametersMRDC, RF_ParametersMRDC_sequence);
37030
37031   return offset;
37032 }
37033
37034
37035 static const value_string nr_rrc_T_am_WithShortSN_vals[] = {
37036   {   0, "supported" },
37037   { 0, NULL }
37038 };
37039
37040
37041 static int
37042 dissect_nr_rrc_T_am_WithShortSN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
37043   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
37044                                      1, NULL, FALSE, 0, NULL);
37045
37046   return offset;
37047 }
37048
37049
37050 static const value_string nr_rrc_T_um_WithShortSN_vals[] = {
37051   {   0, "supported" },
37052   { 0, NULL }
37053 };
37054
37055
37056 static int
37057 dissect_nr_rrc_T_um_WithShortSN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
37058   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
37059                                      1, NULL, FALSE, 0, NULL);
37060
37061   return offset;
37062 }
37063
37064
37065 static const value_string nr_rrc_T_um_WithLongSN_vals[] = {
37066   {   0, "supported" },
37067   { 0, NULL }
37068 };
37069
37070
37071 static int
37072 dissect_nr_rrc_T_um_WithLongSN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
37073   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
37074                                      1, NULL, FALSE, 0, NULL);
37075
37076   return offset;
37077 }
37078
37079
37080 static const per_sequence_t RLC_Parameters_sequence[] = {
37081   { &hf_nr_rrc_am_WithShortSN, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_am_WithShortSN },
37082   { &hf_nr_rrc_um_WithShortSN, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_um_WithShortSN },
37083   { &hf_nr_rrc_um_WithLongSN, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_um_WithLongSN },
37084   { NULL, 0, 0, NULL }
37085 };
37086
37087 static int
37088 dissect_nr_rrc_RLC_Parameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
37089   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
37090                                    ett_nr_rrc_RLC_Parameters, RLC_Parameters_sequence);
37091
37092   return offset;
37093 }
37094
37095
37096 static const per_sequence_t T_nonCriticalExtension_33_sequence[] = {
37097   { NULL, 0, 0, NULL }
37098 };
37099
37100 static int
37101 dissect_nr_rrc_T_nonCriticalExtension_33(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
37102   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
37103                                    ett_nr_rrc_T_nonCriticalExtension_33, T_nonCriticalExtension_33_sequence);
37104
37105   return offset;
37106 }
37107
37108
37109 static const per_sequence_t UE_CapabilityRequestFilterNR_sequence[] = {
37110   { &hf_nr_rrc_frequencyBandList_02, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_FreqBandList },
37111   { &hf_nr_rrc_nonCriticalExtension_35, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_33 },
37112   { NULL, 0, 0, NULL }
37113 };
37114
37115 static int
37116 dissect_nr_rrc_UE_CapabilityRequestFilterNR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
37117   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
37118                                    ett_nr_rrc_UE_CapabilityRequestFilterNR, UE_CapabilityRequestFilterNR_sequence);
37119
37120   return offset;
37121 }
37122
37123
37124 static const value_string nr_rrc_T_splitSRB_WithOneUL_Path_vals[] = {
37125   {   0, "supported" },
37126   { 0, NULL }
37127 };
37128
37129
37130 static int
37131 dissect_nr_rrc_T_splitSRB_WithOneUL_Path(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
37132   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
37133                                      1, NULL, FALSE, 0, NULL);
37134
37135   return offset;
37136 }
37137
37138
37139 static const value_string nr_rrc_T_splitDRB_withUL_Both_MCG_SCG_vals[] = {
37140   {   0, "supported" },
37141   { 0, NULL }
37142 };
37143
37144
37145 static int
37146 dissect_nr_rrc_T_splitDRB_withUL_Both_MCG_SCG(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
37147   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
37148                                      1, NULL, FALSE, 0, NULL);
37149
37150   return offset;
37151 }
37152
37153
37154 static const value_string nr_rrc_T_srb3_vals[] = {
37155   {   0, "supported" },
37156   { 0, NULL }
37157 };
37158
37159
37160 static int
37161 dissect_nr_rrc_T_srb3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
37162   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
37163                                      1, NULL, FALSE, 0, NULL);
37164
37165   return offset;
37166 }
37167
37168
37169 static const value_string nr_rrc_T_v2x_EUTRA_v1530_vals[] = {
37170   {   0, "supported" },
37171   { 0, NULL }
37172 };
37173
37174
37175 static int
37176 dissect_nr_rrc_T_v2x_EUTRA_v1530(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
37177   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
37178                                      1, NULL, FALSE, 0, NULL);
37179
37180   return offset;
37181 }
37182
37183
37184 static const per_sequence_t GeneralParametersMRDC_XDD_Diff_sequence[] = {
37185   { &hf_nr_rrc_splitSRB_WithOneUL_Path, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_splitSRB_WithOneUL_Path },
37186   { &hf_nr_rrc_splitDRB_withUL_Both_MCG_SCG, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_splitDRB_withUL_Both_MCG_SCG },
37187   { &hf_nr_rrc_srb3         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_srb3 },
37188   { &hf_nr_rrc_v2x_EUTRA_v1530, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_nr_rrc_T_v2x_EUTRA_v1530 },
37189   { NULL, 0, 0, NULL }
37190 };
37191
37192 static int
37193 dissect_nr_rrc_GeneralParametersMRDC_XDD_Diff(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
37194   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
37195                                    ett_nr_rrc_GeneralParametersMRDC_XDD_Diff, GeneralParametersMRDC_XDD_Diff_sequence);
37196
37197   return offset;
37198 }
37199
37200
37201 static const per_sequence_t UE_MRDC_CapabilityAddXDD_Mode_sequence[] = {
37202   { &hf_nr_rrc_measAndMobParametersMRDC_XDD_Diff, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MeasAndMobParametersMRDC_XDD_Diff },
37203   { &hf_nr_rrc_generalParametersMRDC_XDD_Diff, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_GeneralParametersMRDC_XDD_Diff },
37204   { NULL, 0, 0, NULL }
37205 };
37206
37207 static int
37208 dissect_nr_rrc_UE_MRDC_CapabilityAddXDD_Mode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
37209   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
37210                                    ett_nr_rrc_UE_MRDC_CapabilityAddXDD_Mode, UE_MRDC_CapabilityAddXDD_Mode_sequence);
37211
37212   return offset;
37213 }
37214
37215
37216 static const per_sequence_t UE_MRDC_CapabilityAddFRX_Mode_sequence[] = {
37217   { &hf_nr_rrc_measAndMobParametersMRDC_FRX_Diff, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_MeasAndMobParametersMRDC_FRX_Diff },
37218   { NULL, 0, 0, NULL }
37219 };
37220
37221 static int
37222 dissect_nr_rrc_UE_MRDC_CapabilityAddFRX_Mode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
37223   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
37224                                    ett_nr_rrc_UE_MRDC_CapabilityAddFRX_Mode, UE_MRDC_CapabilityAddFRX_Mode_sequence);
37225
37226   return offset;
37227 }
37228
37229
37230 static const per_sequence_t SEQUENCE_SIZE_1_maxFeatureSetCombinations_OF_FeatureSetCombination_sequence_of[1] = {
37231   { &hf_nr_rrc_featureSetCombinations_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_FeatureSetCombination },
37232 };
37233
37234 static int
37235 dissect_nr_rrc_SEQUENCE_SIZE_1_maxFeatureSetCombinations_OF_FeatureSetCombination(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
37236   offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
37237                                                   ett_nr_rrc_SEQUENCE_SIZE_1_maxFeatureSetCombinations_OF_FeatureSetCombination, SEQUENCE_SIZE_1_maxFeatureSetCombinations_OF_FeatureSetCombination_sequence_of,
37238                                                   1, maxFeatureSetCombinations, FALSE);
37239
37240   return offset;
37241 }
37242
37243
37244 static const per_sequence_t T_nonCriticalExtension_34_sequence[] = {
37245   { NULL, 0, 0, NULL }
37246 };
37247
37248 static int
37249 dissect_nr_rrc_T_nonCriticalExtension_34(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
37250   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
37251                                    ett_nr_rrc_T_nonCriticalExtension_34, T_nonCriticalExtension_34_sequence);
37252
37253   return offset;
37254 }
37255
37256
37257 static const per_sequence_t UE_MRDC_Capability_sequence[] = {
37258   { &hf_nr_rrc_measAndMobParametersMRDC, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MeasAndMobParametersMRDC },
37259   { &hf_nr_rrc_phy_ParametersMRDC_v1530, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_Phy_ParametersMRDC },
37260   { &hf_nr_rrc_rf_ParametersMRDC, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RF_ParametersMRDC },
37261   { &hf_nr_rrc_generalParametersMRDC, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_GeneralParametersMRDC_XDD_Diff },
37262   { &hf_nr_rrc_fdd_Add_UE_MRDC_Capabilities, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_UE_MRDC_CapabilityAddXDD_Mode },
37263   { &hf_nr_rrc_tdd_Add_UE_MRDC_Capabilities, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_UE_MRDC_CapabilityAddXDD_Mode },
37264   { &hf_nr_rrc_fr1_Add_UE_MRDC_Capabilities, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_UE_MRDC_CapabilityAddFRX_Mode },
37265   { &hf_nr_rrc_fr2_Add_UE_MRDC_Capabilities, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_UE_MRDC_CapabilityAddFRX_Mode },
37266   { &hf_nr_rrc_featureSetCombinations, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxFeatureSetCombinations_OF_FeatureSetCombination },
37267   { &hf_nr_rrc_pdcp_ParametersMRDC_v1530, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_PDCP_ParametersMRDC },
37268   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
37269   { &hf_nr_rrc_nonCriticalExtension_36, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_34 },
37270   { NULL, 0, 0, NULL }
37271 };
37272
37273 static int
37274 dissect_nr_rrc_UE_MRDC_Capability(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
37275   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
37276                                    ett_nr_rrc_UE_MRDC_Capability, UE_MRDC_Capability_sequence);
37277
37278   return offset;
37279 }
37280
37281
37282 static const per_sequence_t UE_NR_CapabilityAddXDD_Mode_sequence[] = {
37283   { &hf_nr_rrc_phy_ParametersXDD_Diff, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_Phy_ParametersXDD_Diff },
37284   { &hf_nr_rrc_mac_ParametersXDD_Diff, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MAC_ParametersXDD_Diff },
37285   { &hf_nr_rrc_measAndMobParametersXDD_Diff, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MeasAndMobParametersXDD_Diff },
37286   { NULL, 0, 0, NULL }
37287 };
37288
37289 static int
37290 dissect_nr_rrc_UE_NR_CapabilityAddXDD_Mode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
37291   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
37292                                    ett_nr_rrc_UE_NR_CapabilityAddXDD_Mode, UE_NR_CapabilityAddXDD_Mode_sequence);
37293
37294   return offset;
37295 }
37296
37297
37298 static const per_sequence_t UE_NR_CapabilityAddFRX_Mode_sequence[] = {
37299   { &hf_nr_rrc_phy_ParametersFRX_Diff, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_Phy_ParametersFRX_Diff },
37300   { &hf_nr_rrc_measAndMobParametersFRX_Diff, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MeasAndMobParametersFRX_Diff },
37301   { NULL, 0, 0, NULL }
37302 };
37303
37304 static int
37305 dissect_nr_rrc_UE_NR_CapabilityAddFRX_Mode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
37306   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
37307                                    ett_nr_rrc_UE_NR_CapabilityAddFRX_Mode, UE_NR_CapabilityAddFRX_Mode_sequence);
37308
37309   return offset;
37310 }
37311
37312
37313 static const per_sequence_t UE_NR_CapabilityAddXDD_Mode_1530_sequence[] = {
37314   { &hf_nr_rrc_eutra_ParametersXDD_Diff, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_EUTRA_ParametersXDD_Diff },
37315   { NULL, 0, 0, NULL }
37316 };
37317
37318 static int
37319 dissect_nr_rrc_UE_NR_CapabilityAddXDD_Mode_1530(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
37320   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
37321                                    ett_nr_rrc_UE_NR_CapabilityAddXDD_Mode_1530, UE_NR_CapabilityAddXDD_Mode_1530_sequence);
37322
37323   return offset;
37324 }
37325
37326
37327 static const value_string nr_rrc_T_voiceOverMCG_Bearer_vals[] = {
37328   {   0, "supported" },
37329   { 0, NULL }
37330 };
37331
37332
37333 static int
37334 dissect_nr_rrc_T_voiceOverMCG_Bearer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
37335   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
37336                                      1, NULL, FALSE, 0, NULL);
37337
37338   return offset;
37339 }
37340
37341
37342 static const value_string nr_rrc_T_inactiveState_vals[] = {
37343   {   0, "supported" },
37344   { 0, NULL }
37345 };
37346
37347
37348 static int
37349 dissect_nr_rrc_T_inactiveState(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
37350   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
37351                                      1, NULL, FALSE, 0, NULL);
37352
37353   return offset;
37354 }
37355
37356
37357 static const value_string nr_rrc_T_delayBudgetReporting_vals[] = {
37358   {   0, "supported" },
37359   { 0, NULL }
37360 };
37361
37362
37363 static int
37364 dissect_nr_rrc_T_delayBudgetReporting(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
37365   offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
37366                                      1, NULL, FALSE, 0, NULL);
37367
37368   return offset;
37369 }
37370
37371
37372 static const per_sequence_t T_nonCriticalExtension_35_sequence[] = {
37373   { NULL, 0, 0, NULL }
37374 };
37375
37376 static int
37377 dissect_nr_rrc_T_nonCriticalExtension_35(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
37378   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
37379                                    ett_nr_rrc_T_nonCriticalExtension_35, T_nonCriticalExtension_35_sequence);
37380
37381   return offset;
37382 }
37383
37384
37385 static const per_sequence_t UE_NR_Capability_1530_sequence[] = {
37386   { &hf_nr_rrc_fdd_Add_UE_NR_Capabilities_1530, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_UE_NR_CapabilityAddXDD_Mode_1530 },
37387   { &hf_nr_rrc_tdd_Add_UE_NR_Capabilities_1530, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_UE_NR_CapabilityAddXDD_Mode_1530 },
37388   { &hf_nr_rrc_voiceOverMCG_Bearer, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_voiceOverMCG_Bearer },
37389   { &hf_nr_rrc_interRAT_Parameters, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_InterRAT_Parameters },
37390   { &hf_nr_rrc_inactiveState, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_inactiveState },
37391   { &hf_nr_rrc_delayBudgetReporting, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_delayBudgetReporting },
37392   { &hf_nr_rrc_nonCriticalExtension_38, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_T_nonCriticalExtension_35 },
37393   { NULL, 0, 0, NULL }
37394 };
37395
37396 static int
37397 dissect_nr_rrc_UE_NR_Capability_1530(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
37398   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
37399                                    ett_nr_rrc_UE_NR_Capability_1530, UE_NR_Capability_1530_sequence);
37400
37401   return offset;
37402 }
37403
37404
37405 static const per_sequence_t UE_NR_Capability_sequence[] = {
37406   { &hf_nr_rrc_accessStratumRelease, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_AccessStratumRelease },
37407   { &hf_nr_rrc_pdcp_Parameters, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_PDCP_Parameters },
37408   { &hf_nr_rrc_rlc_Parameters, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_RLC_Parameters },
37409   { &hf_nr_rrc_mac_Parameters, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MAC_Parameters },
37410   { &hf_nr_rrc_phy_Parameters, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_Phy_Parameters },
37411   { &hf_nr_rrc_rf_Parameters, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_nr_rrc_RF_Parameters },
37412   { &hf_nr_rrc_measAndMobParameters, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_MeasAndMobParameters },
37413   { &hf_nr_rrc_fdd_Add_UE_NR_Capabilities, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_UE_NR_CapabilityAddXDD_Mode },
37414   { &hf_nr_rrc_tdd_Add_UE_NR_Capabilities, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_UE_NR_CapabilityAddXDD_Mode },
37415   { &hf_nr_rrc_fr1_Add_UE_NR_Capabilities, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_UE_NR_CapabilityAddFRX_Mode },
37416   { &hf_nr_rrc_fr2_Add_UE_NR_Capabilities, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_UE_NR_CapabilityAddFRX_Mode },
37417   { &hf_nr_rrc_featureSets  , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_FeatureSets },
37418   { &hf_nr_rrc_featureSetCombinations, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_SEQUENCE_SIZE_1_maxFeatureSetCombinations_OF_FeatureSetCombination },
37419   { &hf_nr_rrc_lateNonCriticalExtension, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_OCTET_STRING },
37420   { &hf_nr_rrc_nonCriticalExtension_37, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_nr_rrc_UE_NR_Capability_1530 },
37421   { NULL, 0, 0, NULL }
37422 };
37423
37424 static int
37425 dissect_nr_rrc_UE_NR_Capability(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
37426   offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
37427                                    ett_nr_rrc_UE_NR_Capability, UE_NR_Capability_sequence);
37428
37429   return offset;
37430 }
37431
37432 /*--- PDUs ---*/
37433
37434 int dissect_nr_rrc_HandoverCommand_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37435   int offset = 0;
37436   asn1_ctx_t asn1_ctx;
37437   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37438   offset = dissect_nr_rrc_HandoverCommand(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_nr_rrc_HandoverCommand_PDU);
37439   offset += 7; offset >>= 3;
37440   return offset;
37441 }
37442 int dissect_nr_rrc_HandoverPreparationInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37443   int offset = 0;
37444   asn1_ctx_t asn1_ctx;
37445   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37446   offset = dissect_nr_rrc_HandoverPreparationInformation(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_nr_rrc_HandoverPreparationInformation_PDU);
37447   offset += 7; offset >>= 3;
37448   return offset;
37449 }
37450 int dissect_nr_rrc_CG_Config_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37451   int offset = 0;
37452   asn1_ctx_t asn1_ctx;
37453   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37454   offset = dissect_nr_rrc_CG_Config(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_nr_rrc_CG_Config_PDU);
37455   offset += 7; offset >>= 3;
37456   return offset;
37457 }
37458 int dissect_nr_rrc_CG_ConfigInfo_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37459   int offset = 0;
37460   asn1_ctx_t asn1_ctx;
37461   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37462   offset = dissect_nr_rrc_CG_ConfigInfo(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_nr_rrc_CG_ConfigInfo_PDU);
37463   offset += 7; offset >>= 3;
37464   return offset;
37465 }
37466 int dissect_nr_rrc_ConfigRestrictInfoSCG_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37467   int offset = 0;
37468   asn1_ctx_t asn1_ctx;
37469   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37470   offset = dissect_nr_rrc_ConfigRestrictInfoSCG(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_nr_rrc_ConfigRestrictInfoSCG_PDU);
37471   offset += 7; offset >>= 3;
37472   return offset;
37473 }
37474 int dissect_nr_rrc_MeasurementTimingConfiguration_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37475   int offset = 0;
37476   asn1_ctx_t asn1_ctx;
37477   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37478   offset = dissect_nr_rrc_MeasurementTimingConfiguration(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_nr_rrc_MeasurementTimingConfiguration_PDU);
37479   offset += 7; offset >>= 3;
37480   return offset;
37481 }
37482 static int dissect_UERadioPagingInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37483   int offset = 0;
37484   asn1_ctx_t asn1_ctx;
37485   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37486   offset = dissect_nr_rrc_UERadioPagingInformation(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_UERadioPagingInformation_PDU);
37487   offset += 7; offset >>= 3;
37488   return offset;
37489 }
37490 static int dissect_UERadioAccessCapabilityInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37491   int offset = 0;
37492   asn1_ctx_t asn1_ctx;
37493   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37494   offset = dissect_nr_rrc_UERadioAccessCapabilityInformation(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_UERadioAccessCapabilityInformation_PDU);
37495   offset += 7; offset >>= 3;
37496   return offset;
37497 }
37498 static int dissect_BCCH_BCH_Message_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37499   int offset = 0;
37500   asn1_ctx_t asn1_ctx;
37501   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37502   offset = dissect_nr_rrc_BCCH_BCH_Message(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_BCCH_BCH_Message_PDU);
37503   offset += 7; offset >>= 3;
37504   return offset;
37505 }
37506 static int dissect_BCCH_DL_SCH_Message_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37507   int offset = 0;
37508   asn1_ctx_t asn1_ctx;
37509   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37510   offset = dissect_nr_rrc_BCCH_DL_SCH_Message(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_BCCH_DL_SCH_Message_PDU);
37511   offset += 7; offset >>= 3;
37512   return offset;
37513 }
37514 static int dissect_DL_CCCH_Message_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37515   int offset = 0;
37516   asn1_ctx_t asn1_ctx;
37517   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37518   offset = dissect_nr_rrc_DL_CCCH_Message(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_DL_CCCH_Message_PDU);
37519   offset += 7; offset >>= 3;
37520   return offset;
37521 }
37522 static int dissect_DL_DCCH_Message_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37523   int offset = 0;
37524   asn1_ctx_t asn1_ctx;
37525   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37526   offset = dissect_nr_rrc_DL_DCCH_Message(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_DL_DCCH_Message_PDU);
37527   offset += 7; offset >>= 3;
37528   return offset;
37529 }
37530 static int dissect_PCCH_Message_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37531   int offset = 0;
37532   asn1_ctx_t asn1_ctx;
37533   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37534   offset = dissect_nr_rrc_PCCH_Message(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_PCCH_Message_PDU);
37535   offset += 7; offset >>= 3;
37536   return offset;
37537 }
37538 static int dissect_UL_CCCH_Message_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37539   int offset = 0;
37540   asn1_ctx_t asn1_ctx;
37541   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37542   offset = dissect_nr_rrc_UL_CCCH_Message(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_UL_CCCH_Message_PDU);
37543   offset += 7; offset >>= 3;
37544   return offset;
37545 }
37546 static int dissect_UL_CCCH1_Message_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37547   int offset = 0;
37548   asn1_ctx_t asn1_ctx;
37549   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37550   offset = dissect_nr_rrc_UL_CCCH1_Message(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_UL_CCCH1_Message_PDU);
37551   offset += 7; offset >>= 3;
37552   return offset;
37553 }
37554 int dissect_nr_rrc_UL_DCCH_Message_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37555   int offset = 0;
37556   asn1_ctx_t asn1_ctx;
37557   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37558   offset = dissect_nr_rrc_UL_DCCH_Message(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_nr_rrc_UL_DCCH_Message_PDU);
37559   offset += 7; offset >>= 3;
37560   return offset;
37561 }
37562 int dissect_nr_rrc_MIB_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37563   int offset = 0;
37564   asn1_ctx_t asn1_ctx;
37565   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37566   offset = dissect_nr_rrc_MIB(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_nr_rrc_MIB_PDU);
37567   offset += 7; offset >>= 3;
37568   return offset;
37569 }
37570 int dissect_nr_rrc_RRCReconfiguration_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37571   int offset = 0;
37572   asn1_ctx_t asn1_ctx;
37573   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37574   offset = dissect_nr_rrc_RRCReconfiguration(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_nr_rrc_RRCReconfiguration_PDU);
37575   offset += 7; offset >>= 3;
37576   return offset;
37577 }
37578 int dissect_nr_rrc_RRCReconfigurationComplete_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37579   int offset = 0;
37580   asn1_ctx_t asn1_ctx;
37581   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37582   offset = dissect_nr_rrc_RRCReconfigurationComplete(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_nr_rrc_RRCReconfigurationComplete_PDU);
37583   offset += 7; offset >>= 3;
37584   return offset;
37585 }
37586 int dissect_nr_rrc_SIB1_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37587   int offset = 0;
37588   asn1_ctx_t asn1_ctx;
37589   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37590   offset = dissect_nr_rrc_SIB1(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_nr_rrc_SIB1_PDU);
37591   offset += 7; offset >>= 3;
37592   return offset;
37593 }
37594 int dissect_nr_rrc_CellGroupConfig_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37595   int offset = 0;
37596   asn1_ctx_t asn1_ctx;
37597   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37598   offset = dissect_nr_rrc_CellGroupConfig(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_nr_rrc_CellGroupConfig_PDU);
37599   offset += 7; offset >>= 3;
37600   return offset;
37601 }
37602 int dissect_nr_rrc_MeasConfig_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37603   int offset = 0;
37604   asn1_ctx_t asn1_ctx;
37605   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37606   offset = dissect_nr_rrc_MeasConfig(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_nr_rrc_MeasConfig_PDU);
37607   offset += 7; offset >>= 3;
37608   return offset;
37609 }
37610 int dissect_nr_rrc_MeasGapConfig_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37611   int offset = 0;
37612   asn1_ctx_t asn1_ctx;
37613   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37614   offset = dissect_nr_rrc_MeasGapConfig(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_nr_rrc_MeasGapConfig_PDU);
37615   offset += 7; offset >>= 3;
37616   return offset;
37617 }
37618 int dissect_nr_rrc_MeasResults_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37619   int offset = 0;
37620   asn1_ctx_t asn1_ctx;
37621   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37622   offset = dissect_nr_rrc_MeasResults(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_nr_rrc_MeasResults_PDU);
37623   offset += 7; offset >>= 3;
37624   return offset;
37625 }
37626 int dissect_nr_rrc_P_Max_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37627   int offset = 0;
37628   asn1_ctx_t asn1_ctx;
37629   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37630   offset = dissect_nr_rrc_P_Max(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_nr_rrc_P_Max_PDU);
37631   offset += 7; offset >>= 3;
37632   return offset;
37633 }
37634 int dissect_nr_rrc_RadioBearerConfig_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37635   int offset = 0;
37636   asn1_ctx_t asn1_ctx;
37637   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37638   offset = dissect_nr_rrc_RadioBearerConfig(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_nr_rrc_RadioBearerConfig_PDU);
37639   offset += 7; offset >>= 3;
37640   return offset;
37641 }
37642 int dissect_nr_rrc_FreqBandList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37643   int offset = 0;
37644   asn1_ctx_t asn1_ctx;
37645   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37646   offset = dissect_nr_rrc_FreqBandList(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_nr_rrc_FreqBandList_PDU);
37647   offset += 7; offset >>= 3;
37648   return offset;
37649 }
37650 int dissect_nr_rrc_UE_CapabilityRAT_ContainerList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37651   int offset = 0;
37652   asn1_ctx_t asn1_ctx;
37653   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37654   offset = dissect_nr_rrc_UE_CapabilityRAT_ContainerList(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_nr_rrc_UE_CapabilityRAT_ContainerList_PDU);
37655   offset += 7; offset >>= 3;
37656   return offset;
37657 }
37658 static int dissect_UE_CapabilityRequestFilterNR_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37659   int offset = 0;
37660   asn1_ctx_t asn1_ctx;
37661   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37662   offset = dissect_nr_rrc_UE_CapabilityRequestFilterNR(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_UE_CapabilityRequestFilterNR_PDU);
37663   offset += 7; offset >>= 3;
37664   return offset;
37665 }
37666 int dissect_nr_rrc_UE_MRDC_Capability_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37667   int offset = 0;
37668   asn1_ctx_t asn1_ctx;
37669   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37670   offset = dissect_nr_rrc_UE_MRDC_Capability(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_nr_rrc_UE_MRDC_Capability_PDU);
37671   offset += 7; offset >>= 3;
37672   return offset;
37673 }
37674 int dissect_nr_rrc_UE_NR_Capability_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37675   int offset = 0;
37676   asn1_ctx_t asn1_ctx;
37677   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37678   offset = dissect_nr_rrc_UE_NR_Capability(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_nr_rrc_UE_NR_Capability_PDU);
37679   offset += 7; offset >>= 3;
37680   return offset;
37681 }
37682 static int dissect_MeasResultList2NR_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37683   int offset = 0;
37684   asn1_ctx_t asn1_ctx;
37685   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37686   offset = dissect_nr_rrc_MeasResultList2NR(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_MeasResultList2NR_PDU);
37687   offset += 7; offset >>= 3;
37688   return offset;
37689 }
37690 static int dissect_MeasResultSCG_Failure_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37691   int offset = 0;
37692   asn1_ctx_t asn1_ctx;
37693   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37694   offset = dissect_nr_rrc_MeasResultSCG_Failure(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_MeasResultSCG_Failure_PDU);
37695   offset += 7; offset >>= 3;
37696   return offset;
37697 }
37698 static int dissect_SystemInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
37699   int offset = 0;
37700   asn1_ctx_t asn1_ctx;
37701   asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
37702   offset = dissect_nr_rrc_SystemInformation(tvb, offset, &asn1_ctx, tree, hf_nr_rrc_SystemInformation_PDU);
37703   offset += 7; offset >>= 3;
37704   return offset;
37705 }
37706
37707
37708 /*--- End of included file: packet-nr-rrc-fn.c ---*/
37709 #line 356 "./asn1/nr-rrc/packet-nr-rrc-template.c"
37710
37711 void
37712 proto_register_nr_rrc(void) {
37713
37714   /* List of fields */
37715   static hf_register_info hf[] = {
37716
37717
37718 /*--- Included file: packet-nr-rrc-hfarr.c ---*/
37719 #line 1 "./asn1/nr-rrc/packet-nr-rrc-hfarr.c"
37720     { &hf_nr_rrc_nr_rrc_HandoverCommand_PDU,
37721       { "HandoverCommand", "nr-rrc.HandoverCommand_element",
37722         FT_NONE, BASE_NONE, NULL, 0,
37723         NULL, HFILL }},
37724     { &hf_nr_rrc_nr_rrc_HandoverPreparationInformation_PDU,
37725       { "HandoverPreparationInformation", "nr-rrc.HandoverPreparationInformation_element",
37726         FT_NONE, BASE_NONE, NULL, 0,
37727         NULL, HFILL }},
37728     { &hf_nr_rrc_nr_rrc_CG_Config_PDU,
37729       { "CG-Config", "nr-rrc.CG_Config_element",
37730         FT_NONE, BASE_NONE, NULL, 0,
37731         NULL, HFILL }},
37732     { &hf_nr_rrc_nr_rrc_CG_ConfigInfo_PDU,
37733       { "CG-ConfigInfo", "nr-rrc.CG_ConfigInfo_element",
37734         FT_NONE, BASE_NONE, NULL, 0,
37735         NULL, HFILL }},
37736     { &hf_nr_rrc_nr_rrc_ConfigRestrictInfoSCG_PDU,
37737       { "ConfigRestrictInfoSCG", "nr-rrc.ConfigRestrictInfoSCG_element",
37738         FT_NONE, BASE_NONE, NULL, 0,
37739         NULL, HFILL }},
37740     { &hf_nr_rrc_nr_rrc_MeasurementTimingConfiguration_PDU,
37741       { "MeasurementTimingConfiguration", "nr-rrc.MeasurementTimingConfiguration_element",
37742         FT_NONE, BASE_NONE, NULL, 0,
37743         NULL, HFILL }},
37744     { &hf_nr_rrc_UERadioPagingInformation_PDU,
37745       { "UERadioPagingInformation", "nr-rrc.UERadioPagingInformation_element",
37746         FT_NONE, BASE_NONE, NULL, 0,
37747         NULL, HFILL }},
37748     { &hf_nr_rrc_UERadioAccessCapabilityInformation_PDU,
37749       { "UERadioAccessCapabilityInformation", "nr-rrc.UERadioAccessCapabilityInformation_element",
37750         FT_NONE, BASE_NONE, NULL, 0,
37751         NULL, HFILL }},
37752     { &hf_nr_rrc_BCCH_BCH_Message_PDU,
37753       { "BCCH-BCH-Message", "nr-rrc.BCCH_BCH_Message_element",
37754         FT_NONE, BASE_NONE, NULL, 0,
37755         NULL, HFILL }},
37756     { &hf_nr_rrc_BCCH_DL_SCH_Message_PDU,
37757       { "BCCH-DL-SCH-Message", "nr-rrc.BCCH_DL_SCH_Message_element",
37758         FT_NONE, BASE_NONE, NULL, 0,
37759         NULL, HFILL }},
37760     { &hf_nr_rrc_DL_CCCH_Message_PDU,
37761       { "DL-CCCH-Message", "nr-rrc.DL_CCCH_Message_element",
37762         FT_NONE, BASE_NONE, NULL, 0,
37763         NULL, HFILL }},
37764     { &hf_nr_rrc_DL_DCCH_Message_PDU,
37765       { "DL-DCCH-Message", "nr-rrc.DL_DCCH_Message_element",
37766         FT_NONE, BASE_NONE, NULL, 0,
37767         NULL, HFILL }},
37768     { &hf_nr_rrc_PCCH_Message_PDU,
37769       { "PCCH-Message", "nr-rrc.PCCH_Message_element",
37770         FT_NONE, BASE_NONE, NULL, 0,
37771         NULL, HFILL }},
37772     { &hf_nr_rrc_UL_CCCH_Message_PDU,
37773       { "UL-CCCH-Message", "nr-rrc.UL_CCCH_Message_element",
37774         FT_NONE, BASE_NONE, NULL, 0,
37775         NULL, HFILL }},
37776     { &hf_nr_rrc_UL_CCCH1_Message_PDU,
37777       { "UL-CCCH1-Message", "nr-rrc.UL_CCCH1_Message_element",
37778         FT_NONE, BASE_NONE, NULL, 0,
37779         NULL, HFILL }},
37780     { &hf_nr_rrc_nr_rrc_UL_DCCH_Message_PDU,
37781       { "UL-DCCH-Message", "nr-rrc.UL_DCCH_Message_element",
37782         FT_NONE, BASE_NONE, NULL, 0,
37783         NULL, HFILL }},
37784     { &hf_nr_rrc_nr_rrc_MIB_PDU,
37785       { "MIB", "nr-rrc.MIB_element",
37786         FT_NONE, BASE_NONE, NULL, 0,
37787         NULL, HFILL }},
37788     { &hf_nr_rrc_nr_rrc_RRCReconfiguration_PDU,
37789       { "RRCReconfiguration", "nr-rrc.RRCReconfiguration_element",
37790         FT_NONE, BASE_NONE, NULL, 0,
37791         NULL, HFILL }},
37792     { &hf_nr_rrc_nr_rrc_RRCReconfigurationComplete_PDU,
37793       { "RRCReconfigurationComplete", "nr-rrc.RRCReconfigurationComplete_element",
37794         FT_NONE, BASE_NONE, NULL, 0,
37795         NULL, HFILL }},
37796     { &hf_nr_rrc_nr_rrc_SIB1_PDU,
37797       { "SIB1", "nr-rrc.SIB1_element",
37798         FT_NONE, BASE_NONE, NULL, 0,
37799         NULL, HFILL }},
37800     { &hf_nr_rrc_nr_rrc_CellGroupConfig_PDU,
37801       { "CellGroupConfig", "nr-rrc.CellGroupConfig_element",
37802         FT_NONE, BASE_NONE, NULL, 0,
37803         NULL, HFILL }},
37804     { &hf_nr_rrc_nr_rrc_MeasConfig_PDU,
37805       { "MeasConfig", "nr-rrc.MeasConfig_element",
37806         FT_NONE, BASE_NONE, NULL, 0,
37807         NULL, HFILL }},
37808     { &hf_nr_rrc_nr_rrc_MeasGapConfig_PDU,
37809       { "MeasGapConfig", "nr-rrc.MeasGapConfig_element",
37810         FT_NONE, BASE_NONE, NULL, 0,
37811         NULL, HFILL }},
37812     { &hf_nr_rrc_nr_rrc_MeasResults_PDU,
37813       { "MeasResults", "nr-rrc.MeasResults_element",
37814         FT_NONE, BASE_NONE, NULL, 0,
37815         NULL, HFILL }},
37816     { &hf_nr_rrc_nr_rrc_P_Max_PDU,
37817       { "P-Max", "nr-rrc.P_Max",
37818         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_dbm, 0,
37819         NULL, HFILL }},
37820     { &hf_nr_rrc_nr_rrc_RadioBearerConfig_PDU,
37821       { "RadioBearerConfig", "nr-rrc.RadioBearerConfig_element",
37822         FT_NONE, BASE_NONE, NULL, 0,
37823         NULL, HFILL }},
37824     { &hf_nr_rrc_nr_rrc_FreqBandList_PDU,
37825       { "FreqBandList", "nr-rrc.FreqBandList",
37826         FT_UINT32, BASE_DEC, NULL, 0,
37827         NULL, HFILL }},
37828     { &hf_nr_rrc_nr_rrc_UE_CapabilityRAT_ContainerList_PDU,
37829       { "UE-CapabilityRAT-ContainerList", "nr-rrc.UE_CapabilityRAT_ContainerList",
37830         FT_UINT32, BASE_DEC, NULL, 0,
37831         NULL, HFILL }},
37832     { &hf_nr_rrc_UE_CapabilityRequestFilterNR_PDU,
37833       { "UE-CapabilityRequestFilterNR", "nr-rrc.UE_CapabilityRequestFilterNR_element",
37834         FT_NONE, BASE_NONE, NULL, 0,
37835         NULL, HFILL }},
37836     { &hf_nr_rrc_nr_rrc_UE_MRDC_Capability_PDU,
37837       { "UE-MRDC-Capability", "nr-rrc.UE_MRDC_Capability_element",
37838         FT_NONE, BASE_NONE, NULL, 0,
37839         NULL, HFILL }},
37840     { &hf_nr_rrc_nr_rrc_UE_NR_Capability_PDU,
37841       { "UE-NR-Capability", "nr-rrc.UE_NR_Capability_element",
37842         FT_NONE, BASE_NONE, NULL, 0,
37843         NULL, HFILL }},
37844     { &hf_nr_rrc_MeasResultList2NR_PDU,
37845       { "MeasResultList2NR", "nr-rrc.MeasResultList2NR",
37846         FT_UINT32, BASE_DEC, NULL, 0,
37847         NULL, HFILL }},
37848     { &hf_nr_rrc_MeasResultSCG_Failure_PDU,
37849       { "MeasResultSCG-Failure", "nr-rrc.MeasResultSCG_Failure_element",
37850         FT_NONE, BASE_NONE, NULL, 0,
37851         NULL, HFILL }},
37852     { &hf_nr_rrc_SystemInformation_PDU,
37853       { "SystemInformation", "nr-rrc.SystemInformation_element",
37854         FT_NONE, BASE_NONE, NULL, 0,
37855         NULL, HFILL }},
37856     { &hf_nr_rrc_criticalExtensions,
37857       { "criticalExtensions", "nr-rrc.criticalExtensions",
37858         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_vals), 0,
37859         NULL, HFILL }},
37860     { &hf_nr_rrc_c1,
37861       { "c1", "nr-rrc.c1",
37862         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_c1_vals), 0,
37863         NULL, HFILL }},
37864     { &hf_nr_rrc_handoverCommand,
37865       { "handoverCommand", "nr-rrc.handoverCommand_element",
37866         FT_NONE, BASE_NONE, NULL, 0,
37867         "HandoverCommand_IEs", HFILL }},
37868     { &hf_nr_rrc_spare3,
37869       { "spare3", "nr-rrc.spare3_element",
37870         FT_NONE, BASE_NONE, NULL, 0,
37871         NULL, HFILL }},
37872     { &hf_nr_rrc_spare2,
37873       { "spare2", "nr-rrc.spare2_element",
37874         FT_NONE, BASE_NONE, NULL, 0,
37875         NULL, HFILL }},
37876     { &hf_nr_rrc_spare1,
37877       { "spare1", "nr-rrc.spare1_element",
37878         FT_NONE, BASE_NONE, NULL, 0,
37879         NULL, HFILL }},
37880     { &hf_nr_rrc_criticalExtensionsFuture,
37881       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
37882         FT_NONE, BASE_NONE, NULL, 0,
37883         NULL, HFILL }},
37884     { &hf_nr_rrc_handoverCommandMessage,
37885       { "handoverCommandMessage", "nr-rrc.handoverCommandMessage",
37886         FT_BYTES, BASE_NONE, NULL, 0,
37887         NULL, HFILL }},
37888     { &hf_nr_rrc_nonCriticalExtension,
37889       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
37890         FT_NONE, BASE_NONE, NULL, 0,
37891         NULL, HFILL }},
37892     { &hf_nr_rrc_criticalExtensions_01,
37893       { "criticalExtensions", "nr-rrc.criticalExtensions",
37894         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_01_vals), 0,
37895         "T_criticalExtensions_01", HFILL }},
37896     { &hf_nr_rrc_c1_01,
37897       { "c1", "nr-rrc.c1",
37898         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_c1_01_vals), 0,
37899         "T_c1_01", HFILL }},
37900     { &hf_nr_rrc_handoverPreparationInformation,
37901       { "handoverPreparationInformation", "nr-rrc.handoverPreparationInformation_element",
37902         FT_NONE, BASE_NONE, NULL, 0,
37903         "HandoverPreparationInformation_IEs", HFILL }},
37904     { &hf_nr_rrc_criticalExtensionsFuture_01,
37905       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
37906         FT_NONE, BASE_NONE, NULL, 0,
37907         "T_criticalExtensionsFuture_01", HFILL }},
37908     { &hf_nr_rrc_ue_CapabilityRAT_List,
37909       { "ue-CapabilityRAT-List", "nr-rrc.ue_CapabilityRAT_List",
37910         FT_UINT32, BASE_DEC, NULL, 0,
37911         "UE_CapabilityRAT_ContainerList", HFILL }},
37912     { &hf_nr_rrc_sourceConfig,
37913       { "sourceConfig", "nr-rrc.sourceConfig_element",
37914         FT_NONE, BASE_NONE, NULL, 0,
37915         "AS_Config", HFILL }},
37916     { &hf_nr_rrc_rrm_Config,
37917       { "rrm-Config", "nr-rrc.rrm_Config_element",
37918         FT_NONE, BASE_NONE, NULL, 0,
37919         NULL, HFILL }},
37920     { &hf_nr_rrc_as_Context,
37921       { "as-Context", "nr-rrc.as_Context_element",
37922         FT_NONE, BASE_NONE, NULL, 0,
37923         NULL, HFILL }},
37924     { &hf_nr_rrc_nonCriticalExtension_01,
37925       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
37926         FT_NONE, BASE_NONE, NULL, 0,
37927         "T_nonCriticalExtension_01", HFILL }},
37928     { &hf_nr_rrc_rrcReconfiguration,
37929       { "rrcReconfiguration", "nr-rrc.rrcReconfiguration",
37930         FT_BYTES, BASE_NONE, NULL, 0,
37931         NULL, HFILL }},
37932     { &hf_nr_rrc_reestablishmentInfo,
37933       { "reestablishmentInfo", "nr-rrc.reestablishmentInfo_element",
37934         FT_NONE, BASE_NONE, NULL, 0,
37935         NULL, HFILL }},
37936     { &hf_nr_rrc_configRestrictInfo,
37937       { "configRestrictInfo", "nr-rrc.configRestrictInfo_element",
37938         FT_NONE, BASE_NONE, NULL, 0,
37939         "ConfigRestrictInfoSCG", HFILL }},
37940     { &hf_nr_rrc_ran_NotificationAreaInfo,
37941       { "ran-NotificationAreaInfo", "nr-rrc.ran_NotificationAreaInfo",
37942         FT_UINT32, BASE_DEC, VALS(nr_rrc_RAN_NotificationAreaInfo_vals), 0,
37943         NULL, HFILL }},
37944     { &hf_nr_rrc_sourcePhysCellId,
37945       { "sourcePhysCellId", "nr-rrc.sourcePhysCellId",
37946         FT_UINT32, BASE_DEC, NULL, 0,
37947         "PhysCellId", HFILL }},
37948     { &hf_nr_rrc_targetCellShortMAC_I,
37949       { "targetCellShortMAC-I", "nr-rrc.targetCellShortMAC_I",
37950         FT_BYTES, BASE_NONE, NULL, 0,
37951         "ShortMAC_I", HFILL }},
37952     { &hf_nr_rrc_additionalReestabInfoList,
37953       { "additionalReestabInfoList", "nr-rrc.additionalReestabInfoList",
37954         FT_UINT32, BASE_DEC, NULL, 0,
37955         "ReestabNCellInfoList", HFILL }},
37956     { &hf_nr_rrc_ReestabNCellInfoList_item,
37957       { "ReestabNCellInfo", "nr-rrc.ReestabNCellInfo_element",
37958         FT_NONE, BASE_NONE, NULL, 0,
37959         NULL, HFILL }},
37960     { &hf_nr_rrc_cellIdentity,
37961       { "cellIdentity", "nr-rrc.cellIdentity",
37962         FT_BYTES, BASE_NONE, NULL, 0,
37963         NULL, HFILL }},
37964     { &hf_nr_rrc_key_gNodeB_Star,
37965       { "key-gNodeB-Star", "nr-rrc.key_gNodeB_Star",
37966         FT_BYTES, BASE_NONE, NULL, 0,
37967         "BIT_STRING_SIZE_256", HFILL }},
37968     { &hf_nr_rrc_shortMAC_I,
37969       { "shortMAC-I", "nr-rrc.shortMAC_I",
37970         FT_BYTES, BASE_NONE, NULL, 0,
37971         NULL, HFILL }},
37972     { &hf_nr_rrc_ue_InactiveTime,
37973       { "ue-InactiveTime", "nr-rrc.ue_InactiveTime",
37974         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_T_ue_InactiveTime_vals_ext, 0,
37975         NULL, HFILL }},
37976     { &hf_nr_rrc_candidateCellInfoList,
37977       { "candidateCellInfoList", "nr-rrc.candidateCellInfoList",
37978         FT_UINT32, BASE_DEC, NULL, 0,
37979         "MeasResultList2NR", HFILL }},
37980     { &hf_nr_rrc_criticalExtensions_02,
37981       { "criticalExtensions", "nr-rrc.criticalExtensions",
37982         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_02_vals), 0,
37983         "T_criticalExtensions_02", HFILL }},
37984     { &hf_nr_rrc_c1_02,
37985       { "c1", "nr-rrc.c1",
37986         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_c1_02_vals), 0,
37987         "T_c1_02", HFILL }},
37988     { &hf_nr_rrc_cg_Config,
37989       { "cg-Config", "nr-rrc.cg_Config_element",
37990         FT_NONE, BASE_NONE, NULL, 0,
37991         "CG_Config_IEs", HFILL }},
37992     { &hf_nr_rrc_criticalExtensionsFuture_02,
37993       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
37994         FT_NONE, BASE_NONE, NULL, 0,
37995         "T_criticalExtensionsFuture_02", HFILL }},
37996     { &hf_nr_rrc_scg_CellGroupConfig,
37997       { "scg-CellGroupConfig", "nr-rrc.scg_CellGroupConfig",
37998         FT_BYTES, BASE_NONE, NULL, 0,
37999         NULL, HFILL }},
38000     { &hf_nr_rrc_scg_RB_Config,
38001       { "scg-RB-Config", "nr-rrc.scg_RB_Config",
38002         FT_BYTES, BASE_NONE, NULL, 0,
38003         NULL, HFILL }},
38004     { &hf_nr_rrc_configRestrictModReq,
38005       { "configRestrictModReq", "nr-rrc.configRestrictModReq_element",
38006         FT_NONE, BASE_NONE, NULL, 0,
38007         "ConfigRestrictModReqSCG", HFILL }},
38008     { &hf_nr_rrc_drx_InfoSCG,
38009       { "drx-InfoSCG", "nr-rrc.drx_InfoSCG_element",
38010         FT_NONE, BASE_NONE, NULL, 0,
38011         "DRX_Info", HFILL }},
38012     { &hf_nr_rrc_candidateCellInfoListSN,
38013       { "candidateCellInfoListSN", "nr-rrc.candidateCellInfoListSN",
38014         FT_BYTES, BASE_NONE, NULL, 0,
38015         NULL, HFILL }},
38016     { &hf_nr_rrc_measConfigSN,
38017       { "measConfigSN", "nr-rrc.measConfigSN_element",
38018         FT_NONE, BASE_NONE, NULL, 0,
38019         NULL, HFILL }},
38020     { &hf_nr_rrc_selectedBandCombinationNR,
38021       { "selectedBandCombinationNR", "nr-rrc.selectedBandCombinationNR_element",
38022         FT_NONE, BASE_NONE, NULL, 0,
38023         "BandCombinationInfoSN", HFILL }},
38024     { &hf_nr_rrc_fr_InfoListSCG,
38025       { "fr-InfoListSCG", "nr-rrc.fr_InfoListSCG",
38026         FT_UINT32, BASE_DEC, NULL, 0,
38027         "FR_InfoList", HFILL }},
38028     { &hf_nr_rrc_candidateServingFreqListNR,
38029       { "candidateServingFreqListNR", "nr-rrc.candidateServingFreqListNR",
38030         FT_UINT32, BASE_DEC, NULL, 0,
38031         NULL, HFILL }},
38032     { &hf_nr_rrc_nonCriticalExtension_02,
38033       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
38034         FT_NONE, BASE_NONE, NULL, 0,
38035         "T_nonCriticalExtension_02", HFILL }},
38036     { &hf_nr_rrc_measuredFrequenciesSN,
38037       { "measuredFrequenciesSN", "nr-rrc.measuredFrequenciesSN",
38038         FT_UINT32, BASE_DEC, NULL, 0,
38039         "SEQUENCE_SIZE_1_maxMeasFreqsSN_OF_NR_FreqInfo", HFILL }},
38040     { &hf_nr_rrc_measuredFrequenciesSN_item,
38041       { "NR-FreqInfo", "nr-rrc.NR_FreqInfo_element",
38042         FT_NONE, BASE_NONE, NULL, 0,
38043         NULL, HFILL }},
38044     { &hf_nr_rrc_measuredFrequency,
38045       { "measuredFrequency", "nr-rrc.measuredFrequency",
38046         FT_UINT32, BASE_DEC, NULL, 0,
38047         "ARFCN_ValueNR", HFILL }},
38048     { &hf_nr_rrc_requestedBC_MRDC,
38049       { "requestedBC-MRDC", "nr-rrc.requestedBC_MRDC_element",
38050         FT_NONE, BASE_NONE, NULL, 0,
38051         "BandCombinationInfoSN", HFILL }},
38052     { &hf_nr_rrc_requestedP_MaxFR1,
38053       { "requestedP-MaxFR1", "nr-rrc.requestedP_MaxFR1",
38054         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_dbm, 0,
38055         "P_Max", HFILL }},
38056     { &hf_nr_rrc_bandCombinationIndex,
38057       { "bandCombinationIndex", "nr-rrc.bandCombinationIndex",
38058         FT_UINT32, BASE_DEC, NULL, 0,
38059         NULL, HFILL }},
38060     { &hf_nr_rrc_requestedFeatureSets,
38061       { "requestedFeatureSets", "nr-rrc.requestedFeatureSets",
38062         FT_UINT32, BASE_DEC, NULL, 0,
38063         "FeatureSetEntryIndex", HFILL }},
38064     { &hf_nr_rrc_FR_InfoList_item,
38065       { "FR-Info", "nr-rrc.FR_Info_element",
38066         FT_NONE, BASE_NONE, NULL, 0,
38067         NULL, HFILL }},
38068     { &hf_nr_rrc_servCellIndex,
38069       { "servCellIndex", "nr-rrc.servCellIndex",
38070         FT_UINT32, BASE_DEC, NULL, 0,
38071         NULL, HFILL }},
38072     { &hf_nr_rrc_fr_Type,
38073       { "fr-Type", "nr-rrc.fr_Type",
38074         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_fr_Type_vals), 0,
38075         NULL, HFILL }},
38076     { &hf_nr_rrc_CandidateServingFreqListNR_item,
38077       { "ARFCN-ValueNR", "nr-rrc.ARFCN_ValueNR",
38078         FT_UINT32, BASE_DEC, NULL, 0,
38079         NULL, HFILL }},
38080     { &hf_nr_rrc_criticalExtensions_03,
38081       { "criticalExtensions", "nr-rrc.criticalExtensions",
38082         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_03_vals), 0,
38083         "T_criticalExtensions_03", HFILL }},
38084     { &hf_nr_rrc_c1_03,
38085       { "c1", "nr-rrc.c1",
38086         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_c1_03_vals), 0,
38087         "T_c1_03", HFILL }},
38088     { &hf_nr_rrc_cg_ConfigInfo,
38089       { "cg-ConfigInfo", "nr-rrc.cg_ConfigInfo_element",
38090         FT_NONE, BASE_NONE, NULL, 0,
38091         "CG_ConfigInfo_IEs", HFILL }},
38092     { &hf_nr_rrc_criticalExtensionsFuture_03,
38093       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
38094         FT_NONE, BASE_NONE, NULL, 0,
38095         "T_criticalExtensionsFuture_03", HFILL }},
38096     { &hf_nr_rrc_ue_CapabilityInfo,
38097       { "ue-CapabilityInfo", "nr-rrc.ue_CapabilityInfo",
38098         FT_BYTES, BASE_NONE, NULL, 0,
38099         NULL, HFILL }},
38100     { &hf_nr_rrc_candidateCellInfoListMN,
38101       { "candidateCellInfoListMN", "nr-rrc.candidateCellInfoListMN",
38102         FT_UINT32, BASE_DEC, NULL, 0,
38103         "MeasResultList2NR", HFILL }},
38104     { &hf_nr_rrc_candidateCellInfoListSN_01,
38105       { "candidateCellInfoListSN", "nr-rrc.candidateCellInfoListSN",
38106         FT_BYTES, BASE_NONE, NULL, 0,
38107         "T_candidateCellInfoListSN_01", HFILL }},
38108     { &hf_nr_rrc_measResultCellListSFTD,
38109       { "measResultCellListSFTD", "nr-rrc.measResultCellListSFTD",
38110         FT_UINT32, BASE_DEC, NULL, 0,
38111         NULL, HFILL }},
38112     { &hf_nr_rrc_scgFailureInfo,
38113       { "scgFailureInfo", "nr-rrc.scgFailureInfo_element",
38114         FT_NONE, BASE_NONE, NULL, 0,
38115         NULL, HFILL }},
38116     { &hf_nr_rrc_failureType,
38117       { "failureType", "nr-rrc.failureType",
38118         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_failureType_vals), 0,
38119         NULL, HFILL }},
38120     { &hf_nr_rrc_measResultSCG,
38121       { "measResultSCG", "nr-rrc.measResultSCG",
38122         FT_BYTES, BASE_NONE, NULL, 0,
38123         NULL, HFILL }},
38124     { &hf_nr_rrc_drx_InfoMCG,
38125       { "drx-InfoMCG", "nr-rrc.drx_InfoMCG_element",
38126         FT_NONE, BASE_NONE, NULL, 0,
38127         "DRX_Info", HFILL }},
38128     { &hf_nr_rrc_measConfigMN,
38129       { "measConfigMN", "nr-rrc.measConfigMN_element",
38130         FT_NONE, BASE_NONE, NULL, 0,
38131         NULL, HFILL }},
38132     { &hf_nr_rrc_sourceConfigSCG,
38133       { "sourceConfigSCG", "nr-rrc.sourceConfigSCG",
38134         FT_BYTES, BASE_NONE, NULL, 0,
38135         NULL, HFILL }},
38136     { &hf_nr_rrc_scg_RB_Config_01,
38137       { "scg-RB-Config", "nr-rrc.scg_RB_Config",
38138         FT_BYTES, BASE_NONE, NULL, 0,
38139         "T_scg_RB_Config_01", HFILL }},
38140     { &hf_nr_rrc_mcg_RB_Config,
38141       { "mcg-RB-Config", "nr-rrc.mcg_RB_Config",
38142         FT_BYTES, BASE_NONE, NULL, 0,
38143         NULL, HFILL }},
38144     { &hf_nr_rrc_mrdc_AssistanceInfo,
38145       { "mrdc-AssistanceInfo", "nr-rrc.mrdc_AssistanceInfo_element",
38146         FT_NONE, BASE_NONE, NULL, 0,
38147         NULL, HFILL }},
38148     { &hf_nr_rrc_nonCriticalExtension_03,
38149       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
38150         FT_NONE, BASE_NONE, NULL, 0,
38151         "T_nonCriticalExtension_03", HFILL }},
38152     { &hf_nr_rrc_allowedBC_ListMRDC,
38153       { "allowedBC-ListMRDC", "nr-rrc.allowedBC_ListMRDC",
38154         FT_UINT32, BASE_DEC, NULL, 0,
38155         "BandCombinationInfoList", HFILL }},
38156     { &hf_nr_rrc_powerCoordination_FR1,
38157       { "powerCoordination-FR1", "nr-rrc.powerCoordination_FR1_element",
38158         FT_NONE, BASE_NONE, NULL, 0,
38159         NULL, HFILL }},
38160     { &hf_nr_rrc_p_maxNR_FR1,
38161       { "p-maxNR-FR1", "nr-rrc.p_maxNR_FR1",
38162         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_dbm, 0,
38163         "P_Max", HFILL }},
38164     { &hf_nr_rrc_p_maxEUTRA,
38165       { "p-maxEUTRA", "nr-rrc.p_maxEUTRA",
38166         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_dbm, 0,
38167         "P_Max", HFILL }},
38168     { &hf_nr_rrc_p_maxUE_FR1,
38169       { "p-maxUE-FR1", "nr-rrc.p_maxUE_FR1",
38170         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_dbm, 0,
38171         "P_Max", HFILL }},
38172     { &hf_nr_rrc_servCellIndexRangeSCG,
38173       { "servCellIndexRangeSCG", "nr-rrc.servCellIndexRangeSCG_element",
38174         FT_NONE, BASE_NONE, NULL, 0,
38175         NULL, HFILL }},
38176     { &hf_nr_rrc_lowBound,
38177       { "lowBound", "nr-rrc.lowBound",
38178         FT_UINT32, BASE_DEC, NULL, 0,
38179         "ServCellIndex", HFILL }},
38180     { &hf_nr_rrc_upBound,
38181       { "upBound", "nr-rrc.upBound",
38182         FT_UINT32, BASE_DEC, NULL, 0,
38183         "ServCellIndex", HFILL }},
38184     { &hf_nr_rrc_maxMeasFreqsSCG_NR,
38185       { "maxMeasFreqsSCG-NR", "nr-rrc.maxMeasFreqsSCG_NR",
38186         FT_UINT32, BASE_DEC, NULL, 0,
38187         "INTEGER_1_maxMeasFreqsMN", HFILL }},
38188     { &hf_nr_rrc_maxMeasIdentitiesSCG_NR,
38189       { "maxMeasIdentitiesSCG-NR", "nr-rrc.maxMeasIdentitiesSCG_NR",
38190         FT_UINT32, BASE_DEC, NULL, 0,
38191         "INTEGER_1_maxMeasIdentitiesMN", HFILL }},
38192     { &hf_nr_rrc_BandCombinationInfoList_item,
38193       { "BandCombinationInfo", "nr-rrc.BandCombinationInfo_element",
38194         FT_NONE, BASE_NONE, NULL, 0,
38195         NULL, HFILL }},
38196     { &hf_nr_rrc_allowedFeatureSetsList,
38197       { "allowedFeatureSetsList", "nr-rrc.allowedFeatureSetsList",
38198         FT_UINT32, BASE_DEC, NULL, 0,
38199         "SEQUENCE_SIZE_1_maxFeatureSetsPerBand_OF_FeatureSetEntryIndex", HFILL }},
38200     { &hf_nr_rrc_allowedFeatureSetsList_item,
38201       { "FeatureSetEntryIndex", "nr-rrc.FeatureSetEntryIndex",
38202         FT_UINT32, BASE_DEC, NULL, 0,
38203         NULL, HFILL }},
38204     { &hf_nr_rrc_drx_LongCycleStartOffset,
38205       { "drx-LongCycleStartOffset", "nr-rrc.drx_LongCycleStartOffset",
38206         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_T_drx_LongCycleStartOffset_vals_ext, 0,
38207         NULL, HFILL }},
38208     { &hf_nr_rrc_ms10,
38209       { "ms10", "nr-rrc.ms10",
38210         FT_UINT32, BASE_DEC, NULL, 0,
38211         "INTEGER_0_9", HFILL }},
38212     { &hf_nr_rrc_ms20,
38213       { "ms20", "nr-rrc.ms20",
38214         FT_UINT32, BASE_DEC, NULL, 0,
38215         "INTEGER_0_19", HFILL }},
38216     { &hf_nr_rrc_ms32,
38217       { "ms32", "nr-rrc.ms32",
38218         FT_UINT32, BASE_DEC, NULL, 0,
38219         "INTEGER_0_31", HFILL }},
38220     { &hf_nr_rrc_ms40,
38221       { "ms40", "nr-rrc.ms40",
38222         FT_UINT32, BASE_DEC, NULL, 0,
38223         "INTEGER_0_39", HFILL }},
38224     { &hf_nr_rrc_ms60,
38225       { "ms60", "nr-rrc.ms60",
38226         FT_UINT32, BASE_DEC, NULL, 0,
38227         "INTEGER_0_59", HFILL }},
38228     { &hf_nr_rrc_ms64,
38229       { "ms64", "nr-rrc.ms64",
38230         FT_UINT32, BASE_DEC, NULL, 0,
38231         "INTEGER_0_63", HFILL }},
38232     { &hf_nr_rrc_ms70,
38233       { "ms70", "nr-rrc.ms70",
38234         FT_UINT32, BASE_DEC, NULL, 0,
38235         "INTEGER_0_69", HFILL }},
38236     { &hf_nr_rrc_ms80,
38237       { "ms80", "nr-rrc.ms80",
38238         FT_UINT32, BASE_DEC, NULL, 0,
38239         "INTEGER_0_79", HFILL }},
38240     { &hf_nr_rrc_ms128,
38241       { "ms128", "nr-rrc.ms128",
38242         FT_UINT32, BASE_DEC, NULL, 0,
38243         "INTEGER_0_127", HFILL }},
38244     { &hf_nr_rrc_ms160,
38245       { "ms160", "nr-rrc.ms160",
38246         FT_UINT32, BASE_DEC, NULL, 0,
38247         "INTEGER_0_159", HFILL }},
38248     { &hf_nr_rrc_ms256,
38249       { "ms256", "nr-rrc.ms256",
38250         FT_UINT32, BASE_DEC, NULL, 0,
38251         "INTEGER_0_255", HFILL }},
38252     { &hf_nr_rrc_ms320,
38253       { "ms320", "nr-rrc.ms320",
38254         FT_UINT32, BASE_DEC, NULL, 0,
38255         "INTEGER_0_319", HFILL }},
38256     { &hf_nr_rrc_ms512,
38257       { "ms512", "nr-rrc.ms512",
38258         FT_UINT32, BASE_DEC, NULL, 0,
38259         "INTEGER_0_511", HFILL }},
38260     { &hf_nr_rrc_ms640,
38261       { "ms640", "nr-rrc.ms640",
38262         FT_UINT32, BASE_DEC, NULL, 0,
38263         "INTEGER_0_639", HFILL }},
38264     { &hf_nr_rrc_ms1024,
38265       { "ms1024", "nr-rrc.ms1024",
38266         FT_UINT32, BASE_DEC, NULL, 0,
38267         "INTEGER_0_1023", HFILL }},
38268     { &hf_nr_rrc_ms1280,
38269       { "ms1280", "nr-rrc.ms1280",
38270         FT_UINT32, BASE_DEC, NULL, 0,
38271         "INTEGER_0_1279", HFILL }},
38272     { &hf_nr_rrc_ms2048,
38273       { "ms2048", "nr-rrc.ms2048",
38274         FT_UINT32, BASE_DEC, NULL, 0,
38275         "INTEGER_0_2047", HFILL }},
38276     { &hf_nr_rrc_ms2560,
38277       { "ms2560", "nr-rrc.ms2560",
38278         FT_UINT32, BASE_DEC, NULL, 0,
38279         "INTEGER_0_2559", HFILL }},
38280     { &hf_nr_rrc_ms5120,
38281       { "ms5120", "nr-rrc.ms5120",
38282         FT_UINT32, BASE_DEC, NULL, 0,
38283         "INTEGER_0_5119", HFILL }},
38284     { &hf_nr_rrc_ms10240,
38285       { "ms10240", "nr-rrc.ms10240",
38286         FT_UINT32, BASE_DEC, NULL, 0,
38287         "INTEGER_0_10239", HFILL }},
38288     { &hf_nr_rrc_shortDRX,
38289       { "shortDRX", "nr-rrc.shortDRX_element",
38290         FT_NONE, BASE_NONE, NULL, 0,
38291         NULL, HFILL }},
38292     { &hf_nr_rrc_drx_ShortCycle,
38293       { "drx-ShortCycle", "nr-rrc.drx_ShortCycle",
38294         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_T_drx_ShortCycle_vals_ext, 0,
38295         NULL, HFILL }},
38296     { &hf_nr_rrc_drx_ShortCycleTimer,
38297       { "drx-ShortCycleTimer", "nr-rrc.drx_ShortCycleTimer",
38298         FT_UINT32, BASE_DEC, NULL, 0,
38299         "INTEGER_1_16", HFILL }},
38300     { &hf_nr_rrc_measuredFrequenciesMN,
38301       { "measuredFrequenciesMN", "nr-rrc.measuredFrequenciesMN",
38302         FT_UINT32, BASE_DEC, NULL, 0,
38303         "SEQUENCE_SIZE_1_maxMeasFreqsMN_OF_NR_FreqInfo", HFILL }},
38304     { &hf_nr_rrc_measuredFrequenciesMN_item,
38305       { "NR-FreqInfo", "nr-rrc.NR_FreqInfo_element",
38306         FT_NONE, BASE_NONE, NULL, 0,
38307         NULL, HFILL }},
38308     { &hf_nr_rrc_measGapConfig,
38309       { "measGapConfig", "nr-rrc.measGapConfig",
38310         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_measGapConfig_vals), 0,
38311         NULL, HFILL }},
38312     { &hf_nr_rrc_release,
38313       { "release", "nr-rrc.release_element",
38314         FT_NONE, BASE_NONE, NULL, 0,
38315         NULL, HFILL }},
38316     { &hf_nr_rrc_setup,
38317       { "setup", "nr-rrc.setup_element",
38318         FT_NONE, BASE_NONE, NULL, 0,
38319         "GapConfig", HFILL }},
38320     { &hf_nr_rrc_gapPurpose,
38321       { "gapPurpose", "nr-rrc.gapPurpose",
38322         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_gapPurpose_vals), 0,
38323         NULL, HFILL }},
38324     { &hf_nr_rrc_affectedCarrierFreqCombInfoListMRDC,
38325       { "affectedCarrierFreqCombInfoListMRDC", "nr-rrc.affectedCarrierFreqCombInfoListMRDC",
38326         FT_UINT32, BASE_DEC, NULL, 0,
38327         "SEQUENCE_SIZE_1_maxNrofCombIDC_OF_AffectedCarrierFreqCombInfoMRDC", HFILL }},
38328     { &hf_nr_rrc_affectedCarrierFreqCombInfoListMRDC_item,
38329       { "AffectedCarrierFreqCombInfoMRDC", "nr-rrc.AffectedCarrierFreqCombInfoMRDC_element",
38330         FT_NONE, BASE_NONE, NULL, 0,
38331         NULL, HFILL }},
38332     { &hf_nr_rrc_victimSystemType,
38333       { "victimSystemType", "nr-rrc.victimSystemType_element",
38334         FT_NONE, BASE_NONE, NULL, 0,
38335         NULL, HFILL }},
38336     { &hf_nr_rrc_interferenceDirectionMRDC,
38337       { "interferenceDirectionMRDC", "nr-rrc.interferenceDirectionMRDC",
38338         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_interferenceDirectionMRDC_vals), 0,
38339         NULL, HFILL }},
38340     { &hf_nr_rrc_affectedCarrierFreqCombMRDC,
38341       { "affectedCarrierFreqCombMRDC", "nr-rrc.affectedCarrierFreqCombMRDC_element",
38342         FT_NONE, BASE_NONE, NULL, 0,
38343         NULL, HFILL }},
38344     { &hf_nr_rrc_affectedCarrierFreqCombEUTRA,
38345       { "affectedCarrierFreqCombEUTRA", "nr-rrc.affectedCarrierFreqCombEUTRA",
38346         FT_UINT32, BASE_DEC, NULL, 0,
38347         NULL, HFILL }},
38348     { &hf_nr_rrc_affectedCarrierFreqCombNR,
38349       { "affectedCarrierFreqCombNR", "nr-rrc.affectedCarrierFreqCombNR",
38350         FT_UINT32, BASE_DEC, NULL, 0,
38351         NULL, HFILL }},
38352     { &hf_nr_rrc_gps,
38353       { "gps", "nr-rrc.gps",
38354         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_gps_vals), 0,
38355         NULL, HFILL }},
38356     { &hf_nr_rrc_glonass,
38357       { "glonass", "nr-rrc.glonass",
38358         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_glonass_vals), 0,
38359         NULL, HFILL }},
38360     { &hf_nr_rrc_bds,
38361       { "bds", "nr-rrc.bds",
38362         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_bds_vals), 0,
38363         NULL, HFILL }},
38364     { &hf_nr_rrc_galileo,
38365       { "galileo", "nr-rrc.galileo",
38366         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_galileo_vals), 0,
38367         NULL, HFILL }},
38368     { &hf_nr_rrc_wlan,
38369       { "wlan", "nr-rrc.wlan",
38370         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_wlan_vals), 0,
38371         NULL, HFILL }},
38372     { &hf_nr_rrc_bluetooth,
38373       { "bluetooth", "nr-rrc.bluetooth",
38374         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_bluetooth_vals), 0,
38375         NULL, HFILL }},
38376     { &hf_nr_rrc_AffectedCarrierFreqCombEUTRA_item,
38377       { "ARFCN-ValueEUTRA", "nr-rrc.ARFCN_ValueEUTRA",
38378         FT_UINT32, BASE_DEC, NULL, 0,
38379         NULL, HFILL }},
38380     { &hf_nr_rrc_AffectedCarrierFreqCombNR_item,
38381       { "ARFCN-ValueNR", "nr-rrc.ARFCN_ValueNR",
38382         FT_UINT32, BASE_DEC, NULL, 0,
38383         NULL, HFILL }},
38384     { &hf_nr_rrc_criticalExtensions_04,
38385       { "criticalExtensions", "nr-rrc.criticalExtensions",
38386         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_04_vals), 0,
38387         "T_criticalExtensions_04", HFILL }},
38388     { &hf_nr_rrc_c1_04,
38389       { "c1", "nr-rrc.c1",
38390         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_c1_04_vals), 0,
38391         "T_c1_04", HFILL }},
38392     { &hf_nr_rrc_measTimingConf,
38393       { "measTimingConf", "nr-rrc.measTimingConf_element",
38394         FT_NONE, BASE_NONE, NULL, 0,
38395         "MeasurementTimingConfiguration_IEs", HFILL }},
38396     { &hf_nr_rrc_criticalExtensionsFuture_04,
38397       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
38398         FT_NONE, BASE_NONE, NULL, 0,
38399         "T_criticalExtensionsFuture_04", HFILL }},
38400     { &hf_nr_rrc_measTiming,
38401       { "measTiming", "nr-rrc.measTiming",
38402         FT_UINT32, BASE_DEC, NULL, 0,
38403         "MeasTimingList", HFILL }},
38404     { &hf_nr_rrc_nonCriticalExtension_04,
38405       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
38406         FT_NONE, BASE_NONE, NULL, 0,
38407         "T_nonCriticalExtension_04", HFILL }},
38408     { &hf_nr_rrc_MeasTimingList_item,
38409       { "MeasTiming", "nr-rrc.MeasTiming_element",
38410         FT_NONE, BASE_NONE, NULL, 0,
38411         NULL, HFILL }},
38412     { &hf_nr_rrc_frequencyAndTiming,
38413       { "frequencyAndTiming", "nr-rrc.frequencyAndTiming_element",
38414         FT_NONE, BASE_NONE, NULL, 0,
38415         NULL, HFILL }},
38416     { &hf_nr_rrc_carrierFreq,
38417       { "carrierFreq", "nr-rrc.carrierFreq",
38418         FT_UINT32, BASE_DEC, NULL, 0,
38419         "ARFCN_ValueNR", HFILL }},
38420     { &hf_nr_rrc_ssbSubcarrierSpacing,
38421       { "ssbSubcarrierSpacing", "nr-rrc.ssbSubcarrierSpacing",
38422         FT_UINT32, BASE_DEC, VALS(nr_rrc_SubcarrierSpacing_vals), 0,
38423         "SubcarrierSpacing", HFILL }},
38424     { &hf_nr_rrc_ssb_MeasurementTimingConfiguration,
38425       { "ssb-MeasurementTimingConfiguration", "nr-rrc.ssb_MeasurementTimingConfiguration_element",
38426         FT_NONE, BASE_NONE, NULL, 0,
38427         "SSB_MTC", HFILL }},
38428     { &hf_nr_rrc_ss_RSSI_Measurement,
38429       { "ss-RSSI-Measurement", "nr-rrc.ss_RSSI_Measurement_element",
38430         FT_NONE, BASE_NONE, NULL, 0,
38431         NULL, HFILL }},
38432     { &hf_nr_rrc_criticalExtensions_05,
38433       { "criticalExtensions", "nr-rrc.criticalExtensions",
38434         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_05_vals), 0,
38435         "T_criticalExtensions_05", HFILL }},
38436     { &hf_nr_rrc_c1_05,
38437       { "c1", "nr-rrc.c1",
38438         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_c1_05_vals), 0,
38439         "T_c1_05", HFILL }},
38440     { &hf_nr_rrc_ueRadioPagingInformation,
38441       { "ueRadioPagingInformation", "nr-rrc.ueRadioPagingInformation_element",
38442         FT_NONE, BASE_NONE, NULL, 0,
38443         "UERadioPagingInformation_IEs", HFILL }},
38444     { &hf_nr_rrc_spare7,
38445       { "spare7", "nr-rrc.spare7_element",
38446         FT_NONE, BASE_NONE, NULL, 0,
38447         NULL, HFILL }},
38448     { &hf_nr_rrc_spare6,
38449       { "spare6", "nr-rrc.spare6_element",
38450         FT_NONE, BASE_NONE, NULL, 0,
38451         NULL, HFILL }},
38452     { &hf_nr_rrc_spare5,
38453       { "spare5", "nr-rrc.spare5_element",
38454         FT_NONE, BASE_NONE, NULL, 0,
38455         NULL, HFILL }},
38456     { &hf_nr_rrc_spare4,
38457       { "spare4", "nr-rrc.spare4_element",
38458         FT_NONE, BASE_NONE, NULL, 0,
38459         NULL, HFILL }},
38460     { &hf_nr_rrc_criticalExtensionsFuture_05,
38461       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
38462         FT_NONE, BASE_NONE, NULL, 0,
38463         "T_criticalExtensionsFuture_05", HFILL }},
38464     { &hf_nr_rrc_supportedBandListNRForPaging,
38465       { "supportedBandListNRForPaging", "nr-rrc.supportedBandListNRForPaging",
38466         FT_UINT32, BASE_DEC, NULL, 0,
38467         "SEQUENCE_SIZE_1_maxBands_OF_FreqBandIndicatorNR", HFILL }},
38468     { &hf_nr_rrc_supportedBandListNRForPaging_item,
38469       { "FreqBandIndicatorNR", "nr-rrc.FreqBandIndicatorNR",
38470         FT_UINT32, BASE_DEC, NULL, 0,
38471         NULL, HFILL }},
38472     { &hf_nr_rrc_nonCriticalExtension_05,
38473       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
38474         FT_NONE, BASE_NONE, NULL, 0,
38475         "T_nonCriticalExtension_05", HFILL }},
38476     { &hf_nr_rrc_criticalExtensions_06,
38477       { "criticalExtensions", "nr-rrc.criticalExtensions",
38478         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_06_vals), 0,
38479         "T_criticalExtensions_06", HFILL }},
38480     { &hf_nr_rrc_c1_06,
38481       { "c1", "nr-rrc.c1",
38482         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_c1_06_vals), 0,
38483         "T_c1_06", HFILL }},
38484     { &hf_nr_rrc_ueRadioAccessCapabilityInformation,
38485       { "ueRadioAccessCapabilityInformation", "nr-rrc.ueRadioAccessCapabilityInformation_element",
38486         FT_NONE, BASE_NONE, NULL, 0,
38487         "UERadioAccessCapabilityInformation_IEs", HFILL }},
38488     { &hf_nr_rrc_criticalExtensionsFuture_06,
38489       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
38490         FT_NONE, BASE_NONE, NULL, 0,
38491         "T_criticalExtensionsFuture_06", HFILL }},
38492     { &hf_nr_rrc_ue_RadioAccessCapabilityInfo,
38493       { "ue-RadioAccessCapabilityInfo", "nr-rrc.ue_RadioAccessCapabilityInfo",
38494         FT_BYTES, BASE_NONE, NULL, 0,
38495         NULL, HFILL }},
38496     { &hf_nr_rrc_nonCriticalExtension_06,
38497       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
38498         FT_NONE, BASE_NONE, NULL, 0,
38499         "T_nonCriticalExtension_06", HFILL }},
38500     { &hf_nr_rrc_message,
38501       { "message", "nr-rrc.message",
38502         FT_UINT32, BASE_DEC, VALS(nr_rrc_BCCH_BCH_MessageType_vals), 0,
38503         "BCCH_BCH_MessageType", HFILL }},
38504     { &hf_nr_rrc_mib,
38505       { "mib", "nr-rrc.mib_element",
38506         FT_NONE, BASE_NONE, NULL, 0,
38507         NULL, HFILL }},
38508     { &hf_nr_rrc_messageClassExtension,
38509       { "messageClassExtension", "nr-rrc.messageClassExtension_element",
38510         FT_NONE, BASE_NONE, NULL, 0,
38511         NULL, HFILL }},
38512     { &hf_nr_rrc_message_01,
38513       { "message", "nr-rrc.message",
38514         FT_UINT32, BASE_DEC, VALS(nr_rrc_BCCH_DL_SCH_MessageType_vals), 0,
38515         "BCCH_DL_SCH_MessageType", HFILL }},
38516     { &hf_nr_rrc_c1_07,
38517       { "c1", "nr-rrc.c1",
38518         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_c1_07_vals), 0,
38519         "T_c1_07", HFILL }},
38520     { &hf_nr_rrc_systemInformation,
38521       { "systemInformation", "nr-rrc.systemInformation_element",
38522         FT_NONE, BASE_NONE, NULL, 0,
38523         NULL, HFILL }},
38524     { &hf_nr_rrc_systemInformationBlockType1,
38525       { "systemInformationBlockType1", "nr-rrc.systemInformationBlockType1_element",
38526         FT_NONE, BASE_NONE, NULL, 0,
38527         "SIB1", HFILL }},
38528     { &hf_nr_rrc_messageClassExtension_01,
38529       { "messageClassExtension", "nr-rrc.messageClassExtension_element",
38530         FT_NONE, BASE_NONE, NULL, 0,
38531         "T_messageClassExtension_01", HFILL }},
38532     { &hf_nr_rrc_message_02,
38533       { "message", "nr-rrc.message",
38534         FT_UINT32, BASE_DEC, VALS(nr_rrc_DL_CCCH_MessageType_vals), 0,
38535         "DL_CCCH_MessageType", HFILL }},
38536     { &hf_nr_rrc_c1_08,
38537       { "c1", "nr-rrc.c1",
38538         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_c1_08_vals), 0,
38539         "T_c1_08", HFILL }},
38540     { &hf_nr_rrc_rrcReject,
38541       { "rrcReject", "nr-rrc.rrcReject_element",
38542         FT_NONE, BASE_NONE, NULL, 0,
38543         NULL, HFILL }},
38544     { &hf_nr_rrc_rrcSetup,
38545       { "rrcSetup", "nr-rrc.rrcSetup_element",
38546         FT_NONE, BASE_NONE, NULL, 0,
38547         NULL, HFILL }},
38548     { &hf_nr_rrc_messageClassExtension_02,
38549       { "messageClassExtension", "nr-rrc.messageClassExtension_element",
38550         FT_NONE, BASE_NONE, NULL, 0,
38551         "T_messageClassExtension_02", HFILL }},
38552     { &hf_nr_rrc_message_03,
38553       { "message", "nr-rrc.message",
38554         FT_UINT32, BASE_DEC, VALS(nr_rrc_DL_DCCH_MessageType_vals), 0,
38555         "DL_DCCH_MessageType", HFILL }},
38556     { &hf_nr_rrc_c1_09,
38557       { "c1", "nr-rrc.c1",
38558         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_c1_09_vals), 0,
38559         "T_c1_09", HFILL }},
38560     { &hf_nr_rrc_rrcReconfiguration_01,
38561       { "rrcReconfiguration", "nr-rrc.rrcReconfiguration_element",
38562         FT_NONE, BASE_NONE, NULL, 0,
38563         NULL, HFILL }},
38564     { &hf_nr_rrc_rrcResume,
38565       { "rrcResume", "nr-rrc.rrcResume_element",
38566         FT_NONE, BASE_NONE, NULL, 0,
38567         NULL, HFILL }},
38568     { &hf_nr_rrc_rrcRelease,
38569       { "rrcRelease", "nr-rrc.rrcRelease_element",
38570         FT_NONE, BASE_NONE, NULL, 0,
38571         NULL, HFILL }},
38572     { &hf_nr_rrc_rrcReestablishment,
38573       { "rrcReestablishment", "nr-rrc.rrcReestablishment_element",
38574         FT_NONE, BASE_NONE, NULL, 0,
38575         NULL, HFILL }},
38576     { &hf_nr_rrc_securityModeCommand,
38577       { "securityModeCommand", "nr-rrc.securityModeCommand_element",
38578         FT_NONE, BASE_NONE, NULL, 0,
38579         NULL, HFILL }},
38580     { &hf_nr_rrc_dlInformationTransfer,
38581       { "dlInformationTransfer", "nr-rrc.dlInformationTransfer_element",
38582         FT_NONE, BASE_NONE, NULL, 0,
38583         NULL, HFILL }},
38584     { &hf_nr_rrc_ueCapabilityEnquiry,
38585       { "ueCapabilityEnquiry", "nr-rrc.ueCapabilityEnquiry_element",
38586         FT_NONE, BASE_NONE, NULL, 0,
38587         NULL, HFILL }},
38588     { &hf_nr_rrc_counterCheck,
38589       { "counterCheck", "nr-rrc.counterCheck_element",
38590         FT_NONE, BASE_NONE, NULL, 0,
38591         NULL, HFILL }},
38592     { &hf_nr_rrc_mobilityFromNRCommand,
38593       { "mobilityFromNRCommand", "nr-rrc.mobilityFromNRCommand_element",
38594         FT_NONE, BASE_NONE, NULL, 0,
38595         NULL, HFILL }},
38596     { &hf_nr_rrc_messageClassExtension_03,
38597       { "messageClassExtension", "nr-rrc.messageClassExtension_element",
38598         FT_NONE, BASE_NONE, NULL, 0,
38599         "T_messageClassExtension_03", HFILL }},
38600     { &hf_nr_rrc_message_04,
38601       { "message", "nr-rrc.message",
38602         FT_UINT32, BASE_DEC, VALS(nr_rrc_PCCH_MessageType_vals), 0,
38603         "PCCH_MessageType", HFILL }},
38604     { &hf_nr_rrc_c1_10,
38605       { "c1", "nr-rrc.c1",
38606         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_c1_10_vals), 0,
38607         "T_c1_10", HFILL }},
38608     { &hf_nr_rrc_paging,
38609       { "paging", "nr-rrc.paging_element",
38610         FT_NONE, BASE_NONE, NULL, 0,
38611         NULL, HFILL }},
38612     { &hf_nr_rrc_messageClassExtension_04,
38613       { "messageClassExtension", "nr-rrc.messageClassExtension_element",
38614         FT_NONE, BASE_NONE, NULL, 0,
38615         "T_messageClassExtension_04", HFILL }},
38616     { &hf_nr_rrc_message_05,
38617       { "message", "nr-rrc.message",
38618         FT_UINT32, BASE_DEC, VALS(nr_rrc_UL_CCCH_MessageType_vals), 0,
38619         "UL_CCCH_MessageType", HFILL }},
38620     { &hf_nr_rrc_c1_11,
38621       { "c1", "nr-rrc.c1",
38622         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_c1_11_vals), 0,
38623         "T_c1_11", HFILL }},
38624     { &hf_nr_rrc_rrcSetupRequest,
38625       { "rrcSetupRequest", "nr-rrc.rrcSetupRequest_element",
38626         FT_NONE, BASE_NONE, NULL, 0,
38627         NULL, HFILL }},
38628     { &hf_nr_rrc_rrcResumeRequest,
38629       { "rrcResumeRequest", "nr-rrc.rrcResumeRequest_element",
38630         FT_NONE, BASE_NONE, NULL, 0,
38631         NULL, HFILL }},
38632     { &hf_nr_rrc_rrcReestablishmentRequest,
38633       { "rrcReestablishmentRequest", "nr-rrc.rrcReestablishmentRequest_element",
38634         FT_NONE, BASE_NONE, NULL, 0,
38635         NULL, HFILL }},
38636     { &hf_nr_rrc_rrcSystemInfoRequest,
38637       { "rrcSystemInfoRequest", "nr-rrc.rrcSystemInfoRequest_element",
38638         FT_NONE, BASE_NONE, NULL, 0,
38639         NULL, HFILL }},
38640     { &hf_nr_rrc_messageClassExtension_05,
38641       { "messageClassExtension", "nr-rrc.messageClassExtension_element",
38642         FT_NONE, BASE_NONE, NULL, 0,
38643         "T_messageClassExtension_05", HFILL }},
38644     { &hf_nr_rrc_message_06,
38645       { "message", "nr-rrc.message",
38646         FT_UINT32, BASE_DEC, VALS(nr_rrc_UL_CCCH1_MessageType_vals), 0,
38647         "UL_CCCH1_MessageType", HFILL }},
38648     { &hf_nr_rrc_c1_12,
38649       { "c1", "nr-rrc.c1",
38650         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_c1_12_vals), 0,
38651         "T_c1_12", HFILL }},
38652     { &hf_nr_rrc_rrcResumeRequest1,
38653       { "rrcResumeRequest1", "nr-rrc.rrcResumeRequest1_element",
38654         FT_NONE, BASE_NONE, NULL, 0,
38655         NULL, HFILL }},
38656     { &hf_nr_rrc_messageClassExtension_06,
38657       { "messageClassExtension", "nr-rrc.messageClassExtension_element",
38658         FT_NONE, BASE_NONE, NULL, 0,
38659         "T_messageClassExtension_06", HFILL }},
38660     { &hf_nr_rrc_message_07,
38661       { "message", "nr-rrc.message",
38662         FT_UINT32, BASE_DEC, VALS(nr_rrc_UL_DCCH_MessageType_vals), 0,
38663         "UL_DCCH_MessageType", HFILL }},
38664     { &hf_nr_rrc_c1_13,
38665       { "c1", "nr-rrc.c1",
38666         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_c1_13_vals), 0,
38667         "T_c1_13", HFILL }},
38668     { &hf_nr_rrc_measurementReport,
38669       { "measurementReport", "nr-rrc.measurementReport_element",
38670         FT_NONE, BASE_NONE, NULL, 0,
38671         NULL, HFILL }},
38672     { &hf_nr_rrc_rrcReconfigurationComplete,
38673       { "rrcReconfigurationComplete", "nr-rrc.rrcReconfigurationComplete_element",
38674         FT_NONE, BASE_NONE, NULL, 0,
38675         NULL, HFILL }},
38676     { &hf_nr_rrc_rrcSetupComplete,
38677       { "rrcSetupComplete", "nr-rrc.rrcSetupComplete_element",
38678         FT_NONE, BASE_NONE, NULL, 0,
38679         NULL, HFILL }},
38680     { &hf_nr_rrc_rrcReestablishmentComplete,
38681       { "rrcReestablishmentComplete", "nr-rrc.rrcReestablishmentComplete_element",
38682         FT_NONE, BASE_NONE, NULL, 0,
38683         NULL, HFILL }},
38684     { &hf_nr_rrc_rrcResumeComplete,
38685       { "rrcResumeComplete", "nr-rrc.rrcResumeComplete_element",
38686         FT_NONE, BASE_NONE, NULL, 0,
38687         NULL, HFILL }},
38688     { &hf_nr_rrc_securityModeComplete,
38689       { "securityModeComplete", "nr-rrc.securityModeComplete_element",
38690         FT_NONE, BASE_NONE, NULL, 0,
38691         NULL, HFILL }},
38692     { &hf_nr_rrc_securityModeFailure,
38693       { "securityModeFailure", "nr-rrc.securityModeFailure_element",
38694         FT_NONE, BASE_NONE, NULL, 0,
38695         NULL, HFILL }},
38696     { &hf_nr_rrc_ulInformationTransfer,
38697       { "ulInformationTransfer", "nr-rrc.ulInformationTransfer_element",
38698         FT_NONE, BASE_NONE, NULL, 0,
38699         NULL, HFILL }},
38700     { &hf_nr_rrc_locationMeasurementIndication,
38701       { "locationMeasurementIndication", "nr-rrc.locationMeasurementIndication_element",
38702         FT_NONE, BASE_NONE, NULL, 0,
38703         NULL, HFILL }},
38704     { &hf_nr_rrc_ueCapabilityInformation,
38705       { "ueCapabilityInformation", "nr-rrc.ueCapabilityInformation_element",
38706         FT_NONE, BASE_NONE, NULL, 0,
38707         NULL, HFILL }},
38708     { &hf_nr_rrc_counterCheckResponse,
38709       { "counterCheckResponse", "nr-rrc.counterCheckResponse_element",
38710         FT_NONE, BASE_NONE, NULL, 0,
38711         NULL, HFILL }},
38712     { &hf_nr_rrc_ueAssistanceInformation,
38713       { "ueAssistanceInformation", "nr-rrc.ueAssistanceInformation_element",
38714         FT_NONE, BASE_NONE, NULL, 0,
38715         NULL, HFILL }},
38716     { &hf_nr_rrc_messageClassExtension_07,
38717       { "messageClassExtension", "nr-rrc.messageClassExtension_element",
38718         FT_NONE, BASE_NONE, NULL, 0,
38719         "T_messageClassExtension_07", HFILL }},
38720     { &hf_nr_rrc_rrc_TransactionIdentifier,
38721       { "rrc-TransactionIdentifier", "nr-rrc.rrc_TransactionIdentifier",
38722         FT_UINT32, BASE_DEC, NULL, 0,
38723         NULL, HFILL }},
38724     { &hf_nr_rrc_criticalExtensions_07,
38725       { "criticalExtensions", "nr-rrc.criticalExtensions",
38726         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_07_vals), 0,
38727         "T_criticalExtensions_07", HFILL }},
38728     { &hf_nr_rrc_counterCheck_01,
38729       { "counterCheck", "nr-rrc.counterCheck_element",
38730         FT_NONE, BASE_NONE, NULL, 0,
38731         "CounterCheck_IEs", HFILL }},
38732     { &hf_nr_rrc_criticalExtensionsFuture_07,
38733       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
38734         FT_NONE, BASE_NONE, NULL, 0,
38735         "T_criticalExtensionsFuture_07", HFILL }},
38736     { &hf_nr_rrc_drb_CountMSB_InfoList,
38737       { "drb-CountMSB-InfoList", "nr-rrc.drb_CountMSB_InfoList",
38738         FT_UINT32, BASE_DEC, NULL, 0,
38739         NULL, HFILL }},
38740     { &hf_nr_rrc_lateNonCriticalExtension,
38741       { "lateNonCriticalExtension", "nr-rrc.lateNonCriticalExtension",
38742         FT_BYTES, BASE_NONE, NULL, 0,
38743         "OCTET_STRING", HFILL }},
38744     { &hf_nr_rrc_nonCriticalExtension_07,
38745       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
38746         FT_NONE, BASE_NONE, NULL, 0,
38747         "T_nonCriticalExtension_07", HFILL }},
38748     { &hf_nr_rrc_DRB_CountMSB_InfoList_item,
38749       { "DRB-CountMSB-Info", "nr-rrc.DRB_CountMSB_Info_element",
38750         FT_NONE, BASE_NONE, NULL, 0,
38751         NULL, HFILL }},
38752     { &hf_nr_rrc_drb_Identity,
38753       { "drb-Identity", "nr-rrc.drb_Identity",
38754         FT_UINT32, BASE_DEC, NULL, 0,
38755         NULL, HFILL }},
38756     { &hf_nr_rrc_countMSB_Uplink,
38757       { "countMSB-Uplink", "nr-rrc.countMSB_Uplink",
38758         FT_UINT32, BASE_DEC, NULL, 0,
38759         "INTEGER_0_33554431", HFILL }},
38760     { &hf_nr_rrc_countMSB_Downlink,
38761       { "countMSB-Downlink", "nr-rrc.countMSB_Downlink",
38762         FT_UINT32, BASE_DEC, NULL, 0,
38763         "INTEGER_0_33554431", HFILL }},
38764     { &hf_nr_rrc_criticalExtensions_08,
38765       { "criticalExtensions", "nr-rrc.criticalExtensions",
38766         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_08_vals), 0,
38767         "T_criticalExtensions_08", HFILL }},
38768     { &hf_nr_rrc_counterCheckResponse_01,
38769       { "counterCheckResponse", "nr-rrc.counterCheckResponse_element",
38770         FT_NONE, BASE_NONE, NULL, 0,
38771         "CounterCheckResponse_IEs", HFILL }},
38772     { &hf_nr_rrc_criticalExtensionsFuture_08,
38773       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
38774         FT_NONE, BASE_NONE, NULL, 0,
38775         "T_criticalExtensionsFuture_08", HFILL }},
38776     { &hf_nr_rrc_drb_CountInfoList,
38777       { "drb-CountInfoList", "nr-rrc.drb_CountInfoList",
38778         FT_UINT32, BASE_DEC, NULL, 0,
38779         NULL, HFILL }},
38780     { &hf_nr_rrc_nonCriticalExtension_08,
38781       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
38782         FT_NONE, BASE_NONE, NULL, 0,
38783         "T_nonCriticalExtension_08", HFILL }},
38784     { &hf_nr_rrc_DRB_CountInfoList_item,
38785       { "DRB-CountInfo", "nr-rrc.DRB_CountInfo_element",
38786         FT_NONE, BASE_NONE, NULL, 0,
38787         NULL, HFILL }},
38788     { &hf_nr_rrc_count_Uplink,
38789       { "count-Uplink", "nr-rrc.count_Uplink",
38790         FT_UINT32, BASE_DEC, NULL, 0,
38791         "INTEGER_0_4294967295", HFILL }},
38792     { &hf_nr_rrc_count_Downlink,
38793       { "count-Downlink", "nr-rrc.count_Downlink",
38794         FT_UINT32, BASE_DEC, NULL, 0,
38795         "INTEGER_0_4294967295", HFILL }},
38796     { &hf_nr_rrc_criticalExtensions_09,
38797       { "criticalExtensions", "nr-rrc.criticalExtensions",
38798         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_09_vals), 0,
38799         "T_criticalExtensions_09", HFILL }},
38800     { &hf_nr_rrc_dlInformationTransfer_01,
38801       { "dlInformationTransfer", "nr-rrc.dlInformationTransfer_element",
38802         FT_NONE, BASE_NONE, NULL, 0,
38803         "DLInformationTransfer_IEs", HFILL }},
38804     { &hf_nr_rrc_criticalExtensionsFuture_09,
38805       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
38806         FT_NONE, BASE_NONE, NULL, 0,
38807         "T_criticalExtensionsFuture_09", HFILL }},
38808     { &hf_nr_rrc_dedicatedNAS_Message,
38809       { "dedicatedNAS-Message", "nr-rrc.dedicatedNAS_Message",
38810         FT_BYTES, BASE_NONE, NULL, 0,
38811         NULL, HFILL }},
38812     { &hf_nr_rrc_nonCriticalExtension_09,
38813       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
38814         FT_NONE, BASE_NONE, NULL, 0,
38815         "T_nonCriticalExtension_09", HFILL }},
38816     { &hf_nr_rrc_criticalExtensions_10,
38817       { "criticalExtensions", "nr-rrc.criticalExtensions",
38818         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_10_vals), 0,
38819         "T_criticalExtensions_10", HFILL }},
38820     { &hf_nr_rrc_locationMeasurementIndication_01,
38821       { "locationMeasurementIndication", "nr-rrc.locationMeasurementIndication_element",
38822         FT_NONE, BASE_NONE, NULL, 0,
38823         "LocationMeasurementIndication_IEs", HFILL }},
38824     { &hf_nr_rrc_criticalExtensionsFuture_10,
38825       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
38826         FT_NONE, BASE_NONE, NULL, 0,
38827         "T_criticalExtensionsFuture_10", HFILL }},
38828     { &hf_nr_rrc_measurementIndication,
38829       { "measurementIndication", "nr-rrc.measurementIndication",
38830         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_measurementIndication_vals), 0,
38831         NULL, HFILL }},
38832     { &hf_nr_rrc_setup_01,
38833       { "setup", "nr-rrc.setup",
38834         FT_UINT32, BASE_DEC, VALS(nr_rrc_LocationMeasurementInfo_vals), 0,
38835         "LocationMeasurementInfo", HFILL }},
38836     { &hf_nr_rrc_nonCriticalExtension_10,
38837       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
38838         FT_NONE, BASE_NONE, NULL, 0,
38839         "T_nonCriticalExtension_10", HFILL }},
38840     { &hf_nr_rrc_systemFrameNumber,
38841       { "systemFrameNumber", "nr-rrc.systemFrameNumber",
38842         FT_BYTES, BASE_NONE, NULL, 0,
38843         "BIT_STRING_SIZE_6", HFILL }},
38844     { &hf_nr_rrc_subCarrierSpacingCommon,
38845       { "subCarrierSpacingCommon", "nr-rrc.subCarrierSpacingCommon",
38846         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_subCarrierSpacingCommon_vals), 0,
38847         NULL, HFILL }},
38848     { &hf_nr_rrc_ssb_SubcarrierOffset,
38849       { "ssb-SubcarrierOffset", "nr-rrc.ssb_SubcarrierOffset",
38850         FT_UINT32, BASE_DEC, NULL, 0,
38851         "INTEGER_0_15", HFILL }},
38852     { &hf_nr_rrc_dmrs_TypeA_Position,
38853       { "dmrs-TypeA-Position", "nr-rrc.dmrs_TypeA_Position",
38854         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_dmrs_TypeA_Position_vals), 0,
38855         NULL, HFILL }},
38856     { &hf_nr_rrc_pdcch_ConfigSIB1,
38857       { "pdcch-ConfigSIB1", "nr-rrc.pdcch_ConfigSIB1_element",
38858         FT_NONE, BASE_NONE, NULL, 0,
38859         NULL, HFILL }},
38860     { &hf_nr_rrc_cellBarred,
38861       { "cellBarred", "nr-rrc.cellBarred",
38862         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_cellBarred_vals), 0,
38863         NULL, HFILL }},
38864     { &hf_nr_rrc_intraFreqReselection,
38865       { "intraFreqReselection", "nr-rrc.intraFreqReselection",
38866         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_intraFreqReselection_vals), 0,
38867         NULL, HFILL }},
38868     { &hf_nr_rrc_spare,
38869       { "spare", "nr-rrc.spare",
38870         FT_BYTES, BASE_NONE, NULL, 0,
38871         "BIT_STRING_SIZE_1", HFILL }},
38872     { &hf_nr_rrc_criticalExtensions_11,
38873       { "criticalExtensions", "nr-rrc.criticalExtensions",
38874         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_11_vals), 0,
38875         "T_criticalExtensions_11", HFILL }},
38876     { &hf_nr_rrc_measurementReport_01,
38877       { "measurementReport", "nr-rrc.measurementReport_element",
38878         FT_NONE, BASE_NONE, NULL, 0,
38879         "MeasurementReport_IEs", HFILL }},
38880     { &hf_nr_rrc_criticalExtensionsFuture_11,
38881       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
38882         FT_NONE, BASE_NONE, NULL, 0,
38883         "T_criticalExtensionsFuture_11", HFILL }},
38884     { &hf_nr_rrc_measResults,
38885       { "measResults", "nr-rrc.measResults_element",
38886         FT_NONE, BASE_NONE, NULL, 0,
38887         NULL, HFILL }},
38888     { &hf_nr_rrc_nonCriticalExtension_11,
38889       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
38890         FT_NONE, BASE_NONE, NULL, 0,
38891         "T_nonCriticalExtension_11", HFILL }},
38892     { &hf_nr_rrc_criticalExtensions_12,
38893       { "criticalExtensions", "nr-rrc.criticalExtensions",
38894         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_12_vals), 0,
38895         "T_criticalExtensions_12", HFILL }},
38896     { &hf_nr_rrc_mobilityFromNRCommand_01,
38897       { "mobilityFromNRCommand", "nr-rrc.mobilityFromNRCommand_element",
38898         FT_NONE, BASE_NONE, NULL, 0,
38899         "MobilityFromNRCommand_IEs", HFILL }},
38900     { &hf_nr_rrc_criticalExtensionsFuture_12,
38901       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
38902         FT_NONE, BASE_NONE, NULL, 0,
38903         "T_criticalExtensionsFuture_12", HFILL }},
38904     { &hf_nr_rrc_targetRAT_Type,
38905       { "targetRAT-Type", "nr-rrc.targetRAT_Type",
38906         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_targetRAT_Type_vals), 0,
38907         "T_targetRAT_Type", HFILL }},
38908     { &hf_nr_rrc_targetRAT_MessageContainer,
38909       { "targetRAT-MessageContainer", "nr-rrc.targetRAT_MessageContainer",
38910         FT_BYTES, BASE_NONE, NULL, 0,
38911         "T_targetRAT_MessageContainer", HFILL }},
38912     { &hf_nr_rrc_nas_SecurityParamFromNR,
38913       { "nas-SecurityParamFromNR", "nr-rrc.nas_SecurityParamFromNR",
38914         FT_BYTES, BASE_NONE, NULL, 0,
38915         "OCTET_STRING", HFILL }},
38916     { &hf_nr_rrc_nonCriticalExtension_12,
38917       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
38918         FT_NONE, BASE_NONE, NULL, 0,
38919         "T_nonCriticalExtension_12", HFILL }},
38920     { &hf_nr_rrc_pagingRecordList,
38921       { "pagingRecordList", "nr-rrc.pagingRecordList",
38922         FT_UINT32, BASE_DEC, NULL, 0,
38923         NULL, HFILL }},
38924     { &hf_nr_rrc_nonCriticalExtension_13,
38925       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
38926         FT_NONE, BASE_NONE, NULL, 0,
38927         "T_nonCriticalExtension_13", HFILL }},
38928     { &hf_nr_rrc_PagingRecordList_item,
38929       { "PagingRecord", "nr-rrc.PagingRecord_element",
38930         FT_NONE, BASE_NONE, NULL, 0,
38931         NULL, HFILL }},
38932     { &hf_nr_rrc_ue_Identity,
38933       { "ue-Identity", "nr-rrc.ue_Identity",
38934         FT_UINT32, BASE_DEC, VALS(nr_rrc_PagingUE_Identity_vals), 0,
38935         "PagingUE_Identity", HFILL }},
38936     { &hf_nr_rrc_accessType,
38937       { "accessType", "nr-rrc.accessType",
38938         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_accessType_vals), 0,
38939         NULL, HFILL }},
38940     { &hf_nr_rrc_ng_5G_S_TMSI,
38941       { "ng-5G-S-TMSI", "nr-rrc.ng_5G_S_TMSI",
38942         FT_BYTES, BASE_NONE, NULL, 0,
38943         NULL, HFILL }},
38944     { &hf_nr_rrc_i_RNTI,
38945       { "i-RNTI", "nr-rrc.i_RNTI",
38946         FT_BYTES, BASE_NONE, NULL, 0,
38947         "I_RNTI_Value", HFILL }},
38948     { &hf_nr_rrc_criticalExtensions_13,
38949       { "criticalExtensions", "nr-rrc.criticalExtensions",
38950         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_13_vals), 0,
38951         "T_criticalExtensions_13", HFILL }},
38952     { &hf_nr_rrc_rrcReestablishment_01,
38953       { "rrcReestablishment", "nr-rrc.rrcReestablishment_element",
38954         FT_NONE, BASE_NONE, NULL, 0,
38955         "RRCReestablishment_IEs", HFILL }},
38956     { &hf_nr_rrc_criticalExtensionsFuture_13,
38957       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
38958         FT_NONE, BASE_NONE, NULL, 0,
38959         "T_criticalExtensionsFuture_13", HFILL }},
38960     { &hf_nr_rrc_nextHopChainingCount,
38961       { "nextHopChainingCount", "nr-rrc.nextHopChainingCount",
38962         FT_UINT32, BASE_DEC, NULL, 0,
38963         NULL, HFILL }},
38964     { &hf_nr_rrc_nonCriticalExtension_14,
38965       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
38966         FT_NONE, BASE_NONE, NULL, 0,
38967         "T_nonCriticalExtension_14", HFILL }},
38968     { &hf_nr_rrc_criticalExtensions_14,
38969       { "criticalExtensions", "nr-rrc.criticalExtensions",
38970         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_14_vals), 0,
38971         "T_criticalExtensions_14", HFILL }},
38972     { &hf_nr_rrc_rrcReestablishmentComplete_01,
38973       { "rrcReestablishmentComplete", "nr-rrc.rrcReestablishmentComplete_element",
38974         FT_NONE, BASE_NONE, NULL, 0,
38975         "RRCReestablishmentComplete_IEs", HFILL }},
38976     { &hf_nr_rrc_criticalExtensionsFuture_14,
38977       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
38978         FT_NONE, BASE_NONE, NULL, 0,
38979         "T_criticalExtensionsFuture_14", HFILL }},
38980     { &hf_nr_rrc_nonCriticalExtension_15,
38981       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
38982         FT_NONE, BASE_NONE, NULL, 0,
38983         "T_nonCriticalExtension_15", HFILL }},
38984     { &hf_nr_rrc_rrcReestablishmentRequest_01,
38985       { "rrcReestablishmentRequest", "nr-rrc.rrcReestablishmentRequest_element",
38986         FT_NONE, BASE_NONE, NULL, 0,
38987         "RRCReestablishmentRequest_IEs", HFILL }},
38988     { &hf_nr_rrc_ue_Identity_01,
38989       { "ue-Identity", "nr-rrc.ue_Identity_element",
38990         FT_NONE, BASE_NONE, NULL, 0,
38991         "ReestabUE_Identity", HFILL }},
38992     { &hf_nr_rrc_reestablishmentCause,
38993       { "reestablishmentCause", "nr-rrc.reestablishmentCause",
38994         FT_UINT32, BASE_DEC, VALS(nr_rrc_ReestablishmentCause_vals), 0,
38995         NULL, HFILL }},
38996     { &hf_nr_rrc_c_RNTI,
38997       { "c-RNTI", "nr-rrc.c_RNTI",
38998         FT_UINT32, BASE_DEC, NULL, 0,
38999         "RNTI_Value", HFILL }},
39000     { &hf_nr_rrc_physCellId,
39001       { "physCellId", "nr-rrc.physCellId",
39002         FT_UINT32, BASE_DEC, NULL, 0,
39003         NULL, HFILL }},
39004     { &hf_nr_rrc_criticalExtensions_15,
39005       { "criticalExtensions", "nr-rrc.criticalExtensions",
39006         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_15_vals), 0,
39007         "T_criticalExtensions_15", HFILL }},
39008     { &hf_nr_rrc_rrcReconfiguration_02,
39009       { "rrcReconfiguration", "nr-rrc.rrcReconfiguration_element",
39010         FT_NONE, BASE_NONE, NULL, 0,
39011         "RRCReconfiguration_IEs", HFILL }},
39012     { &hf_nr_rrc_criticalExtensionsFuture_15,
39013       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
39014         FT_NONE, BASE_NONE, NULL, 0,
39015         "T_criticalExtensionsFuture_15", HFILL }},
39016     { &hf_nr_rrc_radioBearerConfig,
39017       { "radioBearerConfig", "nr-rrc.radioBearerConfig_element",
39018         FT_NONE, BASE_NONE, NULL, 0,
39019         NULL, HFILL }},
39020     { &hf_nr_rrc_secondaryCellGroup,
39021       { "secondaryCellGroup", "nr-rrc.secondaryCellGroup",
39022         FT_BYTES, BASE_NONE, NULL, 0,
39023         NULL, HFILL }},
39024     { &hf_nr_rrc_measConfig,
39025       { "measConfig", "nr-rrc.measConfig_element",
39026         FT_NONE, BASE_NONE, NULL, 0,
39027         NULL, HFILL }},
39028     { &hf_nr_rrc_nonCriticalExtension_16,
39029       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
39030         FT_NONE, BASE_NONE, NULL, 0,
39031         "RRCReconfiguration_v1530_IEs", HFILL }},
39032     { &hf_nr_rrc_masterCellGroup,
39033       { "masterCellGroup", "nr-rrc.masterCellGroup",
39034         FT_BYTES, BASE_NONE, NULL, 0,
39035         NULL, HFILL }},
39036     { &hf_nr_rrc_fullConfig,
39037       { "fullConfig", "nr-rrc.fullConfig",
39038         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_fullConfig_vals), 0,
39039         NULL, HFILL }},
39040     { &hf_nr_rrc_dedicatedNAS_MessageList,
39041       { "dedicatedNAS-MessageList", "nr-rrc.dedicatedNAS_MessageList",
39042         FT_UINT32, BASE_DEC, NULL, 0,
39043         "SEQUENCE_SIZE_1_maxDRB_OF_DedicatedNAS_Message", HFILL }},
39044     { &hf_nr_rrc_dedicatedNAS_MessageList_item,
39045       { "DedicatedNAS-Message", "nr-rrc.DedicatedNAS_Message",
39046         FT_BYTES, BASE_NONE, NULL, 0,
39047         NULL, HFILL }},
39048     { &hf_nr_rrc_masterKeyUpdate,
39049       { "masterKeyUpdate", "nr-rrc.masterKeyUpdate_element",
39050         FT_NONE, BASE_NONE, NULL, 0,
39051         NULL, HFILL }},
39052     { &hf_nr_rrc_dedicatedSIB1_Delivery,
39053       { "dedicatedSIB1-Delivery", "nr-rrc.dedicatedSIB1_Delivery",
39054         FT_BYTES, BASE_NONE, NULL, 0,
39055         NULL, HFILL }},
39056     { &hf_nr_rrc_dedicatedSystemInformationDelivery,
39057       { "dedicatedSystemInformationDelivery", "nr-rrc.dedicatedSystemInformationDelivery",
39058         FT_BYTES, BASE_NONE, NULL, 0,
39059         NULL, HFILL }},
39060     { &hf_nr_rrc_otherConfig,
39061       { "otherConfig", "nr-rrc.otherConfig_element",
39062         FT_NONE, BASE_NONE, NULL, 0,
39063         NULL, HFILL }},
39064     { &hf_nr_rrc_nonCriticalExtension_17,
39065       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
39066         FT_NONE, BASE_NONE, NULL, 0,
39067         "T_nonCriticalExtension_16", HFILL }},
39068     { &hf_nr_rrc_keySetChangeIndicator,
39069       { "keySetChangeIndicator", "nr-rrc.keySetChangeIndicator",
39070         FT_BOOLEAN, BASE_NONE, NULL, 0,
39071         "BOOLEAN", HFILL }},
39072     { &hf_nr_rrc_nas_Container,
39073       { "nas-Container", "nr-rrc.nas_Container",
39074         FT_BYTES, BASE_NONE, NULL, 0,
39075         NULL, HFILL }},
39076     { &hf_nr_rrc_criticalExtensions_16,
39077       { "criticalExtensions", "nr-rrc.criticalExtensions",
39078         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_16_vals), 0,
39079         "T_criticalExtensions_16", HFILL }},
39080     { &hf_nr_rrc_rrcReconfigurationComplete_01,
39081       { "rrcReconfigurationComplete", "nr-rrc.rrcReconfigurationComplete_element",
39082         FT_NONE, BASE_NONE, NULL, 0,
39083         "RRCReconfigurationComplete_IEs", HFILL }},
39084     { &hf_nr_rrc_criticalExtensionsFuture_16,
39085       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
39086         FT_NONE, BASE_NONE, NULL, 0,
39087         "T_criticalExtensionsFuture_16", HFILL }},
39088     { &hf_nr_rrc_nonCriticalExtension_18,
39089       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
39090         FT_NONE, BASE_NONE, NULL, 0,
39091         "RRCReconfigurationComplete_v1530_IEs", HFILL }},
39092     { &hf_nr_rrc_uplinkTxDirectCurrentList,
39093       { "uplinkTxDirectCurrentList", "nr-rrc.uplinkTxDirectCurrentList",
39094         FT_UINT32, BASE_DEC, NULL, 0,
39095         NULL, HFILL }},
39096     { &hf_nr_rrc_nonCriticalExtension_19,
39097       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
39098         FT_NONE, BASE_NONE, NULL, 0,
39099         "T_nonCriticalExtension_17", HFILL }},
39100     { &hf_nr_rrc_criticalExtensions_17,
39101       { "criticalExtensions", "nr-rrc.criticalExtensions",
39102         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_17_vals), 0,
39103         "T_criticalExtensions_17", HFILL }},
39104     { &hf_nr_rrc_rrcReject_01,
39105       { "rrcReject", "nr-rrc.rrcReject_element",
39106         FT_NONE, BASE_NONE, NULL, 0,
39107         "RRCReject_IEs", HFILL }},
39108     { &hf_nr_rrc_criticalExtensionsFuture_17,
39109       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
39110         FT_NONE, BASE_NONE, NULL, 0,
39111         "T_criticalExtensionsFuture_17", HFILL }},
39112     { &hf_nr_rrc_waitTime,
39113       { "waitTime", "nr-rrc.waitTime",
39114         FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_seconds, 0,
39115         "RejectWaitTime", HFILL }},
39116     { &hf_nr_rrc_nonCriticalExtension_20,
39117       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
39118         FT_NONE, BASE_NONE, NULL, 0,
39119         "T_nonCriticalExtension_18", HFILL }},
39120     { &hf_nr_rrc_criticalExtensions_18,
39121       { "criticalExtensions", "nr-rrc.criticalExtensions",
39122         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_18_vals), 0,
39123         "T_criticalExtensions_18", HFILL }},
39124     { &hf_nr_rrc_rrcRelease_01,
39125       { "rrcRelease", "nr-rrc.rrcRelease_element",
39126         FT_NONE, BASE_NONE, NULL, 0,
39127         "RRCRelease_IEs", HFILL }},
39128     { &hf_nr_rrc_criticalExtensionsFuture_18,
39129       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
39130         FT_NONE, BASE_NONE, NULL, 0,
39131         "T_criticalExtensionsFuture_18", HFILL }},
39132     { &hf_nr_rrc_redirectedCarrierInfo,
39133       { "redirectedCarrierInfo", "nr-rrc.redirectedCarrierInfo",
39134         FT_UINT32, BASE_DEC, VALS(nr_rrc_RedirectedCarrierInfo_vals), 0,
39135         NULL, HFILL }},
39136     { &hf_nr_rrc_cellReselectionPriorities,
39137       { "cellReselectionPriorities", "nr-rrc.cellReselectionPriorities_element",
39138         FT_NONE, BASE_NONE, NULL, 0,
39139         NULL, HFILL }},
39140     { &hf_nr_rrc_suspendConfig,
39141       { "suspendConfig", "nr-rrc.suspendConfig_element",
39142         FT_NONE, BASE_NONE, NULL, 0,
39143         NULL, HFILL }},
39144     { &hf_nr_rrc_deprioritisationReq,
39145       { "deprioritisationReq", "nr-rrc.deprioritisationReq_element",
39146         FT_NONE, BASE_NONE, NULL, 0,
39147         NULL, HFILL }},
39148     { &hf_nr_rrc_deprioritisationType,
39149       { "deprioritisationType", "nr-rrc.deprioritisationType",
39150         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_deprioritisationType_vals), 0,
39151         NULL, HFILL }},
39152     { &hf_nr_rrc_deprioritisationTimer,
39153       { "deprioritisationTimer", "nr-rrc.deprioritisationTimer",
39154         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_deprioritisationTimer_vals), 0,
39155         NULL, HFILL }},
39156     { &hf_nr_rrc_nonCriticalExtension_21,
39157       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
39158         FT_NONE, BASE_NONE, NULL, 0,
39159         "T_nonCriticalExtension_19", HFILL }},
39160     { &hf_nr_rrc_nr,
39161       { "nr", "nr-rrc.nr_element",
39162         FT_NONE, BASE_NONE, NULL, 0,
39163         "CarrierInfoNR", HFILL }},
39164     { &hf_nr_rrc_eutra,
39165       { "eutra", "nr-rrc.eutra_element",
39166         FT_NONE, BASE_NONE, NULL, 0,
39167         "RedirectedCarrierInfo_EUTRA", HFILL }},
39168     { &hf_nr_rrc_eutraFrequency,
39169       { "eutraFrequency", "nr-rrc.eutraFrequency",
39170         FT_UINT32, BASE_DEC, NULL, 0,
39171         "ARFCN_ValueEUTRA", HFILL }},
39172     { &hf_nr_rrc_cnType_r15,
39173       { "cnType-r15", "nr-rrc.cnType_r15",
39174         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_cnType_r15_vals), 0,
39175         NULL, HFILL }},
39176     { &hf_nr_rrc_smtc,
39177       { "smtc", "nr-rrc.smtc_element",
39178         FT_NONE, BASE_NONE, NULL, 0,
39179         "SSB_MTC", HFILL }},
39180     { &hf_nr_rrc_fullI_RNTI,
39181       { "fullI-RNTI", "nr-rrc.fullI_RNTI",
39182         FT_BYTES, BASE_NONE, NULL, 0,
39183         "I_RNTI_Value", HFILL }},
39184     { &hf_nr_rrc_shortI_RNTI,
39185       { "shortI-RNTI", "nr-rrc.shortI_RNTI",
39186         FT_BYTES, BASE_NONE, NULL, 0,
39187         "ShortI_RNTI_Value", HFILL }},
39188     { &hf_nr_rrc_ran_PagingCycle,
39189       { "ran-PagingCycle", "nr-rrc.ran_PagingCycle",
39190         FT_UINT32, BASE_DEC, VALS(nr_rrc_PagingCycle_vals), 0,
39191         "PagingCycle", HFILL }},
39192     { &hf_nr_rrc_t380,
39193       { "t380", "nr-rrc.t380",
39194         FT_UINT32, BASE_DEC, VALS(nr_rrc_PeriodicRNAU_TimerValue_vals), 0,
39195         "PeriodicRNAU_TimerValue", HFILL }},
39196     { &hf_nr_rrc_freqPriorityListEUTRA,
39197       { "freqPriorityListEUTRA", "nr-rrc.freqPriorityListEUTRA",
39198         FT_UINT32, BASE_DEC, NULL, 0,
39199         NULL, HFILL }},
39200     { &hf_nr_rrc_freqPriorityListNR,
39201       { "freqPriorityListNR", "nr-rrc.freqPriorityListNR",
39202         FT_UINT32, BASE_DEC, NULL, 0,
39203         NULL, HFILL }},
39204     { &hf_nr_rrc_t320,
39205       { "t320", "nr-rrc.t320",
39206         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_t320_vals), 0,
39207         NULL, HFILL }},
39208     { &hf_nr_rrc_FreqPriorityListEUTRA_item,
39209       { "FreqPriorityEUTRA", "nr-rrc.FreqPriorityEUTRA_element",
39210         FT_NONE, BASE_NONE, NULL, 0,
39211         NULL, HFILL }},
39212     { &hf_nr_rrc_FreqPriorityListNR_item,
39213       { "FreqPriorityNR", "nr-rrc.FreqPriorityNR_element",
39214         FT_NONE, BASE_NONE, NULL, 0,
39215         NULL, HFILL }},
39216     { &hf_nr_rrc_carrierFreq_01,
39217       { "carrierFreq", "nr-rrc.carrierFreq",
39218         FT_UINT32, BASE_DEC, NULL, 0,
39219         "ARFCN_ValueEUTRA", HFILL }},
39220     { &hf_nr_rrc_cellReselectionPriority,
39221       { "cellReselectionPriority", "nr-rrc.cellReselectionPriority",
39222         FT_UINT32, BASE_DEC, NULL, 0,
39223         NULL, HFILL }},
39224     { &hf_nr_rrc_cellReselectionSubPriority,
39225       { "cellReselectionSubPriority", "nr-rrc.cellReselectionSubPriority",
39226         FT_UINT32, BASE_DEC, VALS(nr_rrc_CellReselectionSubPriority_vals), 0,
39227         NULL, HFILL }},
39228     { &hf_nr_rrc_cellList,
39229       { "cellList", "nr-rrc.cellList",
39230         FT_UINT32, BASE_DEC, NULL, 0,
39231         "PLMN_RAN_AreaCellList", HFILL }},
39232     { &hf_nr_rrc_ran_AreaConfigList,
39233       { "ran-AreaConfigList", "nr-rrc.ran_AreaConfigList",
39234         FT_UINT32, BASE_DEC, NULL, 0,
39235         "PLMN_RAN_AreaConfigList", HFILL }},
39236     { &hf_nr_rrc_PLMN_RAN_AreaCellList_item,
39237       { "PLMN-RAN-AreaCell", "nr-rrc.PLMN_RAN_AreaCell_element",
39238         FT_NONE, BASE_NONE, NULL, 0,
39239         NULL, HFILL }},
39240     { &hf_nr_rrc_plmn_Identity,
39241       { "plmn-Identity", "nr-rrc.plmn_Identity_element",
39242         FT_NONE, BASE_NONE, NULL, 0,
39243         NULL, HFILL }},
39244     { &hf_nr_rrc_ran_AreaCells,
39245       { "ran-AreaCells", "nr-rrc.ran_AreaCells",
39246         FT_UINT32, BASE_DEC, NULL, 0,
39247         "SEQUENCE_SIZE_1_32_OF_CellIdentity", HFILL }},
39248     { &hf_nr_rrc_ran_AreaCells_item,
39249       { "CellIdentity", "nr-rrc.CellIdentity",
39250         FT_BYTES, BASE_NONE, NULL, 0,
39251         NULL, HFILL }},
39252     { &hf_nr_rrc_PLMN_RAN_AreaConfigList_item,
39253       { "PLMN-RAN-AreaConfig", "nr-rrc.PLMN_RAN_AreaConfig_element",
39254         FT_NONE, BASE_NONE, NULL, 0,
39255         NULL, HFILL }},
39256     { &hf_nr_rrc_ran_Area,
39257       { "ran-Area", "nr-rrc.ran_Area",
39258         FT_UINT32, BASE_DEC, NULL, 0,
39259         "SEQUENCE_SIZE_1_16_OF_RAN_AreaConfig", HFILL }},
39260     { &hf_nr_rrc_ran_Area_item,
39261       { "RAN-AreaConfig", "nr-rrc.RAN_AreaConfig_element",
39262         FT_NONE, BASE_NONE, NULL, 0,
39263         NULL, HFILL }},
39264     { &hf_nr_rrc_trackingAreaCode,
39265       { "trackingAreaCode", "nr-rrc.trackingAreaCode",
39266         FT_BYTES, BASE_NONE, NULL, 0,
39267         NULL, HFILL }},
39268     { &hf_nr_rrc_ran_AreaCodeList,
39269       { "ran-AreaCodeList", "nr-rrc.ran_AreaCodeList",
39270         FT_UINT32, BASE_DEC, NULL, 0,
39271         "SEQUENCE_SIZE_1_32_OF_RAN_AreaCode", HFILL }},
39272     { &hf_nr_rrc_ran_AreaCodeList_item,
39273       { "RAN-AreaCode", "nr-rrc.RAN_AreaCode",
39274         FT_UINT32, BASE_DEC, NULL, 0,
39275         NULL, HFILL }},
39276     { &hf_nr_rrc_criticalExtensions_19,
39277       { "criticalExtensions", "nr-rrc.criticalExtensions",
39278         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_19_vals), 0,
39279         "T_criticalExtensions_19", HFILL }},
39280     { &hf_nr_rrc_rrcResume_01,
39281       { "rrcResume", "nr-rrc.rrcResume_element",
39282         FT_NONE, BASE_NONE, NULL, 0,
39283         "RRCResume_IEs", HFILL }},
39284     { &hf_nr_rrc_criticalExtensionsFuture_19,
39285       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
39286         FT_NONE, BASE_NONE, NULL, 0,
39287         "T_criticalExtensionsFuture_19", HFILL }},
39288     { &hf_nr_rrc_masterCellGroup_01,
39289       { "masterCellGroup", "nr-rrc.masterCellGroup",
39290         FT_BYTES, BASE_NONE, NULL, 0,
39291         "T_masterCellGroup_01", HFILL }},
39292     { &hf_nr_rrc_fullConfig_01,
39293       { "fullConfig", "nr-rrc.fullConfig",
39294         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_fullConfig_01_vals), 0,
39295         "T_fullConfig_01", HFILL }},
39296     { &hf_nr_rrc_nonCriticalExtension_22,
39297       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
39298         FT_NONE, BASE_NONE, NULL, 0,
39299         "T_nonCriticalExtension_20", HFILL }},
39300     { &hf_nr_rrc_criticalExtensions_20,
39301       { "criticalExtensions", "nr-rrc.criticalExtensions",
39302         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_20_vals), 0,
39303         "T_criticalExtensions_20", HFILL }},
39304     { &hf_nr_rrc_rrcResumeComplete_01,
39305       { "rrcResumeComplete", "nr-rrc.rrcResumeComplete_element",
39306         FT_NONE, BASE_NONE, NULL, 0,
39307         "RRCResumeComplete_IEs", HFILL }},
39308     { &hf_nr_rrc_criticalExtensionsFuture_20,
39309       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
39310         FT_NONE, BASE_NONE, NULL, 0,
39311         "T_criticalExtensionsFuture_20", HFILL }},
39312     { &hf_nr_rrc_selectedPLMN_Identity,
39313       { "selectedPLMN-Identity", "nr-rrc.selectedPLMN_Identity",
39314         FT_UINT32, BASE_DEC, NULL, 0,
39315         "INTEGER_1_maxPLMN", HFILL }},
39316     { &hf_nr_rrc_nonCriticalExtension_23,
39317       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
39318         FT_NONE, BASE_NONE, NULL, 0,
39319         "T_nonCriticalExtension_21", HFILL }},
39320     { &hf_nr_rrc_rrcResumeRequest_01,
39321       { "rrcResumeRequest", "nr-rrc.rrcResumeRequest_element",
39322         FT_NONE, BASE_NONE, NULL, 0,
39323         "RRCResumeRequest_IEs", HFILL }},
39324     { &hf_nr_rrc_resumeIdentity,
39325       { "resumeIdentity", "nr-rrc.resumeIdentity",
39326         FT_BYTES, BASE_NONE, NULL, 0,
39327         "ShortI_RNTI_Value", HFILL }},
39328     { &hf_nr_rrc_resumeMAC_I,
39329       { "resumeMAC-I", "nr-rrc.resumeMAC_I",
39330         FT_BYTES, BASE_NONE, NULL, 0,
39331         "BIT_STRING_SIZE_16", HFILL }},
39332     { &hf_nr_rrc_resumeCause,
39333       { "resumeCause", "nr-rrc.resumeCause",
39334         FT_UINT32, BASE_DEC, VALS(nr_rrc_ResumeCause_vals), 0,
39335         NULL, HFILL }},
39336     { &hf_nr_rrc_rrcResumeRequest1_01,
39337       { "rrcResumeRequest1", "nr-rrc.rrcResumeRequest1_element",
39338         FT_NONE, BASE_NONE, NULL, 0,
39339         "RRCResumeRequest1_IEs", HFILL }},
39340     { &hf_nr_rrc_resumeIdentity_01,
39341       { "resumeIdentity", "nr-rrc.resumeIdentity",
39342         FT_BYTES, BASE_NONE, NULL, 0,
39343         "I_RNTI_Value", HFILL }},
39344     { &hf_nr_rrc_criticalExtensions_21,
39345       { "criticalExtensions", "nr-rrc.criticalExtensions",
39346         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_21_vals), 0,
39347         "T_criticalExtensions_21", HFILL }},
39348     { &hf_nr_rrc_rrcSetup_01,
39349       { "rrcSetup", "nr-rrc.rrcSetup_element",
39350         FT_NONE, BASE_NONE, NULL, 0,
39351         "RRCSetup_IEs", HFILL }},
39352     { &hf_nr_rrc_criticalExtensionsFuture_21,
39353       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
39354         FT_NONE, BASE_NONE, NULL, 0,
39355         "T_criticalExtensionsFuture_21", HFILL }},
39356     { &hf_nr_rrc_masterCellGroup_02,
39357       { "masterCellGroup", "nr-rrc.masterCellGroup",
39358         FT_BYTES, BASE_NONE, NULL, 0,
39359         "T_masterCellGroup_02", HFILL }},
39360     { &hf_nr_rrc_nonCriticalExtension_24,
39361       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
39362         FT_NONE, BASE_NONE, NULL, 0,
39363         "T_nonCriticalExtension_22", HFILL }},
39364     { &hf_nr_rrc_criticalExtensions_22,
39365       { "criticalExtensions", "nr-rrc.criticalExtensions",
39366         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_22_vals), 0,
39367         "T_criticalExtensions_22", HFILL }},
39368     { &hf_nr_rrc_rrcSetupComplete_01,
39369       { "rrcSetupComplete", "nr-rrc.rrcSetupComplete_element",
39370         FT_NONE, BASE_NONE, NULL, 0,
39371         "RRCSetupComplete_IEs", HFILL }},
39372     { &hf_nr_rrc_criticalExtensionsFuture_22,
39373       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
39374         FT_NONE, BASE_NONE, NULL, 0,
39375         "T_criticalExtensionsFuture_22", HFILL }},
39376     { &hf_nr_rrc_registeredAMF,
39377       { "registeredAMF", "nr-rrc.registeredAMF_element",
39378         FT_NONE, BASE_NONE, NULL, 0,
39379         NULL, HFILL }},
39380     { &hf_nr_rrc_guami_Type,
39381       { "guami-Type", "nr-rrc.guami_Type",
39382         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_guami_Type_vals), 0,
39383         NULL, HFILL }},
39384     { &hf_nr_rrc_s_nssai_List,
39385       { "s-nssai-List", "nr-rrc.s_nssai_List",
39386         FT_UINT32, BASE_DEC, NULL, 0,
39387         "SEQUENCE_SIZE_1_maxNrofS_NSSAI_OF_S_NSSAI", HFILL }},
39388     { &hf_nr_rrc_s_nssai_List_item,
39389       { "S-NSSAI", "nr-rrc.S_NSSAI",
39390         FT_UINT32, BASE_DEC, VALS(nr_rrc_S_NSSAI_vals), 0,
39391         NULL, HFILL }},
39392     { &hf_nr_rrc_ng_5G_S_TMSI_Value,
39393       { "ng-5G-S-TMSI-Value", "nr-rrc.ng_5G_S_TMSI_Value",
39394         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_ng_5G_S_TMSI_Value_vals), 0,
39395         NULL, HFILL }},
39396     { &hf_nr_rrc_ng_5G_S_TMSI_Part2,
39397       { "ng-5G-S-TMSI-Part2", "nr-rrc.ng_5G_S_TMSI_Part2",
39398         FT_BYTES, BASE_NONE, NULL, 0,
39399         "BIT_STRING_SIZE_9", HFILL }},
39400     { &hf_nr_rrc_nonCriticalExtension_25,
39401       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
39402         FT_NONE, BASE_NONE, NULL, 0,
39403         "T_nonCriticalExtension_23", HFILL }},
39404     { &hf_nr_rrc_amf_Identifier,
39405       { "amf-Identifier", "nr-rrc.amf_Identifier",
39406         FT_BYTES, BASE_NONE, NULL, 0,
39407         NULL, HFILL }},
39408     { &hf_nr_rrc_rrcSetupRequest_01,
39409       { "rrcSetupRequest", "nr-rrc.rrcSetupRequest_element",
39410         FT_NONE, BASE_NONE, NULL, 0,
39411         "RRCSetupRequest_IEs", HFILL }},
39412     { &hf_nr_rrc_ue_Identity_02,
39413       { "ue-Identity", "nr-rrc.ue_Identity",
39414         FT_UINT32, BASE_DEC, VALS(nr_rrc_InitialUE_Identity_vals), 0,
39415         "InitialUE_Identity", HFILL }},
39416     { &hf_nr_rrc_establishmentCause,
39417       { "establishmentCause", "nr-rrc.establishmentCause",
39418         FT_UINT32, BASE_DEC, VALS(nr_rrc_EstablishmentCause_vals), 0,
39419         NULL, HFILL }},
39420     { &hf_nr_rrc_ng_5G_S_TMSI_Part1,
39421       { "ng-5G-S-TMSI-Part1", "nr-rrc.ng_5G_S_TMSI_Part1",
39422         FT_BYTES, BASE_NONE, NULL, 0,
39423         "BIT_STRING_SIZE_39", HFILL }},
39424     { &hf_nr_rrc_randomValue,
39425       { "randomValue", "nr-rrc.randomValue",
39426         FT_BYTES, BASE_NONE, NULL, 0,
39427         "BIT_STRING_SIZE_39", HFILL }},
39428     { &hf_nr_rrc_criticalExtensions_23,
39429       { "criticalExtensions", "nr-rrc.criticalExtensions",
39430         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_23_vals), 0,
39431         "T_criticalExtensions_23", HFILL }},
39432     { &hf_nr_rrc_rrcSystemInfoRequest_r15,
39433       { "rrcSystemInfoRequest-r15", "nr-rrc.rrcSystemInfoRequest_r15_element",
39434         FT_NONE, BASE_NONE, NULL, 0,
39435         "RRCSystemInfoRequest_r15_IEs", HFILL }},
39436     { &hf_nr_rrc_criticalExtensionsFuture_23,
39437       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
39438         FT_NONE, BASE_NONE, NULL, 0,
39439         "T_criticalExtensionsFuture_23", HFILL }},
39440     { &hf_nr_rrc_requested_SI_List,
39441       { "requested-SI-List", "nr-rrc.requested_SI_List",
39442         FT_BYTES, BASE_NONE, NULL, 0,
39443         "BIT_STRING_SIZE_maxSI_Message", HFILL }},
39444     { &hf_nr_rrc_spare_01,
39445       { "spare", "nr-rrc.spare",
39446         FT_BYTES, BASE_NONE, NULL, 0,
39447         "BIT_STRING_SIZE_12", HFILL }},
39448     { &hf_nr_rrc_criticalExtensions_24,
39449       { "criticalExtensions", "nr-rrc.criticalExtensions",
39450         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_24_vals), 0,
39451         "T_criticalExtensions_24", HFILL }},
39452     { &hf_nr_rrc_securityModeCommand_01,
39453       { "securityModeCommand", "nr-rrc.securityModeCommand_element",
39454         FT_NONE, BASE_NONE, NULL, 0,
39455         "SecurityModeCommand_IEs", HFILL }},
39456     { &hf_nr_rrc_criticalExtensionsFuture_24,
39457       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
39458         FT_NONE, BASE_NONE, NULL, 0,
39459         "T_criticalExtensionsFuture_24", HFILL }},
39460     { &hf_nr_rrc_securityConfigSMC,
39461       { "securityConfigSMC", "nr-rrc.securityConfigSMC_element",
39462         FT_NONE, BASE_NONE, NULL, 0,
39463         NULL, HFILL }},
39464     { &hf_nr_rrc_nonCriticalExtension_26,
39465       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
39466         FT_NONE, BASE_NONE, NULL, 0,
39467         "T_nonCriticalExtension_24", HFILL }},
39468     { &hf_nr_rrc_securityAlgorithmConfig,
39469       { "securityAlgorithmConfig", "nr-rrc.securityAlgorithmConfig_element",
39470         FT_NONE, BASE_NONE, NULL, 0,
39471         NULL, HFILL }},
39472     { &hf_nr_rrc_criticalExtensions_25,
39473       { "criticalExtensions", "nr-rrc.criticalExtensions",
39474         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_25_vals), 0,
39475         "T_criticalExtensions_25", HFILL }},
39476     { &hf_nr_rrc_securityModeComplete_01,
39477       { "securityModeComplete", "nr-rrc.securityModeComplete_element",
39478         FT_NONE, BASE_NONE, NULL, 0,
39479         "SecurityModeComplete_IEs", HFILL }},
39480     { &hf_nr_rrc_criticalExtensionsFuture_25,
39481       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
39482         FT_NONE, BASE_NONE, NULL, 0,
39483         "T_criticalExtensionsFuture_25", HFILL }},
39484     { &hf_nr_rrc_nonCriticalExtension_27,
39485       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
39486         FT_NONE, BASE_NONE, NULL, 0,
39487         "T_nonCriticalExtension_25", HFILL }},
39488     { &hf_nr_rrc_criticalExtensions_26,
39489       { "criticalExtensions", "nr-rrc.criticalExtensions",
39490         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_26_vals), 0,
39491         "T_criticalExtensions_26", HFILL }},
39492     { &hf_nr_rrc_securityModeFailure_01,
39493       { "securityModeFailure", "nr-rrc.securityModeFailure_element",
39494         FT_NONE, BASE_NONE, NULL, 0,
39495         "SecurityModeFailure_IEs", HFILL }},
39496     { &hf_nr_rrc_criticalExtensionsFuture_26,
39497       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
39498         FT_NONE, BASE_NONE, NULL, 0,
39499         "T_criticalExtensionsFuture_26", HFILL }},
39500     { &hf_nr_rrc_nonCriticalExtension_28,
39501       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
39502         FT_NONE, BASE_NONE, NULL, 0,
39503         "T_nonCriticalExtension_26", HFILL }},
39504     { &hf_nr_rrc_cellSelectionInfo,
39505       { "cellSelectionInfo", "nr-rrc.cellSelectionInfo_element",
39506         FT_NONE, BASE_NONE, NULL, 0,
39507         NULL, HFILL }},
39508     { &hf_nr_rrc_q_RxLevMin,
39509       { "q-RxLevMin", "nr-rrc.q_RxLevMin",
39510         FT_INT32, BASE_CUSTOM, CF_FUNC(nr_rrc_Q_RxLevMin_fmt), 0,
39511         NULL, HFILL }},
39512     { &hf_nr_rrc_q_RxLevMinOffset,
39513       { "q-RxLevMinOffset", "nr-rrc.q_RxLevMinOffset",
39514         FT_UINT32, BASE_CUSTOM, CF_FUNC(nr_rrc_q_RxLevMin_fmt), 0,
39515         "INTEGER_1_8", HFILL }},
39516     { &hf_nr_rrc_q_RxLevMinSUL,
39517       { "q-RxLevMinSUL", "nr-rrc.q_RxLevMinSUL",
39518         FT_INT32, BASE_CUSTOM, CF_FUNC(nr_rrc_Q_RxLevMin_fmt), 0,
39519         "Q_RxLevMin", HFILL }},
39520     { &hf_nr_rrc_q_QualMin,
39521       { "q-QualMin", "nr-rrc.q_QualMin",
39522         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_decibels, 0,
39523         NULL, HFILL }},
39524     { &hf_nr_rrc_q_QualMinOffset,
39525       { "q-QualMinOffset", "nr-rrc.q_QualMinOffset",
39526         FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_decibels, 0,
39527         "INTEGER_1_8", HFILL }},
39528     { &hf_nr_rrc_cellAccessRelatedInfo,
39529       { "cellAccessRelatedInfo", "nr-rrc.cellAccessRelatedInfo_element",
39530         FT_NONE, BASE_NONE, NULL, 0,
39531         NULL, HFILL }},
39532     { &hf_nr_rrc_connEstFailureControl,
39533       { "connEstFailureControl", "nr-rrc.connEstFailureControl_element",
39534         FT_NONE, BASE_NONE, NULL, 0,
39535         NULL, HFILL }},
39536     { &hf_nr_rrc_si_SchedulingInfo,
39537       { "si-SchedulingInfo", "nr-rrc.si_SchedulingInfo_element",
39538         FT_NONE, BASE_NONE, NULL, 0,
39539         NULL, HFILL }},
39540     { &hf_nr_rrc_servingCellConfigCommon,
39541       { "servingCellConfigCommon", "nr-rrc.servingCellConfigCommon_element",
39542         FT_NONE, BASE_NONE, NULL, 0,
39543         "ServingCellConfigCommonSIB", HFILL }},
39544     { &hf_nr_rrc_ims_EmergencySupport,
39545       { "ims-EmergencySupport", "nr-rrc.ims_EmergencySupport",
39546         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_ims_EmergencySupport_vals), 0,
39547         NULL, HFILL }},
39548     { &hf_nr_rrc_eCallOverIMS_Support,
39549       { "eCallOverIMS-Support", "nr-rrc.eCallOverIMS_Support",
39550         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_eCallOverIMS_Support_vals), 0,
39551         NULL, HFILL }},
39552     { &hf_nr_rrc_ue_TimersAndConstants,
39553       { "ue-TimersAndConstants", "nr-rrc.ue_TimersAndConstants_element",
39554         FT_NONE, BASE_NONE, NULL, 0,
39555         NULL, HFILL }},
39556     { &hf_nr_rrc_uac_BarringInfo,
39557       { "uac-BarringInfo", "nr-rrc.uac_BarringInfo_element",
39558         FT_NONE, BASE_NONE, NULL, 0,
39559         NULL, HFILL }},
39560     { &hf_nr_rrc_uac_BarringForCommon,
39561       { "uac-BarringForCommon", "nr-rrc.uac_BarringForCommon",
39562         FT_UINT32, BASE_DEC, NULL, 0,
39563         "UAC_BarringPerCatList", HFILL }},
39564     { &hf_nr_rrc_uac_BarringPerPLMN_List,
39565       { "uac-BarringPerPLMN-List", "nr-rrc.uac_BarringPerPLMN_List",
39566         FT_UINT32, BASE_DEC, NULL, 0,
39567         NULL, HFILL }},
39568     { &hf_nr_rrc_uac_BarringInfoSetList,
39569       { "uac-BarringInfoSetList", "nr-rrc.uac_BarringInfoSetList",
39570         FT_UINT32, BASE_DEC, NULL, 0,
39571         NULL, HFILL }},
39572     { &hf_nr_rrc_uac_AccessCategory1_SelectionAssistanceInfo,
39573       { "uac-AccessCategory1-SelectionAssistanceInfo", "nr-rrc.uac_AccessCategory1_SelectionAssistanceInfo",
39574         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_uac_AccessCategory1_SelectionAssistanceInfo_vals), 0,
39575         NULL, HFILL }},
39576     { &hf_nr_rrc_plmnCommon,
39577       { "plmnCommon", "nr-rrc.plmnCommon",
39578         FT_UINT32, BASE_DEC, VALS(nr_rrc_UAC_AccessCategory1_SelectionAssistanceInfo_vals), 0,
39579         "UAC_AccessCategory1_SelectionAssistanceInfo", HFILL }},
39580     { &hf_nr_rrc_individualPLMNList,
39581       { "individualPLMNList", "nr-rrc.individualPLMNList",
39582         FT_UINT32, BASE_DEC, NULL, 0,
39583         "SEQUENCE_SIZE_2_maxPLMN_OF_UAC_AccessCategory1_SelectionAssistanceInfo", HFILL }},
39584     { &hf_nr_rrc_individualPLMNList_item,
39585       { "UAC-AccessCategory1-SelectionAssistanceInfo", "nr-rrc.UAC_AccessCategory1_SelectionAssistanceInfo",
39586         FT_UINT32, BASE_DEC, VALS(nr_rrc_UAC_AccessCategory1_SelectionAssistanceInfo_vals), 0,
39587         NULL, HFILL }},
39588     { &hf_nr_rrc_useFullResumeID,
39589       { "useFullResumeID", "nr-rrc.useFullResumeID",
39590         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_useFullResumeID_vals), 0,
39591         NULL, HFILL }},
39592     { &hf_nr_rrc_nonCriticalExtension_29,
39593       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
39594         FT_NONE, BASE_NONE, NULL, 0,
39595         "T_nonCriticalExtension_27", HFILL }},
39596     { &hf_nr_rrc_criticalExtensions_27,
39597       { "criticalExtensions", "nr-rrc.criticalExtensions",
39598         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_27_vals), 0,
39599         "T_criticalExtensions_27", HFILL }},
39600     { &hf_nr_rrc_systemInformation_r15,
39601       { "systemInformation-r15", "nr-rrc.systemInformation_r15_element",
39602         FT_NONE, BASE_NONE, NULL, 0,
39603         "SystemInformation_IEs", HFILL }},
39604     { &hf_nr_rrc_criticalExtensionsFuture_27,
39605       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
39606         FT_NONE, BASE_NONE, NULL, 0,
39607         "T_criticalExtensionsFuture_27", HFILL }},
39608     { &hf_nr_rrc_sib_TypeAndInfo,
39609       { "sib-TypeAndInfo", "nr-rrc.sib_TypeAndInfo",
39610         FT_UINT32, BASE_DEC, NULL, 0,
39611         NULL, HFILL }},
39612     { &hf_nr_rrc_sib_TypeAndInfo_item,
39613       { "sib-TypeAndInfo item", "nr-rrc.sib_TypeAndInfo_item",
39614         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_sib_TypeAndInfo_item_vals), 0,
39615         NULL, HFILL }},
39616     { &hf_nr_rrc_sib2,
39617       { "sib2", "nr-rrc.sib2_element",
39618         FT_NONE, BASE_NONE, NULL, 0,
39619         NULL, HFILL }},
39620     { &hf_nr_rrc_sib3,
39621       { "sib3", "nr-rrc.sib3_element",
39622         FT_NONE, BASE_NONE, NULL, 0,
39623         NULL, HFILL }},
39624     { &hf_nr_rrc_sib4,
39625       { "sib4", "nr-rrc.sib4_element",
39626         FT_NONE, BASE_NONE, NULL, 0,
39627         NULL, HFILL }},
39628     { &hf_nr_rrc_sib5,
39629       { "sib5", "nr-rrc.sib5_element",
39630         FT_NONE, BASE_NONE, NULL, 0,
39631         NULL, HFILL }},
39632     { &hf_nr_rrc_sib6,
39633       { "sib6", "nr-rrc.sib6_element",
39634         FT_NONE, BASE_NONE, NULL, 0,
39635         NULL, HFILL }},
39636     { &hf_nr_rrc_sib7,
39637       { "sib7", "nr-rrc.sib7_element",
39638         FT_NONE, BASE_NONE, NULL, 0,
39639         NULL, HFILL }},
39640     { &hf_nr_rrc_sib8,
39641       { "sib8", "nr-rrc.sib8_element",
39642         FT_NONE, BASE_NONE, NULL, 0,
39643         NULL, HFILL }},
39644     { &hf_nr_rrc_sib9,
39645       { "sib9", "nr-rrc.sib9_element",
39646         FT_NONE, BASE_NONE, NULL, 0,
39647         NULL, HFILL }},
39648     { &hf_nr_rrc_nonCriticalExtension_30,
39649       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
39650         FT_NONE, BASE_NONE, NULL, 0,
39651         "T_nonCriticalExtension_28", HFILL }},
39652     { &hf_nr_rrc_criticalExtensions_28,
39653       { "criticalExtensions", "nr-rrc.criticalExtensions",
39654         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_28_vals), 0,
39655         "T_criticalExtensions_28", HFILL }},
39656     { &hf_nr_rrc_ueAssistanceInformation_01,
39657       { "ueAssistanceInformation", "nr-rrc.ueAssistanceInformation_element",
39658         FT_NONE, BASE_NONE, NULL, 0,
39659         "UEAssistanceInformation_IEs", HFILL }},
39660     { &hf_nr_rrc_criticalExtensionsFuture_28,
39661       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
39662         FT_NONE, BASE_NONE, NULL, 0,
39663         "T_criticalExtensionsFuture_28", HFILL }},
39664     { &hf_nr_rrc_delayBudgetReport,
39665       { "delayBudgetReport", "nr-rrc.delayBudgetReport",
39666         FT_UINT32, BASE_DEC, VALS(nr_rrc_DelayBudgetReport_vals), 0,
39667         NULL, HFILL }},
39668     { &hf_nr_rrc_nonCriticalExtension_31,
39669       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
39670         FT_NONE, BASE_NONE, NULL, 0,
39671         "T_nonCriticalExtension_29", HFILL }},
39672     { &hf_nr_rrc_type1,
39673       { "type1", "nr-rrc.type1",
39674         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_T_type1_vals_ext, 0,
39675         NULL, HFILL }},
39676     { &hf_nr_rrc_criticalExtensions_29,
39677       { "criticalExtensions", "nr-rrc.criticalExtensions",
39678         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_29_vals), 0,
39679         "T_criticalExtensions_29", HFILL }},
39680     { &hf_nr_rrc_ueCapabilityEnquiry_01,
39681       { "ueCapabilityEnquiry", "nr-rrc.ueCapabilityEnquiry_element",
39682         FT_NONE, BASE_NONE, NULL, 0,
39683         "UECapabilityEnquiry_IEs", HFILL }},
39684     { &hf_nr_rrc_criticalExtensionsFuture_29,
39685       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
39686         FT_NONE, BASE_NONE, NULL, 0,
39687         "T_criticalExtensionsFuture_29", HFILL }},
39688     { &hf_nr_rrc_ue_CapabilityRAT_RequestList,
39689       { "ue-CapabilityRAT-RequestList", "nr-rrc.ue_CapabilityRAT_RequestList",
39690         FT_UINT32, BASE_DEC, NULL, 0,
39691         NULL, HFILL }},
39692     { &hf_nr_rrc_nonCriticalExtension_32,
39693       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
39694         FT_NONE, BASE_NONE, NULL, 0,
39695         "T_nonCriticalExtension_30", HFILL }},
39696     { &hf_nr_rrc_criticalExtensions_30,
39697       { "criticalExtensions", "nr-rrc.criticalExtensions",
39698         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_30_vals), 0,
39699         "T_criticalExtensions_30", HFILL }},
39700     { &hf_nr_rrc_ueCapabilityInformation_01,
39701       { "ueCapabilityInformation", "nr-rrc.ueCapabilityInformation_element",
39702         FT_NONE, BASE_NONE, NULL, 0,
39703         "UECapabilityInformation_IEs", HFILL }},
39704     { &hf_nr_rrc_criticalExtensionsFuture_30,
39705       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
39706         FT_NONE, BASE_NONE, NULL, 0,
39707         "T_criticalExtensionsFuture_30", HFILL }},
39708     { &hf_nr_rrc_ue_CapabilityRAT_ContainerList,
39709       { "ue-CapabilityRAT-ContainerList", "nr-rrc.ue_CapabilityRAT_ContainerList",
39710         FT_UINT32, BASE_DEC, NULL, 0,
39711         NULL, HFILL }},
39712     { &hf_nr_rrc_nonCriticalExtension_33,
39713       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
39714         FT_NONE, BASE_NONE, NULL, 0,
39715         "T_nonCriticalExtension_31", HFILL }},
39716     { &hf_nr_rrc_criticalExtensions_31,
39717       { "criticalExtensions", "nr-rrc.criticalExtensions",
39718         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_criticalExtensions_31_vals), 0,
39719         "T_criticalExtensions_31", HFILL }},
39720     { &hf_nr_rrc_ulInformationTransfer_01,
39721       { "ulInformationTransfer", "nr-rrc.ulInformationTransfer_element",
39722         FT_NONE, BASE_NONE, NULL, 0,
39723         "ULInformationTransfer_IEs", HFILL }},
39724     { &hf_nr_rrc_criticalExtensionsFuture_31,
39725       { "criticalExtensionsFuture", "nr-rrc.criticalExtensionsFuture_element",
39726         FT_NONE, BASE_NONE, NULL, 0,
39727         "T_criticalExtensionsFuture_31", HFILL }},
39728     { &hf_nr_rrc_nonCriticalExtension_34,
39729       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
39730         FT_NONE, BASE_NONE, NULL, 0,
39731         "T_nonCriticalExtension_32", HFILL }},
39732     { &hf_nr_rrc_cellReselectionInfoCommon,
39733       { "cellReselectionInfoCommon", "nr-rrc.cellReselectionInfoCommon_element",
39734         FT_NONE, BASE_NONE, NULL, 0,
39735         NULL, HFILL }},
39736     { &hf_nr_rrc_nrofSS_BlocksToAverage,
39737       { "nrofSS-BlocksToAverage", "nr-rrc.nrofSS_BlocksToAverage",
39738         FT_UINT32, BASE_DEC, NULL, 0,
39739         "INTEGER_2_maxNrofSS_BlocksToAverage", HFILL }},
39740     { &hf_nr_rrc_absThreshSS_BlocksConsolidation,
39741       { "absThreshSS-BlocksConsolidation", "nr-rrc.absThreshSS_BlocksConsolidation_element",
39742         FT_NONE, BASE_NONE, NULL, 0,
39743         "ThresholdNR", HFILL }},
39744     { &hf_nr_rrc_rangeToBestCell,
39745       { "rangeToBestCell", "nr-rrc.rangeToBestCell",
39746         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_Q_OffsetRange_vals_ext, 0,
39747         NULL, HFILL }},
39748     { &hf_nr_rrc_q_Hyst,
39749       { "q-Hyst", "nr-rrc.q_Hyst",
39750         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_q_Hyst_vals), 0,
39751         NULL, HFILL }},
39752     { &hf_nr_rrc_speedStateReselectionPars,
39753       { "speedStateReselectionPars", "nr-rrc.speedStateReselectionPars_element",
39754         FT_NONE, BASE_NONE, NULL, 0,
39755         NULL, HFILL }},
39756     { &hf_nr_rrc_mobilityStateParameters,
39757       { "mobilityStateParameters", "nr-rrc.mobilityStateParameters_element",
39758         FT_NONE, BASE_NONE, NULL, 0,
39759         NULL, HFILL }},
39760     { &hf_nr_rrc_q_HystSF,
39761       { "q-HystSF", "nr-rrc.q_HystSF_element",
39762         FT_NONE, BASE_NONE, NULL, 0,
39763         NULL, HFILL }},
39764     { &hf_nr_rrc_sf_Medium,
39765       { "sf-Medium", "nr-rrc.sf_Medium",
39766         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_sf_Medium_vals), 0,
39767         NULL, HFILL }},
39768     { &hf_nr_rrc_sf_High,
39769       { "sf-High", "nr-rrc.sf_High",
39770         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_sf_High_vals), 0,
39771         NULL, HFILL }},
39772     { &hf_nr_rrc_cellReselectionServingFreqInfo,
39773       { "cellReselectionServingFreqInfo", "nr-rrc.cellReselectionServingFreqInfo_element",
39774         FT_NONE, BASE_NONE, NULL, 0,
39775         NULL, HFILL }},
39776     { &hf_nr_rrc_s_NonIntraSearchP,
39777       { "s-NonIntraSearchP", "nr-rrc.s_NonIntraSearchP",
39778         FT_UINT32, BASE_CUSTOM, CF_FUNC(nr_rrc_ReselectionThreshold_fmt), 0,
39779         "ReselectionThreshold", HFILL }},
39780     { &hf_nr_rrc_s_NonIntraSearchQ,
39781       { "s-NonIntraSearchQ", "nr-rrc.s_NonIntraSearchQ",
39782         FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_decibels, 0,
39783         "ReselectionThresholdQ", HFILL }},
39784     { &hf_nr_rrc_threshServingLowP,
39785       { "threshServingLowP", "nr-rrc.threshServingLowP",
39786         FT_UINT32, BASE_CUSTOM, CF_FUNC(nr_rrc_ReselectionThreshold_fmt), 0,
39787         "ReselectionThreshold", HFILL }},
39788     { &hf_nr_rrc_threshServingLowQ,
39789       { "threshServingLowQ", "nr-rrc.threshServingLowQ",
39790         FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_decibels, 0,
39791         "ReselectionThresholdQ", HFILL }},
39792     { &hf_nr_rrc_intraFreqCellReselectionInfo,
39793       { "intraFreqCellReselectionInfo", "nr-rrc.intraFreqCellReselectionInfo_element",
39794         FT_NONE, BASE_NONE, NULL, 0,
39795         NULL, HFILL }},
39796     { &hf_nr_rrc_s_IntraSearchP,
39797       { "s-IntraSearchP", "nr-rrc.s_IntraSearchP",
39798         FT_UINT32, BASE_CUSTOM, CF_FUNC(nr_rrc_ReselectionThreshold_fmt), 0,
39799         "ReselectionThreshold", HFILL }},
39800     { &hf_nr_rrc_s_IntraSearchQ,
39801       { "s-IntraSearchQ", "nr-rrc.s_IntraSearchQ",
39802         FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_decibels, 0,
39803         "ReselectionThresholdQ", HFILL }},
39804     { &hf_nr_rrc_t_ReselectionNR,
39805       { "t-ReselectionNR", "nr-rrc.t_ReselectionNR",
39806         FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_seconds, 0,
39807         "T_Reselection", HFILL }},
39808     { &hf_nr_rrc_frequencyBandList,
39809       { "frequencyBandList", "nr-rrc.frequencyBandList",
39810         FT_UINT32, BASE_DEC, NULL, 0,
39811         "MultiFrequencyBandListNR_SIB", HFILL }},
39812     { &hf_nr_rrc_frequencyBandListSUL,
39813       { "frequencyBandListSUL", "nr-rrc.frequencyBandListSUL",
39814         FT_UINT32, BASE_DEC, NULL, 0,
39815         "MultiFrequencyBandListNR_SIB", HFILL }},
39816     { &hf_nr_rrc_p_Max,
39817       { "p-Max", "nr-rrc.p_Max",
39818         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_dbm, 0,
39819         NULL, HFILL }},
39820     { &hf_nr_rrc_ssb_ToMeasure,
39821       { "ssb-ToMeasure", "nr-rrc.ssb_ToMeasure",
39822         FT_UINT32, BASE_DEC, VALS(nr_rrc_SSB_ToMeasure_vals), 0,
39823         NULL, HFILL }},
39824     { &hf_nr_rrc_deriveSSB_IndexFromCell,
39825       { "deriveSSB-IndexFromCell", "nr-rrc.deriveSSB_IndexFromCell",
39826         FT_BOOLEAN, BASE_NONE, NULL, 0,
39827         "BOOLEAN", HFILL }},
39828     { &hf_nr_rrc_intraFreqNeighCellList,
39829       { "intraFreqNeighCellList", "nr-rrc.intraFreqNeighCellList",
39830         FT_UINT32, BASE_DEC, NULL, 0,
39831         NULL, HFILL }},
39832     { &hf_nr_rrc_intraFreqBlackCellList,
39833       { "intraFreqBlackCellList", "nr-rrc.intraFreqBlackCellList",
39834         FT_UINT32, BASE_DEC, NULL, 0,
39835         NULL, HFILL }},
39836     { &hf_nr_rrc_IntraFreqNeighCellList_item,
39837       { "IntraFreqNeighCellInfo", "nr-rrc.IntraFreqNeighCellInfo_element",
39838         FT_NONE, BASE_NONE, NULL, 0,
39839         NULL, HFILL }},
39840     { &hf_nr_rrc_q_OffsetCell,
39841       { "q-OffsetCell", "nr-rrc.q_OffsetCell",
39842         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_Q_OffsetRange_vals_ext, 0,
39843         "Q_OffsetRange", HFILL }},
39844     { &hf_nr_rrc_q_RxLevMinOffsetCell,
39845       { "q-RxLevMinOffsetCell", "nr-rrc.q_RxLevMinOffsetCell",
39846         FT_UINT32, BASE_CUSTOM, CF_FUNC(nr_rrc_q_RxLevMin_fmt), 0,
39847         "INTEGER_1_8", HFILL }},
39848     { &hf_nr_rrc_q_RxLevMinOffsetCellSUL,
39849       { "q-RxLevMinOffsetCellSUL", "nr-rrc.q_RxLevMinOffsetCellSUL",
39850         FT_UINT32, BASE_CUSTOM, CF_FUNC(nr_rrc_q_RxLevMin_fmt), 0,
39851         "INTEGER_1_8", HFILL }},
39852     { &hf_nr_rrc_q_QualMinOffsetCell,
39853       { "q-QualMinOffsetCell", "nr-rrc.q_QualMinOffsetCell",
39854         FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_decibels, 0,
39855         "INTEGER_1_8", HFILL }},
39856     { &hf_nr_rrc_IntraFreqBlackCellList_item,
39857       { "PCI-Range", "nr-rrc.PCI_Range_element",
39858         FT_NONE, BASE_NONE, NULL, 0,
39859         NULL, HFILL }},
39860     { &hf_nr_rrc_interFreqCarrierFreqList,
39861       { "interFreqCarrierFreqList", "nr-rrc.interFreqCarrierFreqList",
39862         FT_UINT32, BASE_DEC, NULL, 0,
39863         NULL, HFILL }},
39864     { &hf_nr_rrc_InterFreqCarrierFreqList_item,
39865       { "InterFreqCarrierFreqInfo", "nr-rrc.InterFreqCarrierFreqInfo_element",
39866         FT_NONE, BASE_NONE, NULL, 0,
39867         NULL, HFILL }},
39868     { &hf_nr_rrc_dl_CarrierFreq,
39869       { "dl-CarrierFreq", "nr-rrc.dl_CarrierFreq",
39870         FT_UINT32, BASE_DEC, NULL, 0,
39871         "ARFCN_ValueNR", HFILL }},
39872     { &hf_nr_rrc_t_ReselectionNR_SF,
39873       { "t-ReselectionNR-SF", "nr-rrc.t_ReselectionNR_SF_element",
39874         FT_NONE, BASE_NONE, NULL, 0,
39875         "SpeedStateScaleFactors", HFILL }},
39876     { &hf_nr_rrc_threshX_HighP,
39877       { "threshX-HighP", "nr-rrc.threshX_HighP",
39878         FT_UINT32, BASE_CUSTOM, CF_FUNC(nr_rrc_ReselectionThreshold_fmt), 0,
39879         "ReselectionThreshold", HFILL }},
39880     { &hf_nr_rrc_threshX_LowP,
39881       { "threshX-LowP", "nr-rrc.threshX_LowP",
39882         FT_UINT32, BASE_CUSTOM, CF_FUNC(nr_rrc_ReselectionThreshold_fmt), 0,
39883         "ReselectionThreshold", HFILL }},
39884     { &hf_nr_rrc_threshX_Q,
39885       { "threshX-Q", "nr-rrc.threshX_Q_element",
39886         FT_NONE, BASE_NONE, NULL, 0,
39887         NULL, HFILL }},
39888     { &hf_nr_rrc_threshX_HighQ,
39889       { "threshX-HighQ", "nr-rrc.threshX_HighQ",
39890         FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_decibels, 0,
39891         "ReselectionThresholdQ", HFILL }},
39892     { &hf_nr_rrc_threshX_LowQ,
39893       { "threshX-LowQ", "nr-rrc.threshX_LowQ",
39894         FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_decibels, 0,
39895         "ReselectionThresholdQ", HFILL }},
39896     { &hf_nr_rrc_q_OffsetFreq,
39897       { "q-OffsetFreq", "nr-rrc.q_OffsetFreq",
39898         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_Q_OffsetRange_vals_ext, 0,
39899         "Q_OffsetRange", HFILL }},
39900     { &hf_nr_rrc_interFreqNeighCellList,
39901       { "interFreqNeighCellList", "nr-rrc.interFreqNeighCellList",
39902         FT_UINT32, BASE_DEC, NULL, 0,
39903         NULL, HFILL }},
39904     { &hf_nr_rrc_interFreqBlackCellList,
39905       { "interFreqBlackCellList", "nr-rrc.interFreqBlackCellList",
39906         FT_UINT32, BASE_DEC, NULL, 0,
39907         NULL, HFILL }},
39908     { &hf_nr_rrc_InterFreqNeighCellList_item,
39909       { "InterFreqNeighCellInfo", "nr-rrc.InterFreqNeighCellInfo_element",
39910         FT_NONE, BASE_NONE, NULL, 0,
39911         NULL, HFILL }},
39912     { &hf_nr_rrc_InterFreqBlackCellList_item,
39913       { "PCI-Range", "nr-rrc.PCI_Range_element",
39914         FT_NONE, BASE_NONE, NULL, 0,
39915         NULL, HFILL }},
39916     { &hf_nr_rrc_carrierFreqListEUTRA,
39917       { "carrierFreqListEUTRA", "nr-rrc.carrierFreqListEUTRA",
39918         FT_UINT32, BASE_DEC, NULL, 0,
39919         NULL, HFILL }},
39920     { &hf_nr_rrc_t_ReselectionEUTRA,
39921       { "t-ReselectionEUTRA", "nr-rrc.t_ReselectionEUTRA",
39922         FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_seconds, 0,
39923         "T_Reselection", HFILL }},
39924     { &hf_nr_rrc_t_ReselectionEUTRA_SF,
39925       { "t-ReselectionEUTRA-SF", "nr-rrc.t_ReselectionEUTRA_SF_element",
39926         FT_NONE, BASE_NONE, NULL, 0,
39927         "SpeedStateScaleFactors", HFILL }},
39928     { &hf_nr_rrc_CarrierFreqListEUTRA_item,
39929       { "CarrierFreqEUTRA", "nr-rrc.CarrierFreqEUTRA_element",
39930         FT_NONE, BASE_NONE, NULL, 0,
39931         NULL, HFILL }},
39932     { &hf_nr_rrc_eutra_multiBandInfoList,
39933       { "eutra-multiBandInfoList", "nr-rrc.eutra_multiBandInfoList",
39934         FT_UINT32, BASE_DEC, NULL, 0,
39935         NULL, HFILL }},
39936     { &hf_nr_rrc_eutra_FreqNeighCellList,
39937       { "eutra-FreqNeighCellList", "nr-rrc.eutra_FreqNeighCellList",
39938         FT_UINT32, BASE_DEC, NULL, 0,
39939         NULL, HFILL }},
39940     { &hf_nr_rrc_eutra_BlackCellList,
39941       { "eutra-BlackCellList", "nr-rrc.eutra_BlackCellList",
39942         FT_UINT32, BASE_DEC, NULL, 0,
39943         "EUTRA_FreqBlackCellList", HFILL }},
39944     { &hf_nr_rrc_allowedMeasBandwidth,
39945       { "allowedMeasBandwidth", "nr-rrc.allowedMeasBandwidth",
39946         FT_UINT32, BASE_DEC, VALS(nr_rrc_EUTRA_AllowedMeasBandwidth_vals), 0,
39947         "EUTRA_AllowedMeasBandwidth", HFILL }},
39948     { &hf_nr_rrc_presenceAntennaPort1,
39949       { "presenceAntennaPort1", "nr-rrc.presenceAntennaPort1",
39950         FT_BOOLEAN, BASE_NONE, NULL, 0,
39951         "EUTRA_PresenceAntennaPort1", HFILL }},
39952     { &hf_nr_rrc_threshX_High,
39953       { "threshX-High", "nr-rrc.threshX_High",
39954         FT_UINT32, BASE_CUSTOM, CF_FUNC(nr_rrc_ReselectionThreshold_fmt), 0,
39955         "ReselectionThreshold", HFILL }},
39956     { &hf_nr_rrc_threshX_Low,
39957       { "threshX-Low", "nr-rrc.threshX_Low",
39958         FT_UINT32, BASE_CUSTOM, CF_FUNC(nr_rrc_ReselectionThreshold_fmt), 0,
39959         "ReselectionThreshold", HFILL }},
39960     { &hf_nr_rrc_q_RxLevMin_01,
39961       { "q-RxLevMin", "nr-rrc.q_RxLevMin",
39962         FT_INT32, BASE_CUSTOM, CF_FUNC(nr_rrc_q_RxLevMin_fmt), 0,
39963         "INTEGER_M70_M22", HFILL }},
39964     { &hf_nr_rrc_q_QualMin_01,
39965       { "q-QualMin", "nr-rrc.q_QualMin",
39966         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_decibels, 0,
39967         "INTEGER_M34_M3", HFILL }},
39968     { &hf_nr_rrc_p_MaxEUTRA,
39969       { "p-MaxEUTRA", "nr-rrc.p_MaxEUTRA",
39970         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_dbm, 0,
39971         "INTEGER_M30_33", HFILL }},
39972     { &hf_nr_rrc_threshX_Q_01,
39973       { "threshX-Q", "nr-rrc.threshX_Q_element",
39974         FT_NONE, BASE_NONE, NULL, 0,
39975         "T_threshX_Q_01", HFILL }},
39976     { &hf_nr_rrc_EUTRA_FreqBlackCellList_item,
39977       { "EUTRA-PhysCellIdRange", "nr-rrc.EUTRA_PhysCellIdRange_element",
39978         FT_NONE, BASE_NONE, NULL, 0,
39979         NULL, HFILL }},
39980     { &hf_nr_rrc_EUTRA_FreqNeighCellList_item,
39981       { "EUTRA-FreqNeighCellInfo", "nr-rrc.EUTRA_FreqNeighCellInfo_element",
39982         FT_NONE, BASE_NONE, NULL, 0,
39983         NULL, HFILL }},
39984     { &hf_nr_rrc_physCellId_01,
39985       { "physCellId", "nr-rrc.physCellId",
39986         FT_UINT32, BASE_DEC, NULL, 0,
39987         "EUTRA_PhysCellId", HFILL }},
39988     { &hf_nr_rrc_q_OffsetCell_01,
39989       { "q-OffsetCell", "nr-rrc.q_OffsetCell",
39990         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_EUTRA_Q_OffsetRange_vals_ext, 0,
39991         "EUTRA_Q_OffsetRange", HFILL }},
39992     { &hf_nr_rrc_messageIdentifier,
39993       { "messageIdentifier", "nr-rrc.messageIdentifier",
39994         FT_UINT16, BASE_DEC|BASE_EXT_STRING, &lte_rrc_messageIdentifier_vals_ext, 0,
39995         NULL, HFILL }},
39996     { &hf_nr_rrc_serialNumber,
39997       { "serialNumber", "nr-rrc.serialNumber",
39998         FT_BYTES, BASE_NONE, NULL, 0,
39999         NULL, HFILL }},
40000     { &hf_nr_rrc_warningType,
40001       { "warningType", "nr-rrc.warningType",
40002         FT_BYTES, BASE_NONE, NULL, 0,
40003         NULL, HFILL }},
40004     { &hf_nr_rrc_messageIdentifier_01,
40005       { "messageIdentifier", "nr-rrc.messageIdentifier",
40006         FT_UINT16, BASE_DEC|BASE_EXT_STRING, &lte_rrc_messageIdentifier_vals_ext, 0,
40007         "T_messageIdentifier_01", HFILL }},
40008     { &hf_nr_rrc_serialNumber_01,
40009       { "serialNumber", "nr-rrc.serialNumber",
40010         FT_BYTES, BASE_NONE, NULL, 0,
40011         "T_serialNumber_01", HFILL }},
40012     { &hf_nr_rrc_warningMessageSegmentType,
40013       { "warningMessageSegmentType", "nr-rrc.warningMessageSegmentType",
40014         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_warningMessageSegmentType_vals), 0,
40015         NULL, HFILL }},
40016     { &hf_nr_rrc_warningMessageSegmentNumber,
40017       { "warningMessageSegmentNumber", "nr-rrc.warningMessageSegmentNumber",
40018         FT_UINT32, BASE_DEC, NULL, 0,
40019         NULL, HFILL }},
40020     { &hf_nr_rrc_warningMessageSegment,
40021       { "warningMessageSegment", "nr-rrc.warningMessageSegment",
40022         FT_BYTES, BASE_NONE, NULL, 0,
40023         NULL, HFILL }},
40024     { &hf_nr_rrc_dataCodingScheme,
40025       { "dataCodingScheme", "nr-rrc.dataCodingScheme",
40026         FT_BYTES, BASE_NONE, NULL, 0,
40027         NULL, HFILL }},
40028     { &hf_nr_rrc_messageIdentifier_02,
40029       { "messageIdentifier", "nr-rrc.messageIdentifier",
40030         FT_UINT16, BASE_DEC|BASE_EXT_STRING, &lte_rrc_messageIdentifier_vals_ext, 0,
40031         "T_messageIdentifier_02", HFILL }},
40032     { &hf_nr_rrc_serialNumber_02,
40033       { "serialNumber", "nr-rrc.serialNumber",
40034         FT_BYTES, BASE_NONE, NULL, 0,
40035         "T_serialNumber_02", HFILL }},
40036     { &hf_nr_rrc_warningMessageSegmentType_01,
40037       { "warningMessageSegmentType", "nr-rrc.warningMessageSegmentType",
40038         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_warningMessageSegmentType_01_vals), 0,
40039         "T_warningMessageSegmentType_01", HFILL }},
40040     { &hf_nr_rrc_warningMessageSegmentNumber_01,
40041       { "warningMessageSegmentNumber", "nr-rrc.warningMessageSegmentNumber",
40042         FT_UINT32, BASE_DEC, NULL, 0,
40043         "T_warningMessageSegmentNumber_01", HFILL }},
40044     { &hf_nr_rrc_warningMessageSegment_01,
40045       { "warningMessageSegment", "nr-rrc.warningMessageSegment",
40046         FT_BYTES, BASE_NONE, NULL, 0,
40047         "T_warningMessageSegment_01", HFILL }},
40048     { &hf_nr_rrc_dataCodingScheme_01,
40049       { "dataCodingScheme", "nr-rrc.dataCodingScheme",
40050         FT_BYTES, BASE_NONE, NULL, 0,
40051         "T_dataCodingScheme_01", HFILL }},
40052     { &hf_nr_rrc_warningAreaCoordinatesSegment,
40053       { "warningAreaCoordinatesSegment", "nr-rrc.warningAreaCoordinatesSegment",
40054         FT_BYTES, BASE_NONE, NULL, 0,
40055         "OCTET_STRING", HFILL }},
40056     { &hf_nr_rrc_timeInfo,
40057       { "timeInfo", "nr-rrc.timeInfo_element",
40058         FT_NONE, BASE_NONE, NULL, 0,
40059         NULL, HFILL }},
40060     { &hf_nr_rrc_timeInfoUTC,
40061       { "timeInfoUTC", "nr-rrc.timeInfoUTC",
40062         FT_UINT64, BASE_DEC, NULL, 0,
40063         NULL, HFILL }},
40064     { &hf_nr_rrc_dayLightSavingTime,
40065       { "dayLightSavingTime", "nr-rrc.dayLightSavingTime",
40066         FT_UINT8, BASE_DEC, VALS(nr_rrc_daylightSavingTime_vals), 0,
40067         NULL, HFILL }},
40068     { &hf_nr_rrc_leapSeconds,
40069       { "leapSeconds", "nr-rrc.leapSeconds",
40070         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_seconds, 0,
40071         "INTEGER_M127_128", HFILL }},
40072     { &hf_nr_rrc_localTimeOffset,
40073       { "localTimeOffset", "nr-rrc.localTimeOffset",
40074         FT_INT32, BASE_CUSTOM, CF_FUNC(nr_rrc_localTimeOffset_fmt), 0,
40075         "INTEGER_M63_64", HFILL }},
40076     { &hf_nr_rrc_rootSequenceIndex_BFR,
40077       { "rootSequenceIndex-BFR", "nr-rrc.rootSequenceIndex_BFR",
40078         FT_UINT32, BASE_DEC, NULL, 0,
40079         "INTEGER_0_137", HFILL }},
40080     { &hf_nr_rrc_rach_ConfigBFR,
40081       { "rach-ConfigBFR", "nr-rrc.rach_ConfigBFR_element",
40082         FT_NONE, BASE_NONE, NULL, 0,
40083         "RACH_ConfigGeneric", HFILL }},
40084     { &hf_nr_rrc_rsrp_ThresholdSSB,
40085       { "rsrp-ThresholdSSB", "nr-rrc.rsrp_ThresholdSSB",
40086         FT_UINT32, BASE_CUSTOM, CF_FUNC(nr_rrc_RSRP_Range_fmt), 0,
40087         "RSRP_Range", HFILL }},
40088     { &hf_nr_rrc_candidateBeamRSList,
40089       { "candidateBeamRSList", "nr-rrc.candidateBeamRSList",
40090         FT_UINT32, BASE_DEC, NULL, 0,
40091         "SEQUENCE_SIZE_1_maxNrofCandidateBeams_OF_PRACH_ResourceDedicatedBFR", HFILL }},
40092     { &hf_nr_rrc_candidateBeamRSList_item,
40093       { "PRACH-ResourceDedicatedBFR", "nr-rrc.PRACH_ResourceDedicatedBFR",
40094         FT_UINT32, BASE_DEC, VALS(nr_rrc_PRACH_ResourceDedicatedBFR_vals), 0,
40095         NULL, HFILL }},
40096     { &hf_nr_rrc_ssb_perRACH_Occasion,
40097       { "ssb-perRACH-Occasion", "nr-rrc.ssb_perRACH_Occasion",
40098         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_ssb_perRACH_Occasion_vals), 0,
40099         NULL, HFILL }},
40100     { &hf_nr_rrc_ra_ssb_OccasionMaskIndex,
40101       { "ra-ssb-OccasionMaskIndex", "nr-rrc.ra_ssb_OccasionMaskIndex",
40102         FT_UINT32, BASE_DEC, NULL, 0,
40103         "INTEGER_0_15", HFILL }},
40104     { &hf_nr_rrc_recoverySearchSpaceId,
40105       { "recoverySearchSpaceId", "nr-rrc.recoverySearchSpaceId",
40106         FT_UINT32, BASE_DEC, NULL, 0,
40107         "SearchSpaceId", HFILL }},
40108     { &hf_nr_rrc_ra_Prioritization,
40109       { "ra-Prioritization", "nr-rrc.ra_Prioritization_element",
40110         FT_NONE, BASE_NONE, NULL, 0,
40111         NULL, HFILL }},
40112     { &hf_nr_rrc_beamFailureRecoveryTimer,
40113       { "beamFailureRecoveryTimer", "nr-rrc.beamFailureRecoveryTimer",
40114         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_beamFailureRecoveryTimer_vals), 0,
40115         NULL, HFILL }},
40116     { &hf_nr_rrc_msg1_SubcarrierSpacing_v1530,
40117       { "msg1-SubcarrierSpacing-v1530", "nr-rrc.msg1_SubcarrierSpacing_v1530",
40118         FT_UINT32, BASE_DEC, VALS(nr_rrc_SubcarrierSpacing_vals), 0,
40119         "SubcarrierSpacing", HFILL }},
40120     { &hf_nr_rrc_ssb,
40121       { "ssb", "nr-rrc.ssb_element",
40122         FT_NONE, BASE_NONE, NULL, 0,
40123         "BFR_SSB_Resource", HFILL }},
40124     { &hf_nr_rrc_csi_RS,
40125       { "csi-RS", "nr-rrc.csi_RS_element",
40126         FT_NONE, BASE_NONE, NULL, 0,
40127         "BFR_CSIRS_Resource", HFILL }},
40128     { &hf_nr_rrc_ssb_01,
40129       { "ssb", "nr-rrc.ssb",
40130         FT_UINT32, BASE_DEC, NULL, 0,
40131         "SSB_Index", HFILL }},
40132     { &hf_nr_rrc_ra_PreambleIndex,
40133       { "ra-PreambleIndex", "nr-rrc.ra_PreambleIndex",
40134         FT_UINT32, BASE_DEC, NULL, 0,
40135         "INTEGER_0_63", HFILL }},
40136     { &hf_nr_rrc_csi_RS_01,
40137       { "csi-RS", "nr-rrc.csi_RS",
40138         FT_UINT32, BASE_DEC, NULL, 0,
40139         "NZP_CSI_RS_ResourceId", HFILL }},
40140     { &hf_nr_rrc_ra_OccasionList,
40141       { "ra-OccasionList", "nr-rrc.ra_OccasionList",
40142         FT_UINT32, BASE_DEC, NULL, 0,
40143         NULL, HFILL }},
40144     { &hf_nr_rrc_ra_OccasionList_item,
40145       { "ra-OccasionList item", "nr-rrc.ra_OccasionList_item",
40146         FT_UINT32, BASE_DEC, NULL, 0,
40147         "INTEGER_0_maxRA_Occasions_1", HFILL }},
40148     { &hf_nr_rrc_periodicBSR_Timer,
40149       { "periodicBSR-Timer", "nr-rrc.periodicBSR_Timer",
40150         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_periodicBSR_Timer_vals), 0,
40151         NULL, HFILL }},
40152     { &hf_nr_rrc_retxBSR_Timer,
40153       { "retxBSR-Timer", "nr-rrc.retxBSR_Timer",
40154         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_retxBSR_Timer_vals), 0,
40155         NULL, HFILL }},
40156     { &hf_nr_rrc_logicalChannelSR_DelayTimer,
40157       { "logicalChannelSR-DelayTimer", "nr-rrc.logicalChannelSR_DelayTimer",
40158         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_logicalChannelSR_DelayTimer_vals), 0,
40159         NULL, HFILL }},
40160     { &hf_nr_rrc_locationAndBandwidth,
40161       { "locationAndBandwidth", "nr-rrc.locationAndBandwidth",
40162         FT_UINT32, BASE_DEC, NULL, 0,
40163         "INTEGER_0_37949", HFILL }},
40164     { &hf_nr_rrc_subcarrierSpacing,
40165       { "subcarrierSpacing", "nr-rrc.subcarrierSpacing",
40166         FT_UINT32, BASE_DEC, VALS(nr_rrc_SubcarrierSpacing_vals), 0,
40167         NULL, HFILL }},
40168     { &hf_nr_rrc_cyclicPrefix,
40169       { "cyclicPrefix", "nr-rrc.cyclicPrefix",
40170         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_cyclicPrefix_vals), 0,
40171         NULL, HFILL }},
40172     { &hf_nr_rrc_bwp_Id,
40173       { "bwp-Id", "nr-rrc.bwp_Id",
40174         FT_UINT32, BASE_DEC, NULL, 0,
40175         NULL, HFILL }},
40176     { &hf_nr_rrc_bwp_Common,
40177       { "bwp-Common", "nr-rrc.bwp_Common_element",
40178         FT_NONE, BASE_NONE, NULL, 0,
40179         "BWP_DownlinkCommon", HFILL }},
40180     { &hf_nr_rrc_bwp_Dedicated,
40181       { "bwp-Dedicated", "nr-rrc.bwp_Dedicated_element",
40182         FT_NONE, BASE_NONE, NULL, 0,
40183         "BWP_DownlinkDedicated", HFILL }},
40184     { &hf_nr_rrc_genericParameters,
40185       { "genericParameters", "nr-rrc.genericParameters_element",
40186         FT_NONE, BASE_NONE, NULL, 0,
40187         "BWP", HFILL }},
40188     { &hf_nr_rrc_pdcch_ConfigCommon,
40189       { "pdcch-ConfigCommon", "nr-rrc.pdcch_ConfigCommon",
40190         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pdcch_ConfigCommon_vals), 0,
40191         NULL, HFILL }},
40192     { &hf_nr_rrc_setup_02,
40193       { "setup", "nr-rrc.setup_element",
40194         FT_NONE, BASE_NONE, NULL, 0,
40195         "PDCCH_ConfigCommon", HFILL }},
40196     { &hf_nr_rrc_pdsch_ConfigCommon,
40197       { "pdsch-ConfigCommon", "nr-rrc.pdsch_ConfigCommon",
40198         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pdsch_ConfigCommon_vals), 0,
40199         NULL, HFILL }},
40200     { &hf_nr_rrc_setup_03,
40201       { "setup", "nr-rrc.setup_element",
40202         FT_NONE, BASE_NONE, NULL, 0,
40203         "PDSCH_ConfigCommon", HFILL }},
40204     { &hf_nr_rrc_pdcch_Config,
40205       { "pdcch-Config", "nr-rrc.pdcch_Config",
40206         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pdcch_Config_vals), 0,
40207         NULL, HFILL }},
40208     { &hf_nr_rrc_setup_04,
40209       { "setup", "nr-rrc.setup_element",
40210         FT_NONE, BASE_NONE, NULL, 0,
40211         "PDCCH_Config", HFILL }},
40212     { &hf_nr_rrc_pdsch_Config,
40213       { "pdsch-Config", "nr-rrc.pdsch_Config",
40214         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pdsch_Config_vals), 0,
40215         NULL, HFILL }},
40216     { &hf_nr_rrc_setup_05,
40217       { "setup", "nr-rrc.setup_element",
40218         FT_NONE, BASE_NONE, NULL, 0,
40219         "PDSCH_Config", HFILL }},
40220     { &hf_nr_rrc_sps_Config,
40221       { "sps-Config", "nr-rrc.sps_Config",
40222         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_sps_Config_vals), 0,
40223         NULL, HFILL }},
40224     { &hf_nr_rrc_setup_06,
40225       { "setup", "nr-rrc.setup_element",
40226         FT_NONE, BASE_NONE, NULL, 0,
40227         "SPS_Config", HFILL }},
40228     { &hf_nr_rrc_radioLinkMonitoringConfig,
40229       { "radioLinkMonitoringConfig", "nr-rrc.radioLinkMonitoringConfig",
40230         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_radioLinkMonitoringConfig_vals), 0,
40231         NULL, HFILL }},
40232     { &hf_nr_rrc_setup_07,
40233       { "setup", "nr-rrc.setup_element",
40234         FT_NONE, BASE_NONE, NULL, 0,
40235         "RadioLinkMonitoringConfig", HFILL }},
40236     { &hf_nr_rrc_bwp_Common_01,
40237       { "bwp-Common", "nr-rrc.bwp_Common_element",
40238         FT_NONE, BASE_NONE, NULL, 0,
40239         "BWP_UplinkCommon", HFILL }},
40240     { &hf_nr_rrc_bwp_Dedicated_01,
40241       { "bwp-Dedicated", "nr-rrc.bwp_Dedicated_element",
40242         FT_NONE, BASE_NONE, NULL, 0,
40243         "BWP_UplinkDedicated", HFILL }},
40244     { &hf_nr_rrc_rach_ConfigCommon,
40245       { "rach-ConfigCommon", "nr-rrc.rach_ConfigCommon",
40246         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_rach_ConfigCommon_vals), 0,
40247         NULL, HFILL }},
40248     { &hf_nr_rrc_setup_08,
40249       { "setup", "nr-rrc.setup_element",
40250         FT_NONE, BASE_NONE, NULL, 0,
40251         "RACH_ConfigCommon", HFILL }},
40252     { &hf_nr_rrc_pusch_ConfigCommon,
40253       { "pusch-ConfigCommon", "nr-rrc.pusch_ConfigCommon",
40254         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pusch_ConfigCommon_vals), 0,
40255         NULL, HFILL }},
40256     { &hf_nr_rrc_setup_09,
40257       { "setup", "nr-rrc.setup_element",
40258         FT_NONE, BASE_NONE, NULL, 0,
40259         "PUSCH_ConfigCommon", HFILL }},
40260     { &hf_nr_rrc_pucch_ConfigCommon,
40261       { "pucch-ConfigCommon", "nr-rrc.pucch_ConfigCommon",
40262         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pucch_ConfigCommon_vals), 0,
40263         NULL, HFILL }},
40264     { &hf_nr_rrc_setup_10,
40265       { "setup", "nr-rrc.setup_element",
40266         FT_NONE, BASE_NONE, NULL, 0,
40267         "PUCCH_ConfigCommon", HFILL }},
40268     { &hf_nr_rrc_pucch_Config,
40269       { "pucch-Config", "nr-rrc.pucch_Config",
40270         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pucch_Config_vals), 0,
40271         NULL, HFILL }},
40272     { &hf_nr_rrc_setup_11,
40273       { "setup", "nr-rrc.setup_element",
40274         FT_NONE, BASE_NONE, NULL, 0,
40275         "PUCCH_Config", HFILL }},
40276     { &hf_nr_rrc_pusch_Config,
40277       { "pusch-Config", "nr-rrc.pusch_Config",
40278         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pusch_Config_vals), 0,
40279         NULL, HFILL }},
40280     { &hf_nr_rrc_setup_12,
40281       { "setup", "nr-rrc.setup_element",
40282         FT_NONE, BASE_NONE, NULL, 0,
40283         "PUSCH_Config", HFILL }},
40284     { &hf_nr_rrc_configuredGrantConfig,
40285       { "configuredGrantConfig", "nr-rrc.configuredGrantConfig",
40286         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_configuredGrantConfig_vals), 0,
40287         NULL, HFILL }},
40288     { &hf_nr_rrc_setup_13,
40289       { "setup", "nr-rrc.setup_element",
40290         FT_NONE, BASE_NONE, NULL, 0,
40291         "ConfiguredGrantConfig", HFILL }},
40292     { &hf_nr_rrc_srs_Config,
40293       { "srs-Config", "nr-rrc.srs_Config",
40294         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_srs_Config_vals), 0,
40295         NULL, HFILL }},
40296     { &hf_nr_rrc_setup_14,
40297       { "setup", "nr-rrc.setup_element",
40298         FT_NONE, BASE_NONE, NULL, 0,
40299         "SRS_Config", HFILL }},
40300     { &hf_nr_rrc_beamFailureRecoveryConfig,
40301       { "beamFailureRecoveryConfig", "nr-rrc.beamFailureRecoveryConfig",
40302         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_beamFailureRecoveryConfig_vals), 0,
40303         NULL, HFILL }},
40304     { &hf_nr_rrc_setup_15,
40305       { "setup", "nr-rrc.setup_element",
40306         FT_NONE, BASE_NONE, NULL, 0,
40307         "BeamFailureRecoveryConfig", HFILL }},
40308     { &hf_nr_rrc_plmn_IdentityList,
40309       { "plmn-IdentityList", "nr-rrc.plmn_IdentityList",
40310         FT_UINT32, BASE_DEC, NULL, 0,
40311         "PLMN_IdentityInfoList", HFILL }},
40312     { &hf_nr_rrc_cellReservedForOtherUse,
40313       { "cellReservedForOtherUse", "nr-rrc.cellReservedForOtherUse",
40314         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_cellReservedForOtherUse_vals), 0,
40315         NULL, HFILL }},
40316     { &hf_nr_rrc_plmn_IdentityList_eutra_5gc,
40317       { "plmn-IdentityList-eutra-5gc", "nr-rrc.plmn_IdentityList_eutra_5gc",
40318         FT_UINT32, BASE_DEC, NULL, 0,
40319         NULL, HFILL }},
40320     { &hf_nr_rrc_trackingAreaCode_eutra_5gc,
40321       { "trackingAreaCode-eutra-5gc", "nr-rrc.trackingAreaCode_eutra_5gc",
40322         FT_BYTES, BASE_NONE, NULL, 0,
40323         "TrackingAreaCode", HFILL }},
40324     { &hf_nr_rrc_ranac_5gc,
40325       { "ranac-5gc", "nr-rrc.ranac_5gc",
40326         FT_UINT32, BASE_DEC, NULL, 0,
40327         "RAN_AreaCode", HFILL }},
40328     { &hf_nr_rrc_cellIdentity_eutra_5gc,
40329       { "cellIdentity-eutra-5gc", "nr-rrc.cellIdentity_eutra_5gc",
40330         FT_UINT32, BASE_DEC, VALS(nr_rrc_CellIdentity_EUTRA_5GC_vals), 0,
40331         NULL, HFILL }},
40332     { &hf_nr_rrc_PLMN_IdentityList_EUTRA_5GC_item,
40333       { "PLMN-Identity-EUTRA-5GC", "nr-rrc.PLMN_Identity_EUTRA_5GC",
40334         FT_UINT32, BASE_DEC, VALS(nr_rrc_PLMN_Identity_EUTRA_5GC_vals), 0,
40335         NULL, HFILL }},
40336     { &hf_nr_rrc_plmn_Identity_EUTRA_5GC,
40337       { "plmn-Identity-EUTRA-5GC", "nr-rrc.plmn_Identity_EUTRA_5GC_element",
40338         FT_NONE, BASE_NONE, NULL, 0,
40339         "PLMN_Identity", HFILL }},
40340     { &hf_nr_rrc_plmn_index,
40341       { "plmn-index", "nr-rrc.plmn_index",
40342         FT_UINT32, BASE_DEC, NULL, 0,
40343         "INTEGER_1_maxPLMN", HFILL }},
40344     { &hf_nr_rrc_cellIdentity_EUTRA,
40345       { "cellIdentity-EUTRA", "nr-rrc.cellIdentity_EUTRA",
40346         FT_BYTES, BASE_NONE, NULL, 0,
40347         "BIT_STRING_SIZE_28", HFILL }},
40348     { &hf_nr_rrc_cellId_index,
40349       { "cellId-index", "nr-rrc.cellId_index",
40350         FT_UINT32, BASE_DEC, NULL, 0,
40351         "INTEGER_1_maxPLMN", HFILL }},
40352     { &hf_nr_rrc_plmn_IdentityList_eutra_epc,
40353       { "plmn-IdentityList-eutra-epc", "nr-rrc.plmn_IdentityList_eutra_epc",
40354         FT_UINT32, BASE_DEC, NULL, 0,
40355         NULL, HFILL }},
40356     { &hf_nr_rrc_trackingAreaCode_eutra_epc,
40357       { "trackingAreaCode-eutra-epc", "nr-rrc.trackingAreaCode_eutra_epc",
40358         FT_BYTES, BASE_NONE, NULL, 0,
40359         "BIT_STRING_SIZE_16", HFILL }},
40360     { &hf_nr_rrc_cellIdentity_eutra_epc,
40361       { "cellIdentity-eutra-epc", "nr-rrc.cellIdentity_eutra_epc",
40362         FT_BYTES, BASE_NONE, NULL, 0,
40363         "BIT_STRING_SIZE_28", HFILL }},
40364     { &hf_nr_rrc_PLMN_IdentityList_EUTRA_EPC_item,
40365       { "PLMN-Identity", "nr-rrc.PLMN_Identity_element",
40366         FT_NONE, BASE_NONE, NULL, 0,
40367         NULL, HFILL }},
40368     { &hf_nr_rrc_cellGroupId,
40369       { "cellGroupId", "nr-rrc.cellGroupId",
40370         FT_UINT32, BASE_DEC, NULL, 0,
40371         NULL, HFILL }},
40372     { &hf_nr_rrc_rlc_BearerToAddModList,
40373       { "rlc-BearerToAddModList", "nr-rrc.rlc_BearerToAddModList",
40374         FT_UINT32, BASE_DEC, NULL, 0,
40375         "SEQUENCE_SIZE_1_maxLC_ID_OF_RLC_BearerConfig", HFILL }},
40376     { &hf_nr_rrc_rlc_BearerToAddModList_item,
40377       { "RLC-BearerConfig", "nr-rrc.RLC_BearerConfig_element",
40378         FT_NONE, BASE_NONE, NULL, 0,
40379         NULL, HFILL }},
40380     { &hf_nr_rrc_rlc_BearerToReleaseList,
40381       { "rlc-BearerToReleaseList", "nr-rrc.rlc_BearerToReleaseList",
40382         FT_UINT32, BASE_DEC, NULL, 0,
40383         "SEQUENCE_SIZE_1_maxLC_ID_OF_LogicalChannelIdentity", HFILL }},
40384     { &hf_nr_rrc_rlc_BearerToReleaseList_item,
40385       { "LogicalChannelIdentity", "nr-rrc.LogicalChannelIdentity",
40386         FT_UINT32, BASE_DEC, NULL, 0,
40387         NULL, HFILL }},
40388     { &hf_nr_rrc_mac_CellGroupConfig,
40389       { "mac-CellGroupConfig", "nr-rrc.mac_CellGroupConfig_element",
40390         FT_NONE, BASE_NONE, NULL, 0,
40391         NULL, HFILL }},
40392     { &hf_nr_rrc_physicalCellGroupConfig,
40393       { "physicalCellGroupConfig", "nr-rrc.physicalCellGroupConfig_element",
40394         FT_NONE, BASE_NONE, NULL, 0,
40395         NULL, HFILL }},
40396     { &hf_nr_rrc_spCellConfig,
40397       { "spCellConfig", "nr-rrc.spCellConfig_element",
40398         FT_NONE, BASE_NONE, NULL, 0,
40399         NULL, HFILL }},
40400     { &hf_nr_rrc_sCellToAddModList,
40401       { "sCellToAddModList", "nr-rrc.sCellToAddModList",
40402         FT_UINT32, BASE_DEC, NULL, 0,
40403         "SEQUENCE_SIZE_1_maxNrofSCells_OF_SCellConfig", HFILL }},
40404     { &hf_nr_rrc_sCellToAddModList_item,
40405       { "SCellConfig", "nr-rrc.SCellConfig_element",
40406         FT_NONE, BASE_NONE, NULL, 0,
40407         NULL, HFILL }},
40408     { &hf_nr_rrc_sCellToReleaseList,
40409       { "sCellToReleaseList", "nr-rrc.sCellToReleaseList",
40410         FT_UINT32, BASE_DEC, NULL, 0,
40411         "SEQUENCE_SIZE_1_maxNrofSCells_OF_SCellIndex", HFILL }},
40412     { &hf_nr_rrc_sCellToReleaseList_item,
40413       { "SCellIndex", "nr-rrc.SCellIndex",
40414         FT_UINT32, BASE_DEC, NULL, 0,
40415         NULL, HFILL }},
40416     { &hf_nr_rrc_reportUplinkTxDirectCurrent_v1530,
40417       { "reportUplinkTxDirectCurrent-v1530", "nr-rrc.reportUplinkTxDirectCurrent_v1530",
40418         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_reportUplinkTxDirectCurrent_v1530_vals), 0,
40419         "T_reportUplinkTxDirectCurrent_v1530", HFILL }},
40420     { &hf_nr_rrc_reconfigurationWithSync,
40421       { "reconfigurationWithSync", "nr-rrc.reconfigurationWithSync_element",
40422         FT_NONE, BASE_NONE, NULL, 0,
40423         NULL, HFILL }},
40424     { &hf_nr_rrc_rlf_TimersAndConstants,
40425       { "rlf-TimersAndConstants", "nr-rrc.rlf_TimersAndConstants",
40426         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_rlf_TimersAndConstants_vals), 0,
40427         NULL, HFILL }},
40428     { &hf_nr_rrc_setup_16,
40429       { "setup", "nr-rrc.setup_element",
40430         FT_NONE, BASE_NONE, NULL, 0,
40431         "RLF_TimersAndConstants", HFILL }},
40432     { &hf_nr_rrc_rlmInSyncOutOfSyncThreshold,
40433       { "rlmInSyncOutOfSyncThreshold", "nr-rrc.rlmInSyncOutOfSyncThreshold",
40434         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_rlmInSyncOutOfSyncThreshold_vals), 0,
40435         NULL, HFILL }},
40436     { &hf_nr_rrc_spCellConfigDedicated,
40437       { "spCellConfigDedicated", "nr-rrc.spCellConfigDedicated_element",
40438         FT_NONE, BASE_NONE, NULL, 0,
40439         "ServingCellConfig", HFILL }},
40440     { &hf_nr_rrc_spCellConfigCommon,
40441       { "spCellConfigCommon", "nr-rrc.spCellConfigCommon_element",
40442         FT_NONE, BASE_NONE, NULL, 0,
40443         "ServingCellConfigCommon", HFILL }},
40444     { &hf_nr_rrc_newUE_Identity,
40445       { "newUE-Identity", "nr-rrc.newUE_Identity",
40446         FT_UINT32, BASE_DEC, NULL, 0,
40447         "RNTI_Value", HFILL }},
40448     { &hf_nr_rrc_t304,
40449       { "t304", "nr-rrc.t304",
40450         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_t304_vals), 0,
40451         NULL, HFILL }},
40452     { &hf_nr_rrc_rach_ConfigDedicated,
40453       { "rach-ConfigDedicated", "nr-rrc.rach_ConfigDedicated",
40454         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_rach_ConfigDedicated_vals), 0,
40455         NULL, HFILL }},
40456     { &hf_nr_rrc_uplink,
40457       { "uplink", "nr-rrc.uplink_element",
40458         FT_NONE, BASE_NONE, NULL, 0,
40459         "RACH_ConfigDedicated", HFILL }},
40460     { &hf_nr_rrc_supplementaryUplink,
40461       { "supplementaryUplink", "nr-rrc.supplementaryUplink_element",
40462         FT_NONE, BASE_NONE, NULL, 0,
40463         "RACH_ConfigDedicated", HFILL }},
40464     { &hf_nr_rrc_sCellIndex,
40465       { "sCellIndex", "nr-rrc.sCellIndex",
40466         FT_UINT32, BASE_DEC, NULL, 0,
40467         NULL, HFILL }},
40468     { &hf_nr_rrc_sCellConfigCommon,
40469       { "sCellConfigCommon", "nr-rrc.sCellConfigCommon_element",
40470         FT_NONE, BASE_NONE, NULL, 0,
40471         "ServingCellConfigCommon", HFILL }},
40472     { &hf_nr_rrc_sCellConfigDedicated,
40473       { "sCellConfigDedicated", "nr-rrc.sCellConfigDedicated_element",
40474         FT_NONE, BASE_NONE, NULL, 0,
40475         "ServingCellConfig", HFILL }},
40476     { &hf_nr_rrc_plmn_IdentityInfoList,
40477       { "plmn-IdentityInfoList", "nr-rrc.plmn_IdentityInfoList",
40478         FT_UINT32, BASE_DEC, NULL, 0,
40479         NULL, HFILL }},
40480     { &hf_nr_rrc_frequencyBandList_01,
40481       { "frequencyBandList", "nr-rrc.frequencyBandList",
40482         FT_UINT32, BASE_DEC, NULL, 0,
40483         "MultiFrequencyBandListNR", HFILL }},
40484     { &hf_nr_rrc_noSIB1,
40485       { "noSIB1", "nr-rrc.noSIB1_element",
40486         FT_NONE, BASE_NONE, NULL, 0,
40487         NULL, HFILL }},
40488     { &hf_nr_rrc_codebookType,
40489       { "codebookType", "nr-rrc.codebookType",
40490         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_codebookType_vals), 0,
40491         NULL, HFILL }},
40492     { &hf_nr_rrc_type1_01,
40493       { "type1", "nr-rrc.type1_element",
40494         FT_NONE, BASE_NONE, NULL, 0,
40495         "T_type1_01", HFILL }},
40496     { &hf_nr_rrc_subType,
40497       { "subType", "nr-rrc.subType",
40498         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_subType_vals), 0,
40499         NULL, HFILL }},
40500     { &hf_nr_rrc_typeI_SinglePanel,
40501       { "typeI-SinglePanel", "nr-rrc.typeI_SinglePanel_element",
40502         FT_NONE, BASE_NONE, NULL, 0,
40503         NULL, HFILL }},
40504     { &hf_nr_rrc_nrOfAntennaPorts,
40505       { "nrOfAntennaPorts", "nr-rrc.nrOfAntennaPorts",
40506         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_nrOfAntennaPorts_vals), 0,
40507         NULL, HFILL }},
40508     { &hf_nr_rrc_two,
40509       { "two", "nr-rrc.two_element",
40510         FT_NONE, BASE_NONE, NULL, 0,
40511         NULL, HFILL }},
40512     { &hf_nr_rrc_twoTX_CodebookSubsetRestriction,
40513       { "twoTX-CodebookSubsetRestriction", "nr-rrc.twoTX_CodebookSubsetRestriction",
40514         FT_BYTES, BASE_NONE, NULL, 0,
40515         "BIT_STRING_SIZE_6", HFILL }},
40516     { &hf_nr_rrc_moreThanTwo,
40517       { "moreThanTwo", "nr-rrc.moreThanTwo_element",
40518         FT_NONE, BASE_NONE, NULL, 0,
40519         NULL, HFILL }},
40520     { &hf_nr_rrc_n1_n2,
40521       { "n1-n2", "nr-rrc.n1_n2",
40522         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_n1_n2_vals), 0,
40523         NULL, HFILL }},
40524     { &hf_nr_rrc_two_one_TypeI_SinglePanel_Restriction,
40525       { "two-one-TypeI-SinglePanel-Restriction", "nr-rrc.two_one_TypeI_SinglePanel_Restriction",
40526         FT_BYTES, BASE_NONE, NULL, 0,
40527         "BIT_STRING_SIZE_8", HFILL }},
40528     { &hf_nr_rrc_two_two_TypeI_SinglePanel_Restriction,
40529       { "two-two-TypeI-SinglePanel-Restriction", "nr-rrc.two_two_TypeI_SinglePanel_Restriction",
40530         FT_BYTES, BASE_NONE, NULL, 0,
40531         "BIT_STRING_SIZE_64", HFILL }},
40532     { &hf_nr_rrc_four_one_TypeI_SinglePanel_Restriction,
40533       { "four-one-TypeI-SinglePanel-Restriction", "nr-rrc.four_one_TypeI_SinglePanel_Restriction",
40534         FT_BYTES, BASE_NONE, NULL, 0,
40535         "BIT_STRING_SIZE_16", HFILL }},
40536     { &hf_nr_rrc_three_two_TypeI_SinglePanel_Restriction,
40537       { "three-two-TypeI-SinglePanel-Restriction", "nr-rrc.three_two_TypeI_SinglePanel_Restriction",
40538         FT_BYTES, BASE_NONE, NULL, 0,
40539         "BIT_STRING_SIZE_96", HFILL }},
40540     { &hf_nr_rrc_six_one_TypeI_SinglePanel_Restriction,
40541       { "six-one-TypeI-SinglePanel-Restriction", "nr-rrc.six_one_TypeI_SinglePanel_Restriction",
40542         FT_BYTES, BASE_NONE, NULL, 0,
40543         "BIT_STRING_SIZE_24", HFILL }},
40544     { &hf_nr_rrc_four_two_TypeI_SinglePanel_Restriction,
40545       { "four-two-TypeI-SinglePanel-Restriction", "nr-rrc.four_two_TypeI_SinglePanel_Restriction",
40546         FT_BYTES, BASE_NONE, NULL, 0,
40547         "BIT_STRING_SIZE_128", HFILL }},
40548     { &hf_nr_rrc_eight_one_TypeI_SinglePanel_Restriction,
40549       { "eight-one-TypeI-SinglePanel-Restriction", "nr-rrc.eight_one_TypeI_SinglePanel_Restriction",
40550         FT_BYTES, BASE_NONE, NULL, 0,
40551         "BIT_STRING_SIZE_32", HFILL }},
40552     { &hf_nr_rrc_four_three_TypeI_SinglePanel_Restriction,
40553       { "four-three-TypeI-SinglePanel-Restriction", "nr-rrc.four_three_TypeI_SinglePanel_Restriction",
40554         FT_BYTES, BASE_NONE, NULL, 0,
40555         "BIT_STRING_SIZE_192", HFILL }},
40556     { &hf_nr_rrc_six_two_TypeI_SinglePanel_Restriction,
40557       { "six-two-TypeI-SinglePanel-Restriction", "nr-rrc.six_two_TypeI_SinglePanel_Restriction",
40558         FT_BYTES, BASE_NONE, NULL, 0,
40559         "BIT_STRING_SIZE_192", HFILL }},
40560     { &hf_nr_rrc_twelve_one_TypeI_SinglePanel_Restriction,
40561       { "twelve-one-TypeI-SinglePanel-Restriction", "nr-rrc.twelve_one_TypeI_SinglePanel_Restriction",
40562         FT_BYTES, BASE_NONE, NULL, 0,
40563         "BIT_STRING_SIZE_48", HFILL }},
40564     { &hf_nr_rrc_four_four_TypeI_SinglePanel_Restriction,
40565       { "four-four-TypeI-SinglePanel-Restriction", "nr-rrc.four_four_TypeI_SinglePanel_Restriction",
40566         FT_BYTES, BASE_NONE, NULL, 0,
40567         "BIT_STRING_SIZE_256", HFILL }},
40568     { &hf_nr_rrc_eight_two_TypeI_SinglePanel_Restriction,
40569       { "eight-two-TypeI-SinglePanel-Restriction", "nr-rrc.eight_two_TypeI_SinglePanel_Restriction",
40570         FT_BYTES, BASE_NONE, NULL, 0,
40571         "BIT_STRING_SIZE_256", HFILL }},
40572     { &hf_nr_rrc_sixteen_one_TypeI_SinglePanel_Restriction,
40573       { "sixteen-one-TypeI-SinglePanel-Restriction", "nr-rrc.sixteen_one_TypeI_SinglePanel_Restriction",
40574         FT_BYTES, BASE_NONE, NULL, 0,
40575         "BIT_STRING_SIZE_64", HFILL }},
40576     { &hf_nr_rrc_typeI_SinglePanel_codebookSubsetRestriction_i2,
40577       { "typeI-SinglePanel-codebookSubsetRestriction-i2", "nr-rrc.typeI_SinglePanel_codebookSubsetRestriction_i2",
40578         FT_BYTES, BASE_NONE, NULL, 0,
40579         "BIT_STRING_SIZE_16", HFILL }},
40580     { &hf_nr_rrc_typeI_SinglePanel_ri_Restriction,
40581       { "typeI-SinglePanel-ri-Restriction", "nr-rrc.typeI_SinglePanel_ri_Restriction",
40582         FT_BYTES, BASE_NONE, NULL, 0,
40583         "BIT_STRING_SIZE_8", HFILL }},
40584     { &hf_nr_rrc_typeI_MultiPanel,
40585       { "typeI-MultiPanel", "nr-rrc.typeI_MultiPanel_element",
40586         FT_NONE, BASE_NONE, NULL, 0,
40587         NULL, HFILL }},
40588     { &hf_nr_rrc_ng_n1_n2,
40589       { "ng-n1-n2", "nr-rrc.ng_n1_n2",
40590         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_ng_n1_n2_vals), 0,
40591         NULL, HFILL }},
40592     { &hf_nr_rrc_two_two_one_TypeI_MultiPanel_Restriction,
40593       { "two-two-one-TypeI-MultiPanel-Restriction", "nr-rrc.two_two_one_TypeI_MultiPanel_Restriction",
40594         FT_BYTES, BASE_NONE, NULL, 0,
40595         "BIT_STRING_SIZE_8", HFILL }},
40596     { &hf_nr_rrc_two_four_one_TypeI_MultiPanel_Restriction,
40597       { "two-four-one-TypeI-MultiPanel-Restriction", "nr-rrc.two_four_one_TypeI_MultiPanel_Restriction",
40598         FT_BYTES, BASE_NONE, NULL, 0,
40599         "BIT_STRING_SIZE_16", HFILL }},
40600     { &hf_nr_rrc_four_two_one_TypeI_MultiPanel_Restriction,
40601       { "four-two-one-TypeI-MultiPanel-Restriction", "nr-rrc.four_two_one_TypeI_MultiPanel_Restriction",
40602         FT_BYTES, BASE_NONE, NULL, 0,
40603         "BIT_STRING_SIZE_8", HFILL }},
40604     { &hf_nr_rrc_two_two_two_TypeI_MultiPanel_Restriction,
40605       { "two-two-two-TypeI-MultiPanel-Restriction", "nr-rrc.two_two_two_TypeI_MultiPanel_Restriction",
40606         FT_BYTES, BASE_NONE, NULL, 0,
40607         "BIT_STRING_SIZE_64", HFILL }},
40608     { &hf_nr_rrc_two_eight_one_TypeI_MultiPanel_Restriction,
40609       { "two-eight-one-TypeI-MultiPanel-Restriction", "nr-rrc.two_eight_one_TypeI_MultiPanel_Restriction",
40610         FT_BYTES, BASE_NONE, NULL, 0,
40611         "BIT_STRING_SIZE_32", HFILL }},
40612     { &hf_nr_rrc_four_four_one_TypeI_MultiPanel_Restriction,
40613       { "four-four-one-TypeI-MultiPanel-Restriction", "nr-rrc.four_four_one_TypeI_MultiPanel_Restriction",
40614         FT_BYTES, BASE_NONE, NULL, 0,
40615         "BIT_STRING_SIZE_16", HFILL }},
40616     { &hf_nr_rrc_two_four_two_TypeI_MultiPanel_Restriction,
40617       { "two-four-two-TypeI-MultiPanel-Restriction", "nr-rrc.two_four_two_TypeI_MultiPanel_Restriction",
40618         FT_BYTES, BASE_NONE, NULL, 0,
40619         "BIT_STRING_SIZE_128", HFILL }},
40620     { &hf_nr_rrc_four_two_two_TypeI_MultiPanel_Restriction,
40621       { "four-two-two-TypeI-MultiPanel-Restriction", "nr-rrc.four_two_two_TypeI_MultiPanel_Restriction",
40622         FT_BYTES, BASE_NONE, NULL, 0,
40623         "BIT_STRING_SIZE_64", HFILL }},
40624     { &hf_nr_rrc_ri_Restriction,
40625       { "ri-Restriction", "nr-rrc.ri_Restriction",
40626         FT_BYTES, BASE_NONE, NULL, 0,
40627         "BIT_STRING_SIZE_4", HFILL }},
40628     { &hf_nr_rrc_codebookMode,
40629       { "codebookMode", "nr-rrc.codebookMode",
40630         FT_UINT32, BASE_DEC, NULL, 0,
40631         "INTEGER_1_2", HFILL }},
40632     { &hf_nr_rrc_type2,
40633       { "type2", "nr-rrc.type2_element",
40634         FT_NONE, BASE_NONE, NULL, 0,
40635         NULL, HFILL }},
40636     { &hf_nr_rrc_subType_01,
40637       { "subType", "nr-rrc.subType",
40638         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_subType_01_vals), 0,
40639         "T_subType_01", HFILL }},
40640     { &hf_nr_rrc_typeII,
40641       { "typeII", "nr-rrc.typeII_element",
40642         FT_NONE, BASE_NONE, NULL, 0,
40643         NULL, HFILL }},
40644     { &hf_nr_rrc_n1_n2_codebookSubsetRestriction,
40645       { "n1-n2-codebookSubsetRestriction", "nr-rrc.n1_n2_codebookSubsetRestriction",
40646         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_n1_n2_codebookSubsetRestriction_vals), 0,
40647         NULL, HFILL }},
40648     { &hf_nr_rrc_two_one,
40649       { "two-one", "nr-rrc.two_one",
40650         FT_BYTES, BASE_NONE, NULL, 0,
40651         "BIT_STRING_SIZE_16", HFILL }},
40652     { &hf_nr_rrc_two_two,
40653       { "two-two", "nr-rrc.two_two",
40654         FT_BYTES, BASE_NONE, NULL, 0,
40655         "BIT_STRING_SIZE_43", HFILL }},
40656     { &hf_nr_rrc_four_one,
40657       { "four-one", "nr-rrc.four_one",
40658         FT_BYTES, BASE_NONE, NULL, 0,
40659         "BIT_STRING_SIZE_32", HFILL }},
40660     { &hf_nr_rrc_three_two,
40661       { "three-two", "nr-rrc.three_two",
40662         FT_BYTES, BASE_NONE, NULL, 0,
40663         "BIT_STRING_SIZE_59", HFILL }},
40664     { &hf_nr_rrc_six_one,
40665       { "six-one", "nr-rrc.six_one",
40666         FT_BYTES, BASE_NONE, NULL, 0,
40667         "BIT_STRING_SIZE_48", HFILL }},
40668     { &hf_nr_rrc_four_two,
40669       { "four-two", "nr-rrc.four_two",
40670         FT_BYTES, BASE_NONE, NULL, 0,
40671         "BIT_STRING_SIZE_75", HFILL }},
40672     { &hf_nr_rrc_eight_one,
40673       { "eight-one", "nr-rrc.eight_one",
40674         FT_BYTES, BASE_NONE, NULL, 0,
40675         "BIT_STRING_SIZE_64", HFILL }},
40676     { &hf_nr_rrc_four_three,
40677       { "four-three", "nr-rrc.four_three",
40678         FT_BYTES, BASE_NONE, NULL, 0,
40679         "BIT_STRING_SIZE_107", HFILL }},
40680     { &hf_nr_rrc_six_two,
40681       { "six-two", "nr-rrc.six_two",
40682         FT_BYTES, BASE_NONE, NULL, 0,
40683         "BIT_STRING_SIZE_107", HFILL }},
40684     { &hf_nr_rrc_twelve_one,
40685       { "twelve-one", "nr-rrc.twelve_one",
40686         FT_BYTES, BASE_NONE, NULL, 0,
40687         "BIT_STRING_SIZE_96", HFILL }},
40688     { &hf_nr_rrc_four_four,
40689       { "four-four", "nr-rrc.four_four",
40690         FT_BYTES, BASE_NONE, NULL, 0,
40691         "BIT_STRING_SIZE_139", HFILL }},
40692     { &hf_nr_rrc_eight_two,
40693       { "eight-two", "nr-rrc.eight_two",
40694         FT_BYTES, BASE_NONE, NULL, 0,
40695         "BIT_STRING_SIZE_139", HFILL }},
40696     { &hf_nr_rrc_sixteen_one,
40697       { "sixteen-one", "nr-rrc.sixteen_one",
40698         FT_BYTES, BASE_NONE, NULL, 0,
40699         "BIT_STRING_SIZE_128", HFILL }},
40700     { &hf_nr_rrc_typeII_RI_Restriction,
40701       { "typeII-RI-Restriction", "nr-rrc.typeII_RI_Restriction",
40702         FT_BYTES, BASE_NONE, NULL, 0,
40703         "BIT_STRING_SIZE_2", HFILL }},
40704     { &hf_nr_rrc_typeII_PortSelection,
40705       { "typeII-PortSelection", "nr-rrc.typeII_PortSelection_element",
40706         FT_NONE, BASE_NONE, NULL, 0,
40707         NULL, HFILL }},
40708     { &hf_nr_rrc_portSelectionSamplingSize,
40709       { "portSelectionSamplingSize", "nr-rrc.portSelectionSamplingSize",
40710         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_portSelectionSamplingSize_vals), 0,
40711         NULL, HFILL }},
40712     { &hf_nr_rrc_typeII_PortSelectionRI_Restriction,
40713       { "typeII-PortSelectionRI-Restriction", "nr-rrc.typeII_PortSelectionRI_Restriction",
40714         FT_BYTES, BASE_NONE, NULL, 0,
40715         "BIT_STRING_SIZE_2", HFILL }},
40716     { &hf_nr_rrc_phaseAlphabetSize,
40717       { "phaseAlphabetSize", "nr-rrc.phaseAlphabetSize",
40718         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_phaseAlphabetSize_vals), 0,
40719         NULL, HFILL }},
40720     { &hf_nr_rrc_subbandAmplitude,
40721       { "subbandAmplitude", "nr-rrc.subbandAmplitude",
40722         FT_BOOLEAN, BASE_NONE, NULL, 0,
40723         "BOOLEAN", HFILL }},
40724     { &hf_nr_rrc_numberOfBeams,
40725       { "numberOfBeams", "nr-rrc.numberOfBeams",
40726         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_numberOfBeams_vals), 0,
40727         NULL, HFILL }},
40728     { &hf_nr_rrc_frequencyHopping,
40729       { "frequencyHopping", "nr-rrc.frequencyHopping",
40730         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_frequencyHopping_vals), 0,
40731         NULL, HFILL }},
40732     { &hf_nr_rrc_cg_DMRS_Configuration,
40733       { "cg-DMRS-Configuration", "nr-rrc.cg_DMRS_Configuration_element",
40734         FT_NONE, BASE_NONE, NULL, 0,
40735         "DMRS_UplinkConfig", HFILL }},
40736     { &hf_nr_rrc_mcs_Table,
40737       { "mcs-Table", "nr-rrc.mcs_Table",
40738         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_mcs_Table_vals), 0,
40739         NULL, HFILL }},
40740     { &hf_nr_rrc_mcs_TableTransformPrecoder,
40741       { "mcs-TableTransformPrecoder", "nr-rrc.mcs_TableTransformPrecoder",
40742         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_mcs_TableTransformPrecoder_vals), 0,
40743         NULL, HFILL }},
40744     { &hf_nr_rrc_uci_OnPUSCH,
40745       { "uci-OnPUSCH", "nr-rrc.uci_OnPUSCH",
40746         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_uci_OnPUSCH_vals), 0,
40747         NULL, HFILL }},
40748     { &hf_nr_rrc_setup_17,
40749       { "setup", "nr-rrc.setup",
40750         FT_UINT32, BASE_DEC, VALS(nr_rrc_CG_UCI_OnPUSCH_vals), 0,
40751         "CG_UCI_OnPUSCH", HFILL }},
40752     { &hf_nr_rrc_resourceAllocation,
40753       { "resourceAllocation", "nr-rrc.resourceAllocation",
40754         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_resourceAllocation_vals), 0,
40755         NULL, HFILL }},
40756     { &hf_nr_rrc_rbg_Size,
40757       { "rbg-Size", "nr-rrc.rbg_Size",
40758         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_rbg_Size_vals), 0,
40759         NULL, HFILL }},
40760     { &hf_nr_rrc_powerControlLoopToUse,
40761       { "powerControlLoopToUse", "nr-rrc.powerControlLoopToUse",
40762         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_powerControlLoopToUse_vals), 0,
40763         NULL, HFILL }},
40764     { &hf_nr_rrc_p0_PUSCH_Alpha,
40765       { "p0-PUSCH-Alpha", "nr-rrc.p0_PUSCH_Alpha",
40766         FT_UINT32, BASE_DEC, NULL, 0,
40767         "P0_PUSCH_AlphaSetId", HFILL }},
40768     { &hf_nr_rrc_transformPrecoder,
40769       { "transformPrecoder", "nr-rrc.transformPrecoder",
40770         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_transformPrecoder_vals), 0,
40771         NULL, HFILL }},
40772     { &hf_nr_rrc_nrofHARQ_Processes,
40773       { "nrofHARQ-Processes", "nr-rrc.nrofHARQ_Processes",
40774         FT_UINT32, BASE_DEC, NULL, 0,
40775         "INTEGER_1_16", HFILL }},
40776     { &hf_nr_rrc_repK,
40777       { "repK", "nr-rrc.repK",
40778         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_repK_vals), 0,
40779         NULL, HFILL }},
40780     { &hf_nr_rrc_repK_RV,
40781       { "repK-RV", "nr-rrc.repK_RV",
40782         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_repK_RV_vals), 0,
40783         NULL, HFILL }},
40784     { &hf_nr_rrc_periodicity,
40785       { "periodicity", "nr-rrc.periodicity",
40786         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_T_periodicity_vals_ext, 0,
40787         NULL, HFILL }},
40788     { &hf_nr_rrc_configuredGrantTimer,
40789       { "configuredGrantTimer", "nr-rrc.configuredGrantTimer",
40790         FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_periodicities, 0,
40791         "INTEGER_1_64", HFILL }},
40792     { &hf_nr_rrc_rrc_ConfiguredUplinkGrant,
40793       { "rrc-ConfiguredUplinkGrant", "nr-rrc.rrc_ConfiguredUplinkGrant_element",
40794         FT_NONE, BASE_NONE, NULL, 0,
40795         NULL, HFILL }},
40796     { &hf_nr_rrc_timeDomainOffset,
40797       { "timeDomainOffset", "nr-rrc.timeDomainOffset",
40798         FT_UINT32, BASE_DEC, NULL, 0,
40799         "INTEGER_0_5119", HFILL }},
40800     { &hf_nr_rrc_timeDomainAllocation,
40801       { "timeDomainAllocation", "nr-rrc.timeDomainAllocation",
40802         FT_UINT32, BASE_DEC, NULL, 0,
40803         "INTEGER_0_15", HFILL }},
40804     { &hf_nr_rrc_frequencyDomainAllocation,
40805       { "frequencyDomainAllocation", "nr-rrc.frequencyDomainAllocation",
40806         FT_BYTES, BASE_NONE, NULL, 0,
40807         "BIT_STRING_SIZE_18", HFILL }},
40808     { &hf_nr_rrc_antennaPort,
40809       { "antennaPort", "nr-rrc.antennaPort",
40810         FT_UINT32, BASE_DEC, NULL, 0,
40811         "INTEGER_0_31", HFILL }},
40812     { &hf_nr_rrc_dmrs_SeqInitialization,
40813       { "dmrs-SeqInitialization", "nr-rrc.dmrs_SeqInitialization",
40814         FT_UINT32, BASE_DEC, NULL, 0,
40815         "INTEGER_0_1", HFILL }},
40816     { &hf_nr_rrc_precodingAndNumberOfLayers,
40817       { "precodingAndNumberOfLayers", "nr-rrc.precodingAndNumberOfLayers",
40818         FT_UINT32, BASE_DEC, NULL, 0,
40819         "INTEGER_0_63", HFILL }},
40820     { &hf_nr_rrc_srs_ResourceIndicator,
40821       { "srs-ResourceIndicator", "nr-rrc.srs_ResourceIndicator",
40822         FT_UINT32, BASE_DEC, NULL, 0,
40823         "INTEGER_0_15", HFILL }},
40824     { &hf_nr_rrc_mcsAndTBS,
40825       { "mcsAndTBS", "nr-rrc.mcsAndTBS",
40826         FT_UINT32, BASE_DEC, NULL, 0,
40827         "INTEGER_0_31", HFILL }},
40828     { &hf_nr_rrc_frequencyHoppingOffset,
40829       { "frequencyHoppingOffset", "nr-rrc.frequencyHoppingOffset",
40830         FT_UINT32, BASE_DEC, NULL, 0,
40831         "INTEGER_1_maxNrofPhysicalResourceBlocks_1", HFILL }},
40832     { &hf_nr_rrc_pathlossReferenceIndex,
40833       { "pathlossReferenceIndex", "nr-rrc.pathlossReferenceIndex",
40834         FT_UINT32, BASE_DEC, NULL, 0,
40835         "INTEGER_0_maxNrofPUSCH_PathlossReferenceRSs_1", HFILL }},
40836     { &hf_nr_rrc_dynamic,
40837       { "dynamic", "nr-rrc.dynamic",
40838         FT_UINT32, BASE_DEC, NULL, 0,
40839         "SEQUENCE_SIZE_1_4_OF_BetaOffsets", HFILL }},
40840     { &hf_nr_rrc_dynamic_item,
40841       { "BetaOffsets", "nr-rrc.BetaOffsets_element",
40842         FT_NONE, BASE_NONE, NULL, 0,
40843         NULL, HFILL }},
40844     { &hf_nr_rrc_semiStatic,
40845       { "semiStatic", "nr-rrc.semiStatic_element",
40846         FT_NONE, BASE_NONE, NULL, 0,
40847         "BetaOffsets", HFILL }},
40848     { &hf_nr_rrc_connEstFailCount,
40849       { "connEstFailCount", "nr-rrc.connEstFailCount",
40850         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_connEstFailCount_vals), 0,
40851         NULL, HFILL }},
40852     { &hf_nr_rrc_connEstFailOffsetValidity,
40853       { "connEstFailOffsetValidity", "nr-rrc.connEstFailOffsetValidity",
40854         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_connEstFailOffsetValidity_vals), 0,
40855         NULL, HFILL }},
40856     { &hf_nr_rrc_connEstFailOffset,
40857       { "connEstFailOffset", "nr-rrc.connEstFailOffset",
40858         FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_decibels, 0,
40859         "INTEGER_0_15", HFILL }},
40860     { &hf_nr_rrc_controlResourceSetId,
40861       { "controlResourceSetId", "nr-rrc.controlResourceSetId",
40862         FT_UINT32, BASE_DEC, NULL, 0,
40863         NULL, HFILL }},
40864     { &hf_nr_rrc_frequencyDomainResources,
40865       { "frequencyDomainResources", "nr-rrc.frequencyDomainResources",
40866         FT_BYTES, BASE_NONE, NULL, 0,
40867         "BIT_STRING_SIZE_45", HFILL }},
40868     { &hf_nr_rrc_duration,
40869       { "duration", "nr-rrc.duration",
40870         FT_UINT32, BASE_DEC, NULL, 0,
40871         "INTEGER_1_maxCoReSetDuration", HFILL }},
40872     { &hf_nr_rrc_cce_REG_MappingType,
40873       { "cce-REG-MappingType", "nr-rrc.cce_REG_MappingType",
40874         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_cce_REG_MappingType_vals), 0,
40875         NULL, HFILL }},
40876     { &hf_nr_rrc_interleaved,
40877       { "interleaved", "nr-rrc.interleaved_element",
40878         FT_NONE, BASE_NONE, NULL, 0,
40879         NULL, HFILL }},
40880     { &hf_nr_rrc_reg_BundleSize,
40881       { "reg-BundleSize", "nr-rrc.reg_BundleSize",
40882         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_reg_BundleSize_vals), 0,
40883         NULL, HFILL }},
40884     { &hf_nr_rrc_interleaverSize,
40885       { "interleaverSize", "nr-rrc.interleaverSize",
40886         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_interleaverSize_vals), 0,
40887         NULL, HFILL }},
40888     { &hf_nr_rrc_shiftIndex,
40889       { "shiftIndex", "nr-rrc.shiftIndex",
40890         FT_UINT32, BASE_DEC, NULL, 0,
40891         "INTEGER_0_maxNrofPhysicalResourceBlocks_1", HFILL }},
40892     { &hf_nr_rrc_nonInterleaved,
40893       { "nonInterleaved", "nr-rrc.nonInterleaved_element",
40894         FT_NONE, BASE_NONE, NULL, 0,
40895         NULL, HFILL }},
40896     { &hf_nr_rrc_precoderGranularity,
40897       { "precoderGranularity", "nr-rrc.precoderGranularity",
40898         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_precoderGranularity_vals), 0,
40899         NULL, HFILL }},
40900     { &hf_nr_rrc_tci_StatesPDCCH_ToAddList,
40901       { "tci-StatesPDCCH-ToAddList", "nr-rrc.tci_StatesPDCCH_ToAddList",
40902         FT_UINT32, BASE_DEC, NULL, 0,
40903         "SEQUENCE_SIZE_1_maxNrofTCI_StatesPDCCH_OF_TCI_StateId", HFILL }},
40904     { &hf_nr_rrc_tci_StatesPDCCH_ToAddList_item,
40905       { "TCI-StateId", "nr-rrc.TCI_StateId",
40906         FT_UINT32, BASE_DEC, NULL, 0,
40907         NULL, HFILL }},
40908     { &hf_nr_rrc_tci_StatesPDCCH_ToReleaseList,
40909       { "tci-StatesPDCCH-ToReleaseList", "nr-rrc.tci_StatesPDCCH_ToReleaseList",
40910         FT_UINT32, BASE_DEC, NULL, 0,
40911         "SEQUENCE_SIZE_1_maxNrofTCI_StatesPDCCH_OF_TCI_StateId", HFILL }},
40912     { &hf_nr_rrc_tci_StatesPDCCH_ToReleaseList_item,
40913       { "TCI-StateId", "nr-rrc.TCI_StateId",
40914         FT_UINT32, BASE_DEC, NULL, 0,
40915         NULL, HFILL }},
40916     { &hf_nr_rrc_tci_PresentInDCI,
40917       { "tci-PresentInDCI", "nr-rrc.tci_PresentInDCI",
40918         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_tci_PresentInDCI_vals), 0,
40919         NULL, HFILL }},
40920     { &hf_nr_rrc_pdcch_DMRS_ScramblingID,
40921       { "pdcch-DMRS-ScramblingID", "nr-rrc.pdcch_DMRS_ScramblingID",
40922         FT_UINT32, BASE_DEC, NULL, 0,
40923         "INTEGER_0_65535", HFILL }},
40924     { &hf_nr_rrc_schedulingCellInfo,
40925       { "schedulingCellInfo", "nr-rrc.schedulingCellInfo",
40926         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_schedulingCellInfo_vals), 0,
40927         NULL, HFILL }},
40928     { &hf_nr_rrc_own,
40929       { "own", "nr-rrc.own_element",
40930         FT_NONE, BASE_NONE, NULL, 0,
40931         NULL, HFILL }},
40932     { &hf_nr_rrc_cif_Presence,
40933       { "cif-Presence", "nr-rrc.cif_Presence",
40934         FT_BOOLEAN, BASE_NONE, NULL, 0,
40935         "BOOLEAN", HFILL }},
40936     { &hf_nr_rrc_other,
40937       { "other", "nr-rrc.other_element",
40938         FT_NONE, BASE_NONE, NULL, 0,
40939         NULL, HFILL }},
40940     { &hf_nr_rrc_schedulingCellId,
40941       { "schedulingCellId", "nr-rrc.schedulingCellId",
40942         FT_UINT32, BASE_DEC, NULL, 0,
40943         "ServCellIndex", HFILL }},
40944     { &hf_nr_rrc_cif_InSchedulingCell,
40945       { "cif-InSchedulingCell", "nr-rrc.cif_InSchedulingCell",
40946         FT_UINT32, BASE_DEC, NULL, 0,
40947         "INTEGER_1_7", HFILL }},
40948     { &hf_nr_rrc_CSI_AperiodicTriggerStateList_item,
40949       { "CSI-AperiodicTriggerState", "nr-rrc.CSI_AperiodicTriggerState_element",
40950         FT_NONE, BASE_NONE, NULL, 0,
40951         NULL, HFILL }},
40952     { &hf_nr_rrc_associatedReportConfigInfoList,
40953       { "associatedReportConfigInfoList", "nr-rrc.associatedReportConfigInfoList",
40954         FT_UINT32, BASE_DEC, NULL, 0,
40955         "SEQUENCE_SIZE_1_maxNrofReportConfigPerAperiodicTrigger_OF_CSI_AssociatedReportConfigInfo", HFILL }},
40956     { &hf_nr_rrc_associatedReportConfigInfoList_item,
40957       { "CSI-AssociatedReportConfigInfo", "nr-rrc.CSI_AssociatedReportConfigInfo_element",
40958         FT_NONE, BASE_NONE, NULL, 0,
40959         NULL, HFILL }},
40960     { &hf_nr_rrc_reportConfigId,
40961       { "reportConfigId", "nr-rrc.reportConfigId",
40962         FT_UINT32, BASE_DEC, NULL, 0,
40963         "CSI_ReportConfigId", HFILL }},
40964     { &hf_nr_rrc_resourcesForChannel,
40965       { "resourcesForChannel", "nr-rrc.resourcesForChannel",
40966         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_resourcesForChannel_vals), 0,
40967         NULL, HFILL }},
40968     { &hf_nr_rrc_nzp_CSI_RS,
40969       { "nzp-CSI-RS", "nr-rrc.nzp_CSI_RS_element",
40970         FT_NONE, BASE_NONE, NULL, 0,
40971         NULL, HFILL }},
40972     { &hf_nr_rrc_resourceSet,
40973       { "resourceSet", "nr-rrc.resourceSet",
40974         FT_UINT32, BASE_DEC, NULL, 0,
40975         "INTEGER_1_maxNrofNZP_CSI_RS_ResourceSetsPerConfig", HFILL }},
40976     { &hf_nr_rrc_qcl_info,
40977       { "qcl-info", "nr-rrc.qcl_info",
40978         FT_UINT32, BASE_DEC, NULL, 0,
40979         "SEQUENCE_SIZE_1_maxNrofAP_CSI_RS_ResourcesPerSet_OF_TCI_StateId", HFILL }},
40980     { &hf_nr_rrc_qcl_info_item,
40981       { "TCI-StateId", "nr-rrc.TCI_StateId",
40982         FT_UINT32, BASE_DEC, NULL, 0,
40983         NULL, HFILL }},
40984     { &hf_nr_rrc_csi_SSB_ResourceSet,
40985       { "csi-SSB-ResourceSet", "nr-rrc.csi_SSB_ResourceSet",
40986         FT_UINT32, BASE_DEC, NULL, 0,
40987         "INTEGER_1_maxNrofCSI_SSB_ResourceSetsPerConfig", HFILL }},
40988     { &hf_nr_rrc_csi_IM_ResourcesForInterference,
40989       { "csi-IM-ResourcesForInterference", "nr-rrc.csi_IM_ResourcesForInterference",
40990         FT_UINT32, BASE_DEC, NULL, 0,
40991         "INTEGER_1_maxNrofCSI_IM_ResourceSetsPerConfig", HFILL }},
40992     { &hf_nr_rrc_nzp_CSI_RS_ResourcesForInterference,
40993       { "nzp-CSI-RS-ResourcesForInterference", "nr-rrc.nzp_CSI_RS_ResourcesForInterference",
40994         FT_UINT32, BASE_DEC, NULL, 0,
40995         "INTEGER_1_maxNrofNZP_CSI_RS_ResourceSetsPerConfig", HFILL }},
40996     { &hf_nr_rrc_startingRB,
40997       { "startingRB", "nr-rrc.startingRB",
40998         FT_UINT32, BASE_DEC, NULL, 0,
40999         "INTEGER_0_maxNrofPhysicalResourceBlocks_1", HFILL }},
41000     { &hf_nr_rrc_nrofRBs,
41001       { "nrofRBs", "nr-rrc.nrofRBs",
41002         FT_UINT32, BASE_DEC, NULL, 0,
41003         "INTEGER_24_maxNrofPhysicalResourceBlocksPlus1", HFILL }},
41004     { &hf_nr_rrc_csi_IM_ResourceId,
41005       { "csi-IM-ResourceId", "nr-rrc.csi_IM_ResourceId",
41006         FT_UINT32, BASE_DEC, NULL, 0,
41007         NULL, HFILL }},
41008     { &hf_nr_rrc_csi_IM_ResourceElementPattern,
41009       { "csi-IM-ResourceElementPattern", "nr-rrc.csi_IM_ResourceElementPattern",
41010         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_csi_IM_ResourceElementPattern_vals), 0,
41011         NULL, HFILL }},
41012     { &hf_nr_rrc_pattern0,
41013       { "pattern0", "nr-rrc.pattern0_element",
41014         FT_NONE, BASE_NONE, NULL, 0,
41015         NULL, HFILL }},
41016     { &hf_nr_rrc_subcarrierLocation_p0,
41017       { "subcarrierLocation-p0", "nr-rrc.subcarrierLocation_p0",
41018         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_subcarrierLocation_p0_vals), 0,
41019         NULL, HFILL }},
41020     { &hf_nr_rrc_symbolLocation_p0,
41021       { "symbolLocation-p0", "nr-rrc.symbolLocation_p0",
41022         FT_UINT32, BASE_DEC, NULL, 0,
41023         "INTEGER_0_12", HFILL }},
41024     { &hf_nr_rrc_pattern1,
41025       { "pattern1", "nr-rrc.pattern1_element",
41026         FT_NONE, BASE_NONE, NULL, 0,
41027         NULL, HFILL }},
41028     { &hf_nr_rrc_subcarrierLocation_p1,
41029       { "subcarrierLocation-p1", "nr-rrc.subcarrierLocation_p1",
41030         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_subcarrierLocation_p1_vals), 0,
41031         NULL, HFILL }},
41032     { &hf_nr_rrc_symbolLocation_p1,
41033       { "symbolLocation-p1", "nr-rrc.symbolLocation_p1",
41034         FT_UINT32, BASE_DEC, NULL, 0,
41035         "INTEGER_0_13", HFILL }},
41036     { &hf_nr_rrc_freqBand,
41037       { "freqBand", "nr-rrc.freqBand_element",
41038         FT_NONE, BASE_NONE, NULL, 0,
41039         "CSI_FrequencyOccupation", HFILL }},
41040     { &hf_nr_rrc_periodicityAndOffset,
41041       { "periodicityAndOffset", "nr-rrc.periodicityAndOffset",
41042         FT_UINT32, BASE_DEC, VALS(nr_rrc_CSI_ResourcePeriodicityAndOffset_vals), 0,
41043         "CSI_ResourcePeriodicityAndOffset", HFILL }},
41044     { &hf_nr_rrc_csi_IM_ResourceSetId,
41045       { "csi-IM-ResourceSetId", "nr-rrc.csi_IM_ResourceSetId",
41046         FT_UINT32, BASE_DEC, NULL, 0,
41047         NULL, HFILL }},
41048     { &hf_nr_rrc_csi_IM_Resources,
41049       { "csi-IM-Resources", "nr-rrc.csi_IM_Resources",
41050         FT_UINT32, BASE_DEC, NULL, 0,
41051         "SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourcesPerSet_OF_CSI_IM_ResourceId", HFILL }},
41052     { &hf_nr_rrc_csi_IM_Resources_item,
41053       { "CSI-IM-ResourceId", "nr-rrc.CSI_IM_ResourceId",
41054         FT_UINT32, BASE_DEC, NULL, 0,
41055         NULL, HFILL }},
41056     { &hf_nr_rrc_nzp_CSI_RS_ResourceToAddModList,
41057       { "nzp-CSI-RS-ResourceToAddModList", "nr-rrc.nzp_CSI_RS_ResourceToAddModList",
41058         FT_UINT32, BASE_DEC, NULL, 0,
41059         "SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_Resources_OF_NZP_CSI_RS_Resource", HFILL }},
41060     { &hf_nr_rrc_nzp_CSI_RS_ResourceToAddModList_item,
41061       { "NZP-CSI-RS-Resource", "nr-rrc.NZP_CSI_RS_Resource_element",
41062         FT_NONE, BASE_NONE, NULL, 0,
41063         NULL, HFILL }},
41064     { &hf_nr_rrc_nzp_CSI_RS_ResourceToReleaseList,
41065       { "nzp-CSI-RS-ResourceToReleaseList", "nr-rrc.nzp_CSI_RS_ResourceToReleaseList",
41066         FT_UINT32, BASE_DEC, NULL, 0,
41067         "SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_Resources_OF_NZP_CSI_RS_ResourceId", HFILL }},
41068     { &hf_nr_rrc_nzp_CSI_RS_ResourceToReleaseList_item,
41069       { "NZP-CSI-RS-ResourceId", "nr-rrc.NZP_CSI_RS_ResourceId",
41070         FT_UINT32, BASE_DEC, NULL, 0,
41071         NULL, HFILL }},
41072     { &hf_nr_rrc_nzp_CSI_RS_ResourceSetToAddModList,
41073       { "nzp-CSI-RS-ResourceSetToAddModList", "nr-rrc.nzp_CSI_RS_ResourceSetToAddModList",
41074         FT_UINT32, BASE_DEC, NULL, 0,
41075         "SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourceSets_OF_NZP_CSI_RS_ResourceSet", HFILL }},
41076     { &hf_nr_rrc_nzp_CSI_RS_ResourceSetToAddModList_item,
41077       { "NZP-CSI-RS-ResourceSet", "nr-rrc.NZP_CSI_RS_ResourceSet_element",
41078         FT_NONE, BASE_NONE, NULL, 0,
41079         NULL, HFILL }},
41080     { &hf_nr_rrc_nzp_CSI_RS_ResourceSetToReleaseList,
41081       { "nzp-CSI-RS-ResourceSetToReleaseList", "nr-rrc.nzp_CSI_RS_ResourceSetToReleaseList",
41082         FT_UINT32, BASE_DEC, NULL, 0,
41083         "SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourceSets_OF_NZP_CSI_RS_ResourceSetId", HFILL }},
41084     { &hf_nr_rrc_nzp_CSI_RS_ResourceSetToReleaseList_item,
41085       { "NZP-CSI-RS-ResourceSetId", "nr-rrc.NZP_CSI_RS_ResourceSetId",
41086         FT_UINT32, BASE_DEC, NULL, 0,
41087         NULL, HFILL }},
41088     { &hf_nr_rrc_csi_IM_ResourceToAddModList,
41089       { "csi-IM-ResourceToAddModList", "nr-rrc.csi_IM_ResourceToAddModList",
41090         FT_UINT32, BASE_DEC, NULL, 0,
41091         "SEQUENCE_SIZE_1_maxNrofCSI_IM_Resources_OF_CSI_IM_Resource", HFILL }},
41092     { &hf_nr_rrc_csi_IM_ResourceToAddModList_item,
41093       { "CSI-IM-Resource", "nr-rrc.CSI_IM_Resource_element",
41094         FT_NONE, BASE_NONE, NULL, 0,
41095         NULL, HFILL }},
41096     { &hf_nr_rrc_csi_IM_ResourceToReleaseList,
41097       { "csi-IM-ResourceToReleaseList", "nr-rrc.csi_IM_ResourceToReleaseList",
41098         FT_UINT32, BASE_DEC, NULL, 0,
41099         "SEQUENCE_SIZE_1_maxNrofCSI_IM_Resources_OF_CSI_IM_ResourceId", HFILL }},
41100     { &hf_nr_rrc_csi_IM_ResourceToReleaseList_item,
41101       { "CSI-IM-ResourceId", "nr-rrc.CSI_IM_ResourceId",
41102         FT_UINT32, BASE_DEC, NULL, 0,
41103         NULL, HFILL }},
41104     { &hf_nr_rrc_csi_IM_ResourceSetToAddModList,
41105       { "csi-IM-ResourceSetToAddModList", "nr-rrc.csi_IM_ResourceSetToAddModList",
41106         FT_UINT32, BASE_DEC, NULL, 0,
41107         "SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourceSets_OF_CSI_IM_ResourceSet", HFILL }},
41108     { &hf_nr_rrc_csi_IM_ResourceSetToAddModList_item,
41109       { "CSI-IM-ResourceSet", "nr-rrc.CSI_IM_ResourceSet_element",
41110         FT_NONE, BASE_NONE, NULL, 0,
41111         NULL, HFILL }},
41112     { &hf_nr_rrc_csi_IM_ResourceSetToReleaseList,
41113       { "csi-IM-ResourceSetToReleaseList", "nr-rrc.csi_IM_ResourceSetToReleaseList",
41114         FT_UINT32, BASE_DEC, NULL, 0,
41115         "SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourceSets_OF_CSI_IM_ResourceSetId", HFILL }},
41116     { &hf_nr_rrc_csi_IM_ResourceSetToReleaseList_item,
41117       { "CSI-IM-ResourceSetId", "nr-rrc.CSI_IM_ResourceSetId",
41118         FT_UINT32, BASE_DEC, NULL, 0,
41119         NULL, HFILL }},
41120     { &hf_nr_rrc_csi_SSB_ResourceSetToAddModList,
41121       { "csi-SSB-ResourceSetToAddModList", "nr-rrc.csi_SSB_ResourceSetToAddModList",
41122         FT_UINT32, BASE_DEC, NULL, 0,
41123         "SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourceSets_OF_CSI_SSB_ResourceSet", HFILL }},
41124     { &hf_nr_rrc_csi_SSB_ResourceSetToAddModList_item,
41125       { "CSI-SSB-ResourceSet", "nr-rrc.CSI_SSB_ResourceSet_element",
41126         FT_NONE, BASE_NONE, NULL, 0,
41127         NULL, HFILL }},
41128     { &hf_nr_rrc_csi_SSB_ResourceSetToAddReleaseList,
41129       { "csi-SSB-ResourceSetToAddReleaseList", "nr-rrc.csi_SSB_ResourceSetToAddReleaseList",
41130         FT_UINT32, BASE_DEC, NULL, 0,
41131         "SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourceSets_OF_CSI_SSB_ResourceSetId", HFILL }},
41132     { &hf_nr_rrc_csi_SSB_ResourceSetToAddReleaseList_item,
41133       { "CSI-SSB-ResourceSetId", "nr-rrc.CSI_SSB_ResourceSetId",
41134         FT_UINT32, BASE_DEC, NULL, 0,
41135         NULL, HFILL }},
41136     { &hf_nr_rrc_csi_ResourceConfigToAddModList,
41137       { "csi-ResourceConfigToAddModList", "nr-rrc.csi_ResourceConfigToAddModList",
41138         FT_UINT32, BASE_DEC, NULL, 0,
41139         "SEQUENCE_SIZE_1_maxNrofCSI_ResourceConfigurations_OF_CSI_ResourceConfig", HFILL }},
41140     { &hf_nr_rrc_csi_ResourceConfigToAddModList_item,
41141       { "CSI-ResourceConfig", "nr-rrc.CSI_ResourceConfig_element",
41142         FT_NONE, BASE_NONE, NULL, 0,
41143         NULL, HFILL }},
41144     { &hf_nr_rrc_csi_ResourceConfigToReleaseList,
41145       { "csi-ResourceConfigToReleaseList", "nr-rrc.csi_ResourceConfigToReleaseList",
41146         FT_UINT32, BASE_DEC, NULL, 0,
41147         "SEQUENCE_SIZE_1_maxNrofCSI_ResourceConfigurations_OF_CSI_ResourceConfigId", HFILL }},
41148     { &hf_nr_rrc_csi_ResourceConfigToReleaseList_item,
41149       { "CSI-ResourceConfigId", "nr-rrc.CSI_ResourceConfigId",
41150         FT_UINT32, BASE_DEC, NULL, 0,
41151         NULL, HFILL }},
41152     { &hf_nr_rrc_csi_ReportConfigToAddModList,
41153       { "csi-ReportConfigToAddModList", "nr-rrc.csi_ReportConfigToAddModList",
41154         FT_UINT32, BASE_DEC, NULL, 0,
41155         "SEQUENCE_SIZE_1_maxNrofCSI_ReportConfigurations_OF_CSI_ReportConfig", HFILL }},
41156     { &hf_nr_rrc_csi_ReportConfigToAddModList_item,
41157       { "CSI-ReportConfig", "nr-rrc.CSI_ReportConfig_element",
41158         FT_NONE, BASE_NONE, NULL, 0,
41159         NULL, HFILL }},
41160     { &hf_nr_rrc_csi_ReportConfigToReleaseList,
41161       { "csi-ReportConfigToReleaseList", "nr-rrc.csi_ReportConfigToReleaseList",
41162         FT_UINT32, BASE_DEC, NULL, 0,
41163         "SEQUENCE_SIZE_1_maxNrofCSI_ReportConfigurations_OF_CSI_ReportConfigId", HFILL }},
41164     { &hf_nr_rrc_csi_ReportConfigToReleaseList_item,
41165       { "CSI-ReportConfigId", "nr-rrc.CSI_ReportConfigId",
41166         FT_UINT32, BASE_DEC, NULL, 0,
41167         NULL, HFILL }},
41168     { &hf_nr_rrc_reportTriggerSize,
41169       { "reportTriggerSize", "nr-rrc.reportTriggerSize",
41170         FT_UINT32, BASE_DEC, NULL, 0,
41171         "INTEGER_0_6", HFILL }},
41172     { &hf_nr_rrc_aperiodicTriggerStateList,
41173       { "aperiodicTriggerStateList", "nr-rrc.aperiodicTriggerStateList",
41174         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_aperiodicTriggerStateList_vals), 0,
41175         NULL, HFILL }},
41176     { &hf_nr_rrc_setup_18,
41177       { "setup", "nr-rrc.setup",
41178         FT_UINT32, BASE_DEC, NULL, 0,
41179         "CSI_AperiodicTriggerStateList", HFILL }},
41180     { &hf_nr_rrc_semiPersistentOnPUSCH_TriggerStateList,
41181       { "semiPersistentOnPUSCH-TriggerStateList", "nr-rrc.semiPersistentOnPUSCH_TriggerStateList",
41182         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_semiPersistentOnPUSCH_TriggerStateList_vals), 0,
41183         NULL, HFILL }},
41184     { &hf_nr_rrc_setup_19,
41185       { "setup", "nr-rrc.setup",
41186         FT_UINT32, BASE_DEC, NULL, 0,
41187         "CSI_SemiPersistentOnPUSCH_TriggerStateList", HFILL }},
41188     { &hf_nr_rrc_carrier,
41189       { "carrier", "nr-rrc.carrier",
41190         FT_UINT32, BASE_DEC, NULL, 0,
41191         "ServCellIndex", HFILL }},
41192     { &hf_nr_rrc_resourcesForChannelMeasurement,
41193       { "resourcesForChannelMeasurement", "nr-rrc.resourcesForChannelMeasurement",
41194         FT_UINT32, BASE_DEC, NULL, 0,
41195         "CSI_ResourceConfigId", HFILL }},
41196     { &hf_nr_rrc_csi_IM_ResourcesForInterference_01,
41197       { "csi-IM-ResourcesForInterference", "nr-rrc.csi_IM_ResourcesForInterference",
41198         FT_UINT32, BASE_DEC, NULL, 0,
41199         "CSI_ResourceConfigId", HFILL }},
41200     { &hf_nr_rrc_nzp_CSI_RS_ResourcesForInterference_01,
41201       { "nzp-CSI-RS-ResourcesForInterference", "nr-rrc.nzp_CSI_RS_ResourcesForInterference",
41202         FT_UINT32, BASE_DEC, NULL, 0,
41203         "CSI_ResourceConfigId", HFILL }},
41204     { &hf_nr_rrc_reportConfigType,
41205       { "reportConfigType", "nr-rrc.reportConfigType",
41206         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_reportConfigType_vals), 0,
41207         NULL, HFILL }},
41208     { &hf_nr_rrc_periodic,
41209       { "periodic", "nr-rrc.periodic_element",
41210         FT_NONE, BASE_NONE, NULL, 0,
41211         NULL, HFILL }},
41212     { &hf_nr_rrc_reportSlotConfig,
41213       { "reportSlotConfig", "nr-rrc.reportSlotConfig",
41214         FT_UINT32, BASE_DEC, VALS(nr_rrc_CSI_ReportPeriodicityAndOffset_vals), 0,
41215         "CSI_ReportPeriodicityAndOffset", HFILL }},
41216     { &hf_nr_rrc_pucch_CSI_ResourceList,
41217       { "pucch-CSI-ResourceList", "nr-rrc.pucch_CSI_ResourceList",
41218         FT_UINT32, BASE_DEC, NULL, 0,
41219         "SEQUENCE_SIZE_1_maxNrofBWPs_OF_PUCCH_CSI_Resource", HFILL }},
41220     { &hf_nr_rrc_pucch_CSI_ResourceList_item,
41221       { "PUCCH-CSI-Resource", "nr-rrc.PUCCH_CSI_Resource_element",
41222         FT_NONE, BASE_NONE, NULL, 0,
41223         NULL, HFILL }},
41224     { &hf_nr_rrc_semiPersistentOnPUCCH,
41225       { "semiPersistentOnPUCCH", "nr-rrc.semiPersistentOnPUCCH_element",
41226         FT_NONE, BASE_NONE, NULL, 0,
41227         NULL, HFILL }},
41228     { &hf_nr_rrc_semiPersistentOnPUSCH,
41229       { "semiPersistentOnPUSCH", "nr-rrc.semiPersistentOnPUSCH_element",
41230         FT_NONE, BASE_NONE, NULL, 0,
41231         NULL, HFILL }},
41232     { &hf_nr_rrc_reportSlotConfig_01,
41233       { "reportSlotConfig", "nr-rrc.reportSlotConfig",
41234         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_reportSlotConfig_vals), 0,
41235         NULL, HFILL }},
41236     { &hf_nr_rrc_reportSlotOffsetList,
41237       { "reportSlotOffsetList", "nr-rrc.reportSlotOffsetList",
41238         FT_UINT32, BASE_DEC, NULL, 0,
41239         NULL, HFILL }},
41240     { &hf_nr_rrc_reportSlotOffsetList_item,
41241       { "reportSlotOffsetList item", "nr-rrc.reportSlotOffsetList_item",
41242         FT_UINT32, BASE_DEC, NULL, 0,
41243         "INTEGER_0_32", HFILL }},
41244     { &hf_nr_rrc_p0alpha,
41245       { "p0alpha", "nr-rrc.p0alpha",
41246         FT_UINT32, BASE_DEC, NULL, 0,
41247         "P0_PUSCH_AlphaSetId", HFILL }},
41248     { &hf_nr_rrc_aperiodic,
41249       { "aperiodic", "nr-rrc.aperiodic_element",
41250         FT_NONE, BASE_NONE, NULL, 0,
41251         NULL, HFILL }},
41252     { &hf_nr_rrc_reportSlotOffsetList_01,
41253       { "reportSlotOffsetList", "nr-rrc.reportSlotOffsetList",
41254         FT_UINT32, BASE_DEC, NULL, 0,
41255         "T_reportSlotOffsetList_01", HFILL }},
41256     { &hf_nr_rrc_reportQuantity,
41257       { "reportQuantity", "nr-rrc.reportQuantity",
41258         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_reportQuantity_vals), 0,
41259         NULL, HFILL }},
41260     { &hf_nr_rrc_none,
41261       { "none", "nr-rrc.none_element",
41262         FT_NONE, BASE_NONE, NULL, 0,
41263         NULL, HFILL }},
41264     { &hf_nr_rrc_cri_RI_PMI_CQI,
41265       { "cri-RI-PMI-CQI", "nr-rrc.cri_RI_PMI_CQI_element",
41266         FT_NONE, BASE_NONE, NULL, 0,
41267         NULL, HFILL }},
41268     { &hf_nr_rrc_cri_RI_i1,
41269       { "cri-RI-i1", "nr-rrc.cri_RI_i1_element",
41270         FT_NONE, BASE_NONE, NULL, 0,
41271         NULL, HFILL }},
41272     { &hf_nr_rrc_cri_RI_i1_CQI,
41273       { "cri-RI-i1-CQI", "nr-rrc.cri_RI_i1_CQI_element",
41274         FT_NONE, BASE_NONE, NULL, 0,
41275         NULL, HFILL }},
41276     { &hf_nr_rrc_pdsch_BundleSizeForCSI,
41277       { "pdsch-BundleSizeForCSI", "nr-rrc.pdsch_BundleSizeForCSI",
41278         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pdsch_BundleSizeForCSI_vals), 0,
41279         NULL, HFILL }},
41280     { &hf_nr_rrc_cri_RI_CQI,
41281       { "cri-RI-CQI", "nr-rrc.cri_RI_CQI_element",
41282         FT_NONE, BASE_NONE, NULL, 0,
41283         NULL, HFILL }},
41284     { &hf_nr_rrc_cri_RSRP,
41285       { "cri-RSRP", "nr-rrc.cri_RSRP_element",
41286         FT_NONE, BASE_NONE, NULL, 0,
41287         NULL, HFILL }},
41288     { &hf_nr_rrc_ssb_Index_RSRP,
41289       { "ssb-Index-RSRP", "nr-rrc.ssb_Index_RSRP_element",
41290         FT_NONE, BASE_NONE, NULL, 0,
41291         NULL, HFILL }},
41292     { &hf_nr_rrc_cri_RI_LI_PMI_CQI,
41293       { "cri-RI-LI-PMI-CQI", "nr-rrc.cri_RI_LI_PMI_CQI_element",
41294         FT_NONE, BASE_NONE, NULL, 0,
41295         NULL, HFILL }},
41296     { &hf_nr_rrc_reportFreqConfiguration,
41297       { "reportFreqConfiguration", "nr-rrc.reportFreqConfiguration_element",
41298         FT_NONE, BASE_NONE, NULL, 0,
41299         NULL, HFILL }},
41300     { &hf_nr_rrc_cqi_FormatIndicator,
41301       { "cqi-FormatIndicator", "nr-rrc.cqi_FormatIndicator",
41302         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_cqi_FormatIndicator_vals), 0,
41303         NULL, HFILL }},
41304     { &hf_nr_rrc_pmi_FormatIndicator,
41305       { "pmi-FormatIndicator", "nr-rrc.pmi_FormatIndicator",
41306         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pmi_FormatIndicator_vals), 0,
41307         NULL, HFILL }},
41308     { &hf_nr_rrc_csi_ReportingBand,
41309       { "csi-ReportingBand", "nr-rrc.csi_ReportingBand",
41310         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_T_csi_ReportingBand_vals_ext, 0,
41311         NULL, HFILL }},
41312     { &hf_nr_rrc_subbands3,
41313       { "subbands3", "nr-rrc.subbands3",
41314         FT_BYTES, BASE_NONE, NULL, 0,
41315         "BIT_STRING_SIZE_3", HFILL }},
41316     { &hf_nr_rrc_subbands4,
41317       { "subbands4", "nr-rrc.subbands4",
41318         FT_BYTES, BASE_NONE, NULL, 0,
41319         "BIT_STRING_SIZE_4", HFILL }},
41320     { &hf_nr_rrc_subbands5,
41321       { "subbands5", "nr-rrc.subbands5",
41322         FT_BYTES, BASE_NONE, NULL, 0,
41323         "BIT_STRING_SIZE_5", HFILL }},
41324     { &hf_nr_rrc_subbands6,
41325       { "subbands6", "nr-rrc.subbands6",
41326         FT_BYTES, BASE_NONE, NULL, 0,
41327         "BIT_STRING_SIZE_6", HFILL }},
41328     { &hf_nr_rrc_subbands7,
41329       { "subbands7", "nr-rrc.subbands7",
41330         FT_BYTES, BASE_NONE, NULL, 0,
41331         "BIT_STRING_SIZE_7", HFILL }},
41332     { &hf_nr_rrc_subbands8,
41333       { "subbands8", "nr-rrc.subbands8",
41334         FT_BYTES, BASE_NONE, NULL, 0,
41335         "BIT_STRING_SIZE_8", HFILL }},
41336     { &hf_nr_rrc_subbands9,
41337       { "subbands9", "nr-rrc.subbands9",
41338         FT_BYTES, BASE_NONE, NULL, 0,
41339         "BIT_STRING_SIZE_9", HFILL }},
41340     { &hf_nr_rrc_subbands10,
41341       { "subbands10", "nr-rrc.subbands10",
41342         FT_BYTES, BASE_NONE, NULL, 0,
41343         "BIT_STRING_SIZE_10", HFILL }},
41344     { &hf_nr_rrc_subbands11,
41345       { "subbands11", "nr-rrc.subbands11",
41346         FT_BYTES, BASE_NONE, NULL, 0,
41347         "BIT_STRING_SIZE_11", HFILL }},
41348     { &hf_nr_rrc_subbands12,
41349       { "subbands12", "nr-rrc.subbands12",
41350         FT_BYTES, BASE_NONE, NULL, 0,
41351         "BIT_STRING_SIZE_12", HFILL }},
41352     { &hf_nr_rrc_subbands13,
41353       { "subbands13", "nr-rrc.subbands13",
41354         FT_BYTES, BASE_NONE, NULL, 0,
41355         "BIT_STRING_SIZE_13", HFILL }},
41356     { &hf_nr_rrc_subbands14,
41357       { "subbands14", "nr-rrc.subbands14",
41358         FT_BYTES, BASE_NONE, NULL, 0,
41359         "BIT_STRING_SIZE_14", HFILL }},
41360     { &hf_nr_rrc_subbands15,
41361       { "subbands15", "nr-rrc.subbands15",
41362         FT_BYTES, BASE_NONE, NULL, 0,
41363         "BIT_STRING_SIZE_15", HFILL }},
41364     { &hf_nr_rrc_subbands16,
41365       { "subbands16", "nr-rrc.subbands16",
41366         FT_BYTES, BASE_NONE, NULL, 0,
41367         "BIT_STRING_SIZE_16", HFILL }},
41368     { &hf_nr_rrc_subbands17,
41369       { "subbands17", "nr-rrc.subbands17",
41370         FT_BYTES, BASE_NONE, NULL, 0,
41371         "BIT_STRING_SIZE_17", HFILL }},
41372     { &hf_nr_rrc_subbands18,
41373       { "subbands18", "nr-rrc.subbands18",
41374         FT_BYTES, BASE_NONE, NULL, 0,
41375         "BIT_STRING_SIZE_18", HFILL }},
41376     { &hf_nr_rrc_subbands19_v1530,
41377       { "subbands19-v1530", "nr-rrc.subbands19_v1530",
41378         FT_BYTES, BASE_NONE, NULL, 0,
41379         "BIT_STRING_SIZE_19", HFILL }},
41380     { &hf_nr_rrc_timeRestrictionForChannelMeasurements,
41381       { "timeRestrictionForChannelMeasurements", "nr-rrc.timeRestrictionForChannelMeasurements",
41382         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_timeRestrictionForChannelMeasurements_vals), 0,
41383         NULL, HFILL }},
41384     { &hf_nr_rrc_timeRestrictionForInterferenceMeasurements,
41385       { "timeRestrictionForInterferenceMeasurements", "nr-rrc.timeRestrictionForInterferenceMeasurements",
41386         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_timeRestrictionForInterferenceMeasurements_vals), 0,
41387         NULL, HFILL }},
41388     { &hf_nr_rrc_codebookConfig,
41389       { "codebookConfig", "nr-rrc.codebookConfig_element",
41390         FT_NONE, BASE_NONE, NULL, 0,
41391         NULL, HFILL }},
41392     { &hf_nr_rrc_nrofCQIsPerReport,
41393       { "nrofCQIsPerReport", "nr-rrc.nrofCQIsPerReport",
41394         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_nrofCQIsPerReport_vals), 0,
41395         NULL, HFILL }},
41396     { &hf_nr_rrc_groupBasedBeamReporting,
41397       { "groupBasedBeamReporting", "nr-rrc.groupBasedBeamReporting",
41398         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_groupBasedBeamReporting_vals), 0,
41399         NULL, HFILL }},
41400     { &hf_nr_rrc_enabled,
41401       { "enabled", "nr-rrc.enabled_element",
41402         FT_NONE, BASE_NONE, NULL, 0,
41403         NULL, HFILL }},
41404     { &hf_nr_rrc_disabled,
41405       { "disabled", "nr-rrc.disabled_element",
41406         FT_NONE, BASE_NONE, NULL, 0,
41407         NULL, HFILL }},
41408     { &hf_nr_rrc_nrofReportedRS,
41409       { "nrofReportedRS", "nr-rrc.nrofReportedRS",
41410         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_nrofReportedRS_vals), 0,
41411         NULL, HFILL }},
41412     { &hf_nr_rrc_cqi_Table,
41413       { "cqi-Table", "nr-rrc.cqi_Table",
41414         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_cqi_Table_vals), 0,
41415         NULL, HFILL }},
41416     { &hf_nr_rrc_subbandSize,
41417       { "subbandSize", "nr-rrc.subbandSize",
41418         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_subbandSize_vals), 0,
41419         NULL, HFILL }},
41420     { &hf_nr_rrc_non_PMI_PortIndication,
41421       { "non-PMI-PortIndication", "nr-rrc.non_PMI_PortIndication",
41422         FT_UINT32, BASE_DEC, NULL, 0,
41423         "SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourcesPerConfig_OF_PortIndexFor8Ranks", HFILL }},
41424     { &hf_nr_rrc_non_PMI_PortIndication_item,
41425       { "PortIndexFor8Ranks", "nr-rrc.PortIndexFor8Ranks",
41426         FT_UINT32, BASE_DEC, VALS(nr_rrc_PortIndexFor8Ranks_vals), 0,
41427         NULL, HFILL }},
41428     { &hf_nr_rrc_semiPersistentOnPUSCH_v1530,
41429       { "semiPersistentOnPUSCH-v1530", "nr-rrc.semiPersistentOnPUSCH_v1530_element",
41430         FT_NONE, BASE_NONE, NULL, 0,
41431         NULL, HFILL }},
41432     { &hf_nr_rrc_reportSlotConfig_v1530,
41433       { "reportSlotConfig-v1530", "nr-rrc.reportSlotConfig_v1530",
41434         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_reportSlotConfig_v1530_vals), 0,
41435         NULL, HFILL }},
41436     { &hf_nr_rrc_slots4,
41437       { "slots4", "nr-rrc.slots4",
41438         FT_UINT32, BASE_DEC, NULL, 0,
41439         "INTEGER_0_3", HFILL }},
41440     { &hf_nr_rrc_slots5,
41441       { "slots5", "nr-rrc.slots5",
41442         FT_UINT32, BASE_DEC, NULL, 0,
41443         "INTEGER_0_4", HFILL }},
41444     { &hf_nr_rrc_slots8,
41445       { "slots8", "nr-rrc.slots8",
41446         FT_UINT32, BASE_DEC, NULL, 0,
41447         "INTEGER_0_7", HFILL }},
41448     { &hf_nr_rrc_slots10,
41449       { "slots10", "nr-rrc.slots10",
41450         FT_UINT32, BASE_DEC, NULL, 0,
41451         "INTEGER_0_9", HFILL }},
41452     { &hf_nr_rrc_slots16,
41453       { "slots16", "nr-rrc.slots16",
41454         FT_UINT32, BASE_DEC, NULL, 0,
41455         "INTEGER_0_15", HFILL }},
41456     { &hf_nr_rrc_slots20,
41457       { "slots20", "nr-rrc.slots20",
41458         FT_UINT32, BASE_DEC, NULL, 0,
41459         "INTEGER_0_19", HFILL }},
41460     { &hf_nr_rrc_slots40,
41461       { "slots40", "nr-rrc.slots40",
41462         FT_UINT32, BASE_DEC, NULL, 0,
41463         "INTEGER_0_39", HFILL }},
41464     { &hf_nr_rrc_slots80,
41465       { "slots80", "nr-rrc.slots80",
41466         FT_UINT32, BASE_DEC, NULL, 0,
41467         "INTEGER_0_79", HFILL }},
41468     { &hf_nr_rrc_slots160,
41469       { "slots160", "nr-rrc.slots160",
41470         FT_UINT32, BASE_DEC, NULL, 0,
41471         "INTEGER_0_159", HFILL }},
41472     { &hf_nr_rrc_slots320,
41473       { "slots320", "nr-rrc.slots320",
41474         FT_UINT32, BASE_DEC, NULL, 0,
41475         "INTEGER_0_319", HFILL }},
41476     { &hf_nr_rrc_uplinkBandwidthPartId,
41477       { "uplinkBandwidthPartId", "nr-rrc.uplinkBandwidthPartId",
41478         FT_UINT32, BASE_DEC, NULL, 0,
41479         "BWP_Id", HFILL }},
41480     { &hf_nr_rrc_pucch_Resource,
41481       { "pucch-Resource", "nr-rrc.pucch_Resource",
41482         FT_UINT32, BASE_DEC, NULL, 0,
41483         "PUCCH_ResourceId", HFILL }},
41484     { &hf_nr_rrc_portIndex8,
41485       { "portIndex8", "nr-rrc.portIndex8_element",
41486         FT_NONE, BASE_NONE, NULL, 0,
41487         NULL, HFILL }},
41488     { &hf_nr_rrc_rank1_8,
41489       { "rank1-8", "nr-rrc.rank1_8",
41490         FT_UINT32, BASE_DEC, NULL, 0,
41491         "PortIndex8", HFILL }},
41492     { &hf_nr_rrc_rank2_8,
41493       { "rank2-8", "nr-rrc.rank2_8",
41494         FT_UINT32, BASE_DEC, NULL, 0,
41495         "SEQUENCE_SIZE_2_OF_PortIndex8", HFILL }},
41496     { &hf_nr_rrc_rank2_8_item,
41497       { "PortIndex8", "nr-rrc.PortIndex8",
41498         FT_UINT32, BASE_DEC, NULL, 0,
41499         NULL, HFILL }},
41500     { &hf_nr_rrc_rank3_8,
41501       { "rank3-8", "nr-rrc.rank3_8",
41502         FT_UINT32, BASE_DEC, NULL, 0,
41503         "SEQUENCE_SIZE_3_OF_PortIndex8", HFILL }},
41504     { &hf_nr_rrc_rank3_8_item,
41505       { "PortIndex8", "nr-rrc.PortIndex8",
41506         FT_UINT32, BASE_DEC, NULL, 0,
41507         NULL, HFILL }},
41508     { &hf_nr_rrc_rank4_8,
41509       { "rank4-8", "nr-rrc.rank4_8",
41510         FT_UINT32, BASE_DEC, NULL, 0,
41511         "SEQUENCE_SIZE_4_OF_PortIndex8", HFILL }},
41512     { &hf_nr_rrc_rank4_8_item,
41513       { "PortIndex8", "nr-rrc.PortIndex8",
41514         FT_UINT32, BASE_DEC, NULL, 0,
41515         NULL, HFILL }},
41516     { &hf_nr_rrc_rank5_8,
41517       { "rank5-8", "nr-rrc.rank5_8",
41518         FT_UINT32, BASE_DEC, NULL, 0,
41519         "SEQUENCE_SIZE_5_OF_PortIndex8", HFILL }},
41520     { &hf_nr_rrc_rank5_8_item,
41521       { "PortIndex8", "nr-rrc.PortIndex8",
41522         FT_UINT32, BASE_DEC, NULL, 0,
41523         NULL, HFILL }},
41524     { &hf_nr_rrc_rank6_8,
41525       { "rank6-8", "nr-rrc.rank6_8",
41526         FT_UINT32, BASE_DEC, NULL, 0,
41527         "SEQUENCE_SIZE_6_OF_PortIndex8", HFILL }},
41528     { &hf_nr_rrc_rank6_8_item,
41529       { "PortIndex8", "nr-rrc.PortIndex8",
41530         FT_UINT32, BASE_DEC, NULL, 0,
41531         NULL, HFILL }},
41532     { &hf_nr_rrc_rank7_8,
41533       { "rank7-8", "nr-rrc.rank7_8",
41534         FT_UINT32, BASE_DEC, NULL, 0,
41535         "SEQUENCE_SIZE_7_OF_PortIndex8", HFILL }},
41536     { &hf_nr_rrc_rank7_8_item,
41537       { "PortIndex8", "nr-rrc.PortIndex8",
41538         FT_UINT32, BASE_DEC, NULL, 0,
41539         NULL, HFILL }},
41540     { &hf_nr_rrc_rank8_8,
41541       { "rank8-8", "nr-rrc.rank8_8",
41542         FT_UINT32, BASE_DEC, NULL, 0,
41543         "SEQUENCE_SIZE_8_OF_PortIndex8", HFILL }},
41544     { &hf_nr_rrc_rank8_8_item,
41545       { "PortIndex8", "nr-rrc.PortIndex8",
41546         FT_UINT32, BASE_DEC, NULL, 0,
41547         NULL, HFILL }},
41548     { &hf_nr_rrc_portIndex4,
41549       { "portIndex4", "nr-rrc.portIndex4_element",
41550         FT_NONE, BASE_NONE, NULL, 0,
41551         NULL, HFILL }},
41552     { &hf_nr_rrc_rank1_4,
41553       { "rank1-4", "nr-rrc.rank1_4",
41554         FT_UINT32, BASE_DEC, NULL, 0,
41555         "PortIndex4", HFILL }},
41556     { &hf_nr_rrc_rank2_4,
41557       { "rank2-4", "nr-rrc.rank2_4",
41558         FT_UINT32, BASE_DEC, NULL, 0,
41559         "SEQUENCE_SIZE_2_OF_PortIndex4", HFILL }},
41560     { &hf_nr_rrc_rank2_4_item,
41561       { "PortIndex4", "nr-rrc.PortIndex4",
41562         FT_UINT32, BASE_DEC, NULL, 0,
41563         NULL, HFILL }},
41564     { &hf_nr_rrc_rank3_4,
41565       { "rank3-4", "nr-rrc.rank3_4",
41566         FT_UINT32, BASE_DEC, NULL, 0,
41567         "SEQUENCE_SIZE_3_OF_PortIndex4", HFILL }},
41568     { &hf_nr_rrc_rank3_4_item,
41569       { "PortIndex4", "nr-rrc.PortIndex4",
41570         FT_UINT32, BASE_DEC, NULL, 0,
41571         NULL, HFILL }},
41572     { &hf_nr_rrc_rank4_4,
41573       { "rank4-4", "nr-rrc.rank4_4",
41574         FT_UINT32, BASE_DEC, NULL, 0,
41575         "SEQUENCE_SIZE_4_OF_PortIndex4", HFILL }},
41576     { &hf_nr_rrc_rank4_4_item,
41577       { "PortIndex4", "nr-rrc.PortIndex4",
41578         FT_UINT32, BASE_DEC, NULL, 0,
41579         NULL, HFILL }},
41580     { &hf_nr_rrc_portIndex2,
41581       { "portIndex2", "nr-rrc.portIndex2_element",
41582         FT_NONE, BASE_NONE, NULL, 0,
41583         NULL, HFILL }},
41584     { &hf_nr_rrc_rank1_2,
41585       { "rank1-2", "nr-rrc.rank1_2",
41586         FT_UINT32, BASE_DEC, NULL, 0,
41587         "PortIndex2", HFILL }},
41588     { &hf_nr_rrc_rank2_2,
41589       { "rank2-2", "nr-rrc.rank2_2",
41590         FT_UINT32, BASE_DEC, NULL, 0,
41591         "SEQUENCE_SIZE_2_OF_PortIndex2", HFILL }},
41592     { &hf_nr_rrc_rank2_2_item,
41593       { "PortIndex2", "nr-rrc.PortIndex2",
41594         FT_UINT32, BASE_DEC, NULL, 0,
41595         NULL, HFILL }},
41596     { &hf_nr_rrc_portIndex1,
41597       { "portIndex1", "nr-rrc.portIndex1_element",
41598         FT_NONE, BASE_NONE, NULL, 0,
41599         NULL, HFILL }},
41600     { &hf_nr_rrc_csi_ResourceConfigId,
41601       { "csi-ResourceConfigId", "nr-rrc.csi_ResourceConfigId",
41602         FT_UINT32, BASE_DEC, NULL, 0,
41603         NULL, HFILL }},
41604     { &hf_nr_rrc_csi_RS_ResourceSetList,
41605       { "csi-RS-ResourceSetList", "nr-rrc.csi_RS_ResourceSetList",
41606         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_csi_RS_ResourceSetList_vals), 0,
41607         NULL, HFILL }},
41608     { &hf_nr_rrc_nzp_CSI_RS_SSB,
41609       { "nzp-CSI-RS-SSB", "nr-rrc.nzp_CSI_RS_SSB_element",
41610         FT_NONE, BASE_NONE, NULL, 0,
41611         NULL, HFILL }},
41612     { &hf_nr_rrc_nzp_CSI_RS_ResourceSetList,
41613       { "nzp-CSI-RS-ResourceSetList", "nr-rrc.nzp_CSI_RS_ResourceSetList",
41614         FT_UINT32, BASE_DEC, NULL, 0,
41615         "SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourceSetsPerConfig_OF_NZP_CSI_RS_ResourceSetId", HFILL }},
41616     { &hf_nr_rrc_nzp_CSI_RS_ResourceSetList_item,
41617       { "NZP-CSI-RS-ResourceSetId", "nr-rrc.NZP_CSI_RS_ResourceSetId",
41618         FT_UINT32, BASE_DEC, NULL, 0,
41619         NULL, HFILL }},
41620     { &hf_nr_rrc_csi_SSB_ResourceSetList,
41621       { "csi-SSB-ResourceSetList", "nr-rrc.csi_SSB_ResourceSetList",
41622         FT_UINT32, BASE_DEC, NULL, 0,
41623         "SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourceSetsPerConfig_OF_CSI_SSB_ResourceSetId", HFILL }},
41624     { &hf_nr_rrc_csi_SSB_ResourceSetList_item,
41625       { "CSI-SSB-ResourceSetId", "nr-rrc.CSI_SSB_ResourceSetId",
41626         FT_UINT32, BASE_DEC, NULL, 0,
41627         NULL, HFILL }},
41628     { &hf_nr_rrc_csi_IM_ResourceSetList,
41629       { "csi-IM-ResourceSetList", "nr-rrc.csi_IM_ResourceSetList",
41630         FT_UINT32, BASE_DEC, NULL, 0,
41631         "SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourceSetsPerConfig_OF_CSI_IM_ResourceSetId", HFILL }},
41632     { &hf_nr_rrc_csi_IM_ResourceSetList_item,
41633       { "CSI-IM-ResourceSetId", "nr-rrc.CSI_IM_ResourceSetId",
41634         FT_UINT32, BASE_DEC, NULL, 0,
41635         NULL, HFILL }},
41636     { &hf_nr_rrc_resourceType,
41637       { "resourceType", "nr-rrc.resourceType",
41638         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_resourceType_vals), 0,
41639         NULL, HFILL }},
41640     { &hf_nr_rrc_slots32,
41641       { "slots32", "nr-rrc.slots32",
41642         FT_UINT32, BASE_DEC, NULL, 0,
41643         "INTEGER_0_31", HFILL }},
41644     { &hf_nr_rrc_slots64,
41645       { "slots64", "nr-rrc.slots64",
41646         FT_UINT32, BASE_DEC, NULL, 0,
41647         "INTEGER_0_63", HFILL }},
41648     { &hf_nr_rrc_slots640,
41649       { "slots640", "nr-rrc.slots640",
41650         FT_UINT32, BASE_DEC, NULL, 0,
41651         "INTEGER_0_639", HFILL }},
41652     { &hf_nr_rrc_csi_RS_CellList_Mobility,
41653       { "csi-RS-CellList-Mobility", "nr-rrc.csi_RS_CellList_Mobility",
41654         FT_UINT32, BASE_DEC, NULL, 0,
41655         "SEQUENCE_SIZE_1_maxNrofCSI_RS_CellsRRM_OF_CSI_RS_CellMobility", HFILL }},
41656     { &hf_nr_rrc_csi_RS_CellList_Mobility_item,
41657       { "CSI-RS-CellMobility", "nr-rrc.CSI_RS_CellMobility_element",
41658         FT_NONE, BASE_NONE, NULL, 0,
41659         NULL, HFILL }},
41660     { &hf_nr_rrc_refServCellIndex_v1530,
41661       { "refServCellIndex-v1530", "nr-rrc.refServCellIndex_v1530",
41662         FT_UINT32, BASE_DEC, NULL, 0,
41663         "ServCellIndex", HFILL }},
41664     { &hf_nr_rrc_cellId,
41665       { "cellId", "nr-rrc.cellId",
41666         FT_UINT32, BASE_DEC, NULL, 0,
41667         "PhysCellId", HFILL }},
41668     { &hf_nr_rrc_csi_rs_MeasurementBW,
41669       { "csi-rs-MeasurementBW", "nr-rrc.csi_rs_MeasurementBW_element",
41670         FT_NONE, BASE_NONE, NULL, 0,
41671         NULL, HFILL }},
41672     { &hf_nr_rrc_nrofPRBs,
41673       { "nrofPRBs", "nr-rrc.nrofPRBs",
41674         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_nrofPRBs_vals), 0,
41675         NULL, HFILL }},
41676     { &hf_nr_rrc_startPRB,
41677       { "startPRB", "nr-rrc.startPRB",
41678         FT_UINT32, BASE_DEC, NULL, 0,
41679         "INTEGER_0_2169", HFILL }},
41680     { &hf_nr_rrc_density,
41681       { "density", "nr-rrc.density",
41682         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_density_vals), 0,
41683         NULL, HFILL }},
41684     { &hf_nr_rrc_csi_rs_ResourceList_Mobility,
41685       { "csi-rs-ResourceList-Mobility", "nr-rrc.csi_rs_ResourceList_Mobility",
41686         FT_UINT32, BASE_DEC, NULL, 0,
41687         "SEQUENCE_SIZE_1_maxNrofCSI_RS_ResourcesRRM_OF_CSI_RS_Resource_Mobility", HFILL }},
41688     { &hf_nr_rrc_csi_rs_ResourceList_Mobility_item,
41689       { "CSI-RS-Resource-Mobility", "nr-rrc.CSI_RS_Resource_Mobility_element",
41690         FT_NONE, BASE_NONE, NULL, 0,
41691         NULL, HFILL }},
41692     { &hf_nr_rrc_csi_RS_Index,
41693       { "csi-RS-Index", "nr-rrc.csi_RS_Index",
41694         FT_UINT32, BASE_DEC, NULL, 0,
41695         NULL, HFILL }},
41696     { &hf_nr_rrc_slotConfig,
41697       { "slotConfig", "nr-rrc.slotConfig",
41698         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_slotConfig_vals), 0,
41699         NULL, HFILL }},
41700     { &hf_nr_rrc_ms4,
41701       { "ms4", "nr-rrc.ms4",
41702         FT_UINT32, BASE_DEC, NULL, 0,
41703         "INTEGER_0_31", HFILL }},
41704     { &hf_nr_rrc_ms5,
41705       { "ms5", "nr-rrc.ms5",
41706         FT_UINT32, BASE_DEC, NULL, 0,
41707         "INTEGER_0_39", HFILL }},
41708     { &hf_nr_rrc_ms10_01,
41709       { "ms10", "nr-rrc.ms10",
41710         FT_UINT32, BASE_DEC, NULL, 0,
41711         "INTEGER_0_79", HFILL }},
41712     { &hf_nr_rrc_ms20_01,
41713       { "ms20", "nr-rrc.ms20",
41714         FT_UINT32, BASE_DEC, NULL, 0,
41715         "INTEGER_0_159", HFILL }},
41716     { &hf_nr_rrc_ms40_01,
41717       { "ms40", "nr-rrc.ms40",
41718         FT_UINT32, BASE_DEC, NULL, 0,
41719         "INTEGER_0_319", HFILL }},
41720     { &hf_nr_rrc_associatedSSB,
41721       { "associatedSSB", "nr-rrc.associatedSSB_element",
41722         FT_NONE, BASE_NONE, NULL, 0,
41723         NULL, HFILL }},
41724     { &hf_nr_rrc_ssb_Index,
41725       { "ssb-Index", "nr-rrc.ssb_Index",
41726         FT_UINT32, BASE_DEC, NULL, 0,
41727         NULL, HFILL }},
41728     { &hf_nr_rrc_isQuasiColocated,
41729       { "isQuasiColocated", "nr-rrc.isQuasiColocated",
41730         FT_BOOLEAN, BASE_NONE, NULL, 0,
41731         "BOOLEAN", HFILL }},
41732     { &hf_nr_rrc_frequencyDomainAllocation_01,
41733       { "frequencyDomainAllocation", "nr-rrc.frequencyDomainAllocation",
41734         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_frequencyDomainAllocation_vals), 0,
41735         NULL, HFILL }},
41736     { &hf_nr_rrc_row1,
41737       { "row1", "nr-rrc.row1",
41738         FT_BYTES, BASE_NONE, NULL, 0,
41739         "BIT_STRING_SIZE_4", HFILL }},
41740     { &hf_nr_rrc_row2,
41741       { "row2", "nr-rrc.row2",
41742         FT_BYTES, BASE_NONE, NULL, 0,
41743         "BIT_STRING_SIZE_12", HFILL }},
41744     { &hf_nr_rrc_firstOFDMSymbolInTimeDomain,
41745       { "firstOFDMSymbolInTimeDomain", "nr-rrc.firstOFDMSymbolInTimeDomain",
41746         FT_UINT32, BASE_DEC, NULL, 0,
41747         "INTEGER_0_13", HFILL }},
41748     { &hf_nr_rrc_sequenceGenerationConfig,
41749       { "sequenceGenerationConfig", "nr-rrc.sequenceGenerationConfig",
41750         FT_UINT32, BASE_DEC, NULL, 0,
41751         "INTEGER_0_1023", HFILL }},
41752     { &hf_nr_rrc_frequencyDomainAllocation_02,
41753       { "frequencyDomainAllocation", "nr-rrc.frequencyDomainAllocation",
41754         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_frequencyDomainAllocation_01_vals), 0,
41755         "T_frequencyDomainAllocation_01", HFILL }},
41756     { &hf_nr_rrc_row4,
41757       { "row4", "nr-rrc.row4",
41758         FT_BYTES, BASE_NONE, NULL, 0,
41759         "BIT_STRING_SIZE_3", HFILL }},
41760     { &hf_nr_rrc_other_01,
41761       { "other", "nr-rrc.other",
41762         FT_BYTES, BASE_NONE, NULL, 0,
41763         "BIT_STRING_SIZE_6", HFILL }},
41764     { &hf_nr_rrc_nrofPorts,
41765       { "nrofPorts", "nr-rrc.nrofPorts",
41766         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_nrofPorts_vals), 0,
41767         NULL, HFILL }},
41768     { &hf_nr_rrc_firstOFDMSymbolInTimeDomain2,
41769       { "firstOFDMSymbolInTimeDomain2", "nr-rrc.firstOFDMSymbolInTimeDomain2",
41770         FT_UINT32, BASE_DEC, NULL, 0,
41771         "INTEGER_2_12", HFILL }},
41772     { &hf_nr_rrc_cdm_Type,
41773       { "cdm-Type", "nr-rrc.cdm_Type",
41774         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_cdm_Type_vals), 0,
41775         NULL, HFILL }},
41776     { &hf_nr_rrc_density_01,
41777       { "density", "nr-rrc.density",
41778         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_density_01_vals), 0,
41779         "T_density_01", HFILL }},
41780     { &hf_nr_rrc_dot5,
41781       { "dot5", "nr-rrc.dot5",
41782         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_dot5_vals), 0,
41783         NULL, HFILL }},
41784     { &hf_nr_rrc_one,
41785       { "one", "nr-rrc.one_element",
41786         FT_NONE, BASE_NONE, NULL, 0,
41787         NULL, HFILL }},
41788     { &hf_nr_rrc_three,
41789       { "three", "nr-rrc.three_element",
41790         FT_NONE, BASE_NONE, NULL, 0,
41791         NULL, HFILL }},
41792     { &hf_nr_rrc_spare_02,
41793       { "spare", "nr-rrc.spare_element",
41794         FT_NONE, BASE_NONE, NULL, 0,
41795         NULL, HFILL }},
41796     { &hf_nr_rrc_CSI_SemiPersistentOnPUSCH_TriggerStateList_item,
41797       { "CSI-SemiPersistentOnPUSCH-TriggerState", "nr-rrc.CSI_SemiPersistentOnPUSCH_TriggerState_element",
41798         FT_NONE, BASE_NONE, NULL, 0,
41799         NULL, HFILL }},
41800     { &hf_nr_rrc_associatedReportConfigInfo,
41801       { "associatedReportConfigInfo", "nr-rrc.associatedReportConfigInfo",
41802         FT_UINT32, BASE_DEC, NULL, 0,
41803         "CSI_ReportConfigId", HFILL }},
41804     { &hf_nr_rrc_csi_SSB_ResourceSetId,
41805       { "csi-SSB-ResourceSetId", "nr-rrc.csi_SSB_ResourceSetId",
41806         FT_UINT32, BASE_DEC, NULL, 0,
41807         NULL, HFILL }},
41808     { &hf_nr_rrc_csi_SSB_ResourceList,
41809       { "csi-SSB-ResourceList", "nr-rrc.csi_SSB_ResourceList",
41810         FT_UINT32, BASE_DEC, NULL, 0,
41811         "SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourcePerSet_OF_SSB_Index", HFILL }},
41812     { &hf_nr_rrc_csi_SSB_ResourceList_item,
41813       { "SSB-Index", "nr-rrc.SSB_Index",
41814         FT_UINT32, BASE_DEC, NULL, 0,
41815         NULL, HFILL }},
41816     { &hf_nr_rrc_dmrs_Type,
41817       { "dmrs-Type", "nr-rrc.dmrs_Type",
41818         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_dmrs_Type_vals), 0,
41819         NULL, HFILL }},
41820     { &hf_nr_rrc_dmrs_AdditionalPosition,
41821       { "dmrs-AdditionalPosition", "nr-rrc.dmrs_AdditionalPosition",
41822         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_dmrs_AdditionalPosition_vals), 0,
41823         NULL, HFILL }},
41824     { &hf_nr_rrc_maxLength,
41825       { "maxLength", "nr-rrc.maxLength",
41826         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_maxLength_vals), 0,
41827         NULL, HFILL }},
41828     { &hf_nr_rrc_scramblingID0,
41829       { "scramblingID0", "nr-rrc.scramblingID0",
41830         FT_UINT32, BASE_DEC, NULL, 0,
41831         "INTEGER_0_65535", HFILL }},
41832     { &hf_nr_rrc_scramblingID1,
41833       { "scramblingID1", "nr-rrc.scramblingID1",
41834         FT_UINT32, BASE_DEC, NULL, 0,
41835         "INTEGER_0_65535", HFILL }},
41836     { &hf_nr_rrc_phaseTrackingRS,
41837       { "phaseTrackingRS", "nr-rrc.phaseTrackingRS",
41838         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_phaseTrackingRS_vals), 0,
41839         NULL, HFILL }},
41840     { &hf_nr_rrc_setup_20,
41841       { "setup", "nr-rrc.setup_element",
41842         FT_NONE, BASE_NONE, NULL, 0,
41843         "PTRS_DownlinkConfig", HFILL }},
41844     { &hf_nr_rrc_dmrs_Type_01,
41845       { "dmrs-Type", "nr-rrc.dmrs_Type",
41846         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_dmrs_Type_01_vals), 0,
41847         "T_dmrs_Type_01", HFILL }},
41848     { &hf_nr_rrc_dmrs_AdditionalPosition_01,
41849       { "dmrs-AdditionalPosition", "nr-rrc.dmrs_AdditionalPosition",
41850         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_dmrs_AdditionalPosition_01_vals), 0,
41851         "T_dmrs_AdditionalPosition_01", HFILL }},
41852     { &hf_nr_rrc_phaseTrackingRS_01,
41853       { "phaseTrackingRS", "nr-rrc.phaseTrackingRS",
41854         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_phaseTrackingRS_01_vals), 0,
41855         "T_phaseTrackingRS_01", HFILL }},
41856     { &hf_nr_rrc_setup_21,
41857       { "setup", "nr-rrc.setup_element",
41858         FT_NONE, BASE_NONE, NULL, 0,
41859         "PTRS_UplinkConfig", HFILL }},
41860     { &hf_nr_rrc_maxLength_01,
41861       { "maxLength", "nr-rrc.maxLength",
41862         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_maxLength_01_vals), 0,
41863         "T_maxLength_01", HFILL }},
41864     { &hf_nr_rrc_transformPrecodingDisabled,
41865       { "transformPrecodingDisabled", "nr-rrc.transformPrecodingDisabled_element",
41866         FT_NONE, BASE_NONE, NULL, 0,
41867         NULL, HFILL }},
41868     { &hf_nr_rrc_transformPrecodingEnabled,
41869       { "transformPrecodingEnabled", "nr-rrc.transformPrecodingEnabled_element",
41870         FT_NONE, BASE_NONE, NULL, 0,
41871         NULL, HFILL }},
41872     { &hf_nr_rrc_nPUSCH_Identity,
41873       { "nPUSCH-Identity", "nr-rrc.nPUSCH_Identity",
41874         FT_UINT32, BASE_DEC, NULL, 0,
41875         "INTEGER_0_1007", HFILL }},
41876     { &hf_nr_rrc_sequenceGroupHopping,
41877       { "sequenceGroupHopping", "nr-rrc.sequenceGroupHopping",
41878         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_sequenceGroupHopping_vals), 0,
41879         NULL, HFILL }},
41880     { &hf_nr_rrc_sequenceHopping,
41881       { "sequenceHopping", "nr-rrc.sequenceHopping",
41882         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_sequenceHopping_vals), 0,
41883         NULL, HFILL }},
41884     { &hf_nr_rrc_frequencyInfoDL,
41885       { "frequencyInfoDL", "nr-rrc.frequencyInfoDL_element",
41886         FT_NONE, BASE_NONE, NULL, 0,
41887         NULL, HFILL }},
41888     { &hf_nr_rrc_initialDownlinkBWP,
41889       { "initialDownlinkBWP", "nr-rrc.initialDownlinkBWP_element",
41890         FT_NONE, BASE_NONE, NULL, 0,
41891         "BWP_DownlinkCommon", HFILL }},
41892     { &hf_nr_rrc_frequencyInfoDL_01,
41893       { "frequencyInfoDL", "nr-rrc.frequencyInfoDL_element",
41894         FT_NONE, BASE_NONE, NULL, 0,
41895         "FrequencyInfoDL_SIB", HFILL }},
41896     { &hf_nr_rrc_bcch_Config,
41897       { "bcch-Config", "nr-rrc.bcch_Config_element",
41898         FT_NONE, BASE_NONE, NULL, 0,
41899         NULL, HFILL }},
41900     { &hf_nr_rrc_pcch_Config,
41901       { "pcch-Config", "nr-rrc.pcch_Config_element",
41902         FT_NONE, BASE_NONE, NULL, 0,
41903         NULL, HFILL }},
41904     { &hf_nr_rrc_modificationPeriodCoeff,
41905       { "modificationPeriodCoeff", "nr-rrc.modificationPeriodCoeff",
41906         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_modificationPeriodCoeff_vals), 0,
41907         NULL, HFILL }},
41908     { &hf_nr_rrc_defaultPagingCycle,
41909       { "defaultPagingCycle", "nr-rrc.defaultPagingCycle",
41910         FT_UINT32, BASE_DEC, VALS(nr_rrc_PagingCycle_vals), 0,
41911         "PagingCycle", HFILL }},
41912     { &hf_nr_rrc_nAndPagingFrameOffset,
41913       { "nAndPagingFrameOffset", "nr-rrc.nAndPagingFrameOffset",
41914         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_nAndPagingFrameOffset_vals), 0,
41915         NULL, HFILL }},
41916     { &hf_nr_rrc_oneT,
41917       { "oneT", "nr-rrc.oneT_element",
41918         FT_NONE, BASE_NONE, NULL, 0,
41919         NULL, HFILL }},
41920     { &hf_nr_rrc_halfT,
41921       { "halfT", "nr-rrc.halfT",
41922         FT_UINT32, BASE_DEC, NULL, 0,
41923         "INTEGER_0_1", HFILL }},
41924     { &hf_nr_rrc_quarterT,
41925       { "quarterT", "nr-rrc.quarterT",
41926         FT_UINT32, BASE_DEC, NULL, 0,
41927         "INTEGER_0_3", HFILL }},
41928     { &hf_nr_rrc_oneEighthT,
41929       { "oneEighthT", "nr-rrc.oneEighthT",
41930         FT_UINT32, BASE_DEC, NULL, 0,
41931         "INTEGER_0_7", HFILL }},
41932     { &hf_nr_rrc_oneSixteenthT,
41933       { "oneSixteenthT", "nr-rrc.oneSixteenthT",
41934         FT_UINT32, BASE_DEC, NULL, 0,
41935         "INTEGER_0_15", HFILL }},
41936     { &hf_nr_rrc_ns,
41937       { "ns", "nr-rrc.ns",
41938         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_ns_vals), 0,
41939         NULL, HFILL }},
41940     { &hf_nr_rrc_firstPDCCH_MonitoringOccasionOfPO,
41941       { "firstPDCCH-MonitoringOccasionOfPO", "nr-rrc.firstPDCCH_MonitoringOccasionOfPO",
41942         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_firstPDCCH_MonitoringOccasionOfPO_vals), 0,
41943         NULL, HFILL }},
41944     { &hf_nr_rrc_sCS15KHZoneT,
41945       { "sCS15KHZoneT", "nr-rrc.sCS15KHZoneT",
41946         FT_UINT32, BASE_DEC, NULL, 0,
41947         NULL, HFILL }},
41948     { &hf_nr_rrc_sCS15KHZoneT_item,
41949       { "sCS15KHZoneT item", "nr-rrc.sCS15KHZoneT_item",
41950         FT_UINT32, BASE_DEC, NULL, 0,
41951         "INTEGER_0_139", HFILL }},
41952     { &hf_nr_rrc_sCS30KHZoneT_SCS15KHZhalfT,
41953       { "sCS30KHZoneT-SCS15KHZhalfT", "nr-rrc.sCS30KHZoneT_SCS15KHZhalfT",
41954         FT_UINT32, BASE_DEC, NULL, 0,
41955         "T_sCS30KHZoneT_SCS15KHZhalfT", HFILL }},
41956     { &hf_nr_rrc_sCS30KHZoneT_SCS15KHZhalfT_item,
41957       { "sCS30KHZoneT-SCS15KHZhalfT item", "nr-rrc.sCS30KHZoneT_SCS15KHZhalfT_item",
41958         FT_UINT32, BASE_DEC, NULL, 0,
41959         "INTEGER_0_279", HFILL }},
41960     { &hf_nr_rrc_sCS60KHZoneT_SCS30KHZhalfT_SCS15KHZquarterT,
41961       { "sCS60KHZoneT-SCS30KHZhalfT-SCS15KHZquarterT", "nr-rrc.sCS60KHZoneT_SCS30KHZhalfT_SCS15KHZquarterT",
41962         FT_UINT32, BASE_DEC, NULL, 0,
41963         "T_sCS60KHZoneT_SCS30KHZhalfT_SCS15KHZquarterT", HFILL }},
41964     { &hf_nr_rrc_sCS60KHZoneT_SCS30KHZhalfT_SCS15KHZquarterT_item,
41965       { "sCS60KHZoneT-SCS30KHZhalfT-SCS15KHZquarterT item", "nr-rrc.sCS60KHZoneT_SCS30KHZhalfT_SCS15KHZquarterT_item",
41966         FT_UINT32, BASE_DEC, NULL, 0,
41967         "INTEGER_0_559", HFILL }},
41968     { &hf_nr_rrc_sCS120KHZoneT_SCS60KHZhalfT_SCS30KHZquarterT_SCS15KHZoneEighthT,
41969       { "sCS120KHZoneT-SCS60KHZhalfT-SCS30KHZquarterT-SCS15KHZoneEighthT", "nr-rrc.sCS120KHZoneT_SCS60KHZhalfT_SCS30KHZquarterT_SCS15KHZoneEighthT",
41970         FT_UINT32, BASE_DEC, NULL, 0,
41971         "T_sCS120KHZoneT_SCS60KHZhalfT_SCS30KHZquarterT_SCS15KHZoneEighthT", HFILL }},
41972     { &hf_nr_rrc_sCS120KHZoneT_SCS60KHZhalfT_SCS30KHZquarterT_SCS15KHZoneEighthT_item,
41973       { "sCS120KHZoneT-SCS60KHZhalfT-SCS30KHZquarterT-SCS15KHZoneEighthT item", "nr-rrc.sCS120KHZoneT_SCS60KHZhalfT_SCS30KHZquarterT_SCS15KHZoneEighthT_item",
41974         FT_UINT32, BASE_DEC, NULL, 0,
41975         "INTEGER_0_1119", HFILL }},
41976     { &hf_nr_rrc_sCS120KHZhalfT_SCS60KHZquarterT_SCS30KHZoneEighthT_SCS15KHZoneSixteenthT,
41977       { "sCS120KHZhalfT-SCS60KHZquarterT-SCS30KHZoneEighthT-SCS15KHZoneSixteenthT", "nr-rrc.sCS120KHZhalfT_SCS60KHZquarterT_SCS30KHZoneEighthT_SCS15KHZoneSixteenthT",
41978         FT_UINT32, BASE_DEC, NULL, 0,
41979         "T_sCS120KHZhalfT_SCS60KHZquarterT_SCS30KHZoneEighthT_SCS15KHZoneSixteenthT", HFILL }},
41980     { &hf_nr_rrc_sCS120KHZhalfT_SCS60KHZquarterT_SCS30KHZoneEighthT_SCS15KHZoneSixteenthT_item,
41981       { "sCS120KHZhalfT-SCS60KHZquarterT-SCS30KHZoneEighthT-SCS15KHZoneSixteenthT item", "nr-rrc.sCS120KHZhalfT_SCS60KHZquarterT_SCS30KHZoneEighthT_SCS15KHZoneSixteenthT_item",
41982         FT_UINT32, BASE_DEC, NULL, 0,
41983         "INTEGER_0_2239", HFILL }},
41984     { &hf_nr_rrc_sCS120KHZquarterT_SCS60KHZoneEighthT_SCS30KHZoneSixteenthT,
41985       { "sCS120KHZquarterT-SCS60KHZoneEighthT-SCS30KHZoneSixteenthT", "nr-rrc.sCS120KHZquarterT_SCS60KHZoneEighthT_SCS30KHZoneSixteenthT",
41986         FT_UINT32, BASE_DEC, NULL, 0,
41987         "T_sCS120KHZquarterT_SCS60KHZoneEighthT_SCS30KHZoneSixteenthT", HFILL }},
41988     { &hf_nr_rrc_sCS120KHZquarterT_SCS60KHZoneEighthT_SCS30KHZoneSixteenthT_item,
41989       { "sCS120KHZquarterT-SCS60KHZoneEighthT-SCS30KHZoneSixteenthT item", "nr-rrc.sCS120KHZquarterT_SCS60KHZoneEighthT_SCS30KHZoneSixteenthT_item",
41990         FT_UINT32, BASE_DEC, NULL, 0,
41991         "INTEGER_0_4479", HFILL }},
41992     { &hf_nr_rrc_sCS120KHZoneEighthT_SCS60KHZoneSixteenthT,
41993       { "sCS120KHZoneEighthT-SCS60KHZoneSixteenthT", "nr-rrc.sCS120KHZoneEighthT_SCS60KHZoneSixteenthT",
41994         FT_UINT32, BASE_DEC, NULL, 0,
41995         "T_sCS120KHZoneEighthT_SCS60KHZoneSixteenthT", HFILL }},
41996     { &hf_nr_rrc_sCS120KHZoneEighthT_SCS60KHZoneSixteenthT_item,
41997       { "sCS120KHZoneEighthT-SCS60KHZoneSixteenthT item", "nr-rrc.sCS120KHZoneEighthT_SCS60KHZoneSixteenthT_item",
41998         FT_UINT32, BASE_DEC, NULL, 0,
41999         "INTEGER_0_8959", HFILL }},
42000     { &hf_nr_rrc_sCS120KHZoneSixteenthT,
42001       { "sCS120KHZoneSixteenthT", "nr-rrc.sCS120KHZoneSixteenthT",
42002         FT_UINT32, BASE_DEC, NULL, 0,
42003         NULL, HFILL }},
42004     { &hf_nr_rrc_sCS120KHZoneSixteenthT_item,
42005       { "sCS120KHZoneSixteenthT item", "nr-rrc.sCS120KHZoneSixteenthT_item",
42006         FT_UINT32, BASE_DEC, NULL, 0,
42007         "INTEGER_0_17919", HFILL }},
42008     { &hf_nr_rrc_int_RNTI,
42009       { "int-RNTI", "nr-rrc.int_RNTI",
42010         FT_UINT32, BASE_DEC, NULL, 0,
42011         "RNTI_Value", HFILL }},
42012     { &hf_nr_rrc_timeFrequencySet,
42013       { "timeFrequencySet", "nr-rrc.timeFrequencySet",
42014         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_timeFrequencySet_vals), 0,
42015         NULL, HFILL }},
42016     { &hf_nr_rrc_dci_PayloadSize,
42017       { "dci-PayloadSize", "nr-rrc.dci_PayloadSize",
42018         FT_UINT32, BASE_DEC, NULL, 0,
42019         "INTEGER_0_maxINT_DCI_PayloadSize", HFILL }},
42020     { &hf_nr_rrc_int_ConfigurationPerServingCell,
42021       { "int-ConfigurationPerServingCell", "nr-rrc.int_ConfigurationPerServingCell",
42022         FT_UINT32, BASE_DEC, NULL, 0,
42023         "SEQUENCE_SIZE_1_maxNrofServingCells_OF_INT_ConfigurationPerServingCell", HFILL }},
42024     { &hf_nr_rrc_int_ConfigurationPerServingCell_item,
42025       { "INT-ConfigurationPerServingCell", "nr-rrc.INT_ConfigurationPerServingCell_element",
42026         FT_NONE, BASE_NONE, NULL, 0,
42027         NULL, HFILL }},
42028     { &hf_nr_rrc_servingCellId,
42029       { "servingCellId", "nr-rrc.servingCellId",
42030         FT_UINT32, BASE_DEC, NULL, 0,
42031         "ServCellIndex", HFILL }},
42032     { &hf_nr_rrc_positionInDCI,
42033       { "positionInDCI", "nr-rrc.positionInDCI",
42034         FT_UINT32, BASE_DEC, NULL, 0,
42035         "INTEGER_0_maxINT_DCI_PayloadSize_1", HFILL }},
42036     { &hf_nr_rrc_drx_onDurationTimer,
42037       { "drx-onDurationTimer", "nr-rrc.drx_onDurationTimer",
42038         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_drx_onDurationTimer_vals), 0,
42039         NULL, HFILL }},
42040     { &hf_nr_rrc_subMilliSeconds,
42041       { "subMilliSeconds", "nr-rrc.subMilliSeconds",
42042         FT_UINT32, BASE_DEC, NULL, 0,
42043         "INTEGER_1_31", HFILL }},
42044     { &hf_nr_rrc_milliSeconds,
42045       { "milliSeconds", "nr-rrc.milliSeconds",
42046         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_T_milliSeconds_vals_ext, 0,
42047         NULL, HFILL }},
42048     { &hf_nr_rrc_drx_InactivityTimer,
42049       { "drx-InactivityTimer", "nr-rrc.drx_InactivityTimer",
42050         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_T_drx_InactivityTimer_vals_ext, 0,
42051         NULL, HFILL }},
42052     { &hf_nr_rrc_drx_HARQ_RTT_TimerDL,
42053       { "drx-HARQ-RTT-TimerDL", "nr-rrc.drx_HARQ_RTT_TimerDL",
42054         FT_UINT32, BASE_DEC, NULL, 0,
42055         "INTEGER_0_56", HFILL }},
42056     { &hf_nr_rrc_drx_HARQ_RTT_TimerUL,
42057       { "drx-HARQ-RTT-TimerUL", "nr-rrc.drx_HARQ_RTT_TimerUL",
42058         FT_UINT32, BASE_DEC, NULL, 0,
42059         "INTEGER_0_56", HFILL }},
42060     { &hf_nr_rrc_drx_RetransmissionTimerDL,
42061       { "drx-RetransmissionTimerDL", "nr-rrc.drx_RetransmissionTimerDL",
42062         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_T_drx_RetransmissionTimerDL_vals_ext, 0,
42063         NULL, HFILL }},
42064     { &hf_nr_rrc_drx_RetransmissionTimerUL,
42065       { "drx-RetransmissionTimerUL", "nr-rrc.drx_RetransmissionTimerUL",
42066         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_T_drx_RetransmissionTimerUL_vals_ext, 0,
42067         NULL, HFILL }},
42068     { &hf_nr_rrc_drx_LongCycleStartOffset_01,
42069       { "drx-LongCycleStartOffset", "nr-rrc.drx_LongCycleStartOffset",
42070         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_T_drx_LongCycleStartOffset_01_vals_ext, 0,
42071         "T_drx_LongCycleStartOffset_01", HFILL }},
42072     { &hf_nr_rrc_shortDRX_01,
42073       { "shortDRX", "nr-rrc.shortDRX_element",
42074         FT_NONE, BASE_NONE, NULL, 0,
42075         "T_shortDRX_01", HFILL }},
42076     { &hf_nr_rrc_drx_ShortCycle_01,
42077       { "drx-ShortCycle", "nr-rrc.drx_ShortCycle",
42078         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_T_drx_ShortCycle_01_vals_ext, 0,
42079         "T_drx_ShortCycle_01", HFILL }},
42080     { &hf_nr_rrc_drx_SlotOffset,
42081       { "drx-SlotOffset", "nr-rrc.drx_SlotOffset",
42082         FT_UINT32, BASE_CUSTOM, CF_FUNC(nr_rrc_drx_SlotOffset_fmt), 0,
42083         "INTEGER_0_31", HFILL }},
42084     { &hf_nr_rrc_absoluteFrequencySSB,
42085       { "absoluteFrequencySSB", "nr-rrc.absoluteFrequencySSB",
42086         FT_UINT32, BASE_DEC, NULL, 0,
42087         "ARFCN_ValueNR", HFILL }},
42088     { &hf_nr_rrc_absoluteFrequencyPointA,
42089       { "absoluteFrequencyPointA", "nr-rrc.absoluteFrequencyPointA",
42090         FT_UINT32, BASE_DEC, NULL, 0,
42091         "ARFCN_ValueNR", HFILL }},
42092     { &hf_nr_rrc_scs_SpecificCarrierList,
42093       { "scs-SpecificCarrierList", "nr-rrc.scs_SpecificCarrierList",
42094         FT_UINT32, BASE_DEC, NULL, 0,
42095         "SEQUENCE_SIZE_1_maxSCSs_OF_SCS_SpecificCarrier", HFILL }},
42096     { &hf_nr_rrc_scs_SpecificCarrierList_item,
42097       { "SCS-SpecificCarrier", "nr-rrc.SCS_SpecificCarrier_element",
42098         FT_NONE, BASE_NONE, NULL, 0,
42099         NULL, HFILL }},
42100     { &hf_nr_rrc_offsetToPointA,
42101       { "offsetToPointA", "nr-rrc.offsetToPointA",
42102         FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_prbs, 0,
42103         "INTEGER_0_2199", HFILL }},
42104     { &hf_nr_rrc_additionalSpectrumEmission,
42105       { "additionalSpectrumEmission", "nr-rrc.additionalSpectrumEmission",
42106         FT_UINT32, BASE_DEC, NULL, 0,
42107         NULL, HFILL }},
42108     { &hf_nr_rrc_frequencyShift7p5khz,
42109       { "frequencyShift7p5khz", "nr-rrc.frequencyShift7p5khz",
42110         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_frequencyShift7p5khz_vals), 0,
42111         NULL, HFILL }},
42112     { &hf_nr_rrc_frequencyShift7p5khz_01,
42113       { "frequencyShift7p5khz", "nr-rrc.frequencyShift7p5khz",
42114         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_frequencyShift7p5khz_01_vals), 0,
42115         "T_frequencyShift7p5khz_01", HFILL }},
42116     { &hf_nr_rrc_eutra_RSTD,
42117       { "eutra-RSTD", "nr-rrc.eutra_RSTD",
42118         FT_UINT32, BASE_DEC, NULL, 0,
42119         "EUTRA_RSTD_InfoList", HFILL }},
42120     { &hf_nr_rrc_EUTRA_RSTD_InfoList_item,
42121       { "EUTRA-RSTD-Info", "nr-rrc.EUTRA_RSTD_Info_element",
42122         FT_NONE, BASE_NONE, NULL, 0,
42123         NULL, HFILL }},
42124     { &hf_nr_rrc_measPRS_Offset,
42125       { "measPRS-Offset", "nr-rrc.measPRS_Offset",
42126         FT_UINT32, BASE_DEC, NULL, 0,
42127         "INTEGER_0_39", HFILL }},
42128     { &hf_nr_rrc_ul_SpecificParameters,
42129       { "ul-SpecificParameters", "nr-rrc.ul_SpecificParameters_element",
42130         FT_NONE, BASE_NONE, NULL, 0,
42131         NULL, HFILL }},
42132     { &hf_nr_rrc_priority,
42133       { "priority", "nr-rrc.priority",
42134         FT_UINT32, BASE_DEC, NULL, 0,
42135         "INTEGER_1_16", HFILL }},
42136     { &hf_nr_rrc_prioritisedBitRate,
42137       { "prioritisedBitRate", "nr-rrc.prioritisedBitRate",
42138         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_prioritisedBitRate_vals), 0,
42139         NULL, HFILL }},
42140     { &hf_nr_rrc_bucketSizeDuration,
42141       { "bucketSizeDuration", "nr-rrc.bucketSizeDuration",
42142         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_bucketSizeDuration_vals), 0,
42143         NULL, HFILL }},
42144     { &hf_nr_rrc_allowedServingCells,
42145       { "allowedServingCells", "nr-rrc.allowedServingCells",
42146         FT_UINT32, BASE_DEC, NULL, 0,
42147         "SEQUENCE_SIZE_1_maxNrofServingCells_1_OF_ServCellIndex", HFILL }},
42148     { &hf_nr_rrc_allowedServingCells_item,
42149       { "ServCellIndex", "nr-rrc.ServCellIndex",
42150         FT_UINT32, BASE_DEC, NULL, 0,
42151         NULL, HFILL }},
42152     { &hf_nr_rrc_allowedSCS_List,
42153       { "allowedSCS-List", "nr-rrc.allowedSCS_List",
42154         FT_UINT32, BASE_DEC, NULL, 0,
42155         "SEQUENCE_SIZE_1_maxSCSs_OF_SubcarrierSpacing", HFILL }},
42156     { &hf_nr_rrc_allowedSCS_List_item,
42157       { "SubcarrierSpacing", "nr-rrc.SubcarrierSpacing",
42158         FT_UINT32, BASE_DEC, VALS(nr_rrc_SubcarrierSpacing_vals), 0,
42159         NULL, HFILL }},
42160     { &hf_nr_rrc_maxPUSCH_Duration,
42161       { "maxPUSCH-Duration", "nr-rrc.maxPUSCH_Duration",
42162         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_maxPUSCH_Duration_vals), 0,
42163         NULL, HFILL }},
42164     { &hf_nr_rrc_configuredGrantType1Allowed,
42165       { "configuredGrantType1Allowed", "nr-rrc.configuredGrantType1Allowed",
42166         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_configuredGrantType1Allowed_vals), 0,
42167         NULL, HFILL }},
42168     { &hf_nr_rrc_logicalChannelGroup,
42169       { "logicalChannelGroup", "nr-rrc.logicalChannelGroup",
42170         FT_UINT32, BASE_DEC, NULL, 0,
42171         "INTEGER_0_maxLCG_ID", HFILL }},
42172     { &hf_nr_rrc_schedulingRequestID,
42173       { "schedulingRequestID", "nr-rrc.schedulingRequestID",
42174         FT_UINT32, BASE_DEC, NULL, 0,
42175         NULL, HFILL }},
42176     { &hf_nr_rrc_logicalChannelSR_Mask,
42177       { "logicalChannelSR-Mask", "nr-rrc.logicalChannelSR_Mask",
42178         FT_BOOLEAN, BASE_NONE, NULL, 0,
42179         "BOOLEAN", HFILL }},
42180     { &hf_nr_rrc_logicalChannelSR_DelayTimerApplied,
42181       { "logicalChannelSR-DelayTimerApplied", "nr-rrc.logicalChannelSR_DelayTimerApplied",
42182         FT_BOOLEAN, BASE_NONE, NULL, 0,
42183         "BOOLEAN", HFILL }},
42184     { &hf_nr_rrc_bitRateQueryProhibitTimer,
42185       { "bitRateQueryProhibitTimer", "nr-rrc.bitRateQueryProhibitTimer",
42186         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_bitRateQueryProhibitTimer_vals), 0,
42187         NULL, HFILL }},
42188     { &hf_nr_rrc_drx_Config,
42189       { "drx-Config", "nr-rrc.drx_Config",
42190         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_drx_Config_vals), 0,
42191         NULL, HFILL }},
42192     { &hf_nr_rrc_setup_22,
42193       { "setup", "nr-rrc.setup_element",
42194         FT_NONE, BASE_NONE, NULL, 0,
42195         "DRX_Config", HFILL }},
42196     { &hf_nr_rrc_schedulingRequestConfig,
42197       { "schedulingRequestConfig", "nr-rrc.schedulingRequestConfig_element",
42198         FT_NONE, BASE_NONE, NULL, 0,
42199         NULL, HFILL }},
42200     { &hf_nr_rrc_bsr_Config,
42201       { "bsr-Config", "nr-rrc.bsr_Config_element",
42202         FT_NONE, BASE_NONE, NULL, 0,
42203         NULL, HFILL }},
42204     { &hf_nr_rrc_tag_Config,
42205       { "tag-Config", "nr-rrc.tag_Config_element",
42206         FT_NONE, BASE_NONE, NULL, 0,
42207         NULL, HFILL }},
42208     { &hf_nr_rrc_phr_Config,
42209       { "phr-Config", "nr-rrc.phr_Config",
42210         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_phr_Config_vals), 0,
42211         NULL, HFILL }},
42212     { &hf_nr_rrc_setup_23,
42213       { "setup", "nr-rrc.setup_element",
42214         FT_NONE, BASE_NONE, NULL, 0,
42215         "PHR_Config", HFILL }},
42216     { &hf_nr_rrc_skipUplinkTxDynamic,
42217       { "skipUplinkTxDynamic", "nr-rrc.skipUplinkTxDynamic",
42218         FT_BOOLEAN, BASE_NONE, NULL, 0,
42219         "BOOLEAN", HFILL }},
42220     { &hf_nr_rrc_csi_Mask_v1530,
42221       { "csi-Mask-v1530", "nr-rrc.csi_Mask_v1530",
42222         FT_BOOLEAN, BASE_NONE, NULL, 0,
42223         "BOOLEAN", HFILL }},
42224     { &hf_nr_rrc_dataInactivityTimer_v1530,
42225       { "dataInactivityTimer-v1530", "nr-rrc.dataInactivityTimer_v1530",
42226         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_dataInactivityTimer_v1530_vals), 0,
42227         NULL, HFILL }},
42228     { &hf_nr_rrc_setup_24,
42229       { "setup", "nr-rrc.setup",
42230         FT_UINT32, BASE_DEC, VALS(nr_rrc_DataInactivityTimer_vals), 0,
42231         "DataInactivityTimer", HFILL }},
42232     { &hf_nr_rrc_measObjectToRemoveList,
42233       { "measObjectToRemoveList", "nr-rrc.measObjectToRemoveList",
42234         FT_UINT32, BASE_DEC, NULL, 0,
42235         NULL, HFILL }},
42236     { &hf_nr_rrc_measObjectToAddModList,
42237       { "measObjectToAddModList", "nr-rrc.measObjectToAddModList",
42238         FT_UINT32, BASE_DEC, NULL, 0,
42239         NULL, HFILL }},
42240     { &hf_nr_rrc_reportConfigToRemoveList,
42241       { "reportConfigToRemoveList", "nr-rrc.reportConfigToRemoveList",
42242         FT_UINT32, BASE_DEC, NULL, 0,
42243         NULL, HFILL }},
42244     { &hf_nr_rrc_reportConfigToAddModList,
42245       { "reportConfigToAddModList", "nr-rrc.reportConfigToAddModList",
42246         FT_UINT32, BASE_DEC, NULL, 0,
42247         NULL, HFILL }},
42248     { &hf_nr_rrc_measIdToRemoveList,
42249       { "measIdToRemoveList", "nr-rrc.measIdToRemoveList",
42250         FT_UINT32, BASE_DEC, NULL, 0,
42251         NULL, HFILL }},
42252     { &hf_nr_rrc_measIdToAddModList,
42253       { "measIdToAddModList", "nr-rrc.measIdToAddModList",
42254         FT_UINT32, BASE_DEC, NULL, 0,
42255         NULL, HFILL }},
42256     { &hf_nr_rrc_s_MeasureConfig,
42257       { "s-MeasureConfig", "nr-rrc.s_MeasureConfig",
42258         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_s_MeasureConfig_vals), 0,
42259         NULL, HFILL }},
42260     { &hf_nr_rrc_ssb_RSRP,
42261       { "ssb-RSRP", "nr-rrc.ssb_RSRP",
42262         FT_UINT32, BASE_CUSTOM, CF_FUNC(nr_rrc_RSRP_Range_fmt), 0,
42263         "RSRP_Range", HFILL }},
42264     { &hf_nr_rrc_csi_RSRP,
42265       { "csi-RSRP", "nr-rrc.csi_RSRP",
42266         FT_UINT32, BASE_CUSTOM, CF_FUNC(nr_rrc_RSRP_Range_fmt), 0,
42267         "RSRP_Range", HFILL }},
42268     { &hf_nr_rrc_quantityConfig,
42269       { "quantityConfig", "nr-rrc.quantityConfig_element",
42270         FT_NONE, BASE_NONE, NULL, 0,
42271         NULL, HFILL }},
42272     { &hf_nr_rrc_measGapConfig_01,
42273       { "measGapConfig", "nr-rrc.measGapConfig_element",
42274         FT_NONE, BASE_NONE, NULL, 0,
42275         NULL, HFILL }},
42276     { &hf_nr_rrc_measGapSharingConfig,
42277       { "measGapSharingConfig", "nr-rrc.measGapSharingConfig_element",
42278         FT_NONE, BASE_NONE, NULL, 0,
42279         NULL, HFILL }},
42280     { &hf_nr_rrc_MeasObjectToRemoveList_item,
42281       { "MeasObjectId", "nr-rrc.MeasObjectId",
42282         FT_UINT32, BASE_DEC, NULL, 0,
42283         NULL, HFILL }},
42284     { &hf_nr_rrc_MeasIdToRemoveList_item,
42285       { "MeasId", "nr-rrc.MeasId",
42286         FT_UINT32, BASE_DEC, NULL, 0,
42287         NULL, HFILL }},
42288     { &hf_nr_rrc_ReportConfigToRemoveList_item,
42289       { "ReportConfigId", "nr-rrc.ReportConfigId",
42290         FT_UINT32, BASE_DEC, NULL, 0,
42291         NULL, HFILL }},
42292     { &hf_nr_rrc_gapFR2,
42293       { "gapFR2", "nr-rrc.gapFR2",
42294         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_gapFR2_vals), 0,
42295         NULL, HFILL }},
42296     { &hf_nr_rrc_gapFR1,
42297       { "gapFR1", "nr-rrc.gapFR1",
42298         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_gapFR1_vals), 0,
42299         NULL, HFILL }},
42300     { &hf_nr_rrc_gapUE,
42301       { "gapUE", "nr-rrc.gapUE",
42302         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_gapUE_vals), 0,
42303         NULL, HFILL }},
42304     { &hf_nr_rrc_gapOffset,
42305       { "gapOffset", "nr-rrc.gapOffset",
42306         FT_UINT32, BASE_DEC, NULL, 0,
42307         "INTEGER_0_159", HFILL }},
42308     { &hf_nr_rrc_mgl,
42309       { "mgl", "nr-rrc.mgl",
42310         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_mgl_vals), 0,
42311         NULL, HFILL }},
42312     { &hf_nr_rrc_mgrp,
42313       { "mgrp", "nr-rrc.mgrp",
42314         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_mgrp_vals), 0,
42315         NULL, HFILL }},
42316     { &hf_nr_rrc_mgta,
42317       { "mgta", "nr-rrc.mgta",
42318         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_mgta_vals), 0,
42319         NULL, HFILL }},
42320     { &hf_nr_rrc_gapSharingFR2,
42321       { "gapSharingFR2", "nr-rrc.gapSharingFR2",
42322         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_gapSharingFR2_vals), 0,
42323         NULL, HFILL }},
42324     { &hf_nr_rrc_setup_25,
42325       { "setup", "nr-rrc.setup",
42326         FT_UINT32, BASE_DEC, VALS(nr_rrc_MeasGapSharingScheme_vals), 0,
42327         "MeasGapSharingScheme", HFILL }},
42328     { &hf_nr_rrc_gapSharingFR1,
42329       { "gapSharingFR1", "nr-rrc.gapSharingFR1",
42330         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_gapSharingFR1_vals), 0,
42331         NULL, HFILL }},
42332     { &hf_nr_rrc_gapSharingUE,
42333       { "gapSharingUE", "nr-rrc.gapSharingUE",
42334         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_gapSharingUE_vals), 0,
42335         NULL, HFILL }},
42336     { &hf_nr_rrc_MeasIdToAddModList_item,
42337       { "MeasIdToAddMod", "nr-rrc.MeasIdToAddMod_element",
42338         FT_NONE, BASE_NONE, NULL, 0,
42339         NULL, HFILL }},
42340     { &hf_nr_rrc_measId,
42341       { "measId", "nr-rrc.measId",
42342         FT_UINT32, BASE_DEC, NULL, 0,
42343         NULL, HFILL }},
42344     { &hf_nr_rrc_measObjectId,
42345       { "measObjectId", "nr-rrc.measObjectId",
42346         FT_UINT32, BASE_DEC, NULL, 0,
42347         NULL, HFILL }},
42348     { &hf_nr_rrc_reportConfigId_01,
42349       { "reportConfigId", "nr-rrc.reportConfigId",
42350         FT_UINT32, BASE_DEC, NULL, 0,
42351         NULL, HFILL }},
42352     { &hf_nr_rrc_cellsToRemoveListEUTRAN,
42353       { "cellsToRemoveListEUTRAN", "nr-rrc.cellsToRemoveListEUTRAN",
42354         FT_UINT32, BASE_DEC, NULL, 0,
42355         "EUTRA_CellIndexList", HFILL }},
42356     { &hf_nr_rrc_cellsToAddModListEUTRAN,
42357       { "cellsToAddModListEUTRAN", "nr-rrc.cellsToAddModListEUTRAN",
42358         FT_UINT32, BASE_DEC, NULL, 0,
42359         "SEQUENCE_SIZE_1_maxCellMeasEUTRA_OF_EUTRA_Cell", HFILL }},
42360     { &hf_nr_rrc_cellsToAddModListEUTRAN_item,
42361       { "EUTRA-Cell", "nr-rrc.EUTRA_Cell_element",
42362         FT_NONE, BASE_NONE, NULL, 0,
42363         NULL, HFILL }},
42364     { &hf_nr_rrc_blackCellsToRemoveListEUTRAN,
42365       { "blackCellsToRemoveListEUTRAN", "nr-rrc.blackCellsToRemoveListEUTRAN",
42366         FT_UINT32, BASE_DEC, NULL, 0,
42367         "EUTRA_CellIndexList", HFILL }},
42368     { &hf_nr_rrc_blackCellsToAddModListEUTRAN,
42369       { "blackCellsToAddModListEUTRAN", "nr-rrc.blackCellsToAddModListEUTRAN",
42370         FT_UINT32, BASE_DEC, NULL, 0,
42371         "SEQUENCE_SIZE_1_maxCellMeasEUTRA_OF_EUTRA_BlackCell", HFILL }},
42372     { &hf_nr_rrc_blackCellsToAddModListEUTRAN_item,
42373       { "EUTRA-BlackCell", "nr-rrc.EUTRA_BlackCell_element",
42374         FT_NONE, BASE_NONE, NULL, 0,
42375         NULL, HFILL }},
42376     { &hf_nr_rrc_eutra_PresenceAntennaPort1,
42377       { "eutra-PresenceAntennaPort1", "nr-rrc.eutra_PresenceAntennaPort1",
42378         FT_BOOLEAN, BASE_NONE, NULL, 0,
42379         NULL, HFILL }},
42380     { &hf_nr_rrc_eutra_Q_OffsetRange,
42381       { "eutra-Q-OffsetRange", "nr-rrc.eutra_Q_OffsetRange",
42382         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_EUTRA_Q_OffsetRange_vals_ext, 0,
42383         NULL, HFILL }},
42384     { &hf_nr_rrc_widebandRSRQ_Meas,
42385       { "widebandRSRQ-Meas", "nr-rrc.widebandRSRQ_Meas",
42386         FT_BOOLEAN, BASE_NONE, NULL, 0,
42387         "BOOLEAN", HFILL }},
42388     { &hf_nr_rrc_EUTRA_CellIndexList_item,
42389       { "EUTRA-CellIndex", "nr-rrc.EUTRA_CellIndex",
42390         FT_UINT32, BASE_DEC, NULL, 0,
42391         NULL, HFILL }},
42392     { &hf_nr_rrc_cellIndexEUTRA,
42393       { "cellIndexEUTRA", "nr-rrc.cellIndexEUTRA",
42394         FT_UINT32, BASE_DEC, NULL, 0,
42395         "EUTRA_CellIndex", HFILL }},
42396     { &hf_nr_rrc_cellIndividualOffset,
42397       { "cellIndividualOffset", "nr-rrc.cellIndividualOffset",
42398         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_EUTRA_Q_OffsetRange_vals_ext, 0,
42399         "EUTRA_Q_OffsetRange", HFILL }},
42400     { &hf_nr_rrc_physCellIdRange,
42401       { "physCellIdRange", "nr-rrc.physCellIdRange_element",
42402         FT_NONE, BASE_NONE, NULL, 0,
42403         "EUTRA_PhysCellIdRange", HFILL }},
42404     { &hf_nr_rrc_ssbFrequency,
42405       { "ssbFrequency", "nr-rrc.ssbFrequency",
42406         FT_UINT32, BASE_DEC, NULL, 0,
42407         "ARFCN_ValueNR", HFILL }},
42408     { &hf_nr_rrc_smtc1,
42409       { "smtc1", "nr-rrc.smtc1_element",
42410         FT_NONE, BASE_NONE, NULL, 0,
42411         "SSB_MTC", HFILL }},
42412     { &hf_nr_rrc_smtc2,
42413       { "smtc2", "nr-rrc.smtc2_element",
42414         FT_NONE, BASE_NONE, NULL, 0,
42415         "SSB_MTC2", HFILL }},
42416     { &hf_nr_rrc_refFreqCSI_RS,
42417       { "refFreqCSI-RS", "nr-rrc.refFreqCSI_RS",
42418         FT_UINT32, BASE_DEC, NULL, 0,
42419         "ARFCN_ValueNR", HFILL }},
42420     { &hf_nr_rrc_referenceSignalConfig,
42421       { "referenceSignalConfig", "nr-rrc.referenceSignalConfig_element",
42422         FT_NONE, BASE_NONE, NULL, 0,
42423         NULL, HFILL }},
42424     { &hf_nr_rrc_absThreshCSI_RS_Consolidation,
42425       { "absThreshCSI-RS-Consolidation", "nr-rrc.absThreshCSI_RS_Consolidation_element",
42426         FT_NONE, BASE_NONE, NULL, 0,
42427         "ThresholdNR", HFILL }},
42428     { &hf_nr_rrc_nrofCSI_RS_ResourcesToAverage,
42429       { "nrofCSI-RS-ResourcesToAverage", "nr-rrc.nrofCSI_RS_ResourcesToAverage",
42430         FT_UINT32, BASE_DEC, NULL, 0,
42431         "INTEGER_2_maxNrofCSI_RS_ResourcesToAverage", HFILL }},
42432     { &hf_nr_rrc_quantityConfigIndex,
42433       { "quantityConfigIndex", "nr-rrc.quantityConfigIndex",
42434         FT_UINT32, BASE_DEC, NULL, 0,
42435         "INTEGER_1_maxNrofQuantityConfig", HFILL }},
42436     { &hf_nr_rrc_offsetMO,
42437       { "offsetMO", "nr-rrc.offsetMO_element",
42438         FT_NONE, BASE_NONE, NULL, 0,
42439         "Q_OffsetRangeList", HFILL }},
42440     { &hf_nr_rrc_cellsToRemoveList,
42441       { "cellsToRemoveList", "nr-rrc.cellsToRemoveList",
42442         FT_UINT32, BASE_DEC, NULL, 0,
42443         "PCI_List", HFILL }},
42444     { &hf_nr_rrc_cellsToAddModList,
42445       { "cellsToAddModList", "nr-rrc.cellsToAddModList",
42446         FT_UINT32, BASE_DEC, NULL, 0,
42447         NULL, HFILL }},
42448     { &hf_nr_rrc_blackCellsToRemoveList,
42449       { "blackCellsToRemoveList", "nr-rrc.blackCellsToRemoveList",
42450         FT_UINT32, BASE_DEC, NULL, 0,
42451         "PCI_RangeIndexList", HFILL }},
42452     { &hf_nr_rrc_blackCellsToAddModList,
42453       { "blackCellsToAddModList", "nr-rrc.blackCellsToAddModList",
42454         FT_UINT32, BASE_DEC, NULL, 0,
42455         "SEQUENCE_SIZE_1_maxNrofPCI_Ranges_OF_PCI_RangeElement", HFILL }},
42456     { &hf_nr_rrc_blackCellsToAddModList_item,
42457       { "PCI-RangeElement", "nr-rrc.PCI_RangeElement_element",
42458         FT_NONE, BASE_NONE, NULL, 0,
42459         NULL, HFILL }},
42460     { &hf_nr_rrc_whiteCellsToRemoveList,
42461       { "whiteCellsToRemoveList", "nr-rrc.whiteCellsToRemoveList",
42462         FT_UINT32, BASE_DEC, NULL, 0,
42463         "PCI_RangeIndexList", HFILL }},
42464     { &hf_nr_rrc_whiteCellsToAddModList,
42465       { "whiteCellsToAddModList", "nr-rrc.whiteCellsToAddModList",
42466         FT_UINT32, BASE_DEC, NULL, 0,
42467         "SEQUENCE_SIZE_1_maxNrofPCI_Ranges_OF_PCI_RangeElement", HFILL }},
42468     { &hf_nr_rrc_whiteCellsToAddModList_item,
42469       { "PCI-RangeElement", "nr-rrc.PCI_RangeElement_element",
42470         FT_NONE, BASE_NONE, NULL, 0,
42471         NULL, HFILL }},
42472     { &hf_nr_rrc_freqBandIndicatorNR_v1530,
42473       { "freqBandIndicatorNR-v1530", "nr-rrc.freqBandIndicatorNR_v1530",
42474         FT_UINT32, BASE_DEC, NULL, 0,
42475         "FreqBandIndicatorNR", HFILL }},
42476     { &hf_nr_rrc_measCycleSCell_v1530,
42477       { "measCycleSCell-v1530", "nr-rrc.measCycleSCell_v1530",
42478         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_measCycleSCell_v1530_vals), 0,
42479         NULL, HFILL }},
42480     { &hf_nr_rrc_ssb_ConfigMobility,
42481       { "ssb-ConfigMobility", "nr-rrc.ssb_ConfigMobility_element",
42482         FT_NONE, BASE_NONE, NULL, 0,
42483         NULL, HFILL }},
42484     { &hf_nr_rrc_csi_rs_ResourceConfigMobility,
42485       { "csi-rs-ResourceConfigMobility", "nr-rrc.csi_rs_ResourceConfigMobility",
42486         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_csi_rs_ResourceConfigMobility_vals), 0,
42487         NULL, HFILL }},
42488     { &hf_nr_rrc_setup_26,
42489       { "setup", "nr-rrc.setup_element",
42490         FT_NONE, BASE_NONE, NULL, 0,
42491         "CSI_RS_ResourceConfigMobility", HFILL }},
42492     { &hf_nr_rrc_ssb_ToMeasure_01,
42493       { "ssb-ToMeasure", "nr-rrc.ssb_ToMeasure",
42494         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_ssb_ToMeasure_vals), 0,
42495         NULL, HFILL }},
42496     { &hf_nr_rrc_setup_27,
42497       { "setup", "nr-rrc.setup",
42498         FT_UINT32, BASE_DEC, VALS(nr_rrc_SSB_ToMeasure_vals), 0,
42499         "SSB_ToMeasure", HFILL }},
42500     { &hf_nr_rrc_rsrpOffsetSSB,
42501       { "rsrpOffsetSSB", "nr-rrc.rsrpOffsetSSB",
42502         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_Q_OffsetRange_vals_ext, 0,
42503         "Q_OffsetRange", HFILL }},
42504     { &hf_nr_rrc_rsrqOffsetSSB,
42505       { "rsrqOffsetSSB", "nr-rrc.rsrqOffsetSSB",
42506         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_Q_OffsetRange_vals_ext, 0,
42507         "Q_OffsetRange", HFILL }},
42508     { &hf_nr_rrc_sinrOffsetSSB,
42509       { "sinrOffsetSSB", "nr-rrc.sinrOffsetSSB",
42510         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_Q_OffsetRange_vals_ext, 0,
42511         "Q_OffsetRange", HFILL }},
42512     { &hf_nr_rrc_rsrpOffsetCSI_RS,
42513       { "rsrpOffsetCSI-RS", "nr-rrc.rsrpOffsetCSI_RS",
42514         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_Q_OffsetRange_vals_ext, 0,
42515         "Q_OffsetRange", HFILL }},
42516     { &hf_nr_rrc_rsrqOffsetCSI_RS,
42517       { "rsrqOffsetCSI-RS", "nr-rrc.rsrqOffsetCSI_RS",
42518         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_Q_OffsetRange_vals_ext, 0,
42519         "Q_OffsetRange", HFILL }},
42520     { &hf_nr_rrc_sinrOffsetCSI_RS,
42521       { "sinrOffsetCSI-RS", "nr-rrc.sinrOffsetCSI_RS",
42522         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_Q_OffsetRange_vals_ext, 0,
42523         "Q_OffsetRange", HFILL }},
42524     { &hf_nr_rrc_thresholdRSRP,
42525       { "thresholdRSRP", "nr-rrc.thresholdRSRP",
42526         FT_UINT32, BASE_CUSTOM, CF_FUNC(nr_rrc_RSRP_Range_fmt), 0,
42527         "RSRP_Range", HFILL }},
42528     { &hf_nr_rrc_thresholdRSRQ,
42529       { "thresholdRSRQ", "nr-rrc.thresholdRSRQ",
42530         FT_UINT32, BASE_CUSTOM, CF_FUNC(nr_rrc_RSRQ_Range_fmt), 0,
42531         "RSRQ_Range", HFILL }},
42532     { &hf_nr_rrc_thresholdSINR,
42533       { "thresholdSINR", "nr-rrc.thresholdSINR",
42534         FT_UINT32, BASE_CUSTOM, CF_FUNC(nr_rrc_SINR_Range_fmt), 0,
42535         "SINR_Range", HFILL }},
42536     { &hf_nr_rrc_CellsToAddModList_item,
42537       { "CellsToAddMod", "nr-rrc.CellsToAddMod_element",
42538         FT_NONE, BASE_NONE, NULL, 0,
42539         NULL, HFILL }},
42540     { &hf_nr_rrc_cellIndividualOffset_01,
42541       { "cellIndividualOffset", "nr-rrc.cellIndividualOffset_element",
42542         FT_NONE, BASE_NONE, NULL, 0,
42543         "Q_OffsetRangeList", HFILL }},
42544     { &hf_nr_rrc_MeasObjectToAddModList_item,
42545       { "MeasObjectToAddMod", "nr-rrc.MeasObjectToAddMod_element",
42546         FT_NONE, BASE_NONE, NULL, 0,
42547         NULL, HFILL }},
42548     { &hf_nr_rrc_measObject,
42549       { "measObject", "nr-rrc.measObject",
42550         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_measObject_vals), 0,
42551         NULL, HFILL }},
42552     { &hf_nr_rrc_measObjectNR,
42553       { "measObjectNR", "nr-rrc.measObjectNR_element",
42554         FT_NONE, BASE_NONE, NULL, 0,
42555         NULL, HFILL }},
42556     { &hf_nr_rrc_measObjectEUTRA,
42557       { "measObjectEUTRA", "nr-rrc.measObjectEUTRA_element",
42558         FT_NONE, BASE_NONE, NULL, 0,
42559         NULL, HFILL }},
42560     { &hf_nr_rrc_MeasResultCellListSFTD_item,
42561       { "MeasResultCellSFTD", "nr-rrc.MeasResultCellSFTD_element",
42562         FT_NONE, BASE_NONE, NULL, 0,
42563         NULL, HFILL }},
42564     { &hf_nr_rrc_sfn_OffsetResult,
42565       { "sfn-OffsetResult", "nr-rrc.sfn_OffsetResult",
42566         FT_UINT32, BASE_DEC, NULL, 0,
42567         "INTEGER_0_1023", HFILL }},
42568     { &hf_nr_rrc_frameBoundaryOffsetResult,
42569       { "frameBoundaryOffsetResult", "nr-rrc.frameBoundaryOffsetResult",
42570         FT_INT32, BASE_DEC, NULL, 0,
42571         "INTEGER_M30720_30719", HFILL }},
42572     { &hf_nr_rrc_rsrp_Result,
42573       { "rsrp-Result", "nr-rrc.rsrp_Result",
42574         FT_UINT32, BASE_CUSTOM, CF_FUNC(nr_rrc_RSRP_Range_fmt), 0,
42575         "RSRP_Range", HFILL }},
42576     { &hf_nr_rrc_measResultServingMOList,
42577       { "measResultServingMOList", "nr-rrc.measResultServingMOList",
42578         FT_UINT32, BASE_DEC, NULL, 0,
42579         "MeasResultServMOList", HFILL }},
42580     { &hf_nr_rrc_measResultNeighCells,
42581       { "measResultNeighCells", "nr-rrc.measResultNeighCells",
42582         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_measResultNeighCells_vals), 0,
42583         NULL, HFILL }},
42584     { &hf_nr_rrc_measResultListNR,
42585       { "measResultListNR", "nr-rrc.measResultListNR",
42586         FT_UINT32, BASE_DEC, NULL, 0,
42587         NULL, HFILL }},
42588     { &hf_nr_rrc_measResultListEUTRA,
42589       { "measResultListEUTRA", "nr-rrc.measResultListEUTRA",
42590         FT_UINT32, BASE_DEC, NULL, 0,
42591         NULL, HFILL }},
42592     { &hf_nr_rrc_MeasResultServMOList_item,
42593       { "MeasResultServMO", "nr-rrc.MeasResultServMO_element",
42594         FT_NONE, BASE_NONE, NULL, 0,
42595         NULL, HFILL }},
42596     { &hf_nr_rrc_servCellId,
42597       { "servCellId", "nr-rrc.servCellId",
42598         FT_UINT32, BASE_DEC, NULL, 0,
42599         "ServCellIndex", HFILL }},
42600     { &hf_nr_rrc_measResultServingCell,
42601       { "measResultServingCell", "nr-rrc.measResultServingCell_element",
42602         FT_NONE, BASE_NONE, NULL, 0,
42603         "MeasResultNR", HFILL }},
42604     { &hf_nr_rrc_measResultBestNeighCell,
42605       { "measResultBestNeighCell", "nr-rrc.measResultBestNeighCell_element",
42606         FT_NONE, BASE_NONE, NULL, 0,
42607         "MeasResultNR", HFILL }},
42608     { &hf_nr_rrc_MeasResultListNR_item,
42609       { "MeasResultNR", "nr-rrc.MeasResultNR_element",
42610         FT_NONE, BASE_NONE, NULL, 0,
42611         NULL, HFILL }},
42612     { &hf_nr_rrc_measResult,
42613       { "measResult", "nr-rrc.measResult_element",
42614         FT_NONE, BASE_NONE, NULL, 0,
42615         NULL, HFILL }},
42616     { &hf_nr_rrc_cellResults,
42617       { "cellResults", "nr-rrc.cellResults_element",
42618         FT_NONE, BASE_NONE, NULL, 0,
42619         NULL, HFILL }},
42620     { &hf_nr_rrc_resultsSSB_Cell,
42621       { "resultsSSB-Cell", "nr-rrc.resultsSSB_Cell_element",
42622         FT_NONE, BASE_NONE, NULL, 0,
42623         "MeasQuantityResults", HFILL }},
42624     { &hf_nr_rrc_resultsCSI_RS_Cell,
42625       { "resultsCSI-RS-Cell", "nr-rrc.resultsCSI_RS_Cell_element",
42626         FT_NONE, BASE_NONE, NULL, 0,
42627         "MeasQuantityResults", HFILL }},
42628     { &hf_nr_rrc_rsIndexResults,
42629       { "rsIndexResults", "nr-rrc.rsIndexResults_element",
42630         FT_NONE, BASE_NONE, NULL, 0,
42631         NULL, HFILL }},
42632     { &hf_nr_rrc_resultsSSB_Indexes,
42633       { "resultsSSB-Indexes", "nr-rrc.resultsSSB_Indexes",
42634         FT_UINT32, BASE_DEC, NULL, 0,
42635         "ResultsPerSSB_IndexList", HFILL }},
42636     { &hf_nr_rrc_resultsCSI_RS_Indexes,
42637       { "resultsCSI-RS-Indexes", "nr-rrc.resultsCSI_RS_Indexes",
42638         FT_UINT32, BASE_DEC, NULL, 0,
42639         "ResultsPerCSI_RS_IndexList", HFILL }},
42640     { &hf_nr_rrc_cgi_Info,
42641       { "cgi-Info", "nr-rrc.cgi_Info_element",
42642         FT_NONE, BASE_NONE, NULL, 0,
42643         NULL, HFILL }},
42644     { &hf_nr_rrc_MeasResultListEUTRA_item,
42645       { "MeasResultEUTRA", "nr-rrc.MeasResultEUTRA_element",
42646         FT_NONE, BASE_NONE, NULL, 0,
42647         NULL, HFILL }},
42648     { &hf_nr_rrc_measResult_01,
42649       { "measResult", "nr-rrc.measResult_element",
42650         FT_NONE, BASE_NONE, NULL, 0,
42651         "MeasQuantityResultsEUTRA", HFILL }},
42652     { &hf_nr_rrc_cgi_Info_01,
42653       { "cgi-Info", "nr-rrc.cgi_Info_element",
42654         FT_NONE, BASE_NONE, NULL, 0,
42655         NULL, HFILL }},
42656     { &hf_nr_rrc_cgi_info_EPC,
42657       { "cgi-info-EPC", "nr-rrc.cgi_info_EPC_element",
42658         FT_NONE, BASE_NONE, NULL, 0,
42659         NULL, HFILL }},
42660     { &hf_nr_rrc_cgi_info_EPC_legacy,
42661       { "cgi-info-EPC-legacy", "nr-rrc.cgi_info_EPC_legacy_element",
42662         FT_NONE, BASE_NONE, NULL, 0,
42663         "CellAccessRelatedInfo_EUTRA_EPC", HFILL }},
42664     { &hf_nr_rrc_cgi_info_EPC_list,
42665       { "cgi-info-EPC-list", "nr-rrc.cgi_info_EPC_list",
42666         FT_UINT32, BASE_DEC, NULL, 0,
42667         "SEQUENCE_SIZE_1_maxPLMN_OF_CellAccessRelatedInfo_EUTRA_EPC", HFILL }},
42668     { &hf_nr_rrc_cgi_info_EPC_list_item,
42669       { "CellAccessRelatedInfo-EUTRA-EPC", "nr-rrc.CellAccessRelatedInfo_EUTRA_EPC_element",
42670         FT_NONE, BASE_NONE, NULL, 0,
42671         NULL, HFILL }},
42672     { &hf_nr_rrc_cgi_info_5GC,
42673       { "cgi-info-5GC", "nr-rrc.cgi_info_5GC",
42674         FT_UINT32, BASE_DEC, NULL, 0,
42675         "SEQUENCE_SIZE_1_maxPLMN_OF_CellAccessRelatedInfo_EUTRA_5GC", HFILL }},
42676     { &hf_nr_rrc_cgi_info_5GC_item,
42677       { "CellAccessRelatedInfo-EUTRA-5GC", "nr-rrc.CellAccessRelatedInfo_EUTRA_5GC_element",
42678         FT_NONE, BASE_NONE, NULL, 0,
42679         NULL, HFILL }},
42680     { &hf_nr_rrc_freqBandIndicator,
42681       { "freqBandIndicator", "nr-rrc.freqBandIndicator",
42682         FT_UINT32, BASE_DEC, NULL, 0,
42683         "FreqBandIndicatorEUTRA", HFILL }},
42684     { &hf_nr_rrc_multiBandInfoList,
42685       { "multiBandInfoList", "nr-rrc.multiBandInfoList",
42686         FT_UINT32, BASE_DEC, NULL, 0,
42687         "MultiBandInfoListEUTRA", HFILL }},
42688     { &hf_nr_rrc_freqBandIndicatorPriority,
42689       { "freqBandIndicatorPriority", "nr-rrc.freqBandIndicatorPriority",
42690         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_freqBandIndicatorPriority_vals), 0,
42691         NULL, HFILL }},
42692     { &hf_nr_rrc_MultiBandInfoListEUTRA_item,
42693       { "FreqBandIndicatorEUTRA", "nr-rrc.FreqBandIndicatorEUTRA",
42694         FT_UINT32, BASE_DEC, NULL, 0,
42695         NULL, HFILL }},
42696     { &hf_nr_rrc_rsrp,
42697       { "rsrp", "nr-rrc.rsrp",
42698         FT_UINT32, BASE_CUSTOM, CF_FUNC(nr_rrc_RSRP_Range_fmt), 0,
42699         "RSRP_Range", HFILL }},
42700     { &hf_nr_rrc_rsrq,
42701       { "rsrq", "nr-rrc.rsrq",
42702         FT_UINT32, BASE_CUSTOM, CF_FUNC(nr_rrc_RSRQ_Range_fmt), 0,
42703         "RSRQ_Range", HFILL }},
42704     { &hf_nr_rrc_sinr,
42705       { "sinr", "nr-rrc.sinr",
42706         FT_UINT32, BASE_CUSTOM, CF_FUNC(nr_rrc_SINR_Range_fmt), 0,
42707         "SINR_Range", HFILL }},
42708     { &hf_nr_rrc_rsrp_01,
42709       { "rsrp", "nr-rrc.rsrp",
42710         FT_UINT32, BASE_CUSTOM, CF_FUNC(nr_rrc_RSRP_RangeEUTRA_fmt), 0,
42711         "RSRP_RangeEUTRA", HFILL }},
42712     { &hf_nr_rrc_rsrq_01,
42713       { "rsrq", "nr-rrc.rsrq",
42714         FT_UINT32, BASE_CUSTOM, CF_FUNC(nr_rrc_RSRQ_RangeEUTRA_fmt), 0,
42715         "RSRQ_RangeEUTRA", HFILL }},
42716     { &hf_nr_rrc_sinr_01,
42717       { "sinr", "nr-rrc.sinr",
42718         FT_UINT32, BASE_CUSTOM, CF_FUNC(nr_rrc_SINR_RangeEUTRA_fmt), 0,
42719         "SINR_RangeEUTRA", HFILL }},
42720     { &hf_nr_rrc_ResultsPerSSB_IndexList_item,
42721       { "ResultsPerSSB-Index", "nr-rrc.ResultsPerSSB_Index_element",
42722         FT_NONE, BASE_NONE, NULL, 0,
42723         NULL, HFILL }},
42724     { &hf_nr_rrc_ssb_Results,
42725       { "ssb-Results", "nr-rrc.ssb_Results_element",
42726         FT_NONE, BASE_NONE, NULL, 0,
42727         "MeasQuantityResults", HFILL }},
42728     { &hf_nr_rrc_ResultsPerCSI_RS_IndexList_item,
42729       { "ResultsPerCSI-RS-Index", "nr-rrc.ResultsPerCSI_RS_Index_element",
42730         FT_NONE, BASE_NONE, NULL, 0,
42731         NULL, HFILL }},
42732     { &hf_nr_rrc_csi_RS_Results,
42733       { "csi-RS-Results", "nr-rrc.csi_RS_Results_element",
42734         FT_NONE, BASE_NONE, NULL, 0,
42735         "MeasQuantityResults", HFILL }},
42736     { &hf_nr_rrc_measResultPerMOList,
42737       { "measResultPerMOList", "nr-rrc.measResultPerMOList",
42738         FT_UINT32, BASE_DEC, NULL, 0,
42739         "MeasResultList2NR", HFILL }},
42740     { &hf_nr_rrc_MeasResultList2NR_item,
42741       { "MeasResult2NR", "nr-rrc.MeasResult2NR_element",
42742         FT_NONE, BASE_NONE, NULL, 0,
42743         NULL, HFILL }},
42744     { &hf_nr_rrc_measResultNeighCellListNR,
42745       { "measResultNeighCellListNR", "nr-rrc.measResultNeighCellListNR",
42746         FT_UINT32, BASE_DEC, NULL, 0,
42747         "MeasResultListNR", HFILL }},
42748     { &hf_nr_rrc_t_Evaluation,
42749       { "t-Evaluation", "nr-rrc.t_Evaluation",
42750         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_t_Evaluation_vals), 0,
42751         "T_t_Evaluation", HFILL }},
42752     { &hf_nr_rrc_t_HystNormal,
42753       { "t-HystNormal", "nr-rrc.t_HystNormal",
42754         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_t_HystNormal_vals), 0,
42755         "T_t_HystNormal", HFILL }},
42756     { &hf_nr_rrc_n_CellChangeMedium,
42757       { "n-CellChangeMedium", "nr-rrc.n_CellChangeMedium",
42758         FT_UINT32, BASE_DEC, NULL, 0,
42759         "INTEGER_1_16", HFILL }},
42760     { &hf_nr_rrc_n_CellChangeHigh,
42761       { "n-CellChangeHigh", "nr-rrc.n_CellChangeHigh",
42762         FT_UINT32, BASE_DEC, NULL, 0,
42763         "INTEGER_1_16", HFILL }},
42764     { &hf_nr_rrc_MultiFrequencyBandListNR_item,
42765       { "FreqBandIndicatorNR", "nr-rrc.FreqBandIndicatorNR",
42766         FT_UINT32, BASE_DEC, NULL, 0,
42767         NULL, HFILL }},
42768     { &hf_nr_rrc_nzp_CSI_RS_ResourceId,
42769       { "nzp-CSI-RS-ResourceId", "nr-rrc.nzp_CSI_RS_ResourceId",
42770         FT_UINT32, BASE_DEC, NULL, 0,
42771         NULL, HFILL }},
42772     { &hf_nr_rrc_resourceMapping,
42773       { "resourceMapping", "nr-rrc.resourceMapping_element",
42774         FT_NONE, BASE_NONE, NULL, 0,
42775         "CSI_RS_ResourceMapping", HFILL }},
42776     { &hf_nr_rrc_powerControlOffset,
42777       { "powerControlOffset", "nr-rrc.powerControlOffset",
42778         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_decibels, 0,
42779         "INTEGER_M8_15", HFILL }},
42780     { &hf_nr_rrc_powerControlOffsetSS,
42781       { "powerControlOffsetSS", "nr-rrc.powerControlOffsetSS",
42782         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_powerControlOffsetSS_vals), 0,
42783         NULL, HFILL }},
42784     { &hf_nr_rrc_scramblingID,
42785       { "scramblingID", "nr-rrc.scramblingID",
42786         FT_UINT32, BASE_DEC, NULL, 0,
42787         NULL, HFILL }},
42788     { &hf_nr_rrc_qcl_InfoPeriodicCSI_RS,
42789       { "qcl-InfoPeriodicCSI-RS", "nr-rrc.qcl_InfoPeriodicCSI_RS",
42790         FT_UINT32, BASE_DEC, NULL, 0,
42791         "TCI_StateId", HFILL }},
42792     { &hf_nr_rrc_nzp_CSI_ResourceSetId,
42793       { "nzp-CSI-ResourceSetId", "nr-rrc.nzp_CSI_ResourceSetId",
42794         FT_UINT32, BASE_DEC, NULL, 0,
42795         "NZP_CSI_RS_ResourceSetId", HFILL }},
42796     { &hf_nr_rrc_nzp_CSI_RS_Resources,
42797       { "nzp-CSI-RS-Resources", "nr-rrc.nzp_CSI_RS_Resources",
42798         FT_UINT32, BASE_DEC, NULL, 0,
42799         "SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourcesPerSet_OF_NZP_CSI_RS_ResourceId", HFILL }},
42800     { &hf_nr_rrc_nzp_CSI_RS_Resources_item,
42801       { "NZP-CSI-RS-ResourceId", "nr-rrc.NZP_CSI_RS_ResourceId",
42802         FT_UINT32, BASE_DEC, NULL, 0,
42803         NULL, HFILL }},
42804     { &hf_nr_rrc_repetition,
42805       { "repetition", "nr-rrc.repetition",
42806         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_repetition_vals), 0,
42807         NULL, HFILL }},
42808     { &hf_nr_rrc_aperiodicTriggeringOffset,
42809       { "aperiodicTriggeringOffset", "nr-rrc.aperiodicTriggeringOffset",
42810         FT_UINT32, BASE_DEC, NULL, 0,
42811         "INTEGER_0_4", HFILL }},
42812     { &hf_nr_rrc_trs_Info,
42813       { "trs-Info", "nr-rrc.trs_Info",
42814         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_trs_Info_vals), 0,
42815         NULL, HFILL }},
42816     { &hf_nr_rrc_PCI_List_item,
42817       { "PhysCellId", "nr-rrc.PhysCellId",
42818         FT_UINT32, BASE_DEC, NULL, 0,
42819         NULL, HFILL }},
42820     { &hf_nr_rrc_start,
42821       { "start", "nr-rrc.start",
42822         FT_UINT32, BASE_DEC, NULL, 0,
42823         "PhysCellId", HFILL }},
42824     { &hf_nr_rrc_range,
42825       { "range", "nr-rrc.range",
42826         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_range_vals), 0,
42827         NULL, HFILL }},
42828     { &hf_nr_rrc_pci_RangeIndex,
42829       { "pci-RangeIndex", "nr-rrc.pci_RangeIndex",
42830         FT_UINT32, BASE_DEC, NULL, 0,
42831         NULL, HFILL }},
42832     { &hf_nr_rrc_pci_Range,
42833       { "pci-Range", "nr-rrc.pci_Range_element",
42834         FT_NONE, BASE_NONE, NULL, 0,
42835         NULL, HFILL }},
42836     { &hf_nr_rrc_PCI_RangeIndexList_item,
42837       { "PCI-RangeIndex", "nr-rrc.PCI_RangeIndex",
42838         FT_UINT32, BASE_DEC, NULL, 0,
42839         NULL, HFILL }},
42840     { &hf_nr_rrc_controlResourceSetToAddModList,
42841       { "controlResourceSetToAddModList", "nr-rrc.controlResourceSetToAddModList",
42842         FT_UINT32, BASE_DEC, NULL, 0,
42843         "SEQUENCE_SIZE_1_3_OF_ControlResourceSet", HFILL }},
42844     { &hf_nr_rrc_controlResourceSetToAddModList_item,
42845       { "ControlResourceSet", "nr-rrc.ControlResourceSet_element",
42846         FT_NONE, BASE_NONE, NULL, 0,
42847         NULL, HFILL }},
42848     { &hf_nr_rrc_controlResourceSetToReleaseList,
42849       { "controlResourceSetToReleaseList", "nr-rrc.controlResourceSetToReleaseList",
42850         FT_UINT32, BASE_DEC, NULL, 0,
42851         "SEQUENCE_SIZE_1_3_OF_ControlResourceSetId", HFILL }},
42852     { &hf_nr_rrc_controlResourceSetToReleaseList_item,
42853       { "ControlResourceSetId", "nr-rrc.ControlResourceSetId",
42854         FT_UINT32, BASE_DEC, NULL, 0,
42855         NULL, HFILL }},
42856     { &hf_nr_rrc_searchSpacesToAddModList,
42857       { "searchSpacesToAddModList", "nr-rrc.searchSpacesToAddModList",
42858         FT_UINT32, BASE_DEC, NULL, 0,
42859         "SEQUENCE_SIZE_1_10_OF_SearchSpace", HFILL }},
42860     { &hf_nr_rrc_searchSpacesToAddModList_item,
42861       { "SearchSpace", "nr-rrc.SearchSpace_element",
42862         FT_NONE, BASE_NONE, NULL, 0,
42863         NULL, HFILL }},
42864     { &hf_nr_rrc_searchSpacesToReleaseList,
42865       { "searchSpacesToReleaseList", "nr-rrc.searchSpacesToReleaseList",
42866         FT_UINT32, BASE_DEC, NULL, 0,
42867         "SEQUENCE_SIZE_1_10_OF_SearchSpaceId", HFILL }},
42868     { &hf_nr_rrc_searchSpacesToReleaseList_item,
42869       { "SearchSpaceId", "nr-rrc.SearchSpaceId",
42870         FT_UINT32, BASE_DEC, NULL, 0,
42871         NULL, HFILL }},
42872     { &hf_nr_rrc_downlinkPreemption,
42873       { "downlinkPreemption", "nr-rrc.downlinkPreemption",
42874         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_downlinkPreemption_vals), 0,
42875         NULL, HFILL }},
42876     { &hf_nr_rrc_setup_28,
42877       { "setup", "nr-rrc.setup_element",
42878         FT_NONE, BASE_NONE, NULL, 0,
42879         "DownlinkPreemption", HFILL }},
42880     { &hf_nr_rrc_tpc_PUSCH,
42881       { "tpc-PUSCH", "nr-rrc.tpc_PUSCH",
42882         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_tpc_PUSCH_vals), 0,
42883         NULL, HFILL }},
42884     { &hf_nr_rrc_setup_29,
42885       { "setup", "nr-rrc.setup_element",
42886         FT_NONE, BASE_NONE, NULL, 0,
42887         "PUSCH_TPC_CommandConfig", HFILL }},
42888     { &hf_nr_rrc_tpc_PUCCH,
42889       { "tpc-PUCCH", "nr-rrc.tpc_PUCCH",
42890         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_tpc_PUCCH_vals), 0,
42891         NULL, HFILL }},
42892     { &hf_nr_rrc_setup_30,
42893       { "setup", "nr-rrc.setup_element",
42894         FT_NONE, BASE_NONE, NULL, 0,
42895         "PUCCH_TPC_CommandConfig", HFILL }},
42896     { &hf_nr_rrc_tpc_SRS,
42897       { "tpc-SRS", "nr-rrc.tpc_SRS",
42898         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_tpc_SRS_vals), 0,
42899         NULL, HFILL }},
42900     { &hf_nr_rrc_setup_31,
42901       { "setup", "nr-rrc.setup_element",
42902         FT_NONE, BASE_NONE, NULL, 0,
42903         "SRS_TPC_CommandConfig", HFILL }},
42904     { &hf_nr_rrc_controlResourceSetZero,
42905       { "controlResourceSetZero", "nr-rrc.controlResourceSetZero",
42906         FT_UINT32, BASE_DEC, NULL, 0,
42907         NULL, HFILL }},
42908     { &hf_nr_rrc_commonControlResourceSet,
42909       { "commonControlResourceSet", "nr-rrc.commonControlResourceSet_element",
42910         FT_NONE, BASE_NONE, NULL, 0,
42911         "ControlResourceSet", HFILL }},
42912     { &hf_nr_rrc_searchSpaceZero,
42913       { "searchSpaceZero", "nr-rrc.searchSpaceZero",
42914         FT_UINT32, BASE_DEC, NULL, 0,
42915         NULL, HFILL }},
42916     { &hf_nr_rrc_commonSearchSpaceList,
42917       { "commonSearchSpaceList", "nr-rrc.commonSearchSpaceList",
42918         FT_UINT32, BASE_DEC, NULL, 0,
42919         "SEQUENCE_SIZE_1_4_OF_SearchSpace", HFILL }},
42920     { &hf_nr_rrc_commonSearchSpaceList_item,
42921       { "SearchSpace", "nr-rrc.SearchSpace_element",
42922         FT_NONE, BASE_NONE, NULL, 0,
42923         NULL, HFILL }},
42924     { &hf_nr_rrc_searchSpaceSIB1,
42925       { "searchSpaceSIB1", "nr-rrc.searchSpaceSIB1",
42926         FT_UINT32, BASE_DEC, NULL, 0,
42927         "SearchSpaceId", HFILL }},
42928     { &hf_nr_rrc_searchSpaceOtherSystemInformation,
42929       { "searchSpaceOtherSystemInformation", "nr-rrc.searchSpaceOtherSystemInformation",
42930         FT_UINT32, BASE_DEC, NULL, 0,
42931         "SearchSpaceId", HFILL }},
42932     { &hf_nr_rrc_pagingSearchSpace,
42933       { "pagingSearchSpace", "nr-rrc.pagingSearchSpace",
42934         FT_UINT32, BASE_DEC, NULL, 0,
42935         "SearchSpaceId", HFILL }},
42936     { &hf_nr_rrc_ra_SearchSpace,
42937       { "ra-SearchSpace", "nr-rrc.ra_SearchSpace",
42938         FT_UINT32, BASE_DEC, NULL, 0,
42939         "SearchSpaceId", HFILL }},
42940     { &hf_nr_rrc_slotFormatIndicator,
42941       { "slotFormatIndicator", "nr-rrc.slotFormatIndicator",
42942         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_slotFormatIndicator_vals), 0,
42943         NULL, HFILL }},
42944     { &hf_nr_rrc_setup_32,
42945       { "setup", "nr-rrc.setup_element",
42946         FT_NONE, BASE_NONE, NULL, 0,
42947         "SlotFormatIndicator", HFILL }},
42948     { &hf_nr_rrc_drb,
42949       { "drb", "nr-rrc.drb_element",
42950         FT_NONE, BASE_NONE, NULL, 0,
42951         NULL, HFILL }},
42952     { &hf_nr_rrc_discardTimer,
42953       { "discardTimer", "nr-rrc.discardTimer",
42954         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_discardTimer_vals), 0,
42955         NULL, HFILL }},
42956     { &hf_nr_rrc_pdcp_SN_SizeUL,
42957       { "pdcp-SN-SizeUL", "nr-rrc.pdcp_SN_SizeUL",
42958         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pdcp_SN_SizeUL_vals), 0,
42959         NULL, HFILL }},
42960     { &hf_nr_rrc_pdcp_SN_SizeDL,
42961       { "pdcp-SN-SizeDL", "nr-rrc.pdcp_SN_SizeDL",
42962         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pdcp_SN_SizeDL_vals), 0,
42963         NULL, HFILL }},
42964     { &hf_nr_rrc_headerCompression,
42965       { "headerCompression", "nr-rrc.headerCompression",
42966         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_headerCompression_vals), 0,
42967         NULL, HFILL }},
42968     { &hf_nr_rrc_notUsed,
42969       { "notUsed", "nr-rrc.notUsed_element",
42970         FT_NONE, BASE_NONE, NULL, 0,
42971         NULL, HFILL }},
42972     { &hf_nr_rrc_rohc,
42973       { "rohc", "nr-rrc.rohc_element",
42974         FT_NONE, BASE_NONE, NULL, 0,
42975         NULL, HFILL }},
42976     { &hf_nr_rrc_maxCID,
42977       { "maxCID", "nr-rrc.maxCID",
42978         FT_UINT32, BASE_DEC, NULL, 0,
42979         "INTEGER_1_16383", HFILL }},
42980     { &hf_nr_rrc_profiles,
42981       { "profiles", "nr-rrc.profiles_element",
42982         FT_NONE, BASE_NONE, NULL, 0,
42983         NULL, HFILL }},
42984     { &hf_nr_rrc_profile0x0001,
42985       { "profile0x0001", "nr-rrc.profile0x0001",
42986         FT_BOOLEAN, BASE_NONE, NULL, 0,
42987         "BOOLEAN", HFILL }},
42988     { &hf_nr_rrc_profile0x0002,
42989       { "profile0x0002", "nr-rrc.profile0x0002",
42990         FT_BOOLEAN, BASE_NONE, NULL, 0,
42991         "BOOLEAN", HFILL }},
42992     { &hf_nr_rrc_profile0x0003,
42993       { "profile0x0003", "nr-rrc.profile0x0003",
42994         FT_BOOLEAN, BASE_NONE, NULL, 0,
42995         "BOOLEAN", HFILL }},
42996     { &hf_nr_rrc_profile0x0004,
42997       { "profile0x0004", "nr-rrc.profile0x0004",
42998         FT_BOOLEAN, BASE_NONE, NULL, 0,
42999         "BOOLEAN", HFILL }},
43000     { &hf_nr_rrc_profile0x0006,
43001       { "profile0x0006", "nr-rrc.profile0x0006",
43002         FT_BOOLEAN, BASE_NONE, NULL, 0,
43003         "BOOLEAN", HFILL }},
43004     { &hf_nr_rrc_profile0x0101,
43005       { "profile0x0101", "nr-rrc.profile0x0101",
43006         FT_BOOLEAN, BASE_NONE, NULL, 0,
43007         "BOOLEAN", HFILL }},
43008     { &hf_nr_rrc_profile0x0102,
43009       { "profile0x0102", "nr-rrc.profile0x0102",
43010         FT_BOOLEAN, BASE_NONE, NULL, 0,
43011         "BOOLEAN", HFILL }},
43012     { &hf_nr_rrc_profile0x0103,
43013       { "profile0x0103", "nr-rrc.profile0x0103",
43014         FT_BOOLEAN, BASE_NONE, NULL, 0,
43015         "BOOLEAN", HFILL }},
43016     { &hf_nr_rrc_profile0x0104,
43017       { "profile0x0104", "nr-rrc.profile0x0104",
43018         FT_BOOLEAN, BASE_NONE, NULL, 0,
43019         "BOOLEAN", HFILL }},
43020     { &hf_nr_rrc_drb_ContinueROHC,
43021       { "drb-ContinueROHC", "nr-rrc.drb_ContinueROHC",
43022         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_drb_ContinueROHC_vals), 0,
43023         NULL, HFILL }},
43024     { &hf_nr_rrc_uplinkOnlyROHC,
43025       { "uplinkOnlyROHC", "nr-rrc.uplinkOnlyROHC_element",
43026         FT_NONE, BASE_NONE, NULL, 0,
43027         NULL, HFILL }},
43028     { &hf_nr_rrc_profiles_01,
43029       { "profiles", "nr-rrc.profiles_element",
43030         FT_NONE, BASE_NONE, NULL, 0,
43031         "T_profiles_01", HFILL }},
43032     { &hf_nr_rrc_drb_ContinueROHC_01,
43033       { "drb-ContinueROHC", "nr-rrc.drb_ContinueROHC",
43034         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_drb_ContinueROHC_01_vals), 0,
43035         "T_drb_ContinueROHC_01", HFILL }},
43036     { &hf_nr_rrc_integrityProtection,
43037       { "integrityProtection", "nr-rrc.integrityProtection",
43038         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_integrityProtection_vals), 0,
43039         NULL, HFILL }},
43040     { &hf_nr_rrc_statusReportRequired,
43041       { "statusReportRequired", "nr-rrc.statusReportRequired",
43042         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_statusReportRequired_vals), 0,
43043         NULL, HFILL }},
43044     { &hf_nr_rrc_outOfOrderDelivery,
43045       { "outOfOrderDelivery", "nr-rrc.outOfOrderDelivery",
43046         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_outOfOrderDelivery_vals), 0,
43047         NULL, HFILL }},
43048     { &hf_nr_rrc_moreThanOneRLC,
43049       { "moreThanOneRLC", "nr-rrc.moreThanOneRLC_element",
43050         FT_NONE, BASE_NONE, NULL, 0,
43051         NULL, HFILL }},
43052     { &hf_nr_rrc_primaryPath,
43053       { "primaryPath", "nr-rrc.primaryPath_element",
43054         FT_NONE, BASE_NONE, NULL, 0,
43055         NULL, HFILL }},
43056     { &hf_nr_rrc_cellGroup,
43057       { "cellGroup", "nr-rrc.cellGroup",
43058         FT_UINT32, BASE_DEC, NULL, 0,
43059         "CellGroupId", HFILL }},
43060     { &hf_nr_rrc_logicalChannel,
43061       { "logicalChannel", "nr-rrc.logicalChannel",
43062         FT_UINT32, BASE_DEC, NULL, 0,
43063         "LogicalChannelIdentity", HFILL }},
43064     { &hf_nr_rrc_ul_DataSplitThreshold,
43065       { "ul-DataSplitThreshold", "nr-rrc.ul_DataSplitThreshold",
43066         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_UL_DataSplitThreshold_vals_ext, 0,
43067         NULL, HFILL }},
43068     { &hf_nr_rrc_pdcp_Duplication,
43069       { "pdcp-Duplication", "nr-rrc.pdcp_Duplication",
43070         FT_BOOLEAN, BASE_NONE, NULL, 0,
43071         "BOOLEAN", HFILL }},
43072     { &hf_nr_rrc_t_Reordering,
43073       { "t-Reordering", "nr-rrc.t_Reordering",
43074         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_T_t_Reordering_vals_ext, 0,
43075         "T_t_Reordering", HFILL }},
43076     { &hf_nr_rrc_cipheringDisabled,
43077       { "cipheringDisabled", "nr-rrc.cipheringDisabled",
43078         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_cipheringDisabled_vals), 0,
43079         NULL, HFILL }},
43080     { &hf_nr_rrc_dataScramblingIdentityPDSCH,
43081       { "dataScramblingIdentityPDSCH", "nr-rrc.dataScramblingIdentityPDSCH",
43082         FT_UINT32, BASE_DEC, NULL, 0,
43083         "INTEGER_0_1023", HFILL }},
43084     { &hf_nr_rrc_dmrs_DownlinkForPDSCH_MappingTypeA,
43085       { "dmrs-DownlinkForPDSCH-MappingTypeA", "nr-rrc.dmrs_DownlinkForPDSCH_MappingTypeA",
43086         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_dmrs_DownlinkForPDSCH_MappingTypeA_vals), 0,
43087         NULL, HFILL }},
43088     { &hf_nr_rrc_setup_33,
43089       { "setup", "nr-rrc.setup_element",
43090         FT_NONE, BASE_NONE, NULL, 0,
43091         "DMRS_DownlinkConfig", HFILL }},
43092     { &hf_nr_rrc_dmrs_DownlinkForPDSCH_MappingTypeB,
43093       { "dmrs-DownlinkForPDSCH-MappingTypeB", "nr-rrc.dmrs_DownlinkForPDSCH_MappingTypeB",
43094         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_dmrs_DownlinkForPDSCH_MappingTypeB_vals), 0,
43095         NULL, HFILL }},
43096     { &hf_nr_rrc_tci_StatesToAddModList,
43097       { "tci-StatesToAddModList", "nr-rrc.tci_StatesToAddModList",
43098         FT_UINT32, BASE_DEC, NULL, 0,
43099         "SEQUENCE_SIZE_1_maxNrofTCI_States_OF_TCI_State", HFILL }},
43100     { &hf_nr_rrc_tci_StatesToAddModList_item,
43101       { "TCI-State", "nr-rrc.TCI_State_element",
43102         FT_NONE, BASE_NONE, NULL, 0,
43103         NULL, HFILL }},
43104     { &hf_nr_rrc_tci_StatesToReleaseList,
43105       { "tci-StatesToReleaseList", "nr-rrc.tci_StatesToReleaseList",
43106         FT_UINT32, BASE_DEC, NULL, 0,
43107         "SEQUENCE_SIZE_1_maxNrofTCI_States_OF_TCI_StateId", HFILL }},
43108     { &hf_nr_rrc_tci_StatesToReleaseList_item,
43109       { "TCI-StateId", "nr-rrc.TCI_StateId",
43110         FT_UINT32, BASE_DEC, NULL, 0,
43111         NULL, HFILL }},
43112     { &hf_nr_rrc_vrb_ToPRB_Interleaver,
43113       { "vrb-ToPRB-Interleaver", "nr-rrc.vrb_ToPRB_Interleaver",
43114         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_vrb_ToPRB_Interleaver_vals), 0,
43115         NULL, HFILL }},
43116     { &hf_nr_rrc_resourceAllocation_01,
43117       { "resourceAllocation", "nr-rrc.resourceAllocation",
43118         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_resourceAllocation_01_vals), 0,
43119         "T_resourceAllocation_01", HFILL }},
43120     { &hf_nr_rrc_pdsch_TimeDomainAllocationList,
43121       { "pdsch-TimeDomainAllocationList", "nr-rrc.pdsch_TimeDomainAllocationList",
43122         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pdsch_TimeDomainAllocationList_vals), 0,
43123         NULL, HFILL }},
43124     { &hf_nr_rrc_setup_34,
43125       { "setup", "nr-rrc.setup",
43126         FT_UINT32, BASE_DEC, NULL, 0,
43127         "PDSCH_TimeDomainResourceAllocationList", HFILL }},
43128     { &hf_nr_rrc_pdsch_AggregationFactor,
43129       { "pdsch-AggregationFactor", "nr-rrc.pdsch_AggregationFactor",
43130         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pdsch_AggregationFactor_vals), 0,
43131         NULL, HFILL }},
43132     { &hf_nr_rrc_rateMatchPatternToAddModList,
43133       { "rateMatchPatternToAddModList", "nr-rrc.rateMatchPatternToAddModList",
43134         FT_UINT32, BASE_DEC, NULL, 0,
43135         "SEQUENCE_SIZE_1_maxNrofRateMatchPatterns_OF_RateMatchPattern", HFILL }},
43136     { &hf_nr_rrc_rateMatchPatternToAddModList_item,
43137       { "RateMatchPattern", "nr-rrc.RateMatchPattern_element",
43138         FT_NONE, BASE_NONE, NULL, 0,
43139         NULL, HFILL }},
43140     { &hf_nr_rrc_rateMatchPatternToReleaseList,
43141       { "rateMatchPatternToReleaseList", "nr-rrc.rateMatchPatternToReleaseList",
43142         FT_UINT32, BASE_DEC, NULL, 0,
43143         "SEQUENCE_SIZE_1_maxNrofRateMatchPatterns_OF_RateMatchPatternId", HFILL }},
43144     { &hf_nr_rrc_rateMatchPatternToReleaseList_item,
43145       { "RateMatchPatternId", "nr-rrc.RateMatchPatternId",
43146         FT_UINT32, BASE_DEC, NULL, 0,
43147         NULL, HFILL }},
43148     { &hf_nr_rrc_rateMatchPatternGroup1,
43149       { "rateMatchPatternGroup1", "nr-rrc.rateMatchPatternGroup1",
43150         FT_UINT32, BASE_DEC, NULL, 0,
43151         "RateMatchPatternGroup", HFILL }},
43152     { &hf_nr_rrc_rateMatchPatternGroup2,
43153       { "rateMatchPatternGroup2", "nr-rrc.rateMatchPatternGroup2",
43154         FT_UINT32, BASE_DEC, NULL, 0,
43155         "RateMatchPatternGroup", HFILL }},
43156     { &hf_nr_rrc_rbg_Size_01,
43157       { "rbg-Size", "nr-rrc.rbg_Size",
43158         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_rbg_Size_01_vals), 0,
43159         "T_rbg_Size_01", HFILL }},
43160     { &hf_nr_rrc_mcs_Table_01,
43161       { "mcs-Table", "nr-rrc.mcs_Table",
43162         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_mcs_Table_01_vals), 0,
43163         "T_mcs_Table_01", HFILL }},
43164     { &hf_nr_rrc_maxNrofCodeWordsScheduledByDCI,
43165       { "maxNrofCodeWordsScheduledByDCI", "nr-rrc.maxNrofCodeWordsScheduledByDCI",
43166         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_maxNrofCodeWordsScheduledByDCI_vals), 0,
43167         NULL, HFILL }},
43168     { &hf_nr_rrc_prb_BundlingType,
43169       { "prb-BundlingType", "nr-rrc.prb_BundlingType",
43170         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_prb_BundlingType_vals), 0,
43171         NULL, HFILL }},
43172     { &hf_nr_rrc_staticBundling,
43173       { "staticBundling", "nr-rrc.staticBundling_element",
43174         FT_NONE, BASE_NONE, NULL, 0,
43175         NULL, HFILL }},
43176     { &hf_nr_rrc_bundleSize,
43177       { "bundleSize", "nr-rrc.bundleSize",
43178         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_bundleSize_vals), 0,
43179         NULL, HFILL }},
43180     { &hf_nr_rrc_dynamicBundling,
43181       { "dynamicBundling", "nr-rrc.dynamicBundling_element",
43182         FT_NONE, BASE_NONE, NULL, 0,
43183         NULL, HFILL }},
43184     { &hf_nr_rrc_bundleSizeSet1,
43185       { "bundleSizeSet1", "nr-rrc.bundleSizeSet1",
43186         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_bundleSizeSet1_vals), 0,
43187         NULL, HFILL }},
43188     { &hf_nr_rrc_bundleSizeSet2,
43189       { "bundleSizeSet2", "nr-rrc.bundleSizeSet2",
43190         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_bundleSizeSet2_vals), 0,
43191         NULL, HFILL }},
43192     { &hf_nr_rrc_zp_CSI_RS_ResourceToAddModList,
43193       { "zp-CSI-RS-ResourceToAddModList", "nr-rrc.zp_CSI_RS_ResourceToAddModList",
43194         FT_UINT32, BASE_DEC, NULL, 0,
43195         "SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_Resources_OF_ZP_CSI_RS_Resource", HFILL }},
43196     { &hf_nr_rrc_zp_CSI_RS_ResourceToAddModList_item,
43197       { "ZP-CSI-RS-Resource", "nr-rrc.ZP_CSI_RS_Resource_element",
43198         FT_NONE, BASE_NONE, NULL, 0,
43199         NULL, HFILL }},
43200     { &hf_nr_rrc_zp_CSI_RS_ResourceToReleaseList,
43201       { "zp-CSI-RS-ResourceToReleaseList", "nr-rrc.zp_CSI_RS_ResourceToReleaseList",
43202         FT_UINT32, BASE_DEC, NULL, 0,
43203         "SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_Resources_OF_ZP_CSI_RS_ResourceId", HFILL }},
43204     { &hf_nr_rrc_zp_CSI_RS_ResourceToReleaseList_item,
43205       { "ZP-CSI-RS-ResourceId", "nr-rrc.ZP_CSI_RS_ResourceId",
43206         FT_UINT32, BASE_DEC, NULL, 0,
43207         NULL, HFILL }},
43208     { &hf_nr_rrc_aperiodic_ZP_CSI_RS_ResourceSetsToAddModList,
43209       { "aperiodic-ZP-CSI-RS-ResourceSetsToAddModList", "nr-rrc.aperiodic_ZP_CSI_RS_ResourceSetsToAddModList",
43210         FT_UINT32, BASE_DEC, NULL, 0,
43211         "SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourceSets_OF_ZP_CSI_RS_ResourceSet", HFILL }},
43212     { &hf_nr_rrc_aperiodic_ZP_CSI_RS_ResourceSetsToAddModList_item,
43213       { "ZP-CSI-RS-ResourceSet", "nr-rrc.ZP_CSI_RS_ResourceSet_element",
43214         FT_NONE, BASE_NONE, NULL, 0,
43215         NULL, HFILL }},
43216     { &hf_nr_rrc_aperiodic_ZP_CSI_RS_ResourceSetsToReleaseList,
43217       { "aperiodic-ZP-CSI-RS-ResourceSetsToReleaseList", "nr-rrc.aperiodic_ZP_CSI_RS_ResourceSetsToReleaseList",
43218         FT_UINT32, BASE_DEC, NULL, 0,
43219         "SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourceSets_OF_ZP_CSI_RS_ResourceSetId", HFILL }},
43220     { &hf_nr_rrc_aperiodic_ZP_CSI_RS_ResourceSetsToReleaseList_item,
43221       { "ZP-CSI-RS-ResourceSetId", "nr-rrc.ZP_CSI_RS_ResourceSetId",
43222         FT_UINT32, BASE_DEC, NULL, 0,
43223         NULL, HFILL }},
43224     { &hf_nr_rrc_sp_ZP_CSI_RS_ResourceSetsToAddModList,
43225       { "sp-ZP-CSI-RS-ResourceSetsToAddModList", "nr-rrc.sp_ZP_CSI_RS_ResourceSetsToAddModList",
43226         FT_UINT32, BASE_DEC, NULL, 0,
43227         "SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourceSets_OF_ZP_CSI_RS_ResourceSet", HFILL }},
43228     { &hf_nr_rrc_sp_ZP_CSI_RS_ResourceSetsToAddModList_item,
43229       { "ZP-CSI-RS-ResourceSet", "nr-rrc.ZP_CSI_RS_ResourceSet_element",
43230         FT_NONE, BASE_NONE, NULL, 0,
43231         NULL, HFILL }},
43232     { &hf_nr_rrc_sp_ZP_CSI_RS_ResourceSetsToReleaseList,
43233       { "sp-ZP-CSI-RS-ResourceSetsToReleaseList", "nr-rrc.sp_ZP_CSI_RS_ResourceSetsToReleaseList",
43234         FT_UINT32, BASE_DEC, NULL, 0,
43235         "SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourceSets_OF_ZP_CSI_RS_ResourceSetId", HFILL }},
43236     { &hf_nr_rrc_sp_ZP_CSI_RS_ResourceSetsToReleaseList_item,
43237       { "ZP-CSI-RS-ResourceSetId", "nr-rrc.ZP_CSI_RS_ResourceSetId",
43238         FT_UINT32, BASE_DEC, NULL, 0,
43239         NULL, HFILL }},
43240     { &hf_nr_rrc_p_ZP_CSI_RS_ResourceSet,
43241       { "p-ZP-CSI-RS-ResourceSet", "nr-rrc.p_ZP_CSI_RS_ResourceSet",
43242         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_p_ZP_CSI_RS_ResourceSet_vals), 0,
43243         NULL, HFILL }},
43244     { &hf_nr_rrc_setup_35,
43245       { "setup", "nr-rrc.setup_element",
43246         FT_NONE, BASE_NONE, NULL, 0,
43247         "ZP_CSI_RS_ResourceSet", HFILL }},
43248     { &hf_nr_rrc_RateMatchPatternGroup_item,
43249       { "RateMatchPatternGroup item", "nr-rrc.RateMatchPatternGroup_item",
43250         FT_UINT32, BASE_DEC, VALS(nr_rrc_RateMatchPatternGroup_item_vals), 0,
43251         NULL, HFILL }},
43252     { &hf_nr_rrc_cellLevel,
43253       { "cellLevel", "nr-rrc.cellLevel",
43254         FT_UINT32, BASE_DEC, NULL, 0,
43255         "RateMatchPatternId", HFILL }},
43256     { &hf_nr_rrc_bwpLevel,
43257       { "bwpLevel", "nr-rrc.bwpLevel",
43258         FT_UINT32, BASE_DEC, NULL, 0,
43259         "RateMatchPatternId", HFILL }},
43260     { &hf_nr_rrc_pdsch_TimeDomainAllocationList_01,
43261       { "pdsch-TimeDomainAllocationList", "nr-rrc.pdsch_TimeDomainAllocationList",
43262         FT_UINT32, BASE_DEC, NULL, 0,
43263         "PDSCH_TimeDomainResourceAllocationList", HFILL }},
43264     { &hf_nr_rrc_codeBlockGroupTransmission,
43265       { "codeBlockGroupTransmission", "nr-rrc.codeBlockGroupTransmission",
43266         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_codeBlockGroupTransmission_vals), 0,
43267         NULL, HFILL }},
43268     { &hf_nr_rrc_setup_36,
43269       { "setup", "nr-rrc.setup_element",
43270         FT_NONE, BASE_NONE, NULL, 0,
43271         "PDSCH_CodeBlockGroupTransmission", HFILL }},
43272     { &hf_nr_rrc_xOverhead,
43273       { "xOverhead", "nr-rrc.xOverhead",
43274         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_xOverhead_vals), 0,
43275         NULL, HFILL }},
43276     { &hf_nr_rrc_nrofHARQ_ProcessesForPDSCH,
43277       { "nrofHARQ-ProcessesForPDSCH", "nr-rrc.nrofHARQ_ProcessesForPDSCH",
43278         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_nrofHARQ_ProcessesForPDSCH_vals), 0,
43279         NULL, HFILL }},
43280     { &hf_nr_rrc_pucch_Cell,
43281       { "pucch-Cell", "nr-rrc.pucch_Cell",
43282         FT_UINT32, BASE_DEC, NULL, 0,
43283         "ServCellIndex", HFILL }},
43284     { &hf_nr_rrc_maxCodeBlockGroupsPerTransportBlock,
43285       { "maxCodeBlockGroupsPerTransportBlock", "nr-rrc.maxCodeBlockGroupsPerTransportBlock",
43286         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_maxCodeBlockGroupsPerTransportBlock_vals), 0,
43287         NULL, HFILL }},
43288     { &hf_nr_rrc_codeBlockGroupFlushIndicator,
43289       { "codeBlockGroupFlushIndicator", "nr-rrc.codeBlockGroupFlushIndicator",
43290         FT_BOOLEAN, BASE_NONE, NULL, 0,
43291         "BOOLEAN", HFILL }},
43292     { &hf_nr_rrc_PDSCH_TimeDomainResourceAllocationList_item,
43293       { "PDSCH-TimeDomainResourceAllocation", "nr-rrc.PDSCH_TimeDomainResourceAllocation_element",
43294         FT_NONE, BASE_NONE, NULL, 0,
43295         NULL, HFILL }},
43296     { &hf_nr_rrc_k0,
43297       { "k0", "nr-rrc.k0",
43298         FT_UINT32, BASE_DEC, NULL, 0,
43299         "INTEGER_0_32", HFILL }},
43300     { &hf_nr_rrc_mappingType,
43301       { "mappingType", "nr-rrc.mappingType",
43302         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_mappingType_vals), 0,
43303         NULL, HFILL }},
43304     { &hf_nr_rrc_startSymbolAndLength,
43305       { "startSymbolAndLength", "nr-rrc.startSymbolAndLength",
43306         FT_UINT32, BASE_DEC, NULL, 0,
43307         "INTEGER_0_127", HFILL }},
43308     { &hf_nr_rrc_phr_PeriodicTimer,
43309       { "phr-PeriodicTimer", "nr-rrc.phr_PeriodicTimer",
43310         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_phr_PeriodicTimer_vals), 0,
43311         NULL, HFILL }},
43312     { &hf_nr_rrc_phr_ProhibitTimer,
43313       { "phr-ProhibitTimer", "nr-rrc.phr_ProhibitTimer",
43314         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_phr_ProhibitTimer_vals), 0,
43315         NULL, HFILL }},
43316     { &hf_nr_rrc_phr_Tx_PowerFactorChange,
43317       { "phr-Tx-PowerFactorChange", "nr-rrc.phr_Tx_PowerFactorChange",
43318         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_phr_Tx_PowerFactorChange_vals), 0,
43319         NULL, HFILL }},
43320     { &hf_nr_rrc_multiplePHR,
43321       { "multiplePHR", "nr-rrc.multiplePHR",
43322         FT_BOOLEAN, BASE_NONE, NULL, 0,
43323         "BOOLEAN", HFILL }},
43324     { &hf_nr_rrc_dummy,
43325       { "dummy", "nr-rrc.dummy",
43326         FT_BOOLEAN, BASE_NONE, NULL, 0,
43327         "BOOLEAN", HFILL }},
43328     { &hf_nr_rrc_phr_Type2OtherCell,
43329       { "phr-Type2OtherCell", "nr-rrc.phr_Type2OtherCell",
43330         FT_BOOLEAN, BASE_NONE, NULL, 0,
43331         "BOOLEAN", HFILL }},
43332     { &hf_nr_rrc_phr_ModeOtherCG,
43333       { "phr-ModeOtherCG", "nr-rrc.phr_ModeOtherCG",
43334         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_phr_ModeOtherCG_vals), 0,
43335         NULL, HFILL }},
43336     { &hf_nr_rrc_harq_ACK_SpatialBundlingPUCCH,
43337       { "harq-ACK-SpatialBundlingPUCCH", "nr-rrc.harq_ACK_SpatialBundlingPUCCH",
43338         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_harq_ACK_SpatialBundlingPUCCH_vals), 0,
43339         NULL, HFILL }},
43340     { &hf_nr_rrc_harq_ACK_SpatialBundlingPUSCH,
43341       { "harq-ACK-SpatialBundlingPUSCH", "nr-rrc.harq_ACK_SpatialBundlingPUSCH",
43342         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_harq_ACK_SpatialBundlingPUSCH_vals), 0,
43343         NULL, HFILL }},
43344     { &hf_nr_rrc_p_NR_FR1,
43345       { "p-NR-FR1", "nr-rrc.p_NR_FR1",
43346         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_dbm, 0,
43347         "P_Max", HFILL }},
43348     { &hf_nr_rrc_pdsch_HARQ_ACK_Codebook,
43349       { "pdsch-HARQ-ACK-Codebook", "nr-rrc.pdsch_HARQ_ACK_Codebook",
43350         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pdsch_HARQ_ACK_Codebook_vals), 0,
43351         NULL, HFILL }},
43352     { &hf_nr_rrc_tpc_SRS_RNTI,
43353       { "tpc-SRS-RNTI", "nr-rrc.tpc_SRS_RNTI",
43354         FT_UINT32, BASE_DEC, NULL, 0,
43355         "RNTI_Value", HFILL }},
43356     { &hf_nr_rrc_tpc_PUCCH_RNTI,
43357       { "tpc-PUCCH-RNTI", "nr-rrc.tpc_PUCCH_RNTI",
43358         FT_UINT32, BASE_DEC, NULL, 0,
43359         "RNTI_Value", HFILL }},
43360     { &hf_nr_rrc_tpc_PUSCH_RNTI,
43361       { "tpc-PUSCH-RNTI", "nr-rrc.tpc_PUSCH_RNTI",
43362         FT_UINT32, BASE_DEC, NULL, 0,
43363         "RNTI_Value", HFILL }},
43364     { &hf_nr_rrc_sp_CSI_RNTI,
43365       { "sp-CSI-RNTI", "nr-rrc.sp_CSI_RNTI",
43366         FT_UINT32, BASE_DEC, NULL, 0,
43367         "RNTI_Value", HFILL }},
43368     { &hf_nr_rrc_cs_RNTI,
43369       { "cs-RNTI", "nr-rrc.cs_RNTI",
43370         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_cs_RNTI_vals), 0,
43371         NULL, HFILL }},
43372     { &hf_nr_rrc_setup_37,
43373       { "setup", "nr-rrc.setup",
43374         FT_UINT32, BASE_DEC, NULL, 0,
43375         "RNTI_Value", HFILL }},
43376     { &hf_nr_rrc_mcs_C_RNTI,
43377       { "mcs-C-RNTI", "nr-rrc.mcs_C_RNTI",
43378         FT_UINT32, BASE_DEC, NULL, 0,
43379         "RNTI_Value", HFILL }},
43380     { &hf_nr_rrc_p_UE_FR1,
43381       { "p-UE-FR1", "nr-rrc.p_UE_FR1",
43382         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_dbm, 0,
43383         "P_Max", HFILL }},
43384     { &hf_nr_rrc_mcc,
43385       { "mcc", "nr-rrc.mcc",
43386         FT_UINT32, BASE_DEC, NULL, 0,
43387         NULL, HFILL }},
43388     { &hf_nr_rrc_mnc,
43389       { "mnc", "nr-rrc.mnc",
43390         FT_UINT32, BASE_DEC, NULL, 0,
43391         NULL, HFILL }},
43392     { &hf_nr_rrc_MCC_item,
43393       { "MCC-MNC-Digit", "nr-rrc.MCC_MNC_Digit",
43394         FT_UINT32, BASE_DEC, NULL, 0,
43395         NULL, HFILL }},
43396     { &hf_nr_rrc_MNC_item,
43397       { "MCC-MNC-Digit", "nr-rrc.MCC_MNC_Digit",
43398         FT_UINT32, BASE_DEC, NULL, 0,
43399         NULL, HFILL }},
43400     { &hf_nr_rrc_PLMN_IdentityInfoList_item,
43401       { "PLMN-IdentityInfo", "nr-rrc.PLMN_IdentityInfo_element",
43402         FT_NONE, BASE_NONE, NULL, 0,
43403         NULL, HFILL }},
43404     { &hf_nr_rrc_plmn_IdentityList_01,
43405       { "plmn-IdentityList", "nr-rrc.plmn_IdentityList",
43406         FT_UINT32, BASE_DEC, NULL, 0,
43407         "SEQUENCE_SIZE_1_maxPLMN_OF_PLMN_Identity", HFILL }},
43408     { &hf_nr_rrc_plmn_IdentityList_item,
43409       { "PLMN-Identity", "nr-rrc.PLMN_Identity_element",
43410         FT_NONE, BASE_NONE, NULL, 0,
43411         NULL, HFILL }},
43412     { &hf_nr_rrc_ranac,
43413       { "ranac", "nr-rrc.ranac",
43414         FT_UINT32, BASE_DEC, NULL, 0,
43415         "RAN_AreaCode", HFILL }},
43416     { &hf_nr_rrc_cellReservedForOperatorUse,
43417       { "cellReservedForOperatorUse", "nr-rrc.cellReservedForOperatorUse",
43418         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_cellReservedForOperatorUse_vals), 0,
43419         NULL, HFILL }},
43420     { &hf_nr_rrc_frequencyDensity,
43421       { "frequencyDensity", "nr-rrc.frequencyDensity",
43422         FT_UINT32, BASE_DEC, NULL, 0,
43423         NULL, HFILL }},
43424     { &hf_nr_rrc_frequencyDensity_item,
43425       { "frequencyDensity item", "nr-rrc.frequencyDensity_item",
43426         FT_UINT32, BASE_DEC, NULL, 0,
43427         "INTEGER_1_276", HFILL }},
43428     { &hf_nr_rrc_timeDensity,
43429       { "timeDensity", "nr-rrc.timeDensity",
43430         FT_UINT32, BASE_DEC, NULL, 0,
43431         NULL, HFILL }},
43432     { &hf_nr_rrc_timeDensity_item,
43433       { "timeDensity item", "nr-rrc.timeDensity_item",
43434         FT_UINT32, BASE_DEC, NULL, 0,
43435         "INTEGER_0_29", HFILL }},
43436     { &hf_nr_rrc_epre_Ratio,
43437       { "epre-Ratio", "nr-rrc.epre_Ratio",
43438         FT_UINT32, BASE_DEC, NULL, 0,
43439         "INTEGER_0_3", HFILL }},
43440     { &hf_nr_rrc_resourceElementOffset,
43441       { "resourceElementOffset", "nr-rrc.resourceElementOffset",
43442         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_resourceElementOffset_vals), 0,
43443         NULL, HFILL }},
43444     { &hf_nr_rrc_transformPrecoderDisabled,
43445       { "transformPrecoderDisabled", "nr-rrc.transformPrecoderDisabled_element",
43446         FT_NONE, BASE_NONE, NULL, 0,
43447         NULL, HFILL }},
43448     { &hf_nr_rrc_frequencyDensity_01,
43449       { "frequencyDensity", "nr-rrc.frequencyDensity",
43450         FT_UINT32, BASE_DEC, NULL, 0,
43451         "T_frequencyDensity_01", HFILL }},
43452     { &hf_nr_rrc_timeDensity_01,
43453       { "timeDensity", "nr-rrc.timeDensity",
43454         FT_UINT32, BASE_DEC, NULL, 0,
43455         "T_timeDensity_01", HFILL }},
43456     { &hf_nr_rrc_maxNrofPorts,
43457       { "maxNrofPorts", "nr-rrc.maxNrofPorts",
43458         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_maxNrofPorts_vals), 0,
43459         NULL, HFILL }},
43460     { &hf_nr_rrc_resourceElementOffset_01,
43461       { "resourceElementOffset", "nr-rrc.resourceElementOffset",
43462         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_resourceElementOffset_01_vals), 0,
43463         "T_resourceElementOffset_01", HFILL }},
43464     { &hf_nr_rrc_ptrs_Power,
43465       { "ptrs-Power", "nr-rrc.ptrs_Power",
43466         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_ptrs_Power_vals), 0,
43467         NULL, HFILL }},
43468     { &hf_nr_rrc_transformPrecoderEnabled,
43469       { "transformPrecoderEnabled", "nr-rrc.transformPrecoderEnabled_element",
43470         FT_NONE, BASE_NONE, NULL, 0,
43471         NULL, HFILL }},
43472     { &hf_nr_rrc_sampleDensity,
43473       { "sampleDensity", "nr-rrc.sampleDensity",
43474         FT_UINT32, BASE_DEC, NULL, 0,
43475         NULL, HFILL }},
43476     { &hf_nr_rrc_sampleDensity_item,
43477       { "sampleDensity item", "nr-rrc.sampleDensity_item",
43478         FT_UINT32, BASE_DEC, NULL, 0,
43479         "INTEGER_1_276", HFILL }},
43480     { &hf_nr_rrc_timeDensityTransformPrecoding,
43481       { "timeDensityTransformPrecoding", "nr-rrc.timeDensityTransformPrecoding",
43482         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_timeDensityTransformPrecoding_vals), 0,
43483         NULL, HFILL }},
43484     { &hf_nr_rrc_resourceSetToAddModList,
43485       { "resourceSetToAddModList", "nr-rrc.resourceSetToAddModList",
43486         FT_UINT32, BASE_DEC, NULL, 0,
43487         "SEQUENCE_SIZE_1_maxNrofPUCCH_ResourceSets_OF_PUCCH_ResourceSet", HFILL }},
43488     { &hf_nr_rrc_resourceSetToAddModList_item,
43489       { "PUCCH-ResourceSet", "nr-rrc.PUCCH_ResourceSet_element",
43490         FT_NONE, BASE_NONE, NULL, 0,
43491         NULL, HFILL }},
43492     { &hf_nr_rrc_resourceSetToReleaseList,
43493       { "resourceSetToReleaseList", "nr-rrc.resourceSetToReleaseList",
43494         FT_UINT32, BASE_DEC, NULL, 0,
43495         "SEQUENCE_SIZE_1_maxNrofPUCCH_ResourceSets_OF_PUCCH_ResourceSetId", HFILL }},
43496     { &hf_nr_rrc_resourceSetToReleaseList_item,
43497       { "PUCCH-ResourceSetId", "nr-rrc.PUCCH_ResourceSetId",
43498         FT_UINT32, BASE_DEC, NULL, 0,
43499         NULL, HFILL }},
43500     { &hf_nr_rrc_resourceToAddModList,
43501       { "resourceToAddModList", "nr-rrc.resourceToAddModList",
43502         FT_UINT32, BASE_DEC, NULL, 0,
43503         "SEQUENCE_SIZE_1_maxNrofPUCCH_Resources_OF_PUCCH_Resource", HFILL }},
43504     { &hf_nr_rrc_resourceToAddModList_item,
43505       { "PUCCH-Resource", "nr-rrc.PUCCH_Resource_element",
43506         FT_NONE, BASE_NONE, NULL, 0,
43507         NULL, HFILL }},
43508     { &hf_nr_rrc_resourceToReleaseList,
43509       { "resourceToReleaseList", "nr-rrc.resourceToReleaseList",
43510         FT_UINT32, BASE_DEC, NULL, 0,
43511         "SEQUENCE_SIZE_1_maxNrofPUCCH_Resources_OF_PUCCH_ResourceId", HFILL }},
43512     { &hf_nr_rrc_resourceToReleaseList_item,
43513       { "PUCCH-ResourceId", "nr-rrc.PUCCH_ResourceId",
43514         FT_UINT32, BASE_DEC, NULL, 0,
43515         NULL, HFILL }},
43516     { &hf_nr_rrc_format1,
43517       { "format1", "nr-rrc.format1",
43518         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_format1_vals), 0,
43519         NULL, HFILL }},
43520     { &hf_nr_rrc_setup_38,
43521       { "setup", "nr-rrc.setup_element",
43522         FT_NONE, BASE_NONE, NULL, 0,
43523         "PUCCH_FormatConfig", HFILL }},
43524     { &hf_nr_rrc_format2,
43525       { "format2", "nr-rrc.format2",
43526         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_format2_vals), 0,
43527         NULL, HFILL }},
43528     { &hf_nr_rrc_format3,
43529       { "format3", "nr-rrc.format3",
43530         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_format3_vals), 0,
43531         NULL, HFILL }},
43532     { &hf_nr_rrc_format4,
43533       { "format4", "nr-rrc.format4",
43534         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_format4_vals), 0,
43535         NULL, HFILL }},
43536     { &hf_nr_rrc_schedulingRequestResourceToAddModList,
43537       { "schedulingRequestResourceToAddModList", "nr-rrc.schedulingRequestResourceToAddModList",
43538         FT_UINT32, BASE_DEC, NULL, 0,
43539         "SEQUENCE_SIZE_1_maxNrofSR_Resources_OF_SchedulingRequestResourceConfig", HFILL }},
43540     { &hf_nr_rrc_schedulingRequestResourceToAddModList_item,
43541       { "SchedulingRequestResourceConfig", "nr-rrc.SchedulingRequestResourceConfig_element",
43542         FT_NONE, BASE_NONE, NULL, 0,
43543         NULL, HFILL }},
43544     { &hf_nr_rrc_schedulingRequestResourceToReleaseList,
43545       { "schedulingRequestResourceToReleaseList", "nr-rrc.schedulingRequestResourceToReleaseList",
43546         FT_UINT32, BASE_DEC, NULL, 0,
43547         "SEQUENCE_SIZE_1_maxNrofSR_Resources_OF_SchedulingRequestResourceId", HFILL }},
43548     { &hf_nr_rrc_schedulingRequestResourceToReleaseList_item,
43549       { "SchedulingRequestResourceId", "nr-rrc.SchedulingRequestResourceId",
43550         FT_UINT32, BASE_DEC, NULL, 0,
43551         NULL, HFILL }},
43552     { &hf_nr_rrc_multi_CSI_PUCCH_ResourceList,
43553       { "multi-CSI-PUCCH-ResourceList", "nr-rrc.multi_CSI_PUCCH_ResourceList",
43554         FT_UINT32, BASE_DEC, NULL, 0,
43555         "SEQUENCE_SIZE_1_2_OF_PUCCH_ResourceId", HFILL }},
43556     { &hf_nr_rrc_multi_CSI_PUCCH_ResourceList_item,
43557       { "PUCCH-ResourceId", "nr-rrc.PUCCH_ResourceId",
43558         FT_UINT32, BASE_DEC, NULL, 0,
43559         NULL, HFILL }},
43560     { &hf_nr_rrc_dl_DataToUL_ACK,
43561       { "dl-DataToUL-ACK", "nr-rrc.dl_DataToUL_ACK",
43562         FT_UINT32, BASE_DEC, NULL, 0,
43563         NULL, HFILL }},
43564     { &hf_nr_rrc_dl_DataToUL_ACK_item,
43565       { "dl-DataToUL-ACK item", "nr-rrc.dl_DataToUL_ACK_item",
43566         FT_UINT32, BASE_DEC, NULL, 0,
43567         "INTEGER_0_15", HFILL }},
43568     { &hf_nr_rrc_spatialRelationInfoToAddModList,
43569       { "spatialRelationInfoToAddModList", "nr-rrc.spatialRelationInfoToAddModList",
43570         FT_UINT32, BASE_DEC, NULL, 0,
43571         "SEQUENCE_SIZE_1_maxNrofSpatialRelationInfos_OF_PUCCH_SpatialRelationInfo", HFILL }},
43572     { &hf_nr_rrc_spatialRelationInfoToAddModList_item,
43573       { "PUCCH-SpatialRelationInfo", "nr-rrc.PUCCH_SpatialRelationInfo_element",
43574         FT_NONE, BASE_NONE, NULL, 0,
43575         NULL, HFILL }},
43576     { &hf_nr_rrc_spatialRelationInfoToReleaseList,
43577       { "spatialRelationInfoToReleaseList", "nr-rrc.spatialRelationInfoToReleaseList",
43578         FT_UINT32, BASE_DEC, NULL, 0,
43579         "SEQUENCE_SIZE_1_maxNrofSpatialRelationInfos_OF_PUCCH_SpatialRelationInfoId", HFILL }},
43580     { &hf_nr_rrc_spatialRelationInfoToReleaseList_item,
43581       { "PUCCH-SpatialRelationInfoId", "nr-rrc.PUCCH_SpatialRelationInfoId",
43582         FT_UINT32, BASE_DEC, NULL, 0,
43583         NULL, HFILL }},
43584     { &hf_nr_rrc_pucch_PowerControl,
43585       { "pucch-PowerControl", "nr-rrc.pucch_PowerControl_element",
43586         FT_NONE, BASE_NONE, NULL, 0,
43587         NULL, HFILL }},
43588     { &hf_nr_rrc_interslotFrequencyHopping,
43589       { "interslotFrequencyHopping", "nr-rrc.interslotFrequencyHopping",
43590         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_interslotFrequencyHopping_vals), 0,
43591         NULL, HFILL }},
43592     { &hf_nr_rrc_additionalDMRS,
43593       { "additionalDMRS", "nr-rrc.additionalDMRS",
43594         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_additionalDMRS_vals), 0,
43595         NULL, HFILL }},
43596     { &hf_nr_rrc_maxCodeRate,
43597       { "maxCodeRate", "nr-rrc.maxCodeRate",
43598         FT_UINT32, BASE_DEC, VALS(nr_rrc_PUCCH_MaxCodeRate_vals), 0,
43599         "PUCCH_MaxCodeRate", HFILL }},
43600     { &hf_nr_rrc_nrofSlots,
43601       { "nrofSlots", "nr-rrc.nrofSlots",
43602         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_nrofSlots_vals), 0,
43603         NULL, HFILL }},
43604     { &hf_nr_rrc_pi2BPSK,
43605       { "pi2BPSK", "nr-rrc.pi2BPSK",
43606         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pi2BPSK_vals), 0,
43607         NULL, HFILL }},
43608     { &hf_nr_rrc_simultaneousHARQ_ACK_CSI,
43609       { "simultaneousHARQ-ACK-CSI", "nr-rrc.simultaneousHARQ_ACK_CSI",
43610         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_simultaneousHARQ_ACK_CSI_vals), 0,
43611         NULL, HFILL }},
43612     { &hf_nr_rrc_pucch_ResourceSetId,
43613       { "pucch-ResourceSetId", "nr-rrc.pucch_ResourceSetId",
43614         FT_UINT32, BASE_DEC, NULL, 0,
43615         NULL, HFILL }},
43616     { &hf_nr_rrc_resourceList,
43617       { "resourceList", "nr-rrc.resourceList",
43618         FT_UINT32, BASE_DEC, NULL, 0,
43619         "SEQUENCE_SIZE_1_maxNrofPUCCH_ResourcesPerSet_OF_PUCCH_ResourceId", HFILL }},
43620     { &hf_nr_rrc_resourceList_item,
43621       { "PUCCH-ResourceId", "nr-rrc.PUCCH_ResourceId",
43622         FT_UINT32, BASE_DEC, NULL, 0,
43623         NULL, HFILL }},
43624     { &hf_nr_rrc_maxPayloadMinus1,
43625       { "maxPayloadMinus1", "nr-rrc.maxPayloadMinus1",
43626         FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_bit_bits, 0,
43627         "INTEGER_4_256", HFILL }},
43628     { &hf_nr_rrc_pucch_ResourceId,
43629       { "pucch-ResourceId", "nr-rrc.pucch_ResourceId",
43630         FT_UINT32, BASE_DEC, NULL, 0,
43631         NULL, HFILL }},
43632     { &hf_nr_rrc_startingPRB,
43633       { "startingPRB", "nr-rrc.startingPRB",
43634         FT_UINT32, BASE_DEC, NULL, 0,
43635         "PRB_Id", HFILL }},
43636     { &hf_nr_rrc_intraSlotFrequencyHopping,
43637       { "intraSlotFrequencyHopping", "nr-rrc.intraSlotFrequencyHopping",
43638         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_intraSlotFrequencyHopping_vals), 0,
43639         NULL, HFILL }},
43640     { &hf_nr_rrc_secondHopPRB,
43641       { "secondHopPRB", "nr-rrc.secondHopPRB",
43642         FT_UINT32, BASE_DEC, NULL, 0,
43643         "PRB_Id", HFILL }},
43644     { &hf_nr_rrc_format,
43645       { "format", "nr-rrc.format",
43646         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_format_vals), 0,
43647         NULL, HFILL }},
43648     { &hf_nr_rrc_format0,
43649       { "format0", "nr-rrc.format0_element",
43650         FT_NONE, BASE_NONE, NULL, 0,
43651         "PUCCH_format0", HFILL }},
43652     { &hf_nr_rrc_format1_01,
43653       { "format1", "nr-rrc.format1_element",
43654         FT_NONE, BASE_NONE, NULL, 0,
43655         "PUCCH_format1", HFILL }},
43656     { &hf_nr_rrc_format2_01,
43657       { "format2", "nr-rrc.format2_element",
43658         FT_NONE, BASE_NONE, NULL, 0,
43659         "PUCCH_format2", HFILL }},
43660     { &hf_nr_rrc_format3_01,
43661       { "format3", "nr-rrc.format3_element",
43662         FT_NONE, BASE_NONE, NULL, 0,
43663         "PUCCH_format3", HFILL }},
43664     { &hf_nr_rrc_format4_01,
43665       { "format4", "nr-rrc.format4_element",
43666         FT_NONE, BASE_NONE, NULL, 0,
43667         "PUCCH_format4", HFILL }},
43668     { &hf_nr_rrc_initialCyclicShift,
43669       { "initialCyclicShift", "nr-rrc.initialCyclicShift",
43670         FT_UINT32, BASE_DEC, NULL, 0,
43671         "INTEGER_0_11", HFILL }},
43672     { &hf_nr_rrc_nrofSymbols,
43673       { "nrofSymbols", "nr-rrc.nrofSymbols",
43674         FT_UINT32, BASE_DEC, NULL, 0,
43675         "INTEGER_1_2", HFILL }},
43676     { &hf_nr_rrc_startingSymbolIndex,
43677       { "startingSymbolIndex", "nr-rrc.startingSymbolIndex",
43678         FT_UINT32, BASE_DEC, NULL, 0,
43679         "INTEGER_0_13", HFILL }},
43680     { &hf_nr_rrc_nrofSymbols_01,
43681       { "nrofSymbols", "nr-rrc.nrofSymbols",
43682         FT_UINT32, BASE_DEC, NULL, 0,
43683         "INTEGER_4_14", HFILL }},
43684     { &hf_nr_rrc_startingSymbolIndex_01,
43685       { "startingSymbolIndex", "nr-rrc.startingSymbolIndex",
43686         FT_UINT32, BASE_DEC, NULL, 0,
43687         "INTEGER_0_10", HFILL }},
43688     { &hf_nr_rrc_timeDomainOCC,
43689       { "timeDomainOCC", "nr-rrc.timeDomainOCC",
43690         FT_UINT32, BASE_DEC, NULL, 0,
43691         "INTEGER_0_6", HFILL }},
43692     { &hf_nr_rrc_nrofPRBs_01,
43693       { "nrofPRBs", "nr-rrc.nrofPRBs",
43694         FT_UINT32, BASE_DEC, NULL, 0,
43695         "INTEGER_1_16", HFILL }},
43696     { &hf_nr_rrc_occ_Length,
43697       { "occ-Length", "nr-rrc.occ_Length",
43698         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_occ_Length_vals), 0,
43699         NULL, HFILL }},
43700     { &hf_nr_rrc_occ_Index,
43701       { "occ-Index", "nr-rrc.occ_Index",
43702         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_occ_Index_vals), 0,
43703         NULL, HFILL }},
43704     { &hf_nr_rrc_pucch_ResourceCommon,
43705       { "pucch-ResourceCommon", "nr-rrc.pucch_ResourceCommon",
43706         FT_UINT32, BASE_DEC, NULL, 0,
43707         "INTEGER_0_15", HFILL }},
43708     { &hf_nr_rrc_pucch_GroupHopping,
43709       { "pucch-GroupHopping", "nr-rrc.pucch_GroupHopping",
43710         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pucch_GroupHopping_vals), 0,
43711         NULL, HFILL }},
43712     { &hf_nr_rrc_hoppingId,
43713       { "hoppingId", "nr-rrc.hoppingId",
43714         FT_UINT32, BASE_DEC, NULL, 0,
43715         "INTEGER_0_1023", HFILL }},
43716     { &hf_nr_rrc_p0_nominal,
43717       { "p0-nominal", "nr-rrc.p0_nominal",
43718         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_dbm, 0,
43719         "INTEGER_M202_24", HFILL }},
43720     { &hf_nr_rrc_deltaF_PUCCH_f0,
43721       { "deltaF-PUCCH-f0", "nr-rrc.deltaF_PUCCH_f0",
43722         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_decibels, 0,
43723         "INTEGER_M16_15", HFILL }},
43724     { &hf_nr_rrc_deltaF_PUCCH_f1,
43725       { "deltaF-PUCCH-f1", "nr-rrc.deltaF_PUCCH_f1",
43726         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_decibels, 0,
43727         "INTEGER_M16_15", HFILL }},
43728     { &hf_nr_rrc_deltaF_PUCCH_f2,
43729       { "deltaF-PUCCH-f2", "nr-rrc.deltaF_PUCCH_f2",
43730         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_decibels, 0,
43731         "INTEGER_M16_15", HFILL }},
43732     { &hf_nr_rrc_deltaF_PUCCH_f3,
43733       { "deltaF-PUCCH-f3", "nr-rrc.deltaF_PUCCH_f3",
43734         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_decibels, 0,
43735         "INTEGER_M16_15", HFILL }},
43736     { &hf_nr_rrc_deltaF_PUCCH_f4,
43737       { "deltaF-PUCCH-f4", "nr-rrc.deltaF_PUCCH_f4",
43738         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_decibels, 0,
43739         "INTEGER_M16_15", HFILL }},
43740     { &hf_nr_rrc_p0_Set,
43741       { "p0-Set", "nr-rrc.p0_Set",
43742         FT_UINT32, BASE_DEC, NULL, 0,
43743         "SEQUENCE_SIZE_1_maxNrofPUCCH_P0_PerSet_OF_P0_PUCCH", HFILL }},
43744     { &hf_nr_rrc_p0_Set_item,
43745       { "P0-PUCCH", "nr-rrc.P0_PUCCH_element",
43746         FT_NONE, BASE_NONE, NULL, 0,
43747         NULL, HFILL }},
43748     { &hf_nr_rrc_pathlossReferenceRSs,
43749       { "pathlossReferenceRSs", "nr-rrc.pathlossReferenceRSs",
43750         FT_UINT32, BASE_DEC, NULL, 0,
43751         "SEQUENCE_SIZE_1_maxNrofPUCCH_PathlossReferenceRSs_OF_PUCCH_PathlossReferenceRS", HFILL }},
43752     { &hf_nr_rrc_pathlossReferenceRSs_item,
43753       { "PUCCH-PathlossReferenceRS", "nr-rrc.PUCCH_PathlossReferenceRS_element",
43754         FT_NONE, BASE_NONE, NULL, 0,
43755         NULL, HFILL }},
43756     { &hf_nr_rrc_twoPUCCH_PC_AdjustmentStates,
43757       { "twoPUCCH-PC-AdjustmentStates", "nr-rrc.twoPUCCH_PC_AdjustmentStates",
43758         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_twoPUCCH_PC_AdjustmentStates_vals), 0,
43759         NULL, HFILL }},
43760     { &hf_nr_rrc_p0_PUCCH_Id,
43761       { "p0-PUCCH-Id", "nr-rrc.p0_PUCCH_Id",
43762         FT_UINT32, BASE_DEC, NULL, 0,
43763         NULL, HFILL }},
43764     { &hf_nr_rrc_p0_PUCCH_Value,
43765       { "p0-PUCCH-Value", "nr-rrc.p0_PUCCH_Value",
43766         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_decibels, 0,
43767         "INTEGER_M16_15", HFILL }},
43768     { &hf_nr_rrc_pucch_PathlossReferenceRS_Id,
43769       { "pucch-PathlossReferenceRS-Id", "nr-rrc.pucch_PathlossReferenceRS_Id",
43770         FT_UINT32, BASE_DEC, NULL, 0,
43771         NULL, HFILL }},
43772     { &hf_nr_rrc_referenceSignal,
43773       { "referenceSignal", "nr-rrc.referenceSignal",
43774         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_referenceSignal_vals), 0,
43775         NULL, HFILL }},
43776     { &hf_nr_rrc_csi_RS_Index_01,
43777       { "csi-RS-Index", "nr-rrc.csi_RS_Index",
43778         FT_UINT32, BASE_DEC, NULL, 0,
43779         "NZP_CSI_RS_ResourceId", HFILL }},
43780     { &hf_nr_rrc_pucch_SpatialRelationInfoId,
43781       { "pucch-SpatialRelationInfoId", "nr-rrc.pucch_SpatialRelationInfoId",
43782         FT_UINT32, BASE_DEC, NULL, 0,
43783         NULL, HFILL }},
43784     { &hf_nr_rrc_referenceSignal_01,
43785       { "referenceSignal", "nr-rrc.referenceSignal",
43786         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_referenceSignal_01_vals), 0,
43787         "T_referenceSignal_01", HFILL }},
43788     { &hf_nr_rrc_srs,
43789       { "srs", "nr-rrc.srs_element",
43790         FT_NONE, BASE_NONE, NULL, 0,
43791         NULL, HFILL }},
43792     { &hf_nr_rrc_resource,
43793       { "resource", "nr-rrc.resource",
43794         FT_UINT32, BASE_DEC, NULL, 0,
43795         "SRS_ResourceId", HFILL }},
43796     { &hf_nr_rrc_uplinkBWP,
43797       { "uplinkBWP", "nr-rrc.uplinkBWP",
43798         FT_UINT32, BASE_DEC, NULL, 0,
43799         "BWP_Id", HFILL }},
43800     { &hf_nr_rrc_closedLoopIndex,
43801       { "closedLoopIndex", "nr-rrc.closedLoopIndex",
43802         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_closedLoopIndex_vals), 0,
43803         NULL, HFILL }},
43804     { &hf_nr_rrc_tpc_IndexPCell,
43805       { "tpc-IndexPCell", "nr-rrc.tpc_IndexPCell",
43806         FT_UINT32, BASE_DEC, NULL, 0,
43807         "INTEGER_1_15", HFILL }},
43808     { &hf_nr_rrc_tpc_IndexPUCCH_SCell,
43809       { "tpc-IndexPUCCH-SCell", "nr-rrc.tpc_IndexPUCCH_SCell",
43810         FT_UINT32, BASE_DEC, NULL, 0,
43811         "INTEGER_1_15", HFILL }},
43812     { &hf_nr_rrc_dataScramblingIdentityPUSCH,
43813       { "dataScramblingIdentityPUSCH", "nr-rrc.dataScramblingIdentityPUSCH",
43814         FT_UINT32, BASE_DEC, NULL, 0,
43815         "INTEGER_0_1023", HFILL }},
43816     { &hf_nr_rrc_txConfig,
43817       { "txConfig", "nr-rrc.txConfig",
43818         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_txConfig_vals), 0,
43819         NULL, HFILL }},
43820     { &hf_nr_rrc_dmrs_UplinkForPUSCH_MappingTypeA,
43821       { "dmrs-UplinkForPUSCH-MappingTypeA", "nr-rrc.dmrs_UplinkForPUSCH_MappingTypeA",
43822         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_dmrs_UplinkForPUSCH_MappingTypeA_vals), 0,
43823         NULL, HFILL }},
43824     { &hf_nr_rrc_setup_39,
43825       { "setup", "nr-rrc.setup_element",
43826         FT_NONE, BASE_NONE, NULL, 0,
43827         "DMRS_UplinkConfig", HFILL }},
43828     { &hf_nr_rrc_dmrs_UplinkForPUSCH_MappingTypeB,
43829       { "dmrs-UplinkForPUSCH-MappingTypeB", "nr-rrc.dmrs_UplinkForPUSCH_MappingTypeB",
43830         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_dmrs_UplinkForPUSCH_MappingTypeB_vals), 0,
43831         NULL, HFILL }},
43832     { &hf_nr_rrc_pusch_PowerControl,
43833       { "pusch-PowerControl", "nr-rrc.pusch_PowerControl_element",
43834         FT_NONE, BASE_NONE, NULL, 0,
43835         NULL, HFILL }},
43836     { &hf_nr_rrc_frequencyHopping_01,
43837       { "frequencyHopping", "nr-rrc.frequencyHopping",
43838         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_frequencyHopping_01_vals), 0,
43839         "T_frequencyHopping_01", HFILL }},
43840     { &hf_nr_rrc_frequencyHoppingOffsetLists,
43841       { "frequencyHoppingOffsetLists", "nr-rrc.frequencyHoppingOffsetLists",
43842         FT_UINT32, BASE_DEC, NULL, 0,
43843         NULL, HFILL }},
43844     { &hf_nr_rrc_frequencyHoppingOffsetLists_item,
43845       { "frequencyHoppingOffsetLists item", "nr-rrc.frequencyHoppingOffsetLists_item",
43846         FT_UINT32, BASE_DEC, NULL, 0,
43847         "INTEGER_1_maxNrofPhysicalResourceBlocks_1", HFILL }},
43848     { &hf_nr_rrc_resourceAllocation_02,
43849       { "resourceAllocation", "nr-rrc.resourceAllocation",
43850         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_resourceAllocation_02_vals), 0,
43851         "T_resourceAllocation_02", HFILL }},
43852     { &hf_nr_rrc_pusch_TimeDomainAllocationList,
43853       { "pusch-TimeDomainAllocationList", "nr-rrc.pusch_TimeDomainAllocationList",
43854         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pusch_TimeDomainAllocationList_vals), 0,
43855         NULL, HFILL }},
43856     { &hf_nr_rrc_setup_40,
43857       { "setup", "nr-rrc.setup",
43858         FT_UINT32, BASE_DEC, NULL, 0,
43859         "PUSCH_TimeDomainResourceAllocationList", HFILL }},
43860     { &hf_nr_rrc_pusch_AggregationFactor,
43861       { "pusch-AggregationFactor", "nr-rrc.pusch_AggregationFactor",
43862         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pusch_AggregationFactor_vals), 0,
43863         NULL, HFILL }},
43864     { &hf_nr_rrc_mcs_Table_02,
43865       { "mcs-Table", "nr-rrc.mcs_Table",
43866         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_mcs_Table_02_vals), 0,
43867         "T_mcs_Table_02", HFILL }},
43868     { &hf_nr_rrc_mcs_TableTransformPrecoder_01,
43869       { "mcs-TableTransformPrecoder", "nr-rrc.mcs_TableTransformPrecoder",
43870         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_mcs_TableTransformPrecoder_01_vals), 0,
43871         "T_mcs_TableTransformPrecoder_01", HFILL }},
43872     { &hf_nr_rrc_transformPrecoder_01,
43873       { "transformPrecoder", "nr-rrc.transformPrecoder",
43874         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_transformPrecoder_01_vals), 0,
43875         "T_transformPrecoder_01", HFILL }},
43876     { &hf_nr_rrc_codebookSubset,
43877       { "codebookSubset", "nr-rrc.codebookSubset",
43878         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_codebookSubset_vals), 0,
43879         NULL, HFILL }},
43880     { &hf_nr_rrc_maxRank,
43881       { "maxRank", "nr-rrc.maxRank",
43882         FT_UINT32, BASE_DEC, NULL, 0,
43883         "INTEGER_1_4", HFILL }},
43884     { &hf_nr_rrc_rbg_Size_02,
43885       { "rbg-Size", "nr-rrc.rbg_Size",
43886         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_rbg_Size_02_vals), 0,
43887         "T_rbg_Size_02", HFILL }},
43888     { &hf_nr_rrc_uci_OnPUSCH_01,
43889       { "uci-OnPUSCH", "nr-rrc.uci_OnPUSCH",
43890         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_uci_OnPUSCH_01_vals), 0,
43891         "T_uci_OnPUSCH_01", HFILL }},
43892     { &hf_nr_rrc_setup_41,
43893       { "setup", "nr-rrc.setup_element",
43894         FT_NONE, BASE_NONE, NULL, 0,
43895         "UCI_OnPUSCH", HFILL }},
43896     { &hf_nr_rrc_tp_pi2BPSK,
43897       { "tp-pi2BPSK", "nr-rrc.tp_pi2BPSK",
43898         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_tp_pi2BPSK_vals), 0,
43899         NULL, HFILL }},
43900     { &hf_nr_rrc_betaOffsets,
43901       { "betaOffsets", "nr-rrc.betaOffsets",
43902         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_betaOffsets_vals), 0,
43903         NULL, HFILL }},
43904     { &hf_nr_rrc_dynamic_01,
43905       { "dynamic", "nr-rrc.dynamic",
43906         FT_UINT32, BASE_DEC, NULL, 0,
43907         "SEQUENCE_SIZE_4_OF_BetaOffsets", HFILL }},
43908     { &hf_nr_rrc_scaling,
43909       { "scaling", "nr-rrc.scaling",
43910         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_scaling_vals), 0,
43911         NULL, HFILL }},
43912     { &hf_nr_rrc_groupHoppingEnabledTransformPrecoding,
43913       { "groupHoppingEnabledTransformPrecoding", "nr-rrc.groupHoppingEnabledTransformPrecoding",
43914         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_groupHoppingEnabledTransformPrecoding_vals), 0,
43915         NULL, HFILL }},
43916     { &hf_nr_rrc_pusch_TimeDomainAllocationList_01,
43917       { "pusch-TimeDomainAllocationList", "nr-rrc.pusch_TimeDomainAllocationList",
43918         FT_UINT32, BASE_DEC, NULL, 0,
43919         "PUSCH_TimeDomainResourceAllocationList", HFILL }},
43920     { &hf_nr_rrc_msg3_DeltaPreamble,
43921       { "msg3-DeltaPreamble", "nr-rrc.msg3_DeltaPreamble",
43922         FT_INT32, BASE_CUSTOM, CF_FUNC(nr_rrc_msg3_DeltaPreamble_fmt), 0,
43923         "INTEGER_M1_6", HFILL }},
43924     { &hf_nr_rrc_p0_NominalWithGrant,
43925       { "p0-NominalWithGrant", "nr-rrc.p0_NominalWithGrant",
43926         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_dbm, 0,
43927         "INTEGER_M202_24", HFILL }},
43928     { &hf_nr_rrc_tpc_Accumulation,
43929       { "tpc-Accumulation", "nr-rrc.tpc_Accumulation",
43930         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_tpc_Accumulation_vals), 0,
43931         NULL, HFILL }},
43932     { &hf_nr_rrc_msg3_Alpha,
43933       { "msg3-Alpha", "nr-rrc.msg3_Alpha",
43934         FT_UINT32, BASE_DEC, VALS(nr_rrc_Alpha_vals), 0,
43935         "Alpha", HFILL }},
43936     { &hf_nr_rrc_p0_NominalWithoutGrant,
43937       { "p0-NominalWithoutGrant", "nr-rrc.p0_NominalWithoutGrant",
43938         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_dbm, 0,
43939         "INTEGER_M202_24", HFILL }},
43940     { &hf_nr_rrc_p0_AlphaSets,
43941       { "p0-AlphaSets", "nr-rrc.p0_AlphaSets",
43942         FT_UINT32, BASE_DEC, NULL, 0,
43943         "SEQUENCE_SIZE_1_maxNrofP0_PUSCH_AlphaSets_OF_P0_PUSCH_AlphaSet", HFILL }},
43944     { &hf_nr_rrc_p0_AlphaSets_item,
43945       { "P0-PUSCH-AlphaSet", "nr-rrc.P0_PUSCH_AlphaSet_element",
43946         FT_NONE, BASE_NONE, NULL, 0,
43947         NULL, HFILL }},
43948     { &hf_nr_rrc_pathlossReferenceRSToAddModList,
43949       { "pathlossReferenceRSToAddModList", "nr-rrc.pathlossReferenceRSToAddModList",
43950         FT_UINT32, BASE_DEC, NULL, 0,
43951         "SEQUENCE_SIZE_1_maxNrofPUSCH_PathlossReferenceRSs_OF_PUSCH_PathlossReferenceRS", HFILL }},
43952     { &hf_nr_rrc_pathlossReferenceRSToAddModList_item,
43953       { "PUSCH-PathlossReferenceRS", "nr-rrc.PUSCH_PathlossReferenceRS_element",
43954         FT_NONE, BASE_NONE, NULL, 0,
43955         NULL, HFILL }},
43956     { &hf_nr_rrc_pathlossReferenceRSToReleaseList,
43957       { "pathlossReferenceRSToReleaseList", "nr-rrc.pathlossReferenceRSToReleaseList",
43958         FT_UINT32, BASE_DEC, NULL, 0,
43959         "SEQUENCE_SIZE_1_maxNrofPUSCH_PathlossReferenceRSs_OF_PUSCH_PathlossReferenceRS_Id", HFILL }},
43960     { &hf_nr_rrc_pathlossReferenceRSToReleaseList_item,
43961       { "PUSCH-PathlossReferenceRS-Id", "nr-rrc.PUSCH_PathlossReferenceRS_Id",
43962         FT_UINT32, BASE_DEC, NULL, 0,
43963         NULL, HFILL }},
43964     { &hf_nr_rrc_twoPUSCH_PC_AdjustmentStates,
43965       { "twoPUSCH-PC-AdjustmentStates", "nr-rrc.twoPUSCH_PC_AdjustmentStates",
43966         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_twoPUSCH_PC_AdjustmentStates_vals), 0,
43967         NULL, HFILL }},
43968     { &hf_nr_rrc_deltaMCS,
43969       { "deltaMCS", "nr-rrc.deltaMCS",
43970         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_deltaMCS_vals), 0,
43971         NULL, HFILL }},
43972     { &hf_nr_rrc_sri_PUSCH_MappingToAddModList,
43973       { "sri-PUSCH-MappingToAddModList", "nr-rrc.sri_PUSCH_MappingToAddModList",
43974         FT_UINT32, BASE_DEC, NULL, 0,
43975         "SEQUENCE_SIZE_1_maxNrofSRI_PUSCH_Mappings_OF_SRI_PUSCH_PowerControl", HFILL }},
43976     { &hf_nr_rrc_sri_PUSCH_MappingToAddModList_item,
43977       { "SRI-PUSCH-PowerControl", "nr-rrc.SRI_PUSCH_PowerControl_element",
43978         FT_NONE, BASE_NONE, NULL, 0,
43979         NULL, HFILL }},
43980     { &hf_nr_rrc_sri_PUSCH_MappingToReleaseList,
43981       { "sri-PUSCH-MappingToReleaseList", "nr-rrc.sri_PUSCH_MappingToReleaseList",
43982         FT_UINT32, BASE_DEC, NULL, 0,
43983         "SEQUENCE_SIZE_1_maxNrofSRI_PUSCH_Mappings_OF_SRI_PUSCH_PowerControlId", HFILL }},
43984     { &hf_nr_rrc_sri_PUSCH_MappingToReleaseList_item,
43985       { "SRI-PUSCH-PowerControlId", "nr-rrc.SRI_PUSCH_PowerControlId",
43986         FT_UINT32, BASE_DEC, NULL, 0,
43987         NULL, HFILL }},
43988     { &hf_nr_rrc_p0_PUSCH_AlphaSetId,
43989       { "p0-PUSCH-AlphaSetId", "nr-rrc.p0_PUSCH_AlphaSetId",
43990         FT_UINT32, BASE_DEC, NULL, 0,
43991         NULL, HFILL }},
43992     { &hf_nr_rrc_p0,
43993       { "p0", "nr-rrc.p0",
43994         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_decibels, 0,
43995         "INTEGER_M16_15", HFILL }},
43996     { &hf_nr_rrc_alpha,
43997       { "alpha", "nr-rrc.alpha",
43998         FT_UINT32, BASE_DEC, VALS(nr_rrc_Alpha_vals), 0,
43999         NULL, HFILL }},
44000     { &hf_nr_rrc_pusch_PathlossReferenceRS_Id,
44001       { "pusch-PathlossReferenceRS-Id", "nr-rrc.pusch_PathlossReferenceRS_Id",
44002         FT_UINT32, BASE_DEC, NULL, 0,
44003         NULL, HFILL }},
44004     { &hf_nr_rrc_referenceSignal_02,
44005       { "referenceSignal", "nr-rrc.referenceSignal",
44006         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_referenceSignal_02_vals), 0,
44007         "T_referenceSignal_02", HFILL }},
44008     { &hf_nr_rrc_sri_PUSCH_PowerControlId,
44009       { "sri-PUSCH-PowerControlId", "nr-rrc.sri_PUSCH_PowerControlId",
44010         FT_UINT32, BASE_DEC, NULL, 0,
44011         NULL, HFILL }},
44012     { &hf_nr_rrc_sri_PUSCH_PathlossReferenceRS_Id,
44013       { "sri-PUSCH-PathlossReferenceRS-Id", "nr-rrc.sri_PUSCH_PathlossReferenceRS_Id",
44014         FT_UINT32, BASE_DEC, NULL, 0,
44015         "PUSCH_PathlossReferenceRS_Id", HFILL }},
44016     { &hf_nr_rrc_sri_P0_PUSCH_AlphaSetId,
44017       { "sri-P0-PUSCH-AlphaSetId", "nr-rrc.sri_P0_PUSCH_AlphaSetId",
44018         FT_UINT32, BASE_DEC, NULL, 0,
44019         "P0_PUSCH_AlphaSetId", HFILL }},
44020     { &hf_nr_rrc_sri_PUSCH_ClosedLoopIndex,
44021       { "sri-PUSCH-ClosedLoopIndex", "nr-rrc.sri_PUSCH_ClosedLoopIndex",
44022         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_sri_PUSCH_ClosedLoopIndex_vals), 0,
44023         NULL, HFILL }},
44024     { &hf_nr_rrc_betaOffsetACK_Index1,
44025       { "betaOffsetACK-Index1", "nr-rrc.betaOffsetACK_Index1",
44026         FT_UINT32, BASE_DEC, NULL, 0,
44027         "INTEGER_0_31", HFILL }},
44028     { &hf_nr_rrc_betaOffsetACK_Index2,
44029       { "betaOffsetACK-Index2", "nr-rrc.betaOffsetACK_Index2",
44030         FT_UINT32, BASE_DEC, NULL, 0,
44031         "INTEGER_0_31", HFILL }},
44032     { &hf_nr_rrc_betaOffsetACK_Index3,
44033       { "betaOffsetACK-Index3", "nr-rrc.betaOffsetACK_Index3",
44034         FT_UINT32, BASE_DEC, NULL, 0,
44035         "INTEGER_0_31", HFILL }},
44036     { &hf_nr_rrc_betaOffsetCSI_Part1_Index1,
44037       { "betaOffsetCSI-Part1-Index1", "nr-rrc.betaOffsetCSI_Part1_Index1",
44038         FT_UINT32, BASE_DEC, NULL, 0,
44039         "INTEGER_0_31", HFILL }},
44040     { &hf_nr_rrc_betaOffsetCSI_Part1_Index2,
44041       { "betaOffsetCSI-Part1-Index2", "nr-rrc.betaOffsetCSI_Part1_Index2",
44042         FT_UINT32, BASE_DEC, NULL, 0,
44043         "INTEGER_0_31", HFILL }},
44044     { &hf_nr_rrc_betaOffsetCSI_Part2_Index1,
44045       { "betaOffsetCSI-Part2-Index1", "nr-rrc.betaOffsetCSI_Part2_Index1",
44046         FT_UINT32, BASE_DEC, NULL, 0,
44047         "INTEGER_0_31", HFILL }},
44048     { &hf_nr_rrc_betaOffsetCSI_Part2_Index2,
44049       { "betaOffsetCSI-Part2-Index2", "nr-rrc.betaOffsetCSI_Part2_Index2",
44050         FT_UINT32, BASE_DEC, NULL, 0,
44051         "INTEGER_0_31", HFILL }},
44052     { &hf_nr_rrc_codeBlockGroupTransmission_01,
44053       { "codeBlockGroupTransmission", "nr-rrc.codeBlockGroupTransmission",
44054         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_codeBlockGroupTransmission_01_vals), 0,
44055         "T_codeBlockGroupTransmission_01", HFILL }},
44056     { &hf_nr_rrc_setup_42,
44057       { "setup", "nr-rrc.setup_element",
44058         FT_NONE, BASE_NONE, NULL, 0,
44059         "PUSCH_CodeBlockGroupTransmission", HFILL }},
44060     { &hf_nr_rrc_rateMatching,
44061       { "rateMatching", "nr-rrc.rateMatching",
44062         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_rateMatching_vals), 0,
44063         NULL, HFILL }},
44064     { &hf_nr_rrc_xOverhead_01,
44065       { "xOverhead", "nr-rrc.xOverhead",
44066         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_xOverhead_01_vals), 0,
44067         "T_xOverhead_01", HFILL }},
44068     { &hf_nr_rrc_maxCodeBlockGroupsPerTransportBlock_01,
44069       { "maxCodeBlockGroupsPerTransportBlock", "nr-rrc.maxCodeBlockGroupsPerTransportBlock",
44070         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_maxCodeBlockGroupsPerTransportBlock_01_vals), 0,
44071         "T_maxCodeBlockGroupsPerTransportBlock_01", HFILL }},
44072     { &hf_nr_rrc_PUSCH_TimeDomainResourceAllocationList_item,
44073       { "PUSCH-TimeDomainResourceAllocation", "nr-rrc.PUSCH_TimeDomainResourceAllocation_element",
44074         FT_NONE, BASE_NONE, NULL, 0,
44075         NULL, HFILL }},
44076     { &hf_nr_rrc_k2,
44077       { "k2", "nr-rrc.k2",
44078         FT_UINT32, BASE_DEC, NULL, 0,
44079         "INTEGER_0_32", HFILL }},
44080     { &hf_nr_rrc_mappingType_01,
44081       { "mappingType", "nr-rrc.mappingType",
44082         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_mappingType_01_vals), 0,
44083         "T_mappingType_01", HFILL }},
44084     { &hf_nr_rrc_tpc_Index,
44085       { "tpc-Index", "nr-rrc.tpc_Index",
44086         FT_UINT32, BASE_DEC, NULL, 0,
44087         "INTEGER_1_15", HFILL }},
44088     { &hf_nr_rrc_tpc_IndexSUL,
44089       { "tpc-IndexSUL", "nr-rrc.tpc_IndexSUL",
44090         FT_UINT32, BASE_DEC, NULL, 0,
44091         "INTEGER_1_15", HFILL }},
44092     { &hf_nr_rrc_targetCell,
44093       { "targetCell", "nr-rrc.targetCell",
44094         FT_UINT32, BASE_DEC, NULL, 0,
44095         "ServCellIndex", HFILL }},
44096     { &hf_nr_rrc_quantityConfigNR_List,
44097       { "quantityConfigNR-List", "nr-rrc.quantityConfigNR_List",
44098         FT_UINT32, BASE_DEC, NULL, 0,
44099         "SEQUENCE_SIZE_1_maxNrofQuantityConfig_OF_QuantityConfigNR", HFILL }},
44100     { &hf_nr_rrc_quantityConfigNR_List_item,
44101       { "QuantityConfigNR", "nr-rrc.QuantityConfigNR_element",
44102         FT_NONE, BASE_NONE, NULL, 0,
44103         NULL, HFILL }},
44104     { &hf_nr_rrc_quantityConfigEUTRA,
44105       { "quantityConfigEUTRA", "nr-rrc.quantityConfigEUTRA_element",
44106         FT_NONE, BASE_NONE, NULL, 0,
44107         "FilterConfig", HFILL }},
44108     { &hf_nr_rrc_quantityConfigCell,
44109       { "quantityConfigCell", "nr-rrc.quantityConfigCell_element",
44110         FT_NONE, BASE_NONE, NULL, 0,
44111         "QuantityConfigRS", HFILL }},
44112     { &hf_nr_rrc_quantityConfigRS_Index,
44113       { "quantityConfigRS-Index", "nr-rrc.quantityConfigRS_Index_element",
44114         FT_NONE, BASE_NONE, NULL, 0,
44115         "QuantityConfigRS", HFILL }},
44116     { &hf_nr_rrc_ssb_FilterConfig,
44117       { "ssb-FilterConfig", "nr-rrc.ssb_FilterConfig_element",
44118         FT_NONE, BASE_NONE, NULL, 0,
44119         "FilterConfig", HFILL }},
44120     { &hf_nr_rrc_cs_RS_FilterConfig,
44121       { "cs-RS-FilterConfig", "nr-rrc.cs_RS_FilterConfig_element",
44122         FT_NONE, BASE_NONE, NULL, 0,
44123         "FilterConfig", HFILL }},
44124     { &hf_nr_rrc_filterCoefficientRSRP,
44125       { "filterCoefficientRSRP", "nr-rrc.filterCoefficientRSRP",
44126         FT_UINT32, BASE_DEC, VALS(nr_rrc_FilterCoefficient_vals), 0,
44127         "FilterCoefficient", HFILL }},
44128     { &hf_nr_rrc_filterCoefficientRSRQ,
44129       { "filterCoefficientRSRQ", "nr-rrc.filterCoefficientRSRQ",
44130         FT_UINT32, BASE_DEC, VALS(nr_rrc_FilterCoefficient_vals), 0,
44131         "FilterCoefficient", HFILL }},
44132     { &hf_nr_rrc_filterCoefficientRS_SINR,
44133       { "filterCoefficientRS-SINR", "nr-rrc.filterCoefficientRS_SINR",
44134         FT_UINT32, BASE_DEC, VALS(nr_rrc_FilterCoefficient_vals), 0,
44135         "FilterCoefficient", HFILL }},
44136     { &hf_nr_rrc_rach_ConfigGeneric,
44137       { "rach-ConfigGeneric", "nr-rrc.rach_ConfigGeneric_element",
44138         FT_NONE, BASE_NONE, NULL, 0,
44139         NULL, HFILL }},
44140     { &hf_nr_rrc_totalNumberOfRA_Preambles,
44141       { "totalNumberOfRA-Preambles", "nr-rrc.totalNumberOfRA_Preambles",
44142         FT_UINT32, BASE_DEC, NULL, 0,
44143         "INTEGER_1_63", HFILL }},
44144     { &hf_nr_rrc_ssb_perRACH_OccasionAndCB_PreamblesPerSSB,
44145       { "ssb-perRACH-OccasionAndCB-PreamblesPerSSB", "nr-rrc.ssb_perRACH_OccasionAndCB_PreamblesPerSSB",
44146         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_ssb_perRACH_OccasionAndCB_PreamblesPerSSB_vals), 0,
44147         NULL, HFILL }},
44148     { &hf_nr_rrc_oneEighth,
44149       { "oneEighth", "nr-rrc.oneEighth",
44150         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_oneEighth_vals), 0,
44151         NULL, HFILL }},
44152     { &hf_nr_rrc_oneFourth,
44153       { "oneFourth", "nr-rrc.oneFourth",
44154         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_oneFourth_vals), 0,
44155         NULL, HFILL }},
44156     { &hf_nr_rrc_oneHalf,
44157       { "oneHalf", "nr-rrc.oneHalf",
44158         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_oneHalf_vals), 0,
44159         NULL, HFILL }},
44160     { &hf_nr_rrc_one_01,
44161       { "one", "nr-rrc.one",
44162         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_one_vals), 0,
44163         NULL, HFILL }},
44164     { &hf_nr_rrc_two_01,
44165       { "two", "nr-rrc.two",
44166         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_two_01_vals), 0,
44167         "T_two_01", HFILL }},
44168     { &hf_nr_rrc_four,
44169       { "four", "nr-rrc.four",
44170         FT_UINT32, BASE_DEC, NULL, 0,
44171         "INTEGER_1_16", HFILL }},
44172     { &hf_nr_rrc_eight,
44173       { "eight", "nr-rrc.eight",
44174         FT_UINT32, BASE_DEC, NULL, 0,
44175         "INTEGER_1_8", HFILL }},
44176     { &hf_nr_rrc_sixteen,
44177       { "sixteen", "nr-rrc.sixteen",
44178         FT_UINT32, BASE_DEC, NULL, 0,
44179         "INTEGER_1_4", HFILL }},
44180     { &hf_nr_rrc_groupBconfigured,
44181       { "groupBconfigured", "nr-rrc.groupBconfigured_element",
44182         FT_NONE, BASE_NONE, NULL, 0,
44183         NULL, HFILL }},
44184     { &hf_nr_rrc_ra_Msg3SizeGroupA,
44185       { "ra-Msg3SizeGroupA", "nr-rrc.ra_Msg3SizeGroupA",
44186         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_ra_Msg3SizeGroupA_vals), 0,
44187         NULL, HFILL }},
44188     { &hf_nr_rrc_messagePowerOffsetGroupB,
44189       { "messagePowerOffsetGroupB", "nr-rrc.messagePowerOffsetGroupB",
44190         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_messagePowerOffsetGroupB_vals), 0,
44191         NULL, HFILL }},
44192     { &hf_nr_rrc_numberOfRA_PreamblesGroupA,
44193       { "numberOfRA-PreamblesGroupA", "nr-rrc.numberOfRA_PreamblesGroupA",
44194         FT_UINT32, BASE_DEC, NULL, 0,
44195         "INTEGER_1_64", HFILL }},
44196     { &hf_nr_rrc_ra_ContentionResolutionTimer,
44197       { "ra-ContentionResolutionTimer", "nr-rrc.ra_ContentionResolutionTimer",
44198         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_ra_ContentionResolutionTimer_vals), 0,
44199         NULL, HFILL }},
44200     { &hf_nr_rrc_rsrp_ThresholdSSB_SUL,
44201       { "rsrp-ThresholdSSB-SUL", "nr-rrc.rsrp_ThresholdSSB_SUL",
44202         FT_UINT32, BASE_CUSTOM, CF_FUNC(nr_rrc_RSRP_Range_fmt), 0,
44203         "RSRP_Range", HFILL }},
44204     { &hf_nr_rrc_prach_RootSequenceIndex,
44205       { "prach-RootSequenceIndex", "nr-rrc.prach_RootSequenceIndex",
44206         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_prach_RootSequenceIndex_vals), 0,
44207         NULL, HFILL }},
44208     { &hf_nr_rrc_l839,
44209       { "l839", "nr-rrc.l839",
44210         FT_UINT32, BASE_DEC, NULL, 0,
44211         "INTEGER_0_837", HFILL }},
44212     { &hf_nr_rrc_l139,
44213       { "l139", "nr-rrc.l139",
44214         FT_UINT32, BASE_DEC, NULL, 0,
44215         "INTEGER_0_137", HFILL }},
44216     { &hf_nr_rrc_msg1_SubcarrierSpacing,
44217       { "msg1-SubcarrierSpacing", "nr-rrc.msg1_SubcarrierSpacing",
44218         FT_UINT32, BASE_DEC, VALS(nr_rrc_SubcarrierSpacing_vals), 0,
44219         "SubcarrierSpacing", HFILL }},
44220     { &hf_nr_rrc_restrictedSetConfig,
44221       { "restrictedSetConfig", "nr-rrc.restrictedSetConfig",
44222         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_restrictedSetConfig_vals), 0,
44223         NULL, HFILL }},
44224     { &hf_nr_rrc_msg3_transformPrecoder,
44225       { "msg3-transformPrecoder", "nr-rrc.msg3_transformPrecoder",
44226         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_msg3_transformPrecoder_vals), 0,
44227         NULL, HFILL }},
44228     { &hf_nr_rrc_cfra,
44229       { "cfra", "nr-rrc.cfra_element",
44230         FT_NONE, BASE_NONE, NULL, 0,
44231         NULL, HFILL }},
44232     { &hf_nr_rrc_occasions,
44233       { "occasions", "nr-rrc.occasions_element",
44234         FT_NONE, BASE_NONE, NULL, 0,
44235         NULL, HFILL }},
44236     { &hf_nr_rrc_ssb_perRACH_Occasion_01,
44237       { "ssb-perRACH-Occasion", "nr-rrc.ssb_perRACH_Occasion",
44238         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_ssb_perRACH_Occasion_01_vals), 0,
44239         "T_ssb_perRACH_Occasion_01", HFILL }},
44240     { &hf_nr_rrc_resources,
44241       { "resources", "nr-rrc.resources",
44242         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_resources_vals), 0,
44243         NULL, HFILL }},
44244     { &hf_nr_rrc_ssb_02,
44245       { "ssb", "nr-rrc.ssb_element",
44246         FT_NONE, BASE_NONE, NULL, 0,
44247         NULL, HFILL }},
44248     { &hf_nr_rrc_ssb_ResourceList,
44249       { "ssb-ResourceList", "nr-rrc.ssb_ResourceList",
44250         FT_UINT32, BASE_DEC, NULL, 0,
44251         "SEQUENCE_SIZE_1_maxRA_SSB_Resources_OF_CFRA_SSB_Resource", HFILL }},
44252     { &hf_nr_rrc_ssb_ResourceList_item,
44253       { "CFRA-SSB-Resource", "nr-rrc.CFRA_SSB_Resource_element",
44254         FT_NONE, BASE_NONE, NULL, 0,
44255         NULL, HFILL }},
44256     { &hf_nr_rrc_csirs,
44257       { "csirs", "nr-rrc.csirs_element",
44258         FT_NONE, BASE_NONE, NULL, 0,
44259         NULL, HFILL }},
44260     { &hf_nr_rrc_csirs_ResourceList,
44261       { "csirs-ResourceList", "nr-rrc.csirs_ResourceList",
44262         FT_UINT32, BASE_DEC, NULL, 0,
44263         "SEQUENCE_SIZE_1_maxRA_CSIRS_Resources_OF_CFRA_CSIRS_Resource", HFILL }},
44264     { &hf_nr_rrc_csirs_ResourceList_item,
44265       { "CFRA-CSIRS-Resource", "nr-rrc.CFRA_CSIRS_Resource_element",
44266         FT_NONE, BASE_NONE, NULL, 0,
44267         NULL, HFILL }},
44268     { &hf_nr_rrc_rsrp_ThresholdCSI_RS,
44269       { "rsrp-ThresholdCSI-RS", "nr-rrc.rsrp_ThresholdCSI_RS",
44270         FT_UINT32, BASE_CUSTOM, CF_FUNC(nr_rrc_RSRP_Range_fmt), 0,
44271         "RSRP_Range", HFILL }},
44272     { &hf_nr_rrc_totalNumberOfRA_Preambles_v1530,
44273       { "totalNumberOfRA-Preambles-v1530", "nr-rrc.totalNumberOfRA_Preambles_v1530",
44274         FT_UINT32, BASE_DEC, NULL, 0,
44275         "INTEGER_1_63", HFILL }},
44276     { &hf_nr_rrc_csi_RS_02,
44277       { "csi-RS", "nr-rrc.csi_RS",
44278         FT_UINT32, BASE_DEC, NULL, 0,
44279         "CSI_RS_Index", HFILL }},
44280     { &hf_nr_rrc_ra_OccasionList_01,
44281       { "ra-OccasionList", "nr-rrc.ra_OccasionList",
44282         FT_UINT32, BASE_DEC, NULL, 0,
44283         "T_ra_OccasionList_01", HFILL }},
44284     { &hf_nr_rrc_prach_ConfigurationIndex,
44285       { "prach-ConfigurationIndex", "nr-rrc.prach_ConfigurationIndex",
44286         FT_UINT32, BASE_DEC, NULL, 0,
44287         "INTEGER_0_255", HFILL }},
44288     { &hf_nr_rrc_msg1_FDM,
44289       { "msg1-FDM", "nr-rrc.msg1_FDM",
44290         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_msg1_FDM_vals), 0,
44291         NULL, HFILL }},
44292     { &hf_nr_rrc_msg1_FrequencyStart,
44293       { "msg1-FrequencyStart", "nr-rrc.msg1_FrequencyStart",
44294         FT_UINT32, BASE_DEC, NULL, 0,
44295         "INTEGER_0_maxNrofPhysicalResourceBlocks_1", HFILL }},
44296     { &hf_nr_rrc_zeroCorrelationZoneConfig,
44297       { "zeroCorrelationZoneConfig", "nr-rrc.zeroCorrelationZoneConfig",
44298         FT_UINT32, BASE_DEC, NULL, 0,
44299         "INTEGER_0_15", HFILL }},
44300     { &hf_nr_rrc_preambleReceivedTargetPower,
44301       { "preambleReceivedTargetPower", "nr-rrc.preambleReceivedTargetPower",
44302         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_dbm, 0,
44303         "INTEGER_M202_M60", HFILL }},
44304     { &hf_nr_rrc_preambleTransMax,
44305       { "preambleTransMax", "nr-rrc.preambleTransMax",
44306         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_preambleTransMax_vals), 0,
44307         NULL, HFILL }},
44308     { &hf_nr_rrc_powerRampingStep,
44309       { "powerRampingStep", "nr-rrc.powerRampingStep",
44310         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_powerRampingStep_vals), 0,
44311         NULL, HFILL }},
44312     { &hf_nr_rrc_ra_ResponseWindow,
44313       { "ra-ResponseWindow", "nr-rrc.ra_ResponseWindow",
44314         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_ra_ResponseWindow_vals), 0,
44315         NULL, HFILL }},
44316     { &hf_nr_rrc_powerRampingStepHighPriority,
44317       { "powerRampingStepHighPriority", "nr-rrc.powerRampingStepHighPriority",
44318         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_powerRampingStepHighPriority_vals), 0,
44319         NULL, HFILL }},
44320     { &hf_nr_rrc_scalingFactorBI,
44321       { "scalingFactorBI", "nr-rrc.scalingFactorBI",
44322         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_scalingFactorBI_vals), 0,
44323         NULL, HFILL }},
44324     { &hf_nr_rrc_srb_ToAddModList,
44325       { "srb-ToAddModList", "nr-rrc.srb_ToAddModList",
44326         FT_UINT32, BASE_DEC, NULL, 0,
44327         NULL, HFILL }},
44328     { &hf_nr_rrc_srb3_ToRelease,
44329       { "srb3-ToRelease", "nr-rrc.srb3_ToRelease",
44330         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_srb3_ToRelease_vals), 0,
44331         NULL, HFILL }},
44332     { &hf_nr_rrc_drb_ToAddModList,
44333       { "drb-ToAddModList", "nr-rrc.drb_ToAddModList",
44334         FT_UINT32, BASE_DEC, NULL, 0,
44335         NULL, HFILL }},
44336     { &hf_nr_rrc_drb_ToReleaseList,
44337       { "drb-ToReleaseList", "nr-rrc.drb_ToReleaseList",
44338         FT_UINT32, BASE_DEC, NULL, 0,
44339         NULL, HFILL }},
44340     { &hf_nr_rrc_securityConfig,
44341       { "securityConfig", "nr-rrc.securityConfig_element",
44342         FT_NONE, BASE_NONE, NULL, 0,
44343         NULL, HFILL }},
44344     { &hf_nr_rrc_SRB_ToAddModList_item,
44345       { "SRB-ToAddMod", "nr-rrc.SRB_ToAddMod_element",
44346         FT_NONE, BASE_NONE, NULL, 0,
44347         NULL, HFILL }},
44348     { &hf_nr_rrc_srb_Identity,
44349       { "srb-Identity", "nr-rrc.srb_Identity",
44350         FT_UINT32, BASE_DEC, NULL, 0,
44351         NULL, HFILL }},
44352     { &hf_nr_rrc_reestablishPDCP,
44353       { "reestablishPDCP", "nr-rrc.reestablishPDCP",
44354         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_reestablishPDCP_vals), 0,
44355         NULL, HFILL }},
44356     { &hf_nr_rrc_discardOnPDCP,
44357       { "discardOnPDCP", "nr-rrc.discardOnPDCP",
44358         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_discardOnPDCP_vals), 0,
44359         NULL, HFILL }},
44360     { &hf_nr_rrc_pdcp_Config,
44361       { "pdcp-Config", "nr-rrc.pdcp_Config_element",
44362         FT_NONE, BASE_NONE, NULL, 0,
44363         NULL, HFILL }},
44364     { &hf_nr_rrc_DRB_ToAddModList_item,
44365       { "DRB-ToAddMod", "nr-rrc.DRB_ToAddMod_element",
44366         FT_NONE, BASE_NONE, NULL, 0,
44367         NULL, HFILL }},
44368     { &hf_nr_rrc_cnAssociation,
44369       { "cnAssociation", "nr-rrc.cnAssociation",
44370         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_cnAssociation_vals), 0,
44371         NULL, HFILL }},
44372     { &hf_nr_rrc_eps_BearerIdentity,
44373       { "eps-BearerIdentity", "nr-rrc.eps_BearerIdentity",
44374         FT_UINT32, BASE_DEC, NULL, 0,
44375         "INTEGER_0_15", HFILL }},
44376     { &hf_nr_rrc_sdap_Config,
44377       { "sdap-Config", "nr-rrc.sdap_Config_element",
44378         FT_NONE, BASE_NONE, NULL, 0,
44379         NULL, HFILL }},
44380     { &hf_nr_rrc_reestablishPDCP_01,
44381       { "reestablishPDCP", "nr-rrc.reestablishPDCP",
44382         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_reestablishPDCP_01_vals), 0,
44383         "T_reestablishPDCP_01", HFILL }},
44384     { &hf_nr_rrc_recoverPDCP,
44385       { "recoverPDCP", "nr-rrc.recoverPDCP",
44386         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_recoverPDCP_vals), 0,
44387         NULL, HFILL }},
44388     { &hf_nr_rrc_DRB_ToReleaseList_item,
44389       { "DRB-Identity", "nr-rrc.DRB_Identity",
44390         FT_UINT32, BASE_DEC, NULL, 0,
44391         NULL, HFILL }},
44392     { &hf_nr_rrc_keyToUse,
44393       { "keyToUse", "nr-rrc.keyToUse",
44394         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_keyToUse_vals), 0,
44395         NULL, HFILL }},
44396     { &hf_nr_rrc_failureDetectionResourcesToAddModList,
44397       { "failureDetectionResourcesToAddModList", "nr-rrc.failureDetectionResourcesToAddModList",
44398         FT_UINT32, BASE_DEC, NULL, 0,
44399         "SEQUENCE_SIZE_1_maxNrofFailureDetectionResources_OF_RadioLinkMonitoringRS", HFILL }},
44400     { &hf_nr_rrc_failureDetectionResourcesToAddModList_item,
44401       { "RadioLinkMonitoringRS", "nr-rrc.RadioLinkMonitoringRS_element",
44402         FT_NONE, BASE_NONE, NULL, 0,
44403         NULL, HFILL }},
44404     { &hf_nr_rrc_failureDetectionResourcesToReleaseList,
44405       { "failureDetectionResourcesToReleaseList", "nr-rrc.failureDetectionResourcesToReleaseList",
44406         FT_UINT32, BASE_DEC, NULL, 0,
44407         "SEQUENCE_SIZE_1_maxNrofFailureDetectionResources_OF_RadioLinkMonitoringRS_Id", HFILL }},
44408     { &hf_nr_rrc_failureDetectionResourcesToReleaseList_item,
44409       { "RadioLinkMonitoringRS-Id", "nr-rrc.RadioLinkMonitoringRS_Id",
44410         FT_UINT32, BASE_DEC, NULL, 0,
44411         NULL, HFILL }},
44412     { &hf_nr_rrc_beamFailureInstanceMaxCount,
44413       { "beamFailureInstanceMaxCount", "nr-rrc.beamFailureInstanceMaxCount",
44414         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_beamFailureInstanceMaxCount_vals), 0,
44415         NULL, HFILL }},
44416     { &hf_nr_rrc_beamFailureDetectionTimer,
44417       { "beamFailureDetectionTimer", "nr-rrc.beamFailureDetectionTimer",
44418         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_beamFailureDetectionTimer_vals), 0,
44419         NULL, HFILL }},
44420     { &hf_nr_rrc_radioLinkMonitoringRS_Id,
44421       { "radioLinkMonitoringRS-Id", "nr-rrc.radioLinkMonitoringRS_Id",
44422         FT_UINT32, BASE_DEC, NULL, 0,
44423         NULL, HFILL }},
44424     { &hf_nr_rrc_purpose,
44425       { "purpose", "nr-rrc.purpose",
44426         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_purpose_vals), 0,
44427         NULL, HFILL }},
44428     { &hf_nr_rrc_detectionResource,
44429       { "detectionResource", "nr-rrc.detectionResource",
44430         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_detectionResource_vals), 0,
44431         NULL, HFILL }},
44432     { &hf_nr_rrc_rateMatchPatternId,
44433       { "rateMatchPatternId", "nr-rrc.rateMatchPatternId",
44434         FT_UINT32, BASE_DEC, NULL, 0,
44435         NULL, HFILL }},
44436     { &hf_nr_rrc_patternType,
44437       { "patternType", "nr-rrc.patternType",
44438         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_patternType_vals), 0,
44439         NULL, HFILL }},
44440     { &hf_nr_rrc_bitmaps,
44441       { "bitmaps", "nr-rrc.bitmaps_element",
44442         FT_NONE, BASE_NONE, NULL, 0,
44443         NULL, HFILL }},
44444     { &hf_nr_rrc_resourceBlocks,
44445       { "resourceBlocks", "nr-rrc.resourceBlocks",
44446         FT_BYTES, BASE_NONE, NULL, 0,
44447         "BIT_STRING_SIZE_275", HFILL }},
44448     { &hf_nr_rrc_symbolsInResourceBlock,
44449       { "symbolsInResourceBlock", "nr-rrc.symbolsInResourceBlock",
44450         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_symbolsInResourceBlock_vals), 0,
44451         NULL, HFILL }},
44452     { &hf_nr_rrc_oneSlot,
44453       { "oneSlot", "nr-rrc.oneSlot",
44454         FT_BYTES, BASE_NONE, NULL, 0,
44455         "BIT_STRING_SIZE_14", HFILL }},
44456     { &hf_nr_rrc_twoSlots,
44457       { "twoSlots", "nr-rrc.twoSlots",
44458         FT_BYTES, BASE_NONE, NULL, 0,
44459         "BIT_STRING_SIZE_28", HFILL }},
44460     { &hf_nr_rrc_periodicityAndPattern,
44461       { "periodicityAndPattern", "nr-rrc.periodicityAndPattern",
44462         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_periodicityAndPattern_vals), 0,
44463         NULL, HFILL }},
44464     { &hf_nr_rrc_n2,
44465       { "n2", "nr-rrc.n2",
44466         FT_BYTES, BASE_NONE, NULL, 0,
44467         "BIT_STRING_SIZE_2", HFILL }},
44468     { &hf_nr_rrc_n4,
44469       { "n4", "nr-rrc.n4",
44470         FT_BYTES, BASE_NONE, NULL, 0,
44471         "BIT_STRING_SIZE_4", HFILL }},
44472     { &hf_nr_rrc_n5,
44473       { "n5", "nr-rrc.n5",
44474         FT_BYTES, BASE_NONE, NULL, 0,
44475         "BIT_STRING_SIZE_5", HFILL }},
44476     { &hf_nr_rrc_n8,
44477       { "n8", "nr-rrc.n8",
44478         FT_BYTES, BASE_NONE, NULL, 0,
44479         "BIT_STRING_SIZE_8", HFILL }},
44480     { &hf_nr_rrc_n10,
44481       { "n10", "nr-rrc.n10",
44482         FT_BYTES, BASE_NONE, NULL, 0,
44483         "BIT_STRING_SIZE_10", HFILL }},
44484     { &hf_nr_rrc_n20,
44485       { "n20", "nr-rrc.n20",
44486         FT_BYTES, BASE_NONE, NULL, 0,
44487         "BIT_STRING_SIZE_20", HFILL }},
44488     { &hf_nr_rrc_n40,
44489       { "n40", "nr-rrc.n40",
44490         FT_BYTES, BASE_NONE, NULL, 0,
44491         "BIT_STRING_SIZE_40", HFILL }},
44492     { &hf_nr_rrc_controlResourceSet,
44493       { "controlResourceSet", "nr-rrc.controlResourceSet",
44494         FT_UINT32, BASE_DEC, NULL, 0,
44495         "ControlResourceSetId", HFILL }},
44496     { &hf_nr_rrc_dummy_01,
44497       { "dummy", "nr-rrc.dummy",
44498         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_dummy_vals), 0,
44499         NULL, HFILL }},
44500     { &hf_nr_rrc_carrierFreqDL,
44501       { "carrierFreqDL", "nr-rrc.carrierFreqDL",
44502         FT_UINT32, BASE_DEC, NULL, 0,
44503         "INTEGER_0_16383", HFILL }},
44504     { &hf_nr_rrc_carrierBandwidthDL,
44505       { "carrierBandwidthDL", "nr-rrc.carrierBandwidthDL",
44506         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_carrierBandwidthDL_vals), 0,
44507         NULL, HFILL }},
44508     { &hf_nr_rrc_mbsfn_SubframeConfigList,
44509       { "mbsfn-SubframeConfigList", "nr-rrc.mbsfn_SubframeConfigList",
44510         FT_UINT32, BASE_DEC, NULL, 0,
44511         "EUTRA_MBSFN_SubframeConfigList", HFILL }},
44512     { &hf_nr_rrc_nrofCRS_Ports,
44513       { "nrofCRS-Ports", "nr-rrc.nrofCRS_Ports",
44514         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_nrofCRS_Ports_vals), 0,
44515         NULL, HFILL }},
44516     { &hf_nr_rrc_v_Shift,
44517       { "v-Shift", "nr-rrc.v_Shift",
44518         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_v_Shift_vals), 0,
44519         NULL, HFILL }},
44520     { &hf_nr_rrc_reportType,
44521       { "reportType", "nr-rrc.reportType",
44522         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_reportType_vals), 0,
44523         NULL, HFILL }},
44524     { &hf_nr_rrc_periodical,
44525       { "periodical", "nr-rrc.periodical_element",
44526         FT_NONE, BASE_NONE, NULL, 0,
44527         "PeriodicalReportConfigInterRAT", HFILL }},
44528     { &hf_nr_rrc_eventTriggered,
44529       { "eventTriggered", "nr-rrc.eventTriggered_element",
44530         FT_NONE, BASE_NONE, NULL, 0,
44531         "EventTriggerConfigInterRAT", HFILL }},
44532     { &hf_nr_rrc_reportCGI,
44533       { "reportCGI", "nr-rrc.reportCGI_element",
44534         FT_NONE, BASE_NONE, NULL, 0,
44535         "ReportCGI_EUTRA", HFILL }},
44536     { &hf_nr_rrc_cellForWhichToReportCGI,
44537       { "cellForWhichToReportCGI", "nr-rrc.cellForWhichToReportCGI",
44538         FT_UINT32, BASE_DEC, NULL, 0,
44539         "EUTRA_PhysCellId", HFILL }},
44540     { &hf_nr_rrc_eventId,
44541       { "eventId", "nr-rrc.eventId",
44542         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_eventId_vals), 0,
44543         NULL, HFILL }},
44544     { &hf_nr_rrc_eventB1,
44545       { "eventB1", "nr-rrc.eventB1_element",
44546         FT_NONE, BASE_NONE, NULL, 0,
44547         NULL, HFILL }},
44548     { &hf_nr_rrc_b1_ThresholdEUTRA,
44549       { "b1-ThresholdEUTRA", "nr-rrc.b1_ThresholdEUTRA",
44550         FT_UINT32, BASE_DEC, VALS(nr_rrc_MeasTriggerQuantityEUTRA_vals), 0,
44551         "MeasTriggerQuantityEUTRA", HFILL }},
44552     { &hf_nr_rrc_reportOnLeave,
44553       { "reportOnLeave", "nr-rrc.reportOnLeave",
44554         FT_BOOLEAN, BASE_NONE, NULL, 0,
44555         "BOOLEAN", HFILL }},
44556     { &hf_nr_rrc_hysteresis,
44557       { "hysteresis", "nr-rrc.hysteresis",
44558         FT_UINT32, BASE_CUSTOM, CF_FUNC(nr_rrc_Hysteresis_fmt), 0,
44559         NULL, HFILL }},
44560     { &hf_nr_rrc_timeToTrigger,
44561       { "timeToTrigger", "nr-rrc.timeToTrigger",
44562         FT_UINT32, BASE_DEC, VALS(nr_rrc_TimeToTrigger_vals), 0,
44563         NULL, HFILL }},
44564     { &hf_nr_rrc_eventB2,
44565       { "eventB2", "nr-rrc.eventB2_element",
44566         FT_NONE, BASE_NONE, NULL, 0,
44567         NULL, HFILL }},
44568     { &hf_nr_rrc_b2_Threshold1,
44569       { "b2-Threshold1", "nr-rrc.b2_Threshold1",
44570         FT_UINT32, BASE_DEC, VALS(nr_rrc_MeasTriggerQuantity_vals), 0,
44571         "MeasTriggerQuantity", HFILL }},
44572     { &hf_nr_rrc_b2_Threshold2EUTRA,
44573       { "b2-Threshold2EUTRA", "nr-rrc.b2_Threshold2EUTRA",
44574         FT_UINT32, BASE_DEC, VALS(nr_rrc_MeasTriggerQuantityEUTRA_vals), 0,
44575         "MeasTriggerQuantityEUTRA", HFILL }},
44576     { &hf_nr_rrc_rsType,
44577       { "rsType", "nr-rrc.rsType",
44578         FT_UINT32, BASE_DEC, VALS(nr_rrc_NR_RS_Type_vals), 0,
44579         "NR_RS_Type", HFILL }},
44580     { &hf_nr_rrc_reportInterval,
44581       { "reportInterval", "nr-rrc.reportInterval",
44582         FT_UINT32, BASE_DEC, VALS(nr_rrc_ReportInterval_vals), 0,
44583         NULL, HFILL }},
44584     { &hf_nr_rrc_reportAmount,
44585       { "reportAmount", "nr-rrc.reportAmount",
44586         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_reportAmount_vals), 0,
44587         NULL, HFILL }},
44588     { &hf_nr_rrc_reportQuantity_01,
44589       { "reportQuantity", "nr-rrc.reportQuantity_element",
44590         FT_NONE, BASE_NONE, NULL, 0,
44591         "MeasReportQuantity", HFILL }},
44592     { &hf_nr_rrc_maxReportCells,
44593       { "maxReportCells", "nr-rrc.maxReportCells",
44594         FT_UINT32, BASE_DEC, NULL, 0,
44595         "INTEGER_1_maxCellReport", HFILL }},
44596     { &hf_nr_rrc_reportAmount_01,
44597       { "reportAmount", "nr-rrc.reportAmount",
44598         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_reportAmount_01_vals), 0,
44599         "T_reportAmount_01", HFILL }},
44600     { &hf_nr_rrc_reportType_01,
44601       { "reportType", "nr-rrc.reportType",
44602         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_reportType_01_vals), 0,
44603         "T_reportType_01", HFILL }},
44604     { &hf_nr_rrc_periodical_01,
44605       { "periodical", "nr-rrc.periodical_element",
44606         FT_NONE, BASE_NONE, NULL, 0,
44607         "PeriodicalReportConfig", HFILL }},
44608     { &hf_nr_rrc_eventTriggered_01,
44609       { "eventTriggered", "nr-rrc.eventTriggered_element",
44610         FT_NONE, BASE_NONE, NULL, 0,
44611         "EventTriggerConfig", HFILL }},
44612     { &hf_nr_rrc_reportCGI_01,
44613       { "reportCGI", "nr-rrc.reportCGI_element",
44614         FT_NONE, BASE_NONE, NULL, 0,
44615         NULL, HFILL }},
44616     { &hf_nr_rrc_cellForWhichToReportCGI_01,
44617       { "cellForWhichToReportCGI", "nr-rrc.cellForWhichToReportCGI",
44618         FT_UINT32, BASE_DEC, NULL, 0,
44619         "PhysCellId", HFILL }},
44620     { &hf_nr_rrc_eventId_01,
44621       { "eventId", "nr-rrc.eventId",
44622         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_eventId_01_vals), 0,
44623         "T_eventId_01", HFILL }},
44624     { &hf_nr_rrc_eventA1,
44625       { "eventA1", "nr-rrc.eventA1_element",
44626         FT_NONE, BASE_NONE, NULL, 0,
44627         NULL, HFILL }},
44628     { &hf_nr_rrc_a1_Threshold,
44629       { "a1-Threshold", "nr-rrc.a1_Threshold",
44630         FT_UINT32, BASE_DEC, VALS(nr_rrc_MeasTriggerQuantity_vals), 0,
44631         "MeasTriggerQuantity", HFILL }},
44632     { &hf_nr_rrc_eventA2,
44633       { "eventA2", "nr-rrc.eventA2_element",
44634         FT_NONE, BASE_NONE, NULL, 0,
44635         NULL, HFILL }},
44636     { &hf_nr_rrc_a2_Threshold,
44637       { "a2-Threshold", "nr-rrc.a2_Threshold",
44638         FT_UINT32, BASE_DEC, VALS(nr_rrc_MeasTriggerQuantity_vals), 0,
44639         "MeasTriggerQuantity", HFILL }},
44640     { &hf_nr_rrc_eventA3,
44641       { "eventA3", "nr-rrc.eventA3_element",
44642         FT_NONE, BASE_NONE, NULL, 0,
44643         NULL, HFILL }},
44644     { &hf_nr_rrc_a3_Offset,
44645       { "a3-Offset", "nr-rrc.a3_Offset",
44646         FT_UINT32, BASE_DEC, VALS(nr_rrc_MeasTriggerQuantityOffset_vals), 0,
44647         "MeasTriggerQuantityOffset", HFILL }},
44648     { &hf_nr_rrc_useWhiteCellList,
44649       { "useWhiteCellList", "nr-rrc.useWhiteCellList",
44650         FT_BOOLEAN, BASE_NONE, NULL, 0,
44651         "BOOLEAN", HFILL }},
44652     { &hf_nr_rrc_eventA4,
44653       { "eventA4", "nr-rrc.eventA4_element",
44654         FT_NONE, BASE_NONE, NULL, 0,
44655         NULL, HFILL }},
44656     { &hf_nr_rrc_a4_Threshold,
44657       { "a4-Threshold", "nr-rrc.a4_Threshold",
44658         FT_UINT32, BASE_DEC, VALS(nr_rrc_MeasTriggerQuantity_vals), 0,
44659         "MeasTriggerQuantity", HFILL }},
44660     { &hf_nr_rrc_eventA5,
44661       { "eventA5", "nr-rrc.eventA5_element",
44662         FT_NONE, BASE_NONE, NULL, 0,
44663         NULL, HFILL }},
44664     { &hf_nr_rrc_a5_Threshold1,
44665       { "a5-Threshold1", "nr-rrc.a5_Threshold1",
44666         FT_UINT32, BASE_DEC, VALS(nr_rrc_MeasTriggerQuantity_vals), 0,
44667         "MeasTriggerQuantity", HFILL }},
44668     { &hf_nr_rrc_a5_Threshold2,
44669       { "a5-Threshold2", "nr-rrc.a5_Threshold2",
44670         FT_UINT32, BASE_DEC, VALS(nr_rrc_MeasTriggerQuantity_vals), 0,
44671         "MeasTriggerQuantity", HFILL }},
44672     { &hf_nr_rrc_eventA6,
44673       { "eventA6", "nr-rrc.eventA6_element",
44674         FT_NONE, BASE_NONE, NULL, 0,
44675         NULL, HFILL }},
44676     { &hf_nr_rrc_a6_Offset,
44677       { "a6-Offset", "nr-rrc.a6_Offset",
44678         FT_UINT32, BASE_DEC, VALS(nr_rrc_MeasTriggerQuantityOffset_vals), 0,
44679         "MeasTriggerQuantityOffset", HFILL }},
44680     { &hf_nr_rrc_reportAmount_02,
44681       { "reportAmount", "nr-rrc.reportAmount",
44682         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_reportAmount_02_vals), 0,
44683         "T_reportAmount_02", HFILL }},
44684     { &hf_nr_rrc_reportQuantityCell,
44685       { "reportQuantityCell", "nr-rrc.reportQuantityCell_element",
44686         FT_NONE, BASE_NONE, NULL, 0,
44687         "MeasReportQuantity", HFILL }},
44688     { &hf_nr_rrc_reportQuantityRsIndexes,
44689       { "reportQuantityRsIndexes", "nr-rrc.reportQuantityRsIndexes_element",
44690         FT_NONE, BASE_NONE, NULL, 0,
44691         "MeasReportQuantity", HFILL }},
44692     { &hf_nr_rrc_maxNrofRSIndexesToReport,
44693       { "maxNrofRSIndexesToReport", "nr-rrc.maxNrofRSIndexesToReport",
44694         FT_UINT32, BASE_DEC, NULL, 0,
44695         "INTEGER_1_maxNrofIndexesToReport", HFILL }},
44696     { &hf_nr_rrc_includeBeamMeasurements,
44697       { "includeBeamMeasurements", "nr-rrc.includeBeamMeasurements",
44698         FT_BOOLEAN, BASE_NONE, NULL, 0,
44699         "BOOLEAN", HFILL }},
44700     { &hf_nr_rrc_reportAddNeighMeas,
44701       { "reportAddNeighMeas", "nr-rrc.reportAddNeighMeas",
44702         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_reportAddNeighMeas_vals), 0,
44703         NULL, HFILL }},
44704     { &hf_nr_rrc_reportAmount_03,
44705       { "reportAmount", "nr-rrc.reportAmount",
44706         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_reportAmount_03_vals), 0,
44707         "T_reportAmount_03", HFILL }},
44708     { &hf_nr_rrc_maxNrofRsIndexesToReport,
44709       { "maxNrofRsIndexesToReport", "nr-rrc.maxNrofRsIndexesToReport",
44710         FT_UINT32, BASE_DEC, NULL, 0,
44711         "INTEGER_1_maxNrofIndexesToReport", HFILL }},
44712     { &hf_nr_rrc_rsrp_02,
44713       { "rsrp", "nr-rrc.rsrp",
44714         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_dbm, 0,
44715         "INTEGER_M30_30", HFILL }},
44716     { &hf_nr_rrc_rsrq_02,
44717       { "rsrq", "nr-rrc.rsrq",
44718         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_decibels, 0,
44719         "INTEGER_M30_30", HFILL }},
44720     { &hf_nr_rrc_sinr_02,
44721       { "sinr", "nr-rrc.sinr",
44722         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_decibels, 0,
44723         "INTEGER_M30_30", HFILL }},
44724     { &hf_nr_rrc_rsrp_03,
44725       { "rsrp", "nr-rrc.rsrp",
44726         FT_BOOLEAN, BASE_NONE, NULL, 0,
44727         "BOOLEAN", HFILL }},
44728     { &hf_nr_rrc_rsrq_03,
44729       { "rsrq", "nr-rrc.rsrq",
44730         FT_BOOLEAN, BASE_NONE, NULL, 0,
44731         "BOOLEAN", HFILL }},
44732     { &hf_nr_rrc_sinr_03,
44733       { "sinr", "nr-rrc.sinr",
44734         FT_BOOLEAN, BASE_NONE, NULL, 0,
44735         "BOOLEAN", HFILL }},
44736     { &hf_nr_rrc_ReportConfigToAddModList_item,
44737       { "ReportConfigToAddMod", "nr-rrc.ReportConfigToAddMod_element",
44738         FT_NONE, BASE_NONE, NULL, 0,
44739         NULL, HFILL }},
44740     { &hf_nr_rrc_reportConfig,
44741       { "reportConfig", "nr-rrc.reportConfig",
44742         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_reportConfig_vals), 0,
44743         NULL, HFILL }},
44744     { &hf_nr_rrc_reportConfigNR,
44745       { "reportConfigNR", "nr-rrc.reportConfigNR_element",
44746         FT_NONE, BASE_NONE, NULL, 0,
44747         NULL, HFILL }},
44748     { &hf_nr_rrc_reportConfigInterRAT,
44749       { "reportConfigInterRAT", "nr-rrc.reportConfigInterRAT_element",
44750         FT_NONE, BASE_NONE, NULL, 0,
44751         NULL, HFILL }},
44752     { &hf_nr_rrc_logicalChannelIdentity,
44753       { "logicalChannelIdentity", "nr-rrc.logicalChannelIdentity",
44754         FT_UINT32, BASE_DEC, NULL, 0,
44755         NULL, HFILL }},
44756     { &hf_nr_rrc_servedRadioBearer,
44757       { "servedRadioBearer", "nr-rrc.servedRadioBearer",
44758         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_servedRadioBearer_vals), 0,
44759         NULL, HFILL }},
44760     { &hf_nr_rrc_reestablishRLC,
44761       { "reestablishRLC", "nr-rrc.reestablishRLC",
44762         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_reestablishRLC_vals), 0,
44763         NULL, HFILL }},
44764     { &hf_nr_rrc_rlc_Config,
44765       { "rlc-Config", "nr-rrc.rlc_Config",
44766         FT_UINT32, BASE_DEC, VALS(nr_rrc_RLC_Config_vals), 0,
44767         NULL, HFILL }},
44768     { &hf_nr_rrc_mac_LogicalChannelConfig,
44769       { "mac-LogicalChannelConfig", "nr-rrc.mac_LogicalChannelConfig_element",
44770         FT_NONE, BASE_NONE, NULL, 0,
44771         "LogicalChannelConfig", HFILL }},
44772     { &hf_nr_rrc_am,
44773       { "am", "nr-rrc.am_element",
44774         FT_NONE, BASE_NONE, NULL, 0,
44775         NULL, HFILL }},
44776     { &hf_nr_rrc_ul_AM_RLC,
44777       { "ul-AM-RLC", "nr-rrc.ul_AM_RLC_element",
44778         FT_NONE, BASE_NONE, NULL, 0,
44779         NULL, HFILL }},
44780     { &hf_nr_rrc_dl_AM_RLC,
44781       { "dl-AM-RLC", "nr-rrc.dl_AM_RLC_element",
44782         FT_NONE, BASE_NONE, NULL, 0,
44783         NULL, HFILL }},
44784     { &hf_nr_rrc_um_Bi_Directional,
44785       { "um-Bi-Directional", "nr-rrc.um_Bi_Directional_element",
44786         FT_NONE, BASE_NONE, NULL, 0,
44787         NULL, HFILL }},
44788     { &hf_nr_rrc_ul_UM_RLC,
44789       { "ul-UM-RLC", "nr-rrc.ul_UM_RLC_element",
44790         FT_NONE, BASE_NONE, NULL, 0,
44791         NULL, HFILL }},
44792     { &hf_nr_rrc_dl_UM_RLC,
44793       { "dl-UM-RLC", "nr-rrc.dl_UM_RLC_element",
44794         FT_NONE, BASE_NONE, NULL, 0,
44795         NULL, HFILL }},
44796     { &hf_nr_rrc_um_Uni_Directional_UL,
44797       { "um-Uni-Directional-UL", "nr-rrc.um_Uni_Directional_UL_element",
44798         FT_NONE, BASE_NONE, NULL, 0,
44799         NULL, HFILL }},
44800     { &hf_nr_rrc_um_Uni_Directional_DL,
44801       { "um-Uni-Directional-DL", "nr-rrc.um_Uni_Directional_DL_element",
44802         FT_NONE, BASE_NONE, NULL, 0,
44803         NULL, HFILL }},
44804     { &hf_nr_rrc_sn_FieldLength,
44805       { "sn-FieldLength", "nr-rrc.sn_FieldLength",
44806         FT_UINT32, BASE_DEC, VALS(nr_rrc_SN_FieldLengthAM_vals), 0,
44807         "SN_FieldLengthAM", HFILL }},
44808     { &hf_nr_rrc_t_PollRetransmit,
44809       { "t-PollRetransmit", "nr-rrc.t_PollRetransmit",
44810         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_T_PollRetransmit_vals_ext, 0,
44811         NULL, HFILL }},
44812     { &hf_nr_rrc_pollPDU,
44813       { "pollPDU", "nr-rrc.pollPDU",
44814         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_PollPDU_vals_ext, 0,
44815         NULL, HFILL }},
44816     { &hf_nr_rrc_pollByte,
44817       { "pollByte", "nr-rrc.pollByte",
44818         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_PollByte_vals_ext, 0,
44819         NULL, HFILL }},
44820     { &hf_nr_rrc_maxRetxThreshold,
44821       { "maxRetxThreshold", "nr-rrc.maxRetxThreshold",
44822         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_maxRetxThreshold_vals), 0,
44823         NULL, HFILL }},
44824     { &hf_nr_rrc_t_Reassembly,
44825       { "t-Reassembly", "nr-rrc.t_Reassembly",
44826         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_T_Reassembly_vals_ext, 0,
44827         NULL, HFILL }},
44828     { &hf_nr_rrc_t_StatusProhibit,
44829       { "t-StatusProhibit", "nr-rrc.t_StatusProhibit",
44830         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_T_StatusProhibit_vals_ext, 0,
44831         NULL, HFILL }},
44832     { &hf_nr_rrc_sn_FieldLength_01,
44833       { "sn-FieldLength", "nr-rrc.sn_FieldLength",
44834         FT_UINT32, BASE_DEC, VALS(nr_rrc_SN_FieldLengthUM_vals), 0,
44835         "SN_FieldLengthUM", HFILL }},
44836     { &hf_nr_rrc_t310,
44837       { "t310", "nr-rrc.t310",
44838         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_t310_vals), 0,
44839         NULL, HFILL }},
44840     { &hf_nr_rrc_n310,
44841       { "n310", "nr-rrc.n310",
44842         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_n310_vals), 0,
44843         NULL, HFILL }},
44844     { &hf_nr_rrc_n311,
44845       { "n311", "nr-rrc.n311",
44846         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_n311_vals), 0,
44847         NULL, HFILL }},
44848     { &hf_nr_rrc_t311_v1530,
44849       { "t311-v1530", "nr-rrc.t311_v1530",
44850         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_t311_v1530_vals), 0,
44851         NULL, HFILL }},
44852     { &hf_nr_rrc_schedulingRequestToAddModList,
44853       { "schedulingRequestToAddModList", "nr-rrc.schedulingRequestToAddModList",
44854         FT_UINT32, BASE_DEC, NULL, 0,
44855         "SEQUENCE_SIZE_1_maxNrofSR_ConfigPerCellGroup_OF_SchedulingRequestToAddMod", HFILL }},
44856     { &hf_nr_rrc_schedulingRequestToAddModList_item,
44857       { "SchedulingRequestToAddMod", "nr-rrc.SchedulingRequestToAddMod_element",
44858         FT_NONE, BASE_NONE, NULL, 0,
44859         NULL, HFILL }},
44860     { &hf_nr_rrc_schedulingRequestToReleaseList,
44861       { "schedulingRequestToReleaseList", "nr-rrc.schedulingRequestToReleaseList",
44862         FT_UINT32, BASE_DEC, NULL, 0,
44863         "SEQUENCE_SIZE_1_maxNrofSR_ConfigPerCellGroup_OF_SchedulingRequestId", HFILL }},
44864     { &hf_nr_rrc_schedulingRequestToReleaseList_item,
44865       { "SchedulingRequestId", "nr-rrc.SchedulingRequestId",
44866         FT_UINT32, BASE_DEC, NULL, 0,
44867         NULL, HFILL }},
44868     { &hf_nr_rrc_schedulingRequestId,
44869       { "schedulingRequestId", "nr-rrc.schedulingRequestId",
44870         FT_UINT32, BASE_DEC, NULL, 0,
44871         NULL, HFILL }},
44872     { &hf_nr_rrc_sr_ProhibitTimer,
44873       { "sr-ProhibitTimer", "nr-rrc.sr_ProhibitTimer",
44874         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_sr_ProhibitTimer_vals), 0,
44875         NULL, HFILL }},
44876     { &hf_nr_rrc_sr_TransMax,
44877       { "sr-TransMax", "nr-rrc.sr_TransMax",
44878         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_sr_TransMax_vals), 0,
44879         NULL, HFILL }},
44880     { &hf_nr_rrc_schedulingRequestResourceId,
44881       { "schedulingRequestResourceId", "nr-rrc.schedulingRequestResourceId",
44882         FT_UINT32, BASE_DEC, NULL, 0,
44883         NULL, HFILL }},
44884     { &hf_nr_rrc_periodicityAndOffset_01,
44885       { "periodicityAndOffset", "nr-rrc.periodicityAndOffset",
44886         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_periodicityAndOffset_vals), 0,
44887         NULL, HFILL }},
44888     { &hf_nr_rrc_sym2,
44889       { "sym2", "nr-rrc.sym2_element",
44890         FT_NONE, BASE_NONE, NULL, 0,
44891         NULL, HFILL }},
44892     { &hf_nr_rrc_sym6or7,
44893       { "sym6or7", "nr-rrc.sym6or7_element",
44894         FT_NONE, BASE_NONE, NULL, 0,
44895         NULL, HFILL }},
44896     { &hf_nr_rrc_sl1,
44897       { "sl1", "nr-rrc.sl1_element",
44898         FT_NONE, BASE_NONE, NULL, 0,
44899         NULL, HFILL }},
44900     { &hf_nr_rrc_sl2,
44901       { "sl2", "nr-rrc.sl2",
44902         FT_UINT32, BASE_DEC, NULL, 0,
44903         "INTEGER_0_1", HFILL }},
44904     { &hf_nr_rrc_sl4,
44905       { "sl4", "nr-rrc.sl4",
44906         FT_UINT32, BASE_DEC, NULL, 0,
44907         "INTEGER_0_3", HFILL }},
44908     { &hf_nr_rrc_sl5,
44909       { "sl5", "nr-rrc.sl5",
44910         FT_UINT32, BASE_DEC, NULL, 0,
44911         "INTEGER_0_4", HFILL }},
44912     { &hf_nr_rrc_sl8,
44913       { "sl8", "nr-rrc.sl8",
44914         FT_UINT32, BASE_DEC, NULL, 0,
44915         "INTEGER_0_7", HFILL }},
44916     { &hf_nr_rrc_sl10,
44917       { "sl10", "nr-rrc.sl10",
44918         FT_UINT32, BASE_DEC, NULL, 0,
44919         "INTEGER_0_9", HFILL }},
44920     { &hf_nr_rrc_sl16,
44921       { "sl16", "nr-rrc.sl16",
44922         FT_UINT32, BASE_DEC, NULL, 0,
44923         "INTEGER_0_15", HFILL }},
44924     { &hf_nr_rrc_sl20,
44925       { "sl20", "nr-rrc.sl20",
44926         FT_UINT32, BASE_DEC, NULL, 0,
44927         "INTEGER_0_19", HFILL }},
44928     { &hf_nr_rrc_sl40,
44929       { "sl40", "nr-rrc.sl40",
44930         FT_UINT32, BASE_DEC, NULL, 0,
44931         "INTEGER_0_39", HFILL }},
44932     { &hf_nr_rrc_sl80,
44933       { "sl80", "nr-rrc.sl80",
44934         FT_UINT32, BASE_DEC, NULL, 0,
44935         "INTEGER_0_79", HFILL }},
44936     { &hf_nr_rrc_sl160,
44937       { "sl160", "nr-rrc.sl160",
44938         FT_UINT32, BASE_DEC, NULL, 0,
44939         "INTEGER_0_159", HFILL }},
44940     { &hf_nr_rrc_sl320,
44941       { "sl320", "nr-rrc.sl320",
44942         FT_UINT32, BASE_DEC, NULL, 0,
44943         "INTEGER_0_319", HFILL }},
44944     { &hf_nr_rrc_sl640,
44945       { "sl640", "nr-rrc.sl640",
44946         FT_UINT32, BASE_DEC, NULL, 0,
44947         "INTEGER_0_639", HFILL }},
44948     { &hf_nr_rrc_resource_01,
44949       { "resource", "nr-rrc.resource",
44950         FT_UINT32, BASE_DEC, NULL, 0,
44951         "PUCCH_ResourceId", HFILL }},
44952     { &hf_nr_rrc_offsetToCarrier,
44953       { "offsetToCarrier", "nr-rrc.offsetToCarrier",
44954         FT_UINT32, BASE_DEC, NULL, 0,
44955         "INTEGER_0_2199", HFILL }},
44956     { &hf_nr_rrc_carrierBandwidth,
44957       { "carrierBandwidth", "nr-rrc.carrierBandwidth",
44958         FT_UINT32, BASE_DEC, NULL, 0,
44959         "INTEGER_1_maxNrofPhysicalResourceBlocks", HFILL }},
44960     { &hf_nr_rrc_txDirectCurrentLocation_v1530,
44961       { "txDirectCurrentLocation-v1530", "nr-rrc.txDirectCurrentLocation_v1530",
44962         FT_UINT32, BASE_DEC, NULL, 0,
44963         "INTEGER_0_4095", HFILL }},
44964     { &hf_nr_rrc_pdu_Session,
44965       { "pdu-Session", "nr-rrc.pdu_Session",
44966         FT_UINT32, BASE_DEC, NULL, 0,
44967         "PDU_SessionID", HFILL }},
44968     { &hf_nr_rrc_sdap_HeaderDL,
44969       { "sdap-HeaderDL", "nr-rrc.sdap_HeaderDL",
44970         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_sdap_HeaderDL_vals), 0,
44971         NULL, HFILL }},
44972     { &hf_nr_rrc_sdap_HeaderUL,
44973       { "sdap-HeaderUL", "nr-rrc.sdap_HeaderUL",
44974         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_sdap_HeaderUL_vals), 0,
44975         NULL, HFILL }},
44976     { &hf_nr_rrc_defaultDRB,
44977       { "defaultDRB", "nr-rrc.defaultDRB",
44978         FT_BOOLEAN, BASE_NONE, NULL, 0,
44979         "BOOLEAN", HFILL }},
44980     { &hf_nr_rrc_mappedQoS_FlowsToAdd,
44981       { "mappedQoS-FlowsToAdd", "nr-rrc.mappedQoS_FlowsToAdd",
44982         FT_UINT32, BASE_DEC, NULL, 0,
44983         "SEQUENCE_SIZE_1_maxNrofQFIs_OF_QFI", HFILL }},
44984     { &hf_nr_rrc_mappedQoS_FlowsToAdd_item,
44985       { "QFI", "nr-rrc.QFI",
44986         FT_UINT32, BASE_DEC, NULL, 0,
44987         NULL, HFILL }},
44988     { &hf_nr_rrc_mappedQoS_FlowsToRelease,
44989       { "mappedQoS-FlowsToRelease", "nr-rrc.mappedQoS_FlowsToRelease",
44990         FT_UINT32, BASE_DEC, NULL, 0,
44991         "SEQUENCE_SIZE_1_maxNrofQFIs_OF_QFI", HFILL }},
44992     { &hf_nr_rrc_mappedQoS_FlowsToRelease_item,
44993       { "QFI", "nr-rrc.QFI",
44994         FT_UINT32, BASE_DEC, NULL, 0,
44995         NULL, HFILL }},
44996     { &hf_nr_rrc_searchSpaceId,
44997       { "searchSpaceId", "nr-rrc.searchSpaceId",
44998         FT_UINT32, BASE_DEC, NULL, 0,
44999         NULL, HFILL }},
45000     { &hf_nr_rrc_monitoringSlotPeriodicityAndOffset,
45001       { "monitoringSlotPeriodicityAndOffset", "nr-rrc.monitoringSlotPeriodicityAndOffset",
45002         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_monitoringSlotPeriodicityAndOffset_vals), 0,
45003         NULL, HFILL }},
45004     { &hf_nr_rrc_sl1280,
45005       { "sl1280", "nr-rrc.sl1280",
45006         FT_UINT32, BASE_DEC, NULL, 0,
45007         "INTEGER_0_1279", HFILL }},
45008     { &hf_nr_rrc_sl2560,
45009       { "sl2560", "nr-rrc.sl2560",
45010         FT_UINT32, BASE_DEC, NULL, 0,
45011         "INTEGER_0_2559", HFILL }},
45012     { &hf_nr_rrc_duration_01,
45013       { "duration", "nr-rrc.duration",
45014         FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_slots, 0,
45015         "INTEGER_2_2559", HFILL }},
45016     { &hf_nr_rrc_monitoringSymbolsWithinSlot,
45017       { "monitoringSymbolsWithinSlot", "nr-rrc.monitoringSymbolsWithinSlot",
45018         FT_BYTES, BASE_NONE, NULL, 0,
45019         "BIT_STRING_SIZE_14", HFILL }},
45020     { &hf_nr_rrc_nrofCandidates,
45021       { "nrofCandidates", "nr-rrc.nrofCandidates_element",
45022         FT_NONE, BASE_NONE, NULL, 0,
45023         NULL, HFILL }},
45024     { &hf_nr_rrc_aggregationLevel1,
45025       { "aggregationLevel1", "nr-rrc.aggregationLevel1",
45026         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_aggregationLevel1_vals), 0,
45027         NULL, HFILL }},
45028     { &hf_nr_rrc_aggregationLevel2,
45029       { "aggregationLevel2", "nr-rrc.aggregationLevel2",
45030         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_aggregationLevel2_vals), 0,
45031         NULL, HFILL }},
45032     { &hf_nr_rrc_aggregationLevel4,
45033       { "aggregationLevel4", "nr-rrc.aggregationLevel4",
45034         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_aggregationLevel4_vals), 0,
45035         NULL, HFILL }},
45036     { &hf_nr_rrc_aggregationLevel8,
45037       { "aggregationLevel8", "nr-rrc.aggregationLevel8",
45038         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_aggregationLevel8_vals), 0,
45039         NULL, HFILL }},
45040     { &hf_nr_rrc_aggregationLevel16,
45041       { "aggregationLevel16", "nr-rrc.aggregationLevel16",
45042         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_aggregationLevel16_vals), 0,
45043         NULL, HFILL }},
45044     { &hf_nr_rrc_searchSpaceType,
45045       { "searchSpaceType", "nr-rrc.searchSpaceType",
45046         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_searchSpaceType_vals), 0,
45047         NULL, HFILL }},
45048     { &hf_nr_rrc_common,
45049       { "common", "nr-rrc.common_element",
45050         FT_NONE, BASE_NONE, NULL, 0,
45051         NULL, HFILL }},
45052     { &hf_nr_rrc_dci_Format0_0_AndFormat1_0,
45053       { "dci-Format0-0-AndFormat1-0", "nr-rrc.dci_Format0_0_AndFormat1_0_element",
45054         FT_NONE, BASE_NONE, NULL, 0,
45055         NULL, HFILL }},
45056     { &hf_nr_rrc_dci_Format2_0,
45057       { "dci-Format2-0", "nr-rrc.dci_Format2_0_element",
45058         FT_NONE, BASE_NONE, NULL, 0,
45059         NULL, HFILL }},
45060     { &hf_nr_rrc_nrofCandidates_SFI,
45061       { "nrofCandidates-SFI", "nr-rrc.nrofCandidates_SFI_element",
45062         FT_NONE, BASE_NONE, NULL, 0,
45063         NULL, HFILL }},
45064     { &hf_nr_rrc_aggregationLevel1_01,
45065       { "aggregationLevel1", "nr-rrc.aggregationLevel1",
45066         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_aggregationLevel1_01_vals), 0,
45067         "T_aggregationLevel1_01", HFILL }},
45068     { &hf_nr_rrc_aggregationLevel2_01,
45069       { "aggregationLevel2", "nr-rrc.aggregationLevel2",
45070         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_aggregationLevel2_01_vals), 0,
45071         "T_aggregationLevel2_01", HFILL }},
45072     { &hf_nr_rrc_aggregationLevel4_01,
45073       { "aggregationLevel4", "nr-rrc.aggregationLevel4",
45074         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_aggregationLevel4_01_vals), 0,
45075         "T_aggregationLevel4_01", HFILL }},
45076     { &hf_nr_rrc_aggregationLevel8_01,
45077       { "aggregationLevel8", "nr-rrc.aggregationLevel8",
45078         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_aggregationLevel8_01_vals), 0,
45079         "T_aggregationLevel8_01", HFILL }},
45080     { &hf_nr_rrc_aggregationLevel16_01,
45081       { "aggregationLevel16", "nr-rrc.aggregationLevel16",
45082         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_aggregationLevel16_01_vals), 0,
45083         "T_aggregationLevel16_01", HFILL }},
45084     { &hf_nr_rrc_dci_Format2_1,
45085       { "dci-Format2-1", "nr-rrc.dci_Format2_1_element",
45086         FT_NONE, BASE_NONE, NULL, 0,
45087         NULL, HFILL }},
45088     { &hf_nr_rrc_dci_Format2_2,
45089       { "dci-Format2-2", "nr-rrc.dci_Format2_2_element",
45090         FT_NONE, BASE_NONE, NULL, 0,
45091         NULL, HFILL }},
45092     { &hf_nr_rrc_dci_Format2_3,
45093       { "dci-Format2-3", "nr-rrc.dci_Format2_3_element",
45094         FT_NONE, BASE_NONE, NULL, 0,
45095         NULL, HFILL }},
45096     { &hf_nr_rrc_dummy1,
45097       { "dummy1", "nr-rrc.dummy1",
45098         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_dummy1_vals), 0,
45099         NULL, HFILL }},
45100     { &hf_nr_rrc_dummy2,
45101       { "dummy2", "nr-rrc.dummy2",
45102         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_dummy2_vals), 0,
45103         NULL, HFILL }},
45104     { &hf_nr_rrc_ue_Specific,
45105       { "ue-Specific", "nr-rrc.ue_Specific_element",
45106         FT_NONE, BASE_NONE, NULL, 0,
45107         NULL, HFILL }},
45108     { &hf_nr_rrc_dci_Formats,
45109       { "dci-Formats", "nr-rrc.dci_Formats",
45110         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_dci_Formats_vals), 0,
45111         NULL, HFILL }},
45112     { &hf_nr_rrc_cipheringAlgorithm,
45113       { "cipheringAlgorithm", "nr-rrc.cipheringAlgorithm",
45114         FT_UINT32, BASE_DEC, VALS(nr_rrc_CipheringAlgorithm_vals), 0,
45115         NULL, HFILL }},
45116     { &hf_nr_rrc_integrityProtAlgorithm,
45117       { "integrityProtAlgorithm", "nr-rrc.integrityProtAlgorithm",
45118         FT_UINT32, BASE_DEC, VALS(nr_rrc_IntegrityProtAlgorithm_vals), 0,
45119         NULL, HFILL }},
45120     { &hf_nr_rrc_tdd_UL_DL_ConfigurationDedicated,
45121       { "tdd-UL-DL-ConfigurationDedicated", "nr-rrc.tdd_UL_DL_ConfigurationDedicated_element",
45122         FT_NONE, BASE_NONE, NULL, 0,
45123         "TDD_UL_DL_ConfigDedicated", HFILL }},
45124     { &hf_nr_rrc_initialDownlinkBWP_01,
45125       { "initialDownlinkBWP", "nr-rrc.initialDownlinkBWP_element",
45126         FT_NONE, BASE_NONE, NULL, 0,
45127         "BWP_DownlinkDedicated", HFILL }},
45128     { &hf_nr_rrc_downlinkBWP_ToReleaseList,
45129       { "downlinkBWP-ToReleaseList", "nr-rrc.downlinkBWP_ToReleaseList",
45130         FT_UINT32, BASE_DEC, NULL, 0,
45131         "SEQUENCE_SIZE_1_maxNrofBWPs_OF_BWP_Id", HFILL }},
45132     { &hf_nr_rrc_downlinkBWP_ToReleaseList_item,
45133       { "BWP-Id", "nr-rrc.BWP_Id",
45134         FT_UINT32, BASE_DEC, NULL, 0,
45135         NULL, HFILL }},
45136     { &hf_nr_rrc_downlinkBWP_ToAddModList,
45137       { "downlinkBWP-ToAddModList", "nr-rrc.downlinkBWP_ToAddModList",
45138         FT_UINT32, BASE_DEC, NULL, 0,
45139         "SEQUENCE_SIZE_1_maxNrofBWPs_OF_BWP_Downlink", HFILL }},
45140     { &hf_nr_rrc_downlinkBWP_ToAddModList_item,
45141       { "BWP-Downlink", "nr-rrc.BWP_Downlink_element",
45142         FT_NONE, BASE_NONE, NULL, 0,
45143         NULL, HFILL }},
45144     { &hf_nr_rrc_firstActiveDownlinkBWP_Id,
45145       { "firstActiveDownlinkBWP-Id", "nr-rrc.firstActiveDownlinkBWP_Id",
45146         FT_UINT32, BASE_DEC, NULL, 0,
45147         "BWP_Id", HFILL }},
45148     { &hf_nr_rrc_bwp_InactivityTimer,
45149       { "bwp-InactivityTimer", "nr-rrc.bwp_InactivityTimer",
45150         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_T_bwp_InactivityTimer_vals_ext, 0,
45151         NULL, HFILL }},
45152     { &hf_nr_rrc_defaultDownlinkBWP_Id,
45153       { "defaultDownlinkBWP-Id", "nr-rrc.defaultDownlinkBWP_Id",
45154         FT_UINT32, BASE_DEC, NULL, 0,
45155         "BWP_Id", HFILL }},
45156     { &hf_nr_rrc_uplinkConfig,
45157       { "uplinkConfig", "nr-rrc.uplinkConfig_element",
45158         FT_NONE, BASE_NONE, NULL, 0,
45159         NULL, HFILL }},
45160     { &hf_nr_rrc_supplementaryUplink_01,
45161       { "supplementaryUplink", "nr-rrc.supplementaryUplink_element",
45162         FT_NONE, BASE_NONE, NULL, 0,
45163         "UplinkConfig", HFILL }},
45164     { &hf_nr_rrc_pdcch_ServingCellConfig,
45165       { "pdcch-ServingCellConfig", "nr-rrc.pdcch_ServingCellConfig",
45166         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pdcch_ServingCellConfig_vals), 0,
45167         NULL, HFILL }},
45168     { &hf_nr_rrc_setup_43,
45169       { "setup", "nr-rrc.setup_element",
45170         FT_NONE, BASE_NONE, NULL, 0,
45171         "PDCCH_ServingCellConfig", HFILL }},
45172     { &hf_nr_rrc_pdsch_ServingCellConfig,
45173       { "pdsch-ServingCellConfig", "nr-rrc.pdsch_ServingCellConfig",
45174         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pdsch_ServingCellConfig_vals), 0,
45175         NULL, HFILL }},
45176     { &hf_nr_rrc_setup_44,
45177       { "setup", "nr-rrc.setup_element",
45178         FT_NONE, BASE_NONE, NULL, 0,
45179         "PDSCH_ServingCellConfig", HFILL }},
45180     { &hf_nr_rrc_csi_MeasConfig,
45181       { "csi-MeasConfig", "nr-rrc.csi_MeasConfig",
45182         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_csi_MeasConfig_vals), 0,
45183         NULL, HFILL }},
45184     { &hf_nr_rrc_setup_45,
45185       { "setup", "nr-rrc.setup_element",
45186         FT_NONE, BASE_NONE, NULL, 0,
45187         "CSI_MeasConfig", HFILL }},
45188     { &hf_nr_rrc_sCellDeactivationTimer,
45189       { "sCellDeactivationTimer", "nr-rrc.sCellDeactivationTimer",
45190         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_sCellDeactivationTimer_vals), 0,
45191         NULL, HFILL }},
45192     { &hf_nr_rrc_crossCarrierSchedulingConfig,
45193       { "crossCarrierSchedulingConfig", "nr-rrc.crossCarrierSchedulingConfig_element",
45194         FT_NONE, BASE_NONE, NULL, 0,
45195         NULL, HFILL }},
45196     { &hf_nr_rrc_tag_Id,
45197       { "tag-Id", "nr-rrc.tag_Id",
45198         FT_UINT32, BASE_DEC, NULL, 0,
45199         NULL, HFILL }},
45200     { &hf_nr_rrc_ue_BeamLockFunction,
45201       { "ue-BeamLockFunction", "nr-rrc.ue_BeamLockFunction",
45202         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_ue_BeamLockFunction_vals), 0,
45203         NULL, HFILL }},
45204     { &hf_nr_rrc_pathlossReferenceLinking,
45205       { "pathlossReferenceLinking", "nr-rrc.pathlossReferenceLinking",
45206         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pathlossReferenceLinking_vals), 0,
45207         NULL, HFILL }},
45208     { &hf_nr_rrc_servingCellMO,
45209       { "servingCellMO", "nr-rrc.servingCellMO",
45210         FT_UINT32, BASE_DEC, NULL, 0,
45211         "MeasObjectId", HFILL }},
45212     { &hf_nr_rrc_initialUplinkBWP,
45213       { "initialUplinkBWP", "nr-rrc.initialUplinkBWP_element",
45214         FT_NONE, BASE_NONE, NULL, 0,
45215         "BWP_UplinkDedicated", HFILL }},
45216     { &hf_nr_rrc_uplinkBWP_ToReleaseList,
45217       { "uplinkBWP-ToReleaseList", "nr-rrc.uplinkBWP_ToReleaseList",
45218         FT_UINT32, BASE_DEC, NULL, 0,
45219         "SEQUENCE_SIZE_1_maxNrofBWPs_OF_BWP_Id", HFILL }},
45220     { &hf_nr_rrc_uplinkBWP_ToReleaseList_item,
45221       { "BWP-Id", "nr-rrc.BWP_Id",
45222         FT_UINT32, BASE_DEC, NULL, 0,
45223         NULL, HFILL }},
45224     { &hf_nr_rrc_uplinkBWP_ToAddModList,
45225       { "uplinkBWP-ToAddModList", "nr-rrc.uplinkBWP_ToAddModList",
45226         FT_UINT32, BASE_DEC, NULL, 0,
45227         "SEQUENCE_SIZE_1_maxNrofBWPs_OF_BWP_Uplink", HFILL }},
45228     { &hf_nr_rrc_uplinkBWP_ToAddModList_item,
45229       { "BWP-Uplink", "nr-rrc.BWP_Uplink_element",
45230         FT_NONE, BASE_NONE, NULL, 0,
45231         NULL, HFILL }},
45232     { &hf_nr_rrc_firstActiveUplinkBWP_Id,
45233       { "firstActiveUplinkBWP-Id", "nr-rrc.firstActiveUplinkBWP_Id",
45234         FT_UINT32, BASE_DEC, NULL, 0,
45235         "BWP_Id", HFILL }},
45236     { &hf_nr_rrc_pusch_ServingCellConfig,
45237       { "pusch-ServingCellConfig", "nr-rrc.pusch_ServingCellConfig",
45238         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pusch_ServingCellConfig_vals), 0,
45239         NULL, HFILL }},
45240     { &hf_nr_rrc_setup_46,
45241       { "setup", "nr-rrc.setup_element",
45242         FT_NONE, BASE_NONE, NULL, 0,
45243         "PUSCH_ServingCellConfig", HFILL }},
45244     { &hf_nr_rrc_carrierSwitching,
45245       { "carrierSwitching", "nr-rrc.carrierSwitching",
45246         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_carrierSwitching_vals), 0,
45247         NULL, HFILL }},
45248     { &hf_nr_rrc_setup_47,
45249       { "setup", "nr-rrc.setup_element",
45250         FT_NONE, BASE_NONE, NULL, 0,
45251         "SRS_CarrierSwitching", HFILL }},
45252     { &hf_nr_rrc_downlinkConfigCommon,
45253       { "downlinkConfigCommon", "nr-rrc.downlinkConfigCommon_element",
45254         FT_NONE, BASE_NONE, NULL, 0,
45255         NULL, HFILL }},
45256     { &hf_nr_rrc_uplinkConfigCommon,
45257       { "uplinkConfigCommon", "nr-rrc.uplinkConfigCommon_element",
45258         FT_NONE, BASE_NONE, NULL, 0,
45259         NULL, HFILL }},
45260     { &hf_nr_rrc_supplementaryUplinkConfig,
45261       { "supplementaryUplinkConfig", "nr-rrc.supplementaryUplinkConfig_element",
45262         FT_NONE, BASE_NONE, NULL, 0,
45263         "UplinkConfigCommon", HFILL }},
45264     { &hf_nr_rrc_n_TimingAdvanceOffset,
45265       { "n-TimingAdvanceOffset", "nr-rrc.n_TimingAdvanceOffset",
45266         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_n_TimingAdvanceOffset_vals), 0,
45267         NULL, HFILL }},
45268     { &hf_nr_rrc_ssb_PositionsInBurst,
45269       { "ssb-PositionsInBurst", "nr-rrc.ssb_PositionsInBurst",
45270         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_ssb_PositionsInBurst_vals), 0,
45271         NULL, HFILL }},
45272     { &hf_nr_rrc_shortBitmap,
45273       { "shortBitmap", "nr-rrc.shortBitmap",
45274         FT_BYTES, BASE_NONE, NULL, 0,
45275         "BIT_STRING_SIZE_4", HFILL }},
45276     { &hf_nr_rrc_mediumBitmap,
45277       { "mediumBitmap", "nr-rrc.mediumBitmap",
45278         FT_BYTES, BASE_NONE, NULL, 0,
45279         "BIT_STRING_SIZE_8", HFILL }},
45280     { &hf_nr_rrc_longBitmap,
45281       { "longBitmap", "nr-rrc.longBitmap",
45282         FT_BYTES, BASE_NONE, NULL, 0,
45283         "BIT_STRING_SIZE_64", HFILL }},
45284     { &hf_nr_rrc_ssb_periodicityServingCell,
45285       { "ssb-periodicityServingCell", "nr-rrc.ssb_periodicityServingCell",
45286         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_ssb_periodicityServingCell_vals), 0,
45287         NULL, HFILL }},
45288     { &hf_nr_rrc_dmrs_TypeA_Position_01,
45289       { "dmrs-TypeA-Position", "nr-rrc.dmrs_TypeA_Position",
45290         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_dmrs_TypeA_Position_01_vals), 0,
45291         "T_dmrs_TypeA_Position_01", HFILL }},
45292     { &hf_nr_rrc_lte_CRS_ToMatchAround,
45293       { "lte-CRS-ToMatchAround", "nr-rrc.lte_CRS_ToMatchAround",
45294         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_lte_CRS_ToMatchAround_vals), 0,
45295         NULL, HFILL }},
45296     { &hf_nr_rrc_setup_48,
45297       { "setup", "nr-rrc.setup_element",
45298         FT_NONE, BASE_NONE, NULL, 0,
45299         "RateMatchPatternLTE_CRS", HFILL }},
45300     { &hf_nr_rrc_tdd_UL_DL_ConfigurationCommon,
45301       { "tdd-UL-DL-ConfigurationCommon", "nr-rrc.tdd_UL_DL_ConfigurationCommon_element",
45302         FT_NONE, BASE_NONE, NULL, 0,
45303         "TDD_UL_DL_ConfigCommon", HFILL }},
45304     { &hf_nr_rrc_ss_PBCH_BlockPower,
45305       { "ss-PBCH-BlockPower", "nr-rrc.ss_PBCH_BlockPower",
45306         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_dbm, 0,
45307         "INTEGER_M60_50", HFILL }},
45308     { &hf_nr_rrc_downlinkConfigCommon_01,
45309       { "downlinkConfigCommon", "nr-rrc.downlinkConfigCommon_element",
45310         FT_NONE, BASE_NONE, NULL, 0,
45311         "DownlinkConfigCommonSIB", HFILL }},
45312     { &hf_nr_rrc_uplinkConfigCommon_01,
45313       { "uplinkConfigCommon", "nr-rrc.uplinkConfigCommon_element",
45314         FT_NONE, BASE_NONE, NULL, 0,
45315         "UplinkConfigCommonSIB", HFILL }},
45316     { &hf_nr_rrc_supplementaryUplink_02,
45317       { "supplementaryUplink", "nr-rrc.supplementaryUplink_element",
45318         FT_NONE, BASE_NONE, NULL, 0,
45319         "UplinkConfigCommonSIB", HFILL }},
45320     { &hf_nr_rrc_n_TimingAdvanceOffset_01,
45321       { "n-TimingAdvanceOffset", "nr-rrc.n_TimingAdvanceOffset",
45322         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_n_TimingAdvanceOffset_01_vals), 0,
45323         "T_n_TimingAdvanceOffset_01", HFILL }},
45324     { &hf_nr_rrc_ssb_PositionsInBurst_01,
45325       { "ssb-PositionsInBurst", "nr-rrc.ssb_PositionsInBurst_element",
45326         FT_NONE, BASE_NONE, NULL, 0,
45327         "T_ssb_PositionsInBurst_01", HFILL }},
45328     { &hf_nr_rrc_inOneGroup,
45329       { "inOneGroup", "nr-rrc.inOneGroup",
45330         FT_BYTES, BASE_NONE, NULL, 0,
45331         "BIT_STRING_SIZE_8", HFILL }},
45332     { &hf_nr_rrc_groupPresence,
45333       { "groupPresence", "nr-rrc.groupPresence",
45334         FT_BYTES, BASE_NONE, NULL, 0,
45335         "BIT_STRING_SIZE_8", HFILL }},
45336     { &hf_nr_rrc_ssb_PeriodicityServingCell,
45337       { "ssb-PeriodicityServingCell", "nr-rrc.ssb_PeriodicityServingCell",
45338         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_ssb_PeriodicityServingCell_vals), 0,
45339         NULL, HFILL }},
45340     { &hf_nr_rrc_schedulingInfoList,
45341       { "schedulingInfoList", "nr-rrc.schedulingInfoList",
45342         FT_UINT32, BASE_DEC, NULL, 0,
45343         "SEQUENCE_SIZE_1_maxSI_Message_OF_SchedulingInfo", HFILL }},
45344     { &hf_nr_rrc_schedulingInfoList_item,
45345       { "SchedulingInfo", "nr-rrc.SchedulingInfo_element",
45346         FT_NONE, BASE_NONE, NULL, 0,
45347         NULL, HFILL }},
45348     { &hf_nr_rrc_si_WindowLength,
45349       { "si-WindowLength", "nr-rrc.si_WindowLength",
45350         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_si_WindowLength_vals), 0,
45351         NULL, HFILL }},
45352     { &hf_nr_rrc_si_RequestConfig,
45353       { "si-RequestConfig", "nr-rrc.si_RequestConfig_element",
45354         FT_NONE, BASE_NONE, NULL, 0,
45355         NULL, HFILL }},
45356     { &hf_nr_rrc_si_RequestConfigSUL,
45357       { "si-RequestConfigSUL", "nr-rrc.si_RequestConfigSUL_element",
45358         FT_NONE, BASE_NONE, NULL, 0,
45359         "SI_RequestConfig", HFILL }},
45360     { &hf_nr_rrc_systemInformationAreaID,
45361       { "systemInformationAreaID", "nr-rrc.systemInformationAreaID",
45362         FT_BYTES, BASE_NONE, NULL, 0,
45363         "BIT_STRING_SIZE_24", HFILL }},
45364     { &hf_nr_rrc_si_BroadcastStatus,
45365       { "si-BroadcastStatus", "nr-rrc.si_BroadcastStatus",
45366         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_si_BroadcastStatus_vals), 0,
45367         NULL, HFILL }},
45368     { &hf_nr_rrc_si_Periodicity,
45369       { "si-Periodicity", "nr-rrc.si_Periodicity",
45370         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_si_Periodicity_vals), 0,
45371         NULL, HFILL }},
45372     { &hf_nr_rrc_sib_MappingInfo,
45373       { "sib-MappingInfo", "nr-rrc.sib_MappingInfo",
45374         FT_UINT32, BASE_DEC, NULL, 0,
45375         "SIB_Mapping", HFILL }},
45376     { &hf_nr_rrc_SIB_Mapping_item,
45377       { "SIB-TypeInfo", "nr-rrc.SIB_TypeInfo_element",
45378         FT_NONE, BASE_NONE, NULL, 0,
45379         NULL, HFILL }},
45380     { &hf_nr_rrc_type,
45381       { "type", "nr-rrc.type",
45382         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_type_vals), 0,
45383         NULL, HFILL }},
45384     { &hf_nr_rrc_valueTag,
45385       { "valueTag", "nr-rrc.valueTag",
45386         FT_UINT32, BASE_DEC, NULL, 0,
45387         "INTEGER_0_31", HFILL }},
45388     { &hf_nr_rrc_areaScope,
45389       { "areaScope", "nr-rrc.areaScope",
45390         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_areaScope_vals), 0,
45391         NULL, HFILL }},
45392     { &hf_nr_rrc_rach_OccasionsSI,
45393       { "rach-OccasionsSI", "nr-rrc.rach_OccasionsSI_element",
45394         FT_NONE, BASE_NONE, NULL, 0,
45395         NULL, HFILL }},
45396     { &hf_nr_rrc_rach_ConfigSI,
45397       { "rach-ConfigSI", "nr-rrc.rach_ConfigSI_element",
45398         FT_NONE, BASE_NONE, NULL, 0,
45399         "RACH_ConfigGeneric", HFILL }},
45400     { &hf_nr_rrc_ssb_perRACH_Occasion_02,
45401       { "ssb-perRACH-Occasion", "nr-rrc.ssb_perRACH_Occasion",
45402         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_ssb_perRACH_Occasion_02_vals), 0,
45403         "T_ssb_perRACH_Occasion_02", HFILL }},
45404     { &hf_nr_rrc_si_RequestPeriod,
45405       { "si-RequestPeriod", "nr-rrc.si_RequestPeriod",
45406         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_si_RequestPeriod_vals), 0,
45407         NULL, HFILL }},
45408     { &hf_nr_rrc_si_RequestResources,
45409       { "si-RequestResources", "nr-rrc.si_RequestResources",
45410         FT_UINT32, BASE_DEC, NULL, 0,
45411         "SEQUENCE_SIZE_1_maxSI_Message_OF_SI_RequestResources", HFILL }},
45412     { &hf_nr_rrc_si_RequestResources_item,
45413       { "SI-RequestResources", "nr-rrc.SI_RequestResources_element",
45414         FT_NONE, BASE_NONE, NULL, 0,
45415         NULL, HFILL }},
45416     { &hf_nr_rrc_ra_PreambleStartIndex,
45417       { "ra-PreambleStartIndex", "nr-rrc.ra_PreambleStartIndex",
45418         FT_UINT32, BASE_DEC, NULL, 0,
45419         "INTEGER_0_63", HFILL }},
45420     { &hf_nr_rrc_ra_AssociationPeriodIndex,
45421       { "ra-AssociationPeriodIndex", "nr-rrc.ra_AssociationPeriodIndex",
45422         FT_UINT32, BASE_DEC, NULL, 0,
45423         "INTEGER_0_15", HFILL }},
45424     { &hf_nr_rrc_subcarrierSpacing2,
45425       { "subcarrierSpacing2", "nr-rrc.subcarrierSpacing2",
45426         FT_UINT32, BASE_DEC, VALS(nr_rrc_SubcarrierSpacing_vals), 0,
45427         "SubcarrierSpacing", HFILL }},
45428     { &hf_nr_rrc_slotFormatCombinations,
45429       { "slotFormatCombinations", "nr-rrc.slotFormatCombinations",
45430         FT_UINT32, BASE_DEC, NULL, 0,
45431         "SEQUENCE_SIZE_1_maxNrofSlotFormatCombinationsPerSet_OF_SlotFormatCombination", HFILL }},
45432     { &hf_nr_rrc_slotFormatCombinations_item,
45433       { "SlotFormatCombination", "nr-rrc.SlotFormatCombination_element",
45434         FT_NONE, BASE_NONE, NULL, 0,
45435         NULL, HFILL }},
45436     { &hf_nr_rrc_positionInDCI_01,
45437       { "positionInDCI", "nr-rrc.positionInDCI",
45438         FT_UINT32, BASE_DEC, NULL, 0,
45439         "INTEGER_0_maxSFI_DCI_PayloadSize_1", HFILL }},
45440     { &hf_nr_rrc_slotFormatCombinationId,
45441       { "slotFormatCombinationId", "nr-rrc.slotFormatCombinationId",
45442         FT_UINT32, BASE_DEC, NULL, 0,
45443         NULL, HFILL }},
45444     { &hf_nr_rrc_slotFormats,
45445       { "slotFormats", "nr-rrc.slotFormats",
45446         FT_UINT32, BASE_DEC, NULL, 0,
45447         NULL, HFILL }},
45448     { &hf_nr_rrc_slotFormats_item,
45449       { "slotFormats item", "nr-rrc.slotFormats_item",
45450         FT_UINT32, BASE_DEC, NULL, 0,
45451         "INTEGER_0_255", HFILL }},
45452     { &hf_nr_rrc_sfi_RNTI,
45453       { "sfi-RNTI", "nr-rrc.sfi_RNTI",
45454         FT_UINT32, BASE_DEC, NULL, 0,
45455         "RNTI_Value", HFILL }},
45456     { &hf_nr_rrc_dci_PayloadSize_01,
45457       { "dci-PayloadSize", "nr-rrc.dci_PayloadSize",
45458         FT_UINT32, BASE_DEC, NULL, 0,
45459         "INTEGER_1_maxSFI_DCI_PayloadSize", HFILL }},
45460     { &hf_nr_rrc_slotFormatCombToAddModList,
45461       { "slotFormatCombToAddModList", "nr-rrc.slotFormatCombToAddModList",
45462         FT_UINT32, BASE_DEC, NULL, 0,
45463         "SEQUENCE_SIZE_1_maxNrofAggregatedCellsPerCellGroup_OF_SlotFormatCombinationsPerCell", HFILL }},
45464     { &hf_nr_rrc_slotFormatCombToAddModList_item,
45465       { "SlotFormatCombinationsPerCell", "nr-rrc.SlotFormatCombinationsPerCell_element",
45466         FT_NONE, BASE_NONE, NULL, 0,
45467         NULL, HFILL }},
45468     { &hf_nr_rrc_slotFormatCombToReleaseList,
45469       { "slotFormatCombToReleaseList", "nr-rrc.slotFormatCombToReleaseList",
45470         FT_UINT32, BASE_DEC, NULL, 0,
45471         "SEQUENCE_SIZE_1_maxNrofAggregatedCellsPerCellGroup_OF_ServCellIndex", HFILL }},
45472     { &hf_nr_rrc_slotFormatCombToReleaseList_item,
45473       { "ServCellIndex", "nr-rrc.ServCellIndex",
45474         FT_UINT32, BASE_DEC, NULL, 0,
45475         NULL, HFILL }},
45476     { &hf_nr_rrc_sst,
45477       { "sst", "nr-rrc.sst",
45478         FT_BYTES, BASE_NONE, NULL, 0,
45479         "BIT_STRING_SIZE_8", HFILL }},
45480     { &hf_nr_rrc_sst_SD,
45481       { "sst-SD", "nr-rrc.sst_SD",
45482         FT_BYTES, BASE_NONE, NULL, 0,
45483         "BIT_STRING_SIZE_32", HFILL }},
45484     { &hf_nr_rrc_sf_Medium_01,
45485       { "sf-Medium", "nr-rrc.sf_Medium",
45486         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_sf_Medium_01_vals), 0,
45487         "T_sf_Medium_01", HFILL }},
45488     { &hf_nr_rrc_sf_High_01,
45489       { "sf-High", "nr-rrc.sf_High",
45490         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_sf_High_01_vals), 0,
45491         "T_sf_High_01", HFILL }},
45492     { &hf_nr_rrc_measurementSlots,
45493       { "measurementSlots", "nr-rrc.measurementSlots",
45494         FT_BYTES, BASE_NONE, NULL, 0,
45495         "BIT_STRING_SIZE_1_80", HFILL }},
45496     { &hf_nr_rrc_endSymbol,
45497       { "endSymbol", "nr-rrc.endSymbol",
45498         FT_UINT32, BASE_DEC, NULL, 0,
45499         "INTEGER_0_3", HFILL }},
45500     { &hf_nr_rrc_periodicity_01,
45501       { "periodicity", "nr-rrc.periodicity",
45502         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_T_periodicity_01_vals_ext, 0,
45503         "T_periodicity_01", HFILL }},
45504     { &hf_nr_rrc_nrofHARQ_Processes_01,
45505       { "nrofHARQ-Processes", "nr-rrc.nrofHARQ_Processes",
45506         FT_UINT32, BASE_DEC, NULL, 0,
45507         "INTEGER_1_8", HFILL }},
45508     { &hf_nr_rrc_n1PUCCH_AN,
45509       { "n1PUCCH-AN", "nr-rrc.n1PUCCH_AN",
45510         FT_UINT32, BASE_DEC, NULL, 0,
45511         "PUCCH_ResourceId", HFILL }},
45512     { &hf_nr_rrc_mcs_Table_03,
45513       { "mcs-Table", "nr-rrc.mcs_Table",
45514         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_mcs_Table_03_vals), 0,
45515         "T_mcs_Table_03", HFILL }},
45516     { &hf_nr_rrc_srs_SwitchFromServCellIndex,
45517       { "srs-SwitchFromServCellIndex", "nr-rrc.srs_SwitchFromServCellIndex",
45518         FT_UINT32, BASE_DEC, NULL, 0,
45519         "INTEGER_0_31", HFILL }},
45520     { &hf_nr_rrc_srs_SwitchFromCarrier,
45521       { "srs-SwitchFromCarrier", "nr-rrc.srs_SwitchFromCarrier",
45522         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_srs_SwitchFromCarrier_vals), 0,
45523         NULL, HFILL }},
45524     { &hf_nr_rrc_srs_TPC_PDCCH_Group,
45525       { "srs-TPC-PDCCH-Group", "nr-rrc.srs_TPC_PDCCH_Group",
45526         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_srs_TPC_PDCCH_Group_vals), 0,
45527         NULL, HFILL }},
45528     { &hf_nr_rrc_typeA,
45529       { "typeA", "nr-rrc.typeA",
45530         FT_UINT32, BASE_DEC, NULL, 0,
45531         "SEQUENCE_SIZE_1_32_OF_SRS_TPC_PDCCH_Config", HFILL }},
45532     { &hf_nr_rrc_typeA_item,
45533       { "SRS-TPC-PDCCH-Config", "nr-rrc.SRS_TPC_PDCCH_Config_element",
45534         FT_NONE, BASE_NONE, NULL, 0,
45535         NULL, HFILL }},
45536     { &hf_nr_rrc_typeB,
45537       { "typeB", "nr-rrc.typeB_element",
45538         FT_NONE, BASE_NONE, NULL, 0,
45539         "SRS_TPC_PDCCH_Config", HFILL }},
45540     { &hf_nr_rrc_monitoringCells,
45541       { "monitoringCells", "nr-rrc.monitoringCells",
45542         FT_UINT32, BASE_DEC, NULL, 0,
45543         "SEQUENCE_SIZE_1_maxNrofServingCells_OF_ServCellIndex", HFILL }},
45544     { &hf_nr_rrc_monitoringCells_item,
45545       { "ServCellIndex", "nr-rrc.ServCellIndex",
45546         FT_UINT32, BASE_DEC, NULL, 0,
45547         NULL, HFILL }},
45548     { &hf_nr_rrc_srs_CC_SetIndexlist,
45549       { "srs-CC-SetIndexlist", "nr-rrc.srs_CC_SetIndexlist",
45550         FT_UINT32, BASE_DEC, NULL, 0,
45551         "SEQUENCE_SIZE_1_4_OF_SRS_CC_SetIndex", HFILL }},
45552     { &hf_nr_rrc_srs_CC_SetIndexlist_item,
45553       { "SRS-CC-SetIndex", "nr-rrc.SRS_CC_SetIndex_element",
45554         FT_NONE, BASE_NONE, NULL, 0,
45555         NULL, HFILL }},
45556     { &hf_nr_rrc_cc_SetIndex,
45557       { "cc-SetIndex", "nr-rrc.cc_SetIndex",
45558         FT_UINT32, BASE_DEC, NULL, 0,
45559         "INTEGER_0_3", HFILL }},
45560     { &hf_nr_rrc_cc_IndexInOneCC_Set,
45561       { "cc-IndexInOneCC-Set", "nr-rrc.cc_IndexInOneCC_Set",
45562         FT_UINT32, BASE_DEC, NULL, 0,
45563         "INTEGER_0_7", HFILL }},
45564     { &hf_nr_rrc_srs_ResourceSetToReleaseList,
45565       { "srs-ResourceSetToReleaseList", "nr-rrc.srs_ResourceSetToReleaseList",
45566         FT_UINT32, BASE_DEC, NULL, 0,
45567         "SEQUENCE_SIZE_1_maxNrofSRS_ResourceSets_OF_SRS_ResourceSetId", HFILL }},
45568     { &hf_nr_rrc_srs_ResourceSetToReleaseList_item,
45569       { "SRS-ResourceSetId", "nr-rrc.SRS_ResourceSetId",
45570         FT_UINT32, BASE_DEC, NULL, 0,
45571         NULL, HFILL }},
45572     { &hf_nr_rrc_srs_ResourceSetToAddModList,
45573       { "srs-ResourceSetToAddModList", "nr-rrc.srs_ResourceSetToAddModList",
45574         FT_UINT32, BASE_DEC, NULL, 0,
45575         "SEQUENCE_SIZE_1_maxNrofSRS_ResourceSets_OF_SRS_ResourceSet", HFILL }},
45576     { &hf_nr_rrc_srs_ResourceSetToAddModList_item,
45577       { "SRS-ResourceSet", "nr-rrc.SRS_ResourceSet_element",
45578         FT_NONE, BASE_NONE, NULL, 0,
45579         NULL, HFILL }},
45580     { &hf_nr_rrc_srs_ResourceToReleaseList,
45581       { "srs-ResourceToReleaseList", "nr-rrc.srs_ResourceToReleaseList",
45582         FT_UINT32, BASE_DEC, NULL, 0,
45583         "SEQUENCE_SIZE_1_maxNrofSRS_Resources_OF_SRS_ResourceId", HFILL }},
45584     { &hf_nr_rrc_srs_ResourceToReleaseList_item,
45585       { "SRS-ResourceId", "nr-rrc.SRS_ResourceId",
45586         FT_UINT32, BASE_DEC, NULL, 0,
45587         NULL, HFILL }},
45588     { &hf_nr_rrc_srs_ResourceToAddModList,
45589       { "srs-ResourceToAddModList", "nr-rrc.srs_ResourceToAddModList",
45590         FT_UINT32, BASE_DEC, NULL, 0,
45591         "SEQUENCE_SIZE_1_maxNrofSRS_Resources_OF_SRS_Resource", HFILL }},
45592     { &hf_nr_rrc_srs_ResourceToAddModList_item,
45593       { "SRS-Resource", "nr-rrc.SRS_Resource_element",
45594         FT_NONE, BASE_NONE, NULL, 0,
45595         NULL, HFILL }},
45596     { &hf_nr_rrc_tpc_Accumulation_01,
45597       { "tpc-Accumulation", "nr-rrc.tpc_Accumulation",
45598         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_tpc_Accumulation_01_vals), 0,
45599         "T_tpc_Accumulation_01", HFILL }},
45600     { &hf_nr_rrc_srs_ResourceSetId,
45601       { "srs-ResourceSetId", "nr-rrc.srs_ResourceSetId",
45602         FT_UINT32, BASE_DEC, NULL, 0,
45603         NULL, HFILL }},
45604     { &hf_nr_rrc_srs_ResourceIdList,
45605       { "srs-ResourceIdList", "nr-rrc.srs_ResourceIdList",
45606         FT_UINT32, BASE_DEC, NULL, 0,
45607         "SEQUENCE_SIZE_1_maxNrofSRS_ResourcesPerSet_OF_SRS_ResourceId", HFILL }},
45608     { &hf_nr_rrc_srs_ResourceIdList_item,
45609       { "SRS-ResourceId", "nr-rrc.SRS_ResourceId",
45610         FT_UINT32, BASE_DEC, NULL, 0,
45611         NULL, HFILL }},
45612     { &hf_nr_rrc_resourceType_01,
45613       { "resourceType", "nr-rrc.resourceType",
45614         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_resourceType_01_vals), 0,
45615         "T_resourceType_01", HFILL }},
45616     { &hf_nr_rrc_aperiodic_01,
45617       { "aperiodic", "nr-rrc.aperiodic_element",
45618         FT_NONE, BASE_NONE, NULL, 0,
45619         "T_aperiodic_01", HFILL }},
45620     { &hf_nr_rrc_aperiodicSRS_ResourceTrigger,
45621       { "aperiodicSRS-ResourceTrigger", "nr-rrc.aperiodicSRS_ResourceTrigger",
45622         FT_UINT32, BASE_DEC, NULL, 0,
45623         "INTEGER_1_maxNrofSRS_TriggerStates_1", HFILL }},
45624     { &hf_nr_rrc_slotOffset,
45625       { "slotOffset", "nr-rrc.slotOffset",
45626         FT_UINT32, BASE_DEC, NULL, 0,
45627         "INTEGER_1_32", HFILL }},
45628     { &hf_nr_rrc_aperiodicSRS_ResourceTriggerList_v1530,
45629       { "aperiodicSRS-ResourceTriggerList-v1530", "nr-rrc.aperiodicSRS_ResourceTriggerList_v1530",
45630         FT_UINT32, BASE_DEC, NULL, 0,
45631         "T_aperiodicSRS_ResourceTriggerList_v1530", HFILL }},
45632     { &hf_nr_rrc_aperiodicSRS_ResourceTriggerList_v1530_item,
45633       { "aperiodicSRS-ResourceTriggerList-v1530 item", "nr-rrc.aperiodicSRS_ResourceTriggerList_v1530_item",
45634         FT_UINT32, BASE_DEC, NULL, 0,
45635         "INTEGER_1_maxNrofSRS_TriggerStates_1", HFILL }},
45636     { &hf_nr_rrc_semi_persistent,
45637       { "semi-persistent", "nr-rrc.semi_persistent_element",
45638         FT_NONE, BASE_NONE, NULL, 0,
45639         NULL, HFILL }},
45640     { &hf_nr_rrc_associatedCSI_RS,
45641       { "associatedCSI-RS", "nr-rrc.associatedCSI_RS",
45642         FT_UINT32, BASE_DEC, NULL, 0,
45643         "NZP_CSI_RS_ResourceId", HFILL }},
45644     { &hf_nr_rrc_periodic_01,
45645       { "periodic", "nr-rrc.periodic_element",
45646         FT_NONE, BASE_NONE, NULL, 0,
45647         "T_periodic_01", HFILL }},
45648     { &hf_nr_rrc_usage,
45649       { "usage", "nr-rrc.usage",
45650         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_usage_vals), 0,
45651         NULL, HFILL }},
45652     { &hf_nr_rrc_p0_01,
45653       { "p0", "nr-rrc.p0",
45654         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_dbm, 0,
45655         "INTEGER_M202_24", HFILL }},
45656     { &hf_nr_rrc_pathlossReferenceRS,
45657       { "pathlossReferenceRS", "nr-rrc.pathlossReferenceRS",
45658         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pathlossReferenceRS_vals), 0,
45659         NULL, HFILL }},
45660     { &hf_nr_rrc_srs_PowerControlAdjustmentStates,
45661       { "srs-PowerControlAdjustmentStates", "nr-rrc.srs_PowerControlAdjustmentStates",
45662         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_srs_PowerControlAdjustmentStates_vals), 0,
45663         NULL, HFILL }},
45664     { &hf_nr_rrc_srs_ResourceId,
45665       { "srs-ResourceId", "nr-rrc.srs_ResourceId",
45666         FT_UINT32, BASE_DEC, NULL, 0,
45667         NULL, HFILL }},
45668     { &hf_nr_rrc_nrofSRS_Ports,
45669       { "nrofSRS-Ports", "nr-rrc.nrofSRS_Ports",
45670         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_nrofSRS_Ports_vals), 0,
45671         NULL, HFILL }},
45672     { &hf_nr_rrc_ptrs_PortIndex,
45673       { "ptrs-PortIndex", "nr-rrc.ptrs_PortIndex",
45674         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_ptrs_PortIndex_vals), 0,
45675         NULL, HFILL }},
45676     { &hf_nr_rrc_transmissionComb,
45677       { "transmissionComb", "nr-rrc.transmissionComb",
45678         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_transmissionComb_vals), 0,
45679         NULL, HFILL }},
45680     { &hf_nr_rrc_n2_01,
45681       { "n2", "nr-rrc.n2_element",
45682         FT_NONE, BASE_NONE, NULL, 0,
45683         NULL, HFILL }},
45684     { &hf_nr_rrc_combOffset_n2,
45685       { "combOffset-n2", "nr-rrc.combOffset_n2",
45686         FT_UINT32, BASE_DEC, NULL, 0,
45687         "INTEGER_0_1", HFILL }},
45688     { &hf_nr_rrc_cyclicShift_n2,
45689       { "cyclicShift-n2", "nr-rrc.cyclicShift_n2",
45690         FT_UINT32, BASE_DEC, NULL, 0,
45691         "INTEGER_0_7", HFILL }},
45692     { &hf_nr_rrc_n4_01,
45693       { "n4", "nr-rrc.n4_element",
45694         FT_NONE, BASE_NONE, NULL, 0,
45695         NULL, HFILL }},
45696     { &hf_nr_rrc_combOffset_n4,
45697       { "combOffset-n4", "nr-rrc.combOffset_n4",
45698         FT_UINT32, BASE_DEC, NULL, 0,
45699         "INTEGER_0_3", HFILL }},
45700     { &hf_nr_rrc_cyclicShift_n4,
45701       { "cyclicShift-n4", "nr-rrc.cyclicShift_n4",
45702         FT_UINT32, BASE_DEC, NULL, 0,
45703         "INTEGER_0_11", HFILL }},
45704     { &hf_nr_rrc_resourceMapping_01,
45705       { "resourceMapping", "nr-rrc.resourceMapping_element",
45706         FT_NONE, BASE_NONE, NULL, 0,
45707         NULL, HFILL }},
45708     { &hf_nr_rrc_startPosition,
45709       { "startPosition", "nr-rrc.startPosition",
45710         FT_UINT32, BASE_DEC, NULL, 0,
45711         "INTEGER_0_5", HFILL }},
45712     { &hf_nr_rrc_nrofSymbols_02,
45713       { "nrofSymbols", "nr-rrc.nrofSymbols",
45714         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_nrofSymbols_vals), 0,
45715         NULL, HFILL }},
45716     { &hf_nr_rrc_repetitionFactor,
45717       { "repetitionFactor", "nr-rrc.repetitionFactor",
45718         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_repetitionFactor_vals), 0,
45719         NULL, HFILL }},
45720     { &hf_nr_rrc_freqDomainPosition,
45721       { "freqDomainPosition", "nr-rrc.freqDomainPosition",
45722         FT_UINT32, BASE_DEC, NULL, 0,
45723         "INTEGER_0_67", HFILL }},
45724     { &hf_nr_rrc_freqDomainShift,
45725       { "freqDomainShift", "nr-rrc.freqDomainShift",
45726         FT_UINT32, BASE_DEC, NULL, 0,
45727         "INTEGER_0_268", HFILL }},
45728     { &hf_nr_rrc_freqHopping,
45729       { "freqHopping", "nr-rrc.freqHopping_element",
45730         FT_NONE, BASE_NONE, NULL, 0,
45731         NULL, HFILL }},
45732     { &hf_nr_rrc_c_SRS,
45733       { "c-SRS", "nr-rrc.c_SRS",
45734         FT_UINT32, BASE_DEC, NULL, 0,
45735         "INTEGER_0_63", HFILL }},
45736     { &hf_nr_rrc_b_SRS,
45737       { "b-SRS", "nr-rrc.b_SRS",
45738         FT_UINT32, BASE_DEC, NULL, 0,
45739         "INTEGER_0_3", HFILL }},
45740     { &hf_nr_rrc_b_hop,
45741       { "b-hop", "nr-rrc.b_hop",
45742         FT_UINT32, BASE_DEC, NULL, 0,
45743         "INTEGER_0_3", HFILL }},
45744     { &hf_nr_rrc_groupOrSequenceHopping,
45745       { "groupOrSequenceHopping", "nr-rrc.groupOrSequenceHopping",
45746         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_groupOrSequenceHopping_vals), 0,
45747         NULL, HFILL }},
45748     { &hf_nr_rrc_resourceType_02,
45749       { "resourceType", "nr-rrc.resourceType",
45750         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_resourceType_02_vals), 0,
45751         "T_resourceType_02", HFILL }},
45752     { &hf_nr_rrc_aperiodic_02,
45753       { "aperiodic", "nr-rrc.aperiodic_element",
45754         FT_NONE, BASE_NONE, NULL, 0,
45755         "T_aperiodic_02", HFILL }},
45756     { &hf_nr_rrc_semi_persistent_01,
45757       { "semi-persistent", "nr-rrc.semi_persistent_element",
45758         FT_NONE, BASE_NONE, NULL, 0,
45759         "T_semi_persistent_01", HFILL }},
45760     { &hf_nr_rrc_periodicityAndOffset_sp,
45761       { "periodicityAndOffset-sp", "nr-rrc.periodicityAndOffset_sp",
45762         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_SRS_PeriodicityAndOffset_vals_ext, 0,
45763         "SRS_PeriodicityAndOffset", HFILL }},
45764     { &hf_nr_rrc_periodic_02,
45765       { "periodic", "nr-rrc.periodic_element",
45766         FT_NONE, BASE_NONE, NULL, 0,
45767         "T_periodic_02", HFILL }},
45768     { &hf_nr_rrc_periodicityAndOffset_p,
45769       { "periodicityAndOffset-p", "nr-rrc.periodicityAndOffset_p",
45770         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_SRS_PeriodicityAndOffset_vals_ext, 0,
45771         "SRS_PeriodicityAndOffset", HFILL }},
45772     { &hf_nr_rrc_sequenceId,
45773       { "sequenceId", "nr-rrc.sequenceId",
45774         FT_UINT32, BASE_DEC, NULL, 0,
45775         "INTEGER_0_1023", HFILL }},
45776     { &hf_nr_rrc_spatialRelationInfo,
45777       { "spatialRelationInfo", "nr-rrc.spatialRelationInfo_element",
45778         FT_NONE, BASE_NONE, NULL, 0,
45779         "SRS_SpatialRelationInfo", HFILL }},
45780     { &hf_nr_rrc_referenceSignal_03,
45781       { "referenceSignal", "nr-rrc.referenceSignal",
45782         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_referenceSignal_03_vals), 0,
45783         "T_referenceSignal_03", HFILL }},
45784     { &hf_nr_rrc_srs_01,
45785       { "srs", "nr-rrc.srs_element",
45786         FT_NONE, BASE_NONE, NULL, 0,
45787         "T_srs_01", HFILL }},
45788     { &hf_nr_rrc_resourceId,
45789       { "resourceId", "nr-rrc.resourceId",
45790         FT_UINT32, BASE_DEC, NULL, 0,
45791         "SRS_ResourceId", HFILL }},
45792     { &hf_nr_rrc_sl32,
45793       { "sl32", "nr-rrc.sl32",
45794         FT_UINT32, BASE_DEC, NULL, 0,
45795         "INTEGER_0_31", HFILL }},
45796     { &hf_nr_rrc_sl64,
45797       { "sl64", "nr-rrc.sl64",
45798         FT_UINT32, BASE_DEC, NULL, 0,
45799         "INTEGER_0_63", HFILL }},
45800     { &hf_nr_rrc_startingBitOfFormat2_3,
45801       { "startingBitOfFormat2-3", "nr-rrc.startingBitOfFormat2_3",
45802         FT_UINT32, BASE_DEC, NULL, 0,
45803         "INTEGER_1_31", HFILL }},
45804     { &hf_nr_rrc_fieldTypeFormat2_3,
45805       { "fieldTypeFormat2-3", "nr-rrc.fieldTypeFormat2_3",
45806         FT_UINT32, BASE_DEC, NULL, 0,
45807         "INTEGER_0_1", HFILL }},
45808     { &hf_nr_rrc_startingBitOfFormat2_3SUL_v1530,
45809       { "startingBitOfFormat2-3SUL-v1530", "nr-rrc.startingBitOfFormat2_3SUL_v1530",
45810         FT_UINT32, BASE_DEC, NULL, 0,
45811         "INTEGER_1_31", HFILL }},
45812     { &hf_nr_rrc_periodicityAndOffset_02,
45813       { "periodicityAndOffset", "nr-rrc.periodicityAndOffset",
45814         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_periodicityAndOffset_01_vals), 0,
45815         "T_periodicityAndOffset_01", HFILL }},
45816     { &hf_nr_rrc_sf5,
45817       { "sf5", "nr-rrc.sf5",
45818         FT_UINT32, BASE_DEC, NULL, 0,
45819         "INTEGER_0_4", HFILL }},
45820     { &hf_nr_rrc_sf10,
45821       { "sf10", "nr-rrc.sf10",
45822         FT_UINT32, BASE_DEC, NULL, 0,
45823         "INTEGER_0_9", HFILL }},
45824     { &hf_nr_rrc_sf20,
45825       { "sf20", "nr-rrc.sf20",
45826         FT_UINT32, BASE_DEC, NULL, 0,
45827         "INTEGER_0_19", HFILL }},
45828     { &hf_nr_rrc_sf40,
45829       { "sf40", "nr-rrc.sf40",
45830         FT_UINT32, BASE_DEC, NULL, 0,
45831         "INTEGER_0_39", HFILL }},
45832     { &hf_nr_rrc_sf80,
45833       { "sf80", "nr-rrc.sf80",
45834         FT_UINT32, BASE_DEC, NULL, 0,
45835         "INTEGER_0_79", HFILL }},
45836     { &hf_nr_rrc_sf160,
45837       { "sf160", "nr-rrc.sf160",
45838         FT_UINT32, BASE_DEC, NULL, 0,
45839         "INTEGER_0_159", HFILL }},
45840     { &hf_nr_rrc_duration_02,
45841       { "duration", "nr-rrc.duration",
45842         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_duration_vals), 0,
45843         NULL, HFILL }},
45844     { &hf_nr_rrc_pci_List,
45845       { "pci-List", "nr-rrc.pci_List",
45846         FT_UINT32, BASE_DEC, NULL, 0,
45847         "SEQUENCE_SIZE_1_maxNrofPCIsPerSMTC_OF_PhysCellId", HFILL }},
45848     { &hf_nr_rrc_pci_List_item,
45849       { "PhysCellId", "nr-rrc.PhysCellId",
45850         FT_UINT32, BASE_DEC, NULL, 0,
45851         NULL, HFILL }},
45852     { &hf_nr_rrc_periodicity_02,
45853       { "periodicity", "nr-rrc.periodicity",
45854         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_periodicity_02_vals), 0,
45855         "T_periodicity_02", HFILL }},
45856     { &hf_nr_rrc_tag_ToReleaseList,
45857       { "tag-ToReleaseList", "nr-rrc.tag_ToReleaseList",
45858         FT_UINT32, BASE_DEC, NULL, 0,
45859         "SEQUENCE_SIZE_1_maxNrofTAGs_OF_TAG_Id", HFILL }},
45860     { &hf_nr_rrc_tag_ToReleaseList_item,
45861       { "TAG-Id", "nr-rrc.TAG_Id",
45862         FT_UINT32, BASE_DEC, NULL, 0,
45863         NULL, HFILL }},
45864     { &hf_nr_rrc_tag_ToAddModList,
45865       { "tag-ToAddModList", "nr-rrc.tag_ToAddModList",
45866         FT_UINT32, BASE_DEC, NULL, 0,
45867         "SEQUENCE_SIZE_1_maxNrofTAGs_OF_TAG", HFILL }},
45868     { &hf_nr_rrc_tag_ToAddModList_item,
45869       { "TAG", "nr-rrc.TAG_element",
45870         FT_NONE, BASE_NONE, NULL, 0,
45871         NULL, HFILL }},
45872     { &hf_nr_rrc_timeAlignmentTimer,
45873       { "timeAlignmentTimer", "nr-rrc.timeAlignmentTimer",
45874         FT_UINT32, BASE_DEC, VALS(nr_rrc_TimeAlignmentTimer_vals), 0,
45875         NULL, HFILL }},
45876     { &hf_nr_rrc_tci_StateId,
45877       { "tci-StateId", "nr-rrc.tci_StateId",
45878         FT_UINT32, BASE_DEC, NULL, 0,
45879         NULL, HFILL }},
45880     { &hf_nr_rrc_qcl_Type1,
45881       { "qcl-Type1", "nr-rrc.qcl_Type1_element",
45882         FT_NONE, BASE_NONE, NULL, 0,
45883         "QCL_Info", HFILL }},
45884     { &hf_nr_rrc_qcl_Type2,
45885       { "qcl-Type2", "nr-rrc.qcl_Type2_element",
45886         FT_NONE, BASE_NONE, NULL, 0,
45887         "QCL_Info", HFILL }},
45888     { &hf_nr_rrc_cell,
45889       { "cell", "nr-rrc.cell",
45890         FT_UINT32, BASE_DEC, NULL, 0,
45891         "ServCellIndex", HFILL }},
45892     { &hf_nr_rrc_referenceSignal_04,
45893       { "referenceSignal", "nr-rrc.referenceSignal",
45894         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_referenceSignal_04_vals), 0,
45895         "T_referenceSignal_04", HFILL }},
45896     { &hf_nr_rrc_csi_rs,
45897       { "csi-rs", "nr-rrc.csi_rs",
45898         FT_UINT32, BASE_DEC, NULL, 0,
45899         "NZP_CSI_RS_ResourceId", HFILL }},
45900     { &hf_nr_rrc_qcl_Type,
45901       { "qcl-Type", "nr-rrc.qcl_Type",
45902         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_qcl_Type_vals), 0,
45903         NULL, HFILL }},
45904     { &hf_nr_rrc_referenceSubcarrierSpacing,
45905       { "referenceSubcarrierSpacing", "nr-rrc.referenceSubcarrierSpacing",
45906         FT_UINT32, BASE_DEC, VALS(nr_rrc_SubcarrierSpacing_vals), 0,
45907         "SubcarrierSpacing", HFILL }},
45908     { &hf_nr_rrc_pattern1_01,
45909       { "pattern1", "nr-rrc.pattern1_element",
45910         FT_NONE, BASE_NONE, NULL, 0,
45911         "TDD_UL_DL_Pattern", HFILL }},
45912     { &hf_nr_rrc_pattern2,
45913       { "pattern2", "nr-rrc.pattern2_element",
45914         FT_NONE, BASE_NONE, NULL, 0,
45915         "TDD_UL_DL_Pattern", HFILL }},
45916     { &hf_nr_rrc_dl_UL_TransmissionPeriodicity,
45917       { "dl-UL-TransmissionPeriodicity", "nr-rrc.dl_UL_TransmissionPeriodicity",
45918         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_dl_UL_TransmissionPeriodicity_vals), 0,
45919         NULL, HFILL }},
45920     { &hf_nr_rrc_nrofDownlinkSlots,
45921       { "nrofDownlinkSlots", "nr-rrc.nrofDownlinkSlots",
45922         FT_UINT32, BASE_DEC, NULL, 0,
45923         "INTEGER_0_maxNrofSlots", HFILL }},
45924     { &hf_nr_rrc_nrofDownlinkSymbols,
45925       { "nrofDownlinkSymbols", "nr-rrc.nrofDownlinkSymbols",
45926         FT_UINT32, BASE_DEC, NULL, 0,
45927         "INTEGER_0_maxNrofSymbols_1", HFILL }},
45928     { &hf_nr_rrc_nrofUplinkSlots,
45929       { "nrofUplinkSlots", "nr-rrc.nrofUplinkSlots",
45930         FT_UINT32, BASE_DEC, NULL, 0,
45931         "INTEGER_0_maxNrofSlots", HFILL }},
45932     { &hf_nr_rrc_nrofUplinkSymbols,
45933       { "nrofUplinkSymbols", "nr-rrc.nrofUplinkSymbols",
45934         FT_UINT32, BASE_DEC, NULL, 0,
45935         "INTEGER_0_maxNrofSymbols_1", HFILL }},
45936     { &hf_nr_rrc_dl_UL_TransmissionPeriodicity_v1530,
45937       { "dl-UL-TransmissionPeriodicity-v1530", "nr-rrc.dl_UL_TransmissionPeriodicity_v1530",
45938         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_dl_UL_TransmissionPeriodicity_v1530_vals), 0,
45939         NULL, HFILL }},
45940     { &hf_nr_rrc_slotSpecificConfigurationsToAddModList,
45941       { "slotSpecificConfigurationsToAddModList", "nr-rrc.slotSpecificConfigurationsToAddModList",
45942         FT_UINT32, BASE_DEC, NULL, 0,
45943         "SEQUENCE_SIZE_1_maxNrofSlots_OF_TDD_UL_DL_SlotConfig", HFILL }},
45944     { &hf_nr_rrc_slotSpecificConfigurationsToAddModList_item,
45945       { "TDD-UL-DL-SlotConfig", "nr-rrc.TDD_UL_DL_SlotConfig_element",
45946         FT_NONE, BASE_NONE, NULL, 0,
45947         NULL, HFILL }},
45948     { &hf_nr_rrc_slotSpecificConfigurationsToreleaseList,
45949       { "slotSpecificConfigurationsToreleaseList", "nr-rrc.slotSpecificConfigurationsToreleaseList",
45950         FT_UINT32, BASE_DEC, NULL, 0,
45951         "SEQUENCE_SIZE_1_maxNrofSlots_OF_TDD_UL_DL_SlotIndex", HFILL }},
45952     { &hf_nr_rrc_slotSpecificConfigurationsToreleaseList_item,
45953       { "TDD-UL-DL-SlotIndex", "nr-rrc.TDD_UL_DL_SlotIndex",
45954         FT_UINT32, BASE_DEC, NULL, 0,
45955         NULL, HFILL }},
45956     { &hf_nr_rrc_slotIndex,
45957       { "slotIndex", "nr-rrc.slotIndex",
45958         FT_UINT32, BASE_DEC, NULL, 0,
45959         "TDD_UL_DL_SlotIndex", HFILL }},
45960     { &hf_nr_rrc_symbols,
45961       { "symbols", "nr-rrc.symbols",
45962         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_symbols_vals), 0,
45963         NULL, HFILL }},
45964     { &hf_nr_rrc_allDownlink,
45965       { "allDownlink", "nr-rrc.allDownlink_element",
45966         FT_NONE, BASE_NONE, NULL, 0,
45967         NULL, HFILL }},
45968     { &hf_nr_rrc_allUplink,
45969       { "allUplink", "nr-rrc.allUplink_element",
45970         FT_NONE, BASE_NONE, NULL, 0,
45971         NULL, HFILL }},
45972     { &hf_nr_rrc_explicit,
45973       { "explicit", "nr-rrc.explicit_element",
45974         FT_NONE, BASE_NONE, NULL, 0,
45975         NULL, HFILL }},
45976     { &hf_nr_rrc_nrofDownlinkSymbols_01,
45977       { "nrofDownlinkSymbols", "nr-rrc.nrofDownlinkSymbols",
45978         FT_UINT32, BASE_DEC, NULL, 0,
45979         "INTEGER_1_maxNrofSymbols_1", HFILL }},
45980     { &hf_nr_rrc_nrofUplinkSymbols_01,
45981       { "nrofUplinkSymbols", "nr-rrc.nrofUplinkSymbols",
45982         FT_UINT32, BASE_DEC, NULL, 0,
45983         "INTEGER_1_maxNrofSymbols_1", HFILL }},
45984     { &hf_nr_rrc_UAC_BarringInfoSetList_item,
45985       { "UAC-BarringInfoSet", "nr-rrc.UAC_BarringInfoSet_element",
45986         FT_NONE, BASE_NONE, NULL, 0,
45987         NULL, HFILL }},
45988     { &hf_nr_rrc_uac_BarringFactor,
45989       { "uac-BarringFactor", "nr-rrc.uac_BarringFactor",
45990         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_uac_BarringFactor_vals), 0,
45991         NULL, HFILL }},
45992     { &hf_nr_rrc_uac_BarringTime,
45993       { "uac-BarringTime", "nr-rrc.uac_BarringTime",
45994         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_uac_BarringTime_vals), 0,
45995         NULL, HFILL }},
45996     { &hf_nr_rrc_uac_BarringForAccessIdentity,
45997       { "uac-BarringForAccessIdentity", "nr-rrc.uac_BarringForAccessIdentity",
45998         FT_BYTES, BASE_NONE, NULL, 0,
45999         "BIT_STRING_SIZE_7", HFILL }},
46000     { &hf_nr_rrc_UAC_BarringPerCatList_item,
46001       { "UAC-BarringPerCat", "nr-rrc.UAC_BarringPerCat_element",
46002         FT_NONE, BASE_NONE, NULL, 0,
46003         NULL, HFILL }},
46004     { &hf_nr_rrc_accessCategory,
46005       { "accessCategory", "nr-rrc.accessCategory",
46006         FT_UINT32, BASE_DEC, NULL, 0,
46007         "INTEGER_1_maxAccessCat_1", HFILL }},
46008     { &hf_nr_rrc_uac_barringInfoSetIndex,
46009       { "uac-barringInfoSetIndex", "nr-rrc.uac_barringInfoSetIndex",
46010         FT_UINT32, BASE_DEC, NULL, 0,
46011         NULL, HFILL }},
46012     { &hf_nr_rrc_UAC_BarringPerPLMN_List_item,
46013       { "UAC-BarringPerPLMN", "nr-rrc.UAC_BarringPerPLMN_element",
46014         FT_NONE, BASE_NONE, NULL, 0,
46015         NULL, HFILL }},
46016     { &hf_nr_rrc_plmn_IdentityIndex,
46017       { "plmn-IdentityIndex", "nr-rrc.plmn_IdentityIndex",
46018         FT_UINT32, BASE_DEC, NULL, 0,
46019         "INTEGER_1_maxPLMN", HFILL }},
46020     { &hf_nr_rrc_uac_ACBarringListType,
46021       { "uac-ACBarringListType", "nr-rrc.uac_ACBarringListType",
46022         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_uac_ACBarringListType_vals), 0,
46023         NULL, HFILL }},
46024     { &hf_nr_rrc_uac_ImplicitACBarringList,
46025       { "uac-ImplicitACBarringList", "nr-rrc.uac_ImplicitACBarringList",
46026         FT_UINT32, BASE_DEC, NULL, 0,
46027         "SEQUENCE_SIZE_maxAccessCat_1_OF_UAC_BarringInfoSetIndex", HFILL }},
46028     { &hf_nr_rrc_uac_ImplicitACBarringList_item,
46029       { "UAC-BarringInfoSetIndex", "nr-rrc.UAC_BarringInfoSetIndex",
46030         FT_UINT32, BASE_DEC, NULL, 0,
46031         NULL, HFILL }},
46032     { &hf_nr_rrc_uac_ExplicitACBarringList,
46033       { "uac-ExplicitACBarringList", "nr-rrc.uac_ExplicitACBarringList",
46034         FT_UINT32, BASE_DEC, NULL, 0,
46035         "UAC_BarringPerCatList", HFILL }},
46036     { &hf_nr_rrc_t300,
46037       { "t300", "nr-rrc.t300",
46038         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_t300_vals), 0,
46039         NULL, HFILL }},
46040     { &hf_nr_rrc_t301,
46041       { "t301", "nr-rrc.t301",
46042         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_t301_vals), 0,
46043         NULL, HFILL }},
46044     { &hf_nr_rrc_t310_01,
46045       { "t310", "nr-rrc.t310",
46046         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_t310_01_vals), 0,
46047         "T_t310_01", HFILL }},
46048     { &hf_nr_rrc_n310_01,
46049       { "n310", "nr-rrc.n310",
46050         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_n310_01_vals), 0,
46051         "T_n310_01", HFILL }},
46052     { &hf_nr_rrc_t311,
46053       { "t311", "nr-rrc.t311",
46054         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_t311_vals), 0,
46055         NULL, HFILL }},
46056     { &hf_nr_rrc_n311_01,
46057       { "n311", "nr-rrc.n311",
46058         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_n311_01_vals), 0,
46059         "T_n311_01", HFILL }},
46060     { &hf_nr_rrc_t319,
46061       { "t319", "nr-rrc.t319",
46062         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_t319_vals), 0,
46063         NULL, HFILL }},
46064     { &hf_nr_rrc_frequencyInfoUL,
46065       { "frequencyInfoUL", "nr-rrc.frequencyInfoUL_element",
46066         FT_NONE, BASE_NONE, NULL, 0,
46067         NULL, HFILL }},
46068     { &hf_nr_rrc_initialUplinkBWP_01,
46069       { "initialUplinkBWP", "nr-rrc.initialUplinkBWP_element",
46070         FT_NONE, BASE_NONE, NULL, 0,
46071         "BWP_UplinkCommon", HFILL }},
46072     { &hf_nr_rrc_dummy_02,
46073       { "dummy", "nr-rrc.dummy",
46074         FT_UINT32, BASE_DEC, VALS(nr_rrc_TimeAlignmentTimer_vals), 0,
46075         "TimeAlignmentTimer", HFILL }},
46076     { &hf_nr_rrc_frequencyInfoUL_01,
46077       { "frequencyInfoUL", "nr-rrc.frequencyInfoUL_element",
46078         FT_NONE, BASE_NONE, NULL, 0,
46079         "FrequencyInfoUL_SIB", HFILL }},
46080     { &hf_nr_rrc_timeAlignmentTimerCommon,
46081       { "timeAlignmentTimerCommon", "nr-rrc.timeAlignmentTimerCommon",
46082         FT_UINT32, BASE_DEC, VALS(nr_rrc_TimeAlignmentTimer_vals), 0,
46083         "TimeAlignmentTimer", HFILL }},
46084     { &hf_nr_rrc_UplinkTxDirectCurrentList_item,
46085       { "UplinkTxDirectCurrentCell", "nr-rrc.UplinkTxDirectCurrentCell_element",
46086         FT_NONE, BASE_NONE, NULL, 0,
46087         NULL, HFILL }},
46088     { &hf_nr_rrc_uplinkDirectCurrentBWP,
46089       { "uplinkDirectCurrentBWP", "nr-rrc.uplinkDirectCurrentBWP",
46090         FT_UINT32, BASE_DEC, NULL, 0,
46091         "SEQUENCE_SIZE_1_maxNrofBWPs_OF_UplinkTxDirectCurrentBWP", HFILL }},
46092     { &hf_nr_rrc_uplinkDirectCurrentBWP_item,
46093       { "UplinkTxDirectCurrentBWP", "nr-rrc.UplinkTxDirectCurrentBWP_element",
46094         FT_NONE, BASE_NONE, NULL, 0,
46095         NULL, HFILL }},
46096     { &hf_nr_rrc_shift7dot5kHz,
46097       { "shift7dot5kHz", "nr-rrc.shift7dot5kHz",
46098         FT_BOOLEAN, BASE_NONE, NULL, 0,
46099         "BOOLEAN", HFILL }},
46100     { &hf_nr_rrc_txDirectCurrentLocation,
46101       { "txDirectCurrentLocation", "nr-rrc.txDirectCurrentLocation",
46102         FT_UINT32, BASE_DEC, NULL, 0,
46103         "INTEGER_0_3301", HFILL }},
46104     { &hf_nr_rrc_zp_CSI_RS_ResourceId,
46105       { "zp-CSI-RS-ResourceId", "nr-rrc.zp_CSI_RS_ResourceId",
46106         FT_UINT32, BASE_DEC, NULL, 0,
46107         NULL, HFILL }},
46108     { &hf_nr_rrc_zp_CSI_RS_ResourceSetId,
46109       { "zp-CSI-RS-ResourceSetId", "nr-rrc.zp_CSI_RS_ResourceSetId",
46110         FT_UINT32, BASE_DEC, NULL, 0,
46111         NULL, HFILL }},
46112     { &hf_nr_rrc_zp_CSI_RS_ResourceIdList,
46113       { "zp-CSI-RS-ResourceIdList", "nr-rrc.zp_CSI_RS_ResourceIdList",
46114         FT_UINT32, BASE_DEC, NULL, 0,
46115         "SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourcesPerSet_OF_ZP_CSI_RS_ResourceId", HFILL }},
46116     { &hf_nr_rrc_zp_CSI_RS_ResourceIdList_item,
46117       { "ZP-CSI-RS-ResourceId", "nr-rrc.ZP_CSI_RS_ResourceId",
46118         FT_UINT32, BASE_DEC, NULL, 0,
46119         NULL, HFILL }},
46120     { &hf_nr_rrc_BandCombinationList_item,
46121       { "BandCombination", "nr-rrc.BandCombination_element",
46122         FT_NONE, BASE_NONE, NULL, 0,
46123         NULL, HFILL }},
46124     { &hf_nr_rrc_bandList,
46125       { "bandList", "nr-rrc.bandList",
46126         FT_UINT32, BASE_DEC, NULL, 0,
46127         "SEQUENCE_SIZE_1_maxSimultaneousBands_OF_BandParameters", HFILL }},
46128     { &hf_nr_rrc_bandList_item,
46129       { "BandParameters", "nr-rrc.BandParameters",
46130         FT_UINT32, BASE_DEC, VALS(nr_rrc_BandParameters_vals), 0,
46131         NULL, HFILL }},
46132     { &hf_nr_rrc_featureSetCombination,
46133       { "featureSetCombination", "nr-rrc.featureSetCombination",
46134         FT_UINT32, BASE_DEC, NULL, 0,
46135         "FeatureSetCombinationId", HFILL }},
46136     { &hf_nr_rrc_ca_ParametersEUTRA,
46137       { "ca-ParametersEUTRA", "nr-rrc.ca_ParametersEUTRA_element",
46138         FT_NONE, BASE_NONE, NULL, 0,
46139         NULL, HFILL }},
46140     { &hf_nr_rrc_ca_ParametersNR,
46141       { "ca-ParametersNR", "nr-rrc.ca_ParametersNR_element",
46142         FT_NONE, BASE_NONE, NULL, 0,
46143         NULL, HFILL }},
46144     { &hf_nr_rrc_mrdc_Parameters,
46145       { "mrdc-Parameters", "nr-rrc.mrdc_Parameters_element",
46146         FT_NONE, BASE_NONE, NULL, 0,
46147         NULL, HFILL }},
46148     { &hf_nr_rrc_supportedBandwidthCombinationSet,
46149       { "supportedBandwidthCombinationSet", "nr-rrc.supportedBandwidthCombinationSet",
46150         FT_BYTES, BASE_NONE, NULL, 0,
46151         "BIT_STRING_SIZE_1_32", HFILL }},
46152     { &hf_nr_rrc_powerClass_v1530,
46153       { "powerClass-v1530", "nr-rrc.powerClass_v1530",
46154         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_powerClass_v1530_vals), 0,
46155         NULL, HFILL }},
46156     { &hf_nr_rrc_eutra_01,
46157       { "eutra", "nr-rrc.eutra_element",
46158         FT_NONE, BASE_NONE, NULL, 0,
46159         NULL, HFILL }},
46160     { &hf_nr_rrc_bandEUTRA,
46161       { "bandEUTRA", "nr-rrc.bandEUTRA",
46162         FT_UINT32, BASE_DEC, NULL, 0,
46163         "FreqBandIndicatorEUTRA", HFILL }},
46164     { &hf_nr_rrc_ca_BandwidthClassDL_EUTRA,
46165       { "ca-BandwidthClassDL-EUTRA", "nr-rrc.ca_BandwidthClassDL_EUTRA",
46166         FT_UINT32, BASE_DEC, VALS(nr_rrc_CA_BandwidthClassEUTRA_vals), 0,
46167         "CA_BandwidthClassEUTRA", HFILL }},
46168     { &hf_nr_rrc_ca_BandwidthClassUL_EUTRA,
46169       { "ca-BandwidthClassUL-EUTRA", "nr-rrc.ca_BandwidthClassUL_EUTRA",
46170         FT_UINT32, BASE_DEC, VALS(nr_rrc_CA_BandwidthClassEUTRA_vals), 0,
46171         "CA_BandwidthClassEUTRA", HFILL }},
46172     { &hf_nr_rrc_nr_01,
46173       { "nr", "nr-rrc.nr_element",
46174         FT_NONE, BASE_NONE, NULL, 0,
46175         NULL, HFILL }},
46176     { &hf_nr_rrc_bandNR,
46177       { "bandNR", "nr-rrc.bandNR",
46178         FT_UINT32, BASE_DEC, NULL, 0,
46179         "FreqBandIndicatorNR", HFILL }},
46180     { &hf_nr_rrc_ca_BandwidthClassDL_NR,
46181       { "ca-BandwidthClassDL-NR", "nr-rrc.ca_BandwidthClassDL_NR",
46182         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_CA_BandwidthClassNR_vals_ext, 0,
46183         "CA_BandwidthClassNR", HFILL }},
46184     { &hf_nr_rrc_ca_BandwidthClassUL_NR,
46185       { "ca-BandwidthClassUL-NR", "nr-rrc.ca_BandwidthClassUL_NR",
46186         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_CA_BandwidthClassNR_vals_ext, 0,
46187         "CA_BandwidthClassNR", HFILL }},
46188     { &hf_nr_rrc_multipleTimingAdvance,
46189       { "multipleTimingAdvance", "nr-rrc.multipleTimingAdvance",
46190         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_multipleTimingAdvance_vals), 0,
46191         NULL, HFILL }},
46192     { &hf_nr_rrc_simultaneousRx_Tx,
46193       { "simultaneousRx-Tx", "nr-rrc.simultaneousRx_Tx",
46194         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_simultaneousRx_Tx_vals), 0,
46195         NULL, HFILL }},
46196     { &hf_nr_rrc_supportedNAICS_2CRS_AP,
46197       { "supportedNAICS-2CRS-AP", "nr-rrc.supportedNAICS_2CRS_AP",
46198         FT_BYTES, BASE_NONE, NULL, 0,
46199         "BIT_STRING_SIZE_1_8", HFILL }},
46200     { &hf_nr_rrc_additionalRx_Tx_PerformanceReq,
46201       { "additionalRx-Tx-PerformanceReq", "nr-rrc.additionalRx_Tx_PerformanceReq",
46202         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_additionalRx_Tx_PerformanceReq_vals), 0,
46203         NULL, HFILL }},
46204     { &hf_nr_rrc_ue_CA_PowerClass_N,
46205       { "ue-CA-PowerClass-N", "nr-rrc.ue_CA_PowerClass_N",
46206         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_ue_CA_PowerClass_N_vals), 0,
46207         NULL, HFILL }},
46208     { &hf_nr_rrc_supportedBandwidthCombinationSetEUTRA_v1530,
46209       { "supportedBandwidthCombinationSetEUTRA-v1530", "nr-rrc.supportedBandwidthCombinationSetEUTRA_v1530",
46210         FT_BYTES, BASE_NONE, NULL, 0,
46211         "BIT_STRING_SIZE_1_32", HFILL }},
46212     { &hf_nr_rrc_multipleTimingAdvances,
46213       { "multipleTimingAdvances", "nr-rrc.multipleTimingAdvances",
46214         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_multipleTimingAdvances_vals), 0,
46215         NULL, HFILL }},
46216     { &hf_nr_rrc_parallelTxSRS_PUCCH_PUSCH,
46217       { "parallelTxSRS-PUCCH-PUSCH", "nr-rrc.parallelTxSRS_PUCCH_PUSCH",
46218         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_parallelTxSRS_PUCCH_PUSCH_vals), 0,
46219         NULL, HFILL }},
46220     { &hf_nr_rrc_parallelTxPRACH_SRS_PUCCH_PUSCH,
46221       { "parallelTxPRACH-SRS-PUCCH-PUSCH", "nr-rrc.parallelTxPRACH_SRS_PUCCH_PUSCH",
46222         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_parallelTxPRACH_SRS_PUCCH_PUSCH_vals), 0,
46223         NULL, HFILL }},
46224     { &hf_nr_rrc_simultaneousRxTxInterBandCA,
46225       { "simultaneousRxTxInterBandCA", "nr-rrc.simultaneousRxTxInterBandCA",
46226         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_simultaneousRxTxInterBandCA_vals), 0,
46227         NULL, HFILL }},
46228     { &hf_nr_rrc_simultaneousRxTxSUL,
46229       { "simultaneousRxTxSUL", "nr-rrc.simultaneousRxTxSUL",
46230         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_simultaneousRxTxSUL_vals), 0,
46231         NULL, HFILL }},
46232     { &hf_nr_rrc_diffNumerologyAcrossPUCCH_Group,
46233       { "diffNumerologyAcrossPUCCH-Group", "nr-rrc.diffNumerologyAcrossPUCCH_Group",
46234         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_diffNumerologyAcrossPUCCH_Group_vals), 0,
46235         NULL, HFILL }},
46236     { &hf_nr_rrc_diffNumerologyWithinPUCCH_Group,
46237       { "diffNumerologyWithinPUCCH-Group", "nr-rrc.diffNumerologyWithinPUCCH_Group",
46238         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_diffNumerologyWithinPUCCH_Group_vals), 0,
46239         NULL, HFILL }},
46240     { &hf_nr_rrc_supportedNumberTAG,
46241       { "supportedNumberTAG", "nr-rrc.supportedNumberTAG",
46242         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_supportedNumberTAG_vals), 0,
46243         NULL, HFILL }},
46244     { &hf_nr_rrc_FeatureSetCombination_item,
46245       { "FeatureSetsPerBand", "nr-rrc.FeatureSetsPerBand",
46246         FT_UINT32, BASE_DEC, NULL, 0,
46247         NULL, HFILL }},
46248     { &hf_nr_rrc_FeatureSetsPerBand_item,
46249       { "FeatureSet", "nr-rrc.FeatureSet",
46250         FT_UINT32, BASE_DEC, VALS(nr_rrc_FeatureSet_vals), 0,
46251         NULL, HFILL }},
46252     { &hf_nr_rrc_eutra_02,
46253       { "eutra", "nr-rrc.eutra_element",
46254         FT_NONE, BASE_NONE, NULL, 0,
46255         "T_eutra_01", HFILL }},
46256     { &hf_nr_rrc_downlinkSetEUTRA,
46257       { "downlinkSetEUTRA", "nr-rrc.downlinkSetEUTRA",
46258         FT_UINT32, BASE_DEC, NULL, 0,
46259         "FeatureSetEUTRA_DownlinkId", HFILL }},
46260     { &hf_nr_rrc_uplinkSetEUTRA,
46261       { "uplinkSetEUTRA", "nr-rrc.uplinkSetEUTRA",
46262         FT_UINT32, BASE_DEC, NULL, 0,
46263         "FeatureSetEUTRA_UplinkId", HFILL }},
46264     { &hf_nr_rrc_nr_02,
46265       { "nr", "nr-rrc.nr_element",
46266         FT_NONE, BASE_NONE, NULL, 0,
46267         "T_nr_01", HFILL }},
46268     { &hf_nr_rrc_downlinkSetNR,
46269       { "downlinkSetNR", "nr-rrc.downlinkSetNR",
46270         FT_UINT32, BASE_DEC, NULL, 0,
46271         "FeatureSetDownlinkId", HFILL }},
46272     { &hf_nr_rrc_uplinkSetNR,
46273       { "uplinkSetNR", "nr-rrc.uplinkSetNR",
46274         FT_UINT32, BASE_DEC, NULL, 0,
46275         "FeatureSetUplinkId", HFILL }},
46276     { &hf_nr_rrc_featureSetListPerDownlinkCC,
46277       { "featureSetListPerDownlinkCC", "nr-rrc.featureSetListPerDownlinkCC",
46278         FT_UINT32, BASE_DEC, NULL, 0,
46279         "SEQUENCE_SIZE_1_maxNrofServingCells_OF_FeatureSetDownlinkPerCC_Id", HFILL }},
46280     { &hf_nr_rrc_featureSetListPerDownlinkCC_item,
46281       { "FeatureSetDownlinkPerCC-Id", "nr-rrc.FeatureSetDownlinkPerCC_Id",
46282         FT_UINT32, BASE_DEC, NULL, 0,
46283         NULL, HFILL }},
46284     { &hf_nr_rrc_intraBandFreqSeparationDL,
46285       { "intraBandFreqSeparationDL", "nr-rrc.intraBandFreqSeparationDL",
46286         FT_UINT32, BASE_DEC, VALS(nr_rrc_FreqSeparationClass_vals), 0,
46287         "FreqSeparationClass", HFILL }},
46288     { &hf_nr_rrc_scalingFactor,
46289       { "scalingFactor", "nr-rrc.scalingFactor",
46290         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_scalingFactor_vals), 0,
46291         NULL, HFILL }},
46292     { &hf_nr_rrc_crossCarrierScheduling_OtherSCS,
46293       { "crossCarrierScheduling-OtherSCS", "nr-rrc.crossCarrierScheduling_OtherSCS",
46294         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_crossCarrierScheduling_OtherSCS_vals), 0,
46295         NULL, HFILL }},
46296     { &hf_nr_rrc_scellWithoutSSB,
46297       { "scellWithoutSSB", "nr-rrc.scellWithoutSSB",
46298         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_scellWithoutSSB_vals), 0,
46299         NULL, HFILL }},
46300     { &hf_nr_rrc_csi_RS_MeasSCellWithoutSSB,
46301       { "csi-RS-MeasSCellWithoutSSB", "nr-rrc.csi_RS_MeasSCellWithoutSSB",
46302         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_csi_RS_MeasSCellWithoutSSB_vals), 0,
46303         NULL, HFILL }},
46304     { &hf_nr_rrc_srs_AssocCSI_RS,
46305       { "srs-AssocCSI-RS", "nr-rrc.srs_AssocCSI_RS",
46306         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_srs_AssocCSI_RS_vals), 0,
46307         NULL, HFILL }},
46308     { &hf_nr_rrc_type1_3_CSS,
46309       { "type1-3-CSS", "nr-rrc.type1_3_CSS",
46310         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_type1_3_CSS_vals), 0,
46311         NULL, HFILL }},
46312     { &hf_nr_rrc_pdcch_MonitoringAnyOccasions,
46313       { "pdcch-MonitoringAnyOccasions", "nr-rrc.pdcch_MonitoringAnyOccasions",
46314         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pdcch_MonitoringAnyOccasions_vals), 0,
46315         NULL, HFILL }},
46316     { &hf_nr_rrc_pdcch_MonitoringAnyOccasionsWithSpanGap,
46317       { "pdcch-MonitoringAnyOccasionsWithSpanGap", "nr-rrc.pdcch_MonitoringAnyOccasionsWithSpanGap",
46318         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pdcch_MonitoringAnyOccasionsWithSpanGap_vals), 0,
46319         NULL, HFILL }},
46320     { &hf_nr_rrc_ue_SpecificUL_DL_Assignment,
46321       { "ue-SpecificUL-DL-Assignment", "nr-rrc.ue_SpecificUL_DL_Assignment",
46322         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_ue_SpecificUL_DL_Assignment_vals), 0,
46323         NULL, HFILL }},
46324     { &hf_nr_rrc_searchSpaceSharingCA_DL,
46325       { "searchSpaceSharingCA-DL", "nr-rrc.searchSpaceSharingCA_DL",
46326         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_searchSpaceSharingCA_DL_vals), 0,
46327         NULL, HFILL }},
46328     { &hf_nr_rrc_timeDurationForQCL,
46329       { "timeDurationForQCL", "nr-rrc.timeDurationForQCL_element",
46330         FT_NONE, BASE_NONE, NULL, 0,
46331         NULL, HFILL }},
46332     { &hf_nr_rrc_scs_60kHz,
46333       { "scs-60kHz", "nr-rrc.scs_60kHz",
46334         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_scs_60kHz_vals), 0,
46335         NULL, HFILL }},
46336     { &hf_nr_rrc_sch_120kHz,
46337       { "sch-120kHz", "nr-rrc.sch_120kHz",
46338         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_sch_120kHz_vals), 0,
46339         NULL, HFILL }},
46340     { &hf_nr_rrc_pdsch_DifferentTB_PerSlot,
46341       { "pdsch-DifferentTB-PerSlot", "nr-rrc.pdsch_DifferentTB_PerSlot_element",
46342         FT_NONE, BASE_NONE, NULL, 0,
46343         NULL, HFILL }},
46344     { &hf_nr_rrc_scs_15kHz,
46345       { "scs-15kHz", "nr-rrc.scs_15kHz",
46346         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_scs_15kHz_vals), 0,
46347         NULL, HFILL }},
46348     { &hf_nr_rrc_scs_30kHz,
46349       { "scs-30kHz", "nr-rrc.scs_30kHz",
46350         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_scs_30kHz_vals), 0,
46351         NULL, HFILL }},
46352     { &hf_nr_rrc_scs_60kHz_01,
46353       { "scs-60kHz", "nr-rrc.scs_60kHz",
46354         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_scs_60kHz_01_vals), 0,
46355         "T_scs_60kHz_01", HFILL }},
46356     { &hf_nr_rrc_scs_120kHz,
46357       { "scs-120kHz", "nr-rrc.scs_120kHz",
46358         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_scs_120kHz_vals), 0,
46359         NULL, HFILL }},
46360     { &hf_nr_rrc_csi_RS_IM_ReceptionForFeedback,
46361       { "csi-RS-IM-ReceptionForFeedback", "nr-rrc.csi_RS_IM_ReceptionForFeedback_element",
46362         FT_NONE, BASE_NONE, NULL, 0,
46363         NULL, HFILL }},
46364     { &hf_nr_rrc_typeI_SinglePanelCodebookList,
46365       { "typeI-SinglePanelCodebookList", "nr-rrc.typeI_SinglePanelCodebookList",
46366         FT_UINT32, BASE_DEC, NULL, 0,
46367         "SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeI_SinglePanelCodebook", HFILL }},
46368     { &hf_nr_rrc_typeI_SinglePanelCodebookList_item,
46369       { "TypeI-SinglePanelCodebook", "nr-rrc.TypeI_SinglePanelCodebook_element",
46370         FT_NONE, BASE_NONE, NULL, 0,
46371         NULL, HFILL }},
46372     { &hf_nr_rrc_typeI_MultiPanelCodebookList,
46373       { "typeI-MultiPanelCodebookList", "nr-rrc.typeI_MultiPanelCodebookList",
46374         FT_UINT32, BASE_DEC, NULL, 0,
46375         "SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeI_MultiPanelCodebook", HFILL }},
46376     { &hf_nr_rrc_typeI_MultiPanelCodebookList_item,
46377       { "TypeI-MultiPanelCodebook", "nr-rrc.TypeI_MultiPanelCodebook_element",
46378         FT_NONE, BASE_NONE, NULL, 0,
46379         NULL, HFILL }},
46380     { &hf_nr_rrc_typeII_CodebookList,
46381       { "typeII-CodebookList", "nr-rrc.typeII_CodebookList",
46382         FT_UINT32, BASE_DEC, NULL, 0,
46383         "SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeII_Codebook", HFILL }},
46384     { &hf_nr_rrc_typeII_CodebookList_item,
46385       { "TypeII-Codebook", "nr-rrc.TypeII_Codebook_element",
46386         FT_NONE, BASE_NONE, NULL, 0,
46387         NULL, HFILL }},
46388     { &hf_nr_rrc_typeII_CodebookPortSelectionList,
46389       { "typeII-CodebookPortSelectionList", "nr-rrc.typeII_CodebookPortSelectionList",
46390         FT_UINT32, BASE_DEC, NULL, 0,
46391         "SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeII_CodebookPortSelection", HFILL }},
46392     { &hf_nr_rrc_typeII_CodebookPortSelectionList_item,
46393       { "TypeII-CodebookPortSelection", "nr-rrc.TypeII_CodebookPortSelection_element",
46394         FT_NONE, BASE_NONE, NULL, 0,
46395         NULL, HFILL }},
46396     { &hf_nr_rrc_maxNumberNZP_CSI_RS_PerCC,
46397       { "maxNumberNZP-CSI-RS-PerCC", "nr-rrc.maxNumberNZP_CSI_RS_PerCC",
46398         FT_UINT32, BASE_DEC, NULL, 0,
46399         "INTEGER_1_32", HFILL }},
46400     { &hf_nr_rrc_maxNumberPortsAcrossNZP_CSI_RS_PerCC,
46401       { "maxNumberPortsAcrossNZP-CSI-RS-PerCC", "nr-rrc.maxNumberPortsAcrossNZP_CSI_RS_PerCC",
46402         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_T_maxNumberPortsAcrossNZP_CSI_RS_PerCC_vals_ext, 0,
46403         NULL, HFILL }},
46404     { &hf_nr_rrc_maxNumberCS_IM_PerCC,
46405       { "maxNumberCS-IM-PerCC", "nr-rrc.maxNumberCS_IM_PerCC",
46406         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_maxNumberCS_IM_PerCC_vals), 0,
46407         NULL, HFILL }},
46408     { &hf_nr_rrc_maxNumberSimultaneousCSI_RS_ActBWP_AllCC,
46409       { "maxNumberSimultaneousCSI-RS-ActBWP-AllCC", "nr-rrc.maxNumberSimultaneousCSI_RS_ActBWP_AllCC",
46410         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_T_maxNumberSimultaneousCSI_RS_ActBWP_AllCC_vals_ext, 0,
46411         NULL, HFILL }},
46412     { &hf_nr_rrc_totalNumberPortsSimultaneousCSI_RS_ActBWP_AllCC,
46413       { "totalNumberPortsSimultaneousCSI-RS-ActBWP-AllCC", "nr-rrc.totalNumberPortsSimultaneousCSI_RS_ActBWP_AllCC",
46414         FT_UINT32, BASE_DEC|BASE_EXT_STRING, &nr_rrc_T_totalNumberPortsSimultaneousCSI_RS_ActBWP_AllCC_vals_ext, 0,
46415         NULL, HFILL }},
46416     { &hf_nr_rrc_maxNumberTxPortsPerResource,
46417       { "maxNumberTxPortsPerResource", "nr-rrc.maxNumberTxPortsPerResource",
46418         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_maxNumberTxPortsPerResource_vals), 0,
46419         NULL, HFILL }},
46420     { &hf_nr_rrc_maxNumberResources,
46421       { "maxNumberResources", "nr-rrc.maxNumberResources",
46422         FT_UINT32, BASE_DEC, NULL, 0,
46423         "INTEGER_1_64", HFILL }},
46424     { &hf_nr_rrc_totalNumberTxPorts,
46425       { "totalNumberTxPorts", "nr-rrc.totalNumberTxPorts",
46426         FT_UINT32, BASE_DEC, NULL, 0,
46427         "INTEGER_2_256", HFILL }},
46428     { &hf_nr_rrc_supportedCodebookMode,
46429       { "supportedCodebookMode", "nr-rrc.supportedCodebookMode",
46430         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_supportedCodebookMode_vals), 0,
46431         NULL, HFILL }},
46432     { &hf_nr_rrc_maxNumberCSI_RS_PerResourceSet,
46433       { "maxNumberCSI-RS-PerResourceSet", "nr-rrc.maxNumberCSI_RS_PerResourceSet",
46434         FT_UINT32, BASE_DEC, NULL, 0,
46435         "INTEGER_1_8", HFILL }},
46436     { &hf_nr_rrc_maxNumberTxPortsPerResource_01,
46437       { "maxNumberTxPortsPerResource", "nr-rrc.maxNumberTxPortsPerResource",
46438         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_maxNumberTxPortsPerResource_01_vals), 0,
46439         "T_maxNumberTxPortsPerResource_01", HFILL }},
46440     { &hf_nr_rrc_supportedCodebookMode_01,
46441       { "supportedCodebookMode", "nr-rrc.supportedCodebookMode",
46442         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_supportedCodebookMode_01_vals), 0,
46443         "T_supportedCodebookMode_01", HFILL }},
46444     { &hf_nr_rrc_supportedNumberPanels,
46445       { "supportedNumberPanels", "nr-rrc.supportedNumberPanels",
46446         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_supportedNumberPanels_vals), 0,
46447         NULL, HFILL }},
46448     { &hf_nr_rrc_maxNumberTxPortsPerResource_02,
46449       { "maxNumberTxPortsPerResource", "nr-rrc.maxNumberTxPortsPerResource",
46450         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_maxNumberTxPortsPerResource_02_vals), 0,
46451         "T_maxNumberTxPortsPerResource_02", HFILL }},
46452     { &hf_nr_rrc_parameterLx,
46453       { "parameterLx", "nr-rrc.parameterLx",
46454         FT_UINT32, BASE_DEC, NULL, 0,
46455         "INTEGER_2_4", HFILL }},
46456     { &hf_nr_rrc_amplitudeScalingType,
46457       { "amplitudeScalingType", "nr-rrc.amplitudeScalingType",
46458         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_amplitudeScalingType_vals), 0,
46459         NULL, HFILL }},
46460     { &hf_nr_rrc_amplitudeSubsetRestriction,
46461       { "amplitudeSubsetRestriction", "nr-rrc.amplitudeSubsetRestriction",
46462         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_amplitudeSubsetRestriction_vals), 0,
46463         NULL, HFILL }},
46464     { &hf_nr_rrc_maxNumberTxPortsPerResource_03,
46465       { "maxNumberTxPortsPerResource", "nr-rrc.maxNumberTxPortsPerResource",
46466         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_maxNumberTxPortsPerResource_03_vals), 0,
46467         "T_maxNumberTxPortsPerResource_03", HFILL }},
46468     { &hf_nr_rrc_amplitudeScalingType_01,
46469       { "amplitudeScalingType", "nr-rrc.amplitudeScalingType",
46470         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_amplitudeScalingType_01_vals), 0,
46471         "T_amplitudeScalingType_01", HFILL }},
46472     { &hf_nr_rrc_supportedSubcarrierSpacingDL,
46473       { "supportedSubcarrierSpacingDL", "nr-rrc.supportedSubcarrierSpacingDL",
46474         FT_UINT32, BASE_DEC, VALS(nr_rrc_SubcarrierSpacing_vals), 0,
46475         "SubcarrierSpacing", HFILL }},
46476     { &hf_nr_rrc_supportedBandwidthDL,
46477       { "supportedBandwidthDL", "nr-rrc.supportedBandwidthDL",
46478         FT_UINT32, BASE_DEC, VALS(nr_rrc_SupportedBandwidth_vals), 0,
46479         "SupportedBandwidth", HFILL }},
46480     { &hf_nr_rrc_channelBW_90mhz,
46481       { "channelBW-90mhz", "nr-rrc.channelBW_90mhz",
46482         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_channelBW_90mhz_vals), 0,
46483         NULL, HFILL }},
46484     { &hf_nr_rrc_maxNumberMIMO_LayersPDSCH,
46485       { "maxNumberMIMO-LayersPDSCH", "nr-rrc.maxNumberMIMO_LayersPDSCH",
46486         FT_UINT32, BASE_DEC, VALS(nr_rrc_MIMO_LayersDL_vals), 0,
46487         "MIMO_LayersDL", HFILL }},
46488     { &hf_nr_rrc_supportedModulationOrderDL,
46489       { "supportedModulationOrderDL", "nr-rrc.supportedModulationOrderDL",
46490         FT_UINT32, BASE_DEC, VALS(nr_rrc_ModulationOrder_vals), 0,
46491         "ModulationOrder", HFILL }},
46492     { &hf_nr_rrc_featureSetsDownlink,
46493       { "featureSetsDownlink", "nr-rrc.featureSetsDownlink",
46494         FT_UINT32, BASE_DEC, NULL, 0,
46495         "SEQUENCE_SIZE_1_maxDownlinkFeatureSets_OF_FeatureSetDownlink", HFILL }},
46496     { &hf_nr_rrc_featureSetsDownlink_item,
46497       { "FeatureSetDownlink", "nr-rrc.FeatureSetDownlink_element",
46498         FT_NONE, BASE_NONE, NULL, 0,
46499         NULL, HFILL }},
46500     { &hf_nr_rrc_featureSetsDownlinkPerCC,
46501       { "featureSetsDownlinkPerCC", "nr-rrc.featureSetsDownlinkPerCC",
46502         FT_UINT32, BASE_DEC, NULL, 0,
46503         "SEQUENCE_SIZE_1_maxPerCC_FeatureSets_OF_FeatureSetDownlinkPerCC", HFILL }},
46504     { &hf_nr_rrc_featureSetsDownlinkPerCC_item,
46505       { "FeatureSetDownlinkPerCC", "nr-rrc.FeatureSetDownlinkPerCC_element",
46506         FT_NONE, BASE_NONE, NULL, 0,
46507         NULL, HFILL }},
46508     { &hf_nr_rrc_featureSetsUplink,
46509       { "featureSetsUplink", "nr-rrc.featureSetsUplink",
46510         FT_UINT32, BASE_DEC, NULL, 0,
46511         "SEQUENCE_SIZE_1_maxUplinkFeatureSets_OF_FeatureSetUplink", HFILL }},
46512     { &hf_nr_rrc_featureSetsUplink_item,
46513       { "FeatureSetUplink", "nr-rrc.FeatureSetUplink_element",
46514         FT_NONE, BASE_NONE, NULL, 0,
46515         NULL, HFILL }},
46516     { &hf_nr_rrc_featureSetsUplinkPerCC,
46517       { "featureSetsUplinkPerCC", "nr-rrc.featureSetsUplinkPerCC",
46518         FT_UINT32, BASE_DEC, NULL, 0,
46519         "SEQUENCE_SIZE_1_maxPerCC_FeatureSets_OF_FeatureSetUplinkPerCC", HFILL }},
46520     { &hf_nr_rrc_featureSetsUplinkPerCC_item,
46521       { "FeatureSetUplinkPerCC", "nr-rrc.FeatureSetUplinkPerCC_element",
46522         FT_NONE, BASE_NONE, NULL, 0,
46523         NULL, HFILL }},
46524     { &hf_nr_rrc_featureSetListPerUplinkCC,
46525       { "featureSetListPerUplinkCC", "nr-rrc.featureSetListPerUplinkCC",
46526         FT_UINT32, BASE_DEC, NULL, 0,
46527         "SEQUENCE_SIZE_1_maxNrofServingCells_OF_FeatureSetUplinkPerCC_Id", HFILL }},
46528     { &hf_nr_rrc_featureSetListPerUplinkCC_item,
46529       { "FeatureSetUplinkPerCC-Id", "nr-rrc.FeatureSetUplinkPerCC_Id",
46530         FT_UINT32, BASE_DEC, NULL, 0,
46531         NULL, HFILL }},
46532     { &hf_nr_rrc_scalingFactor_01,
46533       { "scalingFactor", "nr-rrc.scalingFactor",
46534         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_scalingFactor_01_vals), 0,
46535         "T_scalingFactor_01", HFILL }},
46536     { &hf_nr_rrc_crossCarrierScheduling_OtherSCS_01,
46537       { "crossCarrierScheduling-OtherSCS", "nr-rrc.crossCarrierScheduling_OtherSCS",
46538         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_crossCarrierScheduling_OtherSCS_01_vals), 0,
46539         "T_crossCarrierScheduling_OtherSCS_01", HFILL }},
46540     { &hf_nr_rrc_intraBandFreqSeparationUL,
46541       { "intraBandFreqSeparationUL", "nr-rrc.intraBandFreqSeparationUL",
46542         FT_UINT32, BASE_DEC, VALS(nr_rrc_FreqSeparationClass_vals), 0,
46543         "FreqSeparationClass", HFILL }},
46544     { &hf_nr_rrc_searchSpaceSharingCA_UL,
46545       { "searchSpaceSharingCA-UL", "nr-rrc.searchSpaceSharingCA_UL",
46546         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_searchSpaceSharingCA_UL_vals), 0,
46547         NULL, HFILL }},
46548     { &hf_nr_rrc_srs_TxSwitch,
46549       { "srs-TxSwitch", "nr-rrc.srs_TxSwitch_element",
46550         FT_NONE, BASE_NONE, NULL, 0,
46551         NULL, HFILL }},
46552     { &hf_nr_rrc_supportedSRS_Resources,
46553       { "supportedSRS-Resources", "nr-rrc.supportedSRS_Resources_element",
46554         FT_NONE, BASE_NONE, NULL, 0,
46555         "SRS_Resources", HFILL }},
46556     { &hf_nr_rrc_twoPUCCH_Group,
46557       { "twoPUCCH-Group", "nr-rrc.twoPUCCH_Group",
46558         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_twoPUCCH_Group_vals), 0,
46559         NULL, HFILL }},
46560     { &hf_nr_rrc_dynamicSwitchSUL,
46561       { "dynamicSwitchSUL", "nr-rrc.dynamicSwitchSUL",
46562         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_dynamicSwitchSUL_vals), 0,
46563         NULL, HFILL }},
46564     { &hf_nr_rrc_simultaneousTxSUL_NonSUL_v1530,
46565       { "simultaneousTxSUL-NonSUL-v1530", "nr-rrc.simultaneousTxSUL_NonSUL_v1530",
46566         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_simultaneousTxSUL_NonSUL_v1530_vals), 0,
46567         NULL, HFILL }},
46568     { &hf_nr_rrc_pusch_DifferentTB_PerSlot,
46569       { "pusch-DifferentTB-PerSlot", "nr-rrc.pusch_DifferentTB_PerSlot_element",
46570         FT_NONE, BASE_NONE, NULL, 0,
46571         NULL, HFILL }},
46572     { &hf_nr_rrc_scs_15kHz_01,
46573       { "scs-15kHz", "nr-rrc.scs_15kHz",
46574         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_scs_15kHz_01_vals), 0,
46575         "T_scs_15kHz_01", HFILL }},
46576     { &hf_nr_rrc_scs_30kHz_01,
46577       { "scs-30kHz", "nr-rrc.scs_30kHz",
46578         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_scs_30kHz_01_vals), 0,
46579         "T_scs_30kHz_01", HFILL }},
46580     { &hf_nr_rrc_scs_60kHz_02,
46581       { "scs-60kHz", "nr-rrc.scs_60kHz",
46582         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_scs_60kHz_02_vals), 0,
46583         "T_scs_60kHz_02", HFILL }},
46584     { &hf_nr_rrc_scs_120kHz_01,
46585       { "scs-120kHz", "nr-rrc.scs_120kHz",
46586         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_scs_120kHz_01_vals), 0,
46587         "T_scs_120kHz_01", HFILL }},
46588     { &hf_nr_rrc_csi_ReportFramework,
46589       { "csi-ReportFramework", "nr-rrc.csi_ReportFramework_element",
46590         FT_NONE, BASE_NONE, NULL, 0,
46591         NULL, HFILL }},
46592     { &hf_nr_rrc_maxNumberPeriodicCSI_ReportPerBWP,
46593       { "maxNumberPeriodicCSI-ReportPerBWP", "nr-rrc.maxNumberPeriodicCSI_ReportPerBWP",
46594         FT_UINT32, BASE_DEC, NULL, 0,
46595         "INTEGER_1_4", HFILL }},
46596     { &hf_nr_rrc_maxNumberAperiodicCSI_ReportPerBWP,
46597       { "maxNumberAperiodicCSI-ReportPerBWP", "nr-rrc.maxNumberAperiodicCSI_ReportPerBWP",
46598         FT_UINT32, BASE_DEC, NULL, 0,
46599         "INTEGER_1_4", HFILL }},
46600     { &hf_nr_rrc_maxNumberSemiPersistentCSI_ReportPerBWP,
46601       { "maxNumberSemiPersistentCSI-ReportPerBWP", "nr-rrc.maxNumberSemiPersistentCSI_ReportPerBWP",
46602         FT_UINT32, BASE_DEC, NULL, 0,
46603         "INTEGER_0_4", HFILL }},
46604     { &hf_nr_rrc_simultaneousCSI_ReportsAllCC,
46605       { "simultaneousCSI-ReportsAllCC", "nr-rrc.simultaneousCSI_ReportsAllCC",
46606         FT_UINT32, BASE_DEC, NULL, 0,
46607         "INTEGER_5_32", HFILL }},
46608     { &hf_nr_rrc_supportedSubcarrierSpacingUL,
46609       { "supportedSubcarrierSpacingUL", "nr-rrc.supportedSubcarrierSpacingUL",
46610         FT_UINT32, BASE_DEC, VALS(nr_rrc_SubcarrierSpacing_vals), 0,
46611         "SubcarrierSpacing", HFILL }},
46612     { &hf_nr_rrc_supportedBandwidthUL,
46613       { "supportedBandwidthUL", "nr-rrc.supportedBandwidthUL",
46614         FT_UINT32, BASE_DEC, VALS(nr_rrc_SupportedBandwidth_vals), 0,
46615         "SupportedBandwidth", HFILL }},
46616     { &hf_nr_rrc_channelBW_90mhz_01,
46617       { "channelBW-90mhz", "nr-rrc.channelBW_90mhz",
46618         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_channelBW_90mhz_01_vals), 0,
46619         "T_channelBW_90mhz_01", HFILL }},
46620     { &hf_nr_rrc_mimo_CB_PUSCH,
46621       { "mimo-CB-PUSCH", "nr-rrc.mimo_CB_PUSCH_element",
46622         FT_NONE, BASE_NONE, NULL, 0,
46623         NULL, HFILL }},
46624     { &hf_nr_rrc_maxNumberMIMO_LayersCB_PUSCH,
46625       { "maxNumberMIMO-LayersCB-PUSCH", "nr-rrc.maxNumberMIMO_LayersCB_PUSCH",
46626         FT_UINT32, BASE_DEC, VALS(nr_rrc_MIMO_LayersUL_vals), 0,
46627         "MIMO_LayersUL", HFILL }},
46628     { &hf_nr_rrc_maxNumberSRS_ResourcePerSet,
46629       { "maxNumberSRS-ResourcePerSet", "nr-rrc.maxNumberSRS_ResourcePerSet",
46630         FT_UINT32, BASE_DEC, NULL, 0,
46631         "INTEGER_1_2", HFILL }},
46632     { &hf_nr_rrc_maxNumberMIMO_LayersNonCB_PUSCH,
46633       { "maxNumberMIMO-LayersNonCB-PUSCH", "nr-rrc.maxNumberMIMO_LayersNonCB_PUSCH",
46634         FT_UINT32, BASE_DEC, VALS(nr_rrc_MIMO_LayersUL_vals), 0,
46635         "MIMO_LayersUL", HFILL }},
46636     { &hf_nr_rrc_supportedModulationOrderUL,
46637       { "supportedModulationOrderUL", "nr-rrc.supportedModulationOrderUL",
46638         FT_UINT32, BASE_DEC, VALS(nr_rrc_ModulationOrder_vals), 0,
46639         "ModulationOrder", HFILL }},
46640     { &hf_nr_rrc_FreqBandList_item,
46641       { "FreqBandInformation", "nr-rrc.FreqBandInformation",
46642         FT_UINT32, BASE_DEC, VALS(nr_rrc_FreqBandInformation_vals), 0,
46643         NULL, HFILL }},
46644     { &hf_nr_rrc_bandInformationEUTRA,
46645       { "bandInformationEUTRA", "nr-rrc.bandInformationEUTRA_element",
46646         FT_NONE, BASE_NONE, NULL, 0,
46647         "FreqBandInformationEUTRA", HFILL }},
46648     { &hf_nr_rrc_bandInformationNR,
46649       { "bandInformationNR", "nr-rrc.bandInformationNR_element",
46650         FT_NONE, BASE_NONE, NULL, 0,
46651         "FreqBandInformationNR", HFILL }},
46652     { &hf_nr_rrc_maxBandwidthRequestedDL,
46653       { "maxBandwidthRequestedDL", "nr-rrc.maxBandwidthRequestedDL",
46654         FT_UINT32, BASE_DEC, VALS(nr_rrc_AggregatedBandwidth_vals), 0,
46655         "AggregatedBandwidth", HFILL }},
46656     { &hf_nr_rrc_maxBandwidthRequestedUL,
46657       { "maxBandwidthRequestedUL", "nr-rrc.maxBandwidthRequestedUL",
46658         FT_UINT32, BASE_DEC, VALS(nr_rrc_AggregatedBandwidth_vals), 0,
46659         "AggregatedBandwidth", HFILL }},
46660     { &hf_nr_rrc_maxCarriersRequestedDL,
46661       { "maxCarriersRequestedDL", "nr-rrc.maxCarriersRequestedDL",
46662         FT_UINT32, BASE_DEC, NULL, 0,
46663         "INTEGER_1_maxNrofServingCells", HFILL }},
46664     { &hf_nr_rrc_maxCarriersRequestedUL,
46665       { "maxCarriersRequestedUL", "nr-rrc.maxCarriersRequestedUL",
46666         FT_UINT32, BASE_DEC, NULL, 0,
46667         "INTEGER_1_maxNrofServingCells", HFILL }},
46668     { &hf_nr_rrc_eutra_03,
46669       { "eutra", "nr-rrc.eutra_element",
46670         FT_NONE, BASE_NONE, NULL, 0,
46671         "EUTRA_Parameters", HFILL }},
46672     { &hf_nr_rrc_supportedBandListEUTRA,
46673       { "supportedBandListEUTRA", "nr-rrc.supportedBandListEUTRA",
46674         FT_UINT32, BASE_DEC, NULL, 0,
46675         "SEQUENCE_SIZE_1_maxBandsEUTRA_OF_FreqBandIndicatorEUTRA", HFILL }},
46676     { &hf_nr_rrc_supportedBandListEUTRA_item,
46677       { "FreqBandIndicatorEUTRA", "nr-rrc.FreqBandIndicatorEUTRA",
46678         FT_UINT32, BASE_DEC, NULL, 0,
46679         NULL, HFILL }},
46680     { &hf_nr_rrc_eutra_ParametersCommon,
46681       { "eutra-ParametersCommon", "nr-rrc.eutra_ParametersCommon_element",
46682         FT_NONE, BASE_NONE, NULL, 0,
46683         NULL, HFILL }},
46684     { &hf_nr_rrc_eutra_ParametersXDD_Diff,
46685       { "eutra-ParametersXDD-Diff", "nr-rrc.eutra_ParametersXDD_Diff_element",
46686         FT_NONE, BASE_NONE, NULL, 0,
46687         NULL, HFILL }},
46688     { &hf_nr_rrc_mfbi_EUTRA,
46689       { "mfbi-EUTRA", "nr-rrc.mfbi_EUTRA",
46690         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_mfbi_EUTRA_vals), 0,
46691         NULL, HFILL }},
46692     { &hf_nr_rrc_modifiedMRP_BehaviorEUTRA,
46693       { "modifiedMRP-BehaviorEUTRA", "nr-rrc.modifiedMRP_BehaviorEUTRA",
46694         FT_BYTES, BASE_NONE, NULL, 0,
46695         "BIT_STRING_SIZE_32", HFILL }},
46696     { &hf_nr_rrc_multiNS_Pmax_EUTRA,
46697       { "multiNS-Pmax-EUTRA", "nr-rrc.multiNS_Pmax_EUTRA",
46698         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_multiNS_Pmax_EUTRA_vals), 0,
46699         NULL, HFILL }},
46700     { &hf_nr_rrc_rs_SINR_MeasEUTRA,
46701       { "rs-SINR-MeasEUTRA", "nr-rrc.rs_SINR_MeasEUTRA",
46702         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_rs_SINR_MeasEUTRA_vals), 0,
46703         NULL, HFILL }},
46704     { &hf_nr_rrc_rsrqMeasWidebandEUTRA,
46705       { "rsrqMeasWidebandEUTRA", "nr-rrc.rsrqMeasWidebandEUTRA",
46706         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_rsrqMeasWidebandEUTRA_vals), 0,
46707         NULL, HFILL }},
46708     { &hf_nr_rrc_mac_ParametersCommon,
46709       { "mac-ParametersCommon", "nr-rrc.mac_ParametersCommon_element",
46710         FT_NONE, BASE_NONE, NULL, 0,
46711         NULL, HFILL }},
46712     { &hf_nr_rrc_mac_ParametersXDD_Diff,
46713       { "mac-ParametersXDD-Diff", "nr-rrc.mac_ParametersXDD_Diff_element",
46714         FT_NONE, BASE_NONE, NULL, 0,
46715         NULL, HFILL }},
46716     { &hf_nr_rrc_lcp_Restriction,
46717       { "lcp-Restriction", "nr-rrc.lcp_Restriction",
46718         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_lcp_Restriction_vals), 0,
46719         NULL, HFILL }},
46720     { &hf_nr_rrc_pucch_SpatialRelInfoMAC_CE,
46721       { "pucch-SpatialRelInfoMAC-CE", "nr-rrc.pucch_SpatialRelInfoMAC_CE",
46722         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pucch_SpatialRelInfoMAC_CE_vals), 0,
46723         NULL, HFILL }},
46724     { &hf_nr_rrc_lch_ToSCellRestriction,
46725       { "lch-ToSCellRestriction", "nr-rrc.lch_ToSCellRestriction",
46726         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_lch_ToSCellRestriction_vals), 0,
46727         NULL, HFILL }},
46728     { &hf_nr_rrc_recommendedBitRate,
46729       { "recommendedBitRate", "nr-rrc.recommendedBitRate",
46730         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_recommendedBitRate_vals), 0,
46731         NULL, HFILL }},
46732     { &hf_nr_rrc_recommendedBitRateQuery,
46733       { "recommendedBitRateQuery", "nr-rrc.recommendedBitRateQuery",
46734         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_recommendedBitRateQuery_vals), 0,
46735         NULL, HFILL }},
46736     { &hf_nr_rrc_skipUplinkTxDynamic_01,
46737       { "skipUplinkTxDynamic", "nr-rrc.skipUplinkTxDynamic",
46738         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_skipUplinkTxDynamic_vals), 0,
46739         NULL, HFILL }},
46740     { &hf_nr_rrc_logicalChannelSR_DelayTimer_01,
46741       { "logicalChannelSR-DelayTimer", "nr-rrc.logicalChannelSR_DelayTimer",
46742         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_logicalChannelSR_DelayTimer_01_vals), 0,
46743         "T_logicalChannelSR_DelayTimer_01", HFILL }},
46744     { &hf_nr_rrc_longDRX_Cycle,
46745       { "longDRX-Cycle", "nr-rrc.longDRX_Cycle",
46746         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_longDRX_Cycle_vals), 0,
46747         NULL, HFILL }},
46748     { &hf_nr_rrc_shortDRX_Cycle,
46749       { "shortDRX-Cycle", "nr-rrc.shortDRX_Cycle",
46750         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_shortDRX_Cycle_vals), 0,
46751         NULL, HFILL }},
46752     { &hf_nr_rrc_multipleSR_Configurations,
46753       { "multipleSR-Configurations", "nr-rrc.multipleSR_Configurations",
46754         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_multipleSR_Configurations_vals), 0,
46755         NULL, HFILL }},
46756     { &hf_nr_rrc_multipleConfiguredGrants,
46757       { "multipleConfiguredGrants", "nr-rrc.multipleConfiguredGrants",
46758         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_multipleConfiguredGrants_vals), 0,
46759         NULL, HFILL }},
46760     { &hf_nr_rrc_measAndMobParametersCommon,
46761       { "measAndMobParametersCommon", "nr-rrc.measAndMobParametersCommon_element",
46762         FT_NONE, BASE_NONE, NULL, 0,
46763         NULL, HFILL }},
46764     { &hf_nr_rrc_measAndMobParametersXDD_Diff,
46765       { "measAndMobParametersXDD-Diff", "nr-rrc.measAndMobParametersXDD_Diff_element",
46766         FT_NONE, BASE_NONE, NULL, 0,
46767         NULL, HFILL }},
46768     { &hf_nr_rrc_measAndMobParametersFRX_Diff,
46769       { "measAndMobParametersFRX-Diff", "nr-rrc.measAndMobParametersFRX_Diff_element",
46770         FT_NONE, BASE_NONE, NULL, 0,
46771         NULL, HFILL }},
46772     { &hf_nr_rrc_supportedGapPattern,
46773       { "supportedGapPattern", "nr-rrc.supportedGapPattern",
46774         FT_BYTES, BASE_NONE, NULL, 0,
46775         "BIT_STRING_SIZE_22", HFILL }},
46776     { &hf_nr_rrc_ssb_RLM,
46777       { "ssb-RLM", "nr-rrc.ssb_RLM",
46778         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_ssb_RLM_vals), 0,
46779         NULL, HFILL }},
46780     { &hf_nr_rrc_ssb_AndCSI_RS_RLM,
46781       { "ssb-AndCSI-RS-RLM", "nr-rrc.ssb_AndCSI_RS_RLM",
46782         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_ssb_AndCSI_RS_RLM_vals), 0,
46783         NULL, HFILL }},
46784     { &hf_nr_rrc_eventB_MeasAndReport,
46785       { "eventB-MeasAndReport", "nr-rrc.eventB_MeasAndReport",
46786         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_eventB_MeasAndReport_vals), 0,
46787         NULL, HFILL }},
46788     { &hf_nr_rrc_handoverFDD_TDD,
46789       { "handoverFDD-TDD", "nr-rrc.handoverFDD_TDD",
46790         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_handoverFDD_TDD_vals), 0,
46791         NULL, HFILL }},
46792     { &hf_nr_rrc_eutra_CGI_Reporting,
46793       { "eutra-CGI-Reporting", "nr-rrc.eutra_CGI_Reporting",
46794         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_eutra_CGI_Reporting_vals), 0,
46795         NULL, HFILL }},
46796     { &hf_nr_rrc_nr_CGI_Reporting,
46797       { "nr-CGI-Reporting", "nr-rrc.nr_CGI_Reporting",
46798         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_nr_CGI_Reporting_vals), 0,
46799         NULL, HFILL }},
46800     { &hf_nr_rrc_intraAndInterF_MeasAndReport,
46801       { "intraAndInterF-MeasAndReport", "nr-rrc.intraAndInterF_MeasAndReport",
46802         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_intraAndInterF_MeasAndReport_vals), 0,
46803         NULL, HFILL }},
46804     { &hf_nr_rrc_eventA_MeasAndReport,
46805       { "eventA-MeasAndReport", "nr-rrc.eventA_MeasAndReport",
46806         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_eventA_MeasAndReport_vals), 0,
46807         NULL, HFILL }},
46808     { &hf_nr_rrc_handoverInterF,
46809       { "handoverInterF", "nr-rrc.handoverInterF",
46810         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_handoverInterF_vals), 0,
46811         NULL, HFILL }},
46812     { &hf_nr_rrc_handoverLTE,
46813       { "handoverLTE", "nr-rrc.handoverLTE",
46814         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_handoverLTE_vals), 0,
46815         NULL, HFILL }},
46816     { &hf_nr_rrc_handover_eLTE,
46817       { "handover-eLTE", "nr-rrc.handover_eLTE",
46818         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_handover_eLTE_vals), 0,
46819         NULL, HFILL }},
46820     { &hf_nr_rrc_ss_SINR_Meas,
46821       { "ss-SINR-Meas", "nr-rrc.ss_SINR_Meas",
46822         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_ss_SINR_Meas_vals), 0,
46823         NULL, HFILL }},
46824     { &hf_nr_rrc_csi_RSRP_AndRSRQ_MeasWithSSB,
46825       { "csi-RSRP-AndRSRQ-MeasWithSSB", "nr-rrc.csi_RSRP_AndRSRQ_MeasWithSSB",
46826         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_csi_RSRP_AndRSRQ_MeasWithSSB_vals), 0,
46827         NULL, HFILL }},
46828     { &hf_nr_rrc_csi_RSRP_AndRSRQ_MeasWithoutSSB,
46829       { "csi-RSRP-AndRSRQ-MeasWithoutSSB", "nr-rrc.csi_RSRP_AndRSRQ_MeasWithoutSSB",
46830         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_csi_RSRP_AndRSRQ_MeasWithoutSSB_vals), 0,
46831         NULL, HFILL }},
46832     { &hf_nr_rrc_csi_SINR_Meas,
46833       { "csi-SINR-Meas", "nr-rrc.csi_SINR_Meas",
46834         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_csi_SINR_Meas_vals), 0,
46835         NULL, HFILL }},
46836     { &hf_nr_rrc_csi_RS_RLM,
46837       { "csi-RS-RLM", "nr-rrc.csi_RS_RLM",
46838         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_csi_RS_RLM_vals), 0,
46839         NULL, HFILL }},
46840     { &hf_nr_rrc_handoverInterF_01,
46841       { "handoverInterF", "nr-rrc.handoverInterF",
46842         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_handoverInterF_01_vals), 0,
46843         "T_handoverInterF_01", HFILL }},
46844     { &hf_nr_rrc_handoverLTE_01,
46845       { "handoverLTE", "nr-rrc.handoverLTE",
46846         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_handoverLTE_01_vals), 0,
46847         "T_handoverLTE_01", HFILL }},
46848     { &hf_nr_rrc_handover_eLTE_01,
46849       { "handover-eLTE", "nr-rrc.handover_eLTE",
46850         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_handover_eLTE_01_vals), 0,
46851         "T_handover_eLTE_01", HFILL }},
46852     { &hf_nr_rrc_measAndMobParametersMRDC_Common,
46853       { "measAndMobParametersMRDC-Common", "nr-rrc.measAndMobParametersMRDC_Common_element",
46854         FT_NONE, BASE_NONE, NULL, 0,
46855         NULL, HFILL }},
46856     { &hf_nr_rrc_measAndMobParametersMRDC_XDD_Diff,
46857       { "measAndMobParametersMRDC-XDD-Diff", "nr-rrc.measAndMobParametersMRDC_XDD_Diff_element",
46858         FT_NONE, BASE_NONE, NULL, 0,
46859         NULL, HFILL }},
46860     { &hf_nr_rrc_measAndMobParametersMRDC_FRX_Diff,
46861       { "measAndMobParametersMRDC-FRX-Diff", "nr-rrc.measAndMobParametersMRDC_FRX_Diff_element",
46862         FT_NONE, BASE_NONE, NULL, 0,
46863         NULL, HFILL }},
46864     { &hf_nr_rrc_independentGapConfig,
46865       { "independentGapConfig", "nr-rrc.independentGapConfig",
46866         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_independentGapConfig_vals), 0,
46867         NULL, HFILL }},
46868     { &hf_nr_rrc_sftd_MeasPSCell,
46869       { "sftd-MeasPSCell", "nr-rrc.sftd_MeasPSCell",
46870         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_sftd_MeasPSCell_vals), 0,
46871         NULL, HFILL }},
46872     { &hf_nr_rrc_sftd_MeasNR_Cell,
46873       { "sftd-MeasNR-Cell", "nr-rrc.sftd_MeasNR_Cell",
46874         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_sftd_MeasNR_Cell_vals), 0,
46875         NULL, HFILL }},
46876     { &hf_nr_rrc_simultaneousRxDataSSB_DiffNumerology,
46877       { "simultaneousRxDataSSB-DiffNumerology", "nr-rrc.simultaneousRxDataSSB_DiffNumerology",
46878         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_simultaneousRxDataSSB_DiffNumerology_vals), 0,
46879         NULL, HFILL }},
46880     { &hf_nr_rrc_tci_StatePDSCH,
46881       { "tci-StatePDSCH", "nr-rrc.tci_StatePDSCH_element",
46882         FT_NONE, BASE_NONE, NULL, 0,
46883         NULL, HFILL }},
46884     { &hf_nr_rrc_maxNumberConfiguredTCIstatesPerCC,
46885       { "maxNumberConfiguredTCIstatesPerCC", "nr-rrc.maxNumberConfiguredTCIstatesPerCC",
46886         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_maxNumberConfiguredTCIstatesPerCC_vals), 0,
46887         NULL, HFILL }},
46888     { &hf_nr_rrc_maxNumberActiveTCI_PerBWP,
46889       { "maxNumberActiveTCI-PerBWP", "nr-rrc.maxNumberActiveTCI_PerBWP",
46890         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_maxNumberActiveTCI_PerBWP_vals), 0,
46891         NULL, HFILL }},
46892     { &hf_nr_rrc_additionalActiveTCI_StatePDCCH,
46893       { "additionalActiveTCI-StatePDCCH", "nr-rrc.additionalActiveTCI_StatePDCCH",
46894         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_additionalActiveTCI_StatePDCCH_vals), 0,
46895         NULL, HFILL }},
46896     { &hf_nr_rrc_pusch_TransCoherence,
46897       { "pusch-TransCoherence", "nr-rrc.pusch_TransCoherence",
46898         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pusch_TransCoherence_vals), 0,
46899         NULL, HFILL }},
46900     { &hf_nr_rrc_beamCorrespondence,
46901       { "beamCorrespondence", "nr-rrc.beamCorrespondence",
46902         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_beamCorrespondence_vals), 0,
46903         NULL, HFILL }},
46904     { &hf_nr_rrc_periodicBeamReport,
46905       { "periodicBeamReport", "nr-rrc.periodicBeamReport",
46906         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_periodicBeamReport_vals), 0,
46907         NULL, HFILL }},
46908     { &hf_nr_rrc_aperiodicBeamReport,
46909       { "aperiodicBeamReport", "nr-rrc.aperiodicBeamReport",
46910         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_aperiodicBeamReport_vals), 0,
46911         NULL, HFILL }},
46912     { &hf_nr_rrc_sp_BeamReportPUCCH,
46913       { "sp-BeamReportPUCCH", "nr-rrc.sp_BeamReportPUCCH",
46914         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_sp_BeamReportPUCCH_vals), 0,
46915         NULL, HFILL }},
46916     { &hf_nr_rrc_sp_BeamReportPUSCH,
46917       { "sp-BeamReportPUSCH", "nr-rrc.sp_BeamReportPUSCH",
46918         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_sp_BeamReportPUSCH_vals), 0,
46919         NULL, HFILL }},
46920     { &hf_nr_rrc_beamManagementSSB_CSI_RS,
46921       { "beamManagementSSB-CSI-RS", "nr-rrc.beamManagementSSB_CSI_RS_element",
46922         FT_NONE, BASE_NONE, NULL, 0,
46923         NULL, HFILL }},
46924     { &hf_nr_rrc_maxNumberRxBeam,
46925       { "maxNumberRxBeam", "nr-rrc.maxNumberRxBeam",
46926         FT_UINT32, BASE_DEC, NULL, 0,
46927         "INTEGER_2_8", HFILL }},
46928     { &hf_nr_rrc_maxNumberRxTxBeamSwitchDL,
46929       { "maxNumberRxTxBeamSwitchDL", "nr-rrc.maxNumberRxTxBeamSwitchDL_element",
46930         FT_NONE, BASE_NONE, NULL, 0,
46931         NULL, HFILL }},
46932     { &hf_nr_rrc_scs_15kHz_02,
46933       { "scs-15kHz", "nr-rrc.scs_15kHz",
46934         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_scs_15kHz_02_vals), 0,
46935         "T_scs_15kHz_02", HFILL }},
46936     { &hf_nr_rrc_scs_30kHz_02,
46937       { "scs-30kHz", "nr-rrc.scs_30kHz",
46938         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_scs_30kHz_02_vals), 0,
46939         "T_scs_30kHz_02", HFILL }},
46940     { &hf_nr_rrc_scs_60kHz_03,
46941       { "scs-60kHz", "nr-rrc.scs_60kHz",
46942         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_scs_60kHz_03_vals), 0,
46943         "T_scs_60kHz_03", HFILL }},
46944     { &hf_nr_rrc_scs_120kHz_02,
46945       { "scs-120kHz", "nr-rrc.scs_120kHz",
46946         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_scs_120kHz_02_vals), 0,
46947         "T_scs_120kHz_02", HFILL }},
46948     { &hf_nr_rrc_scs_240kHz,
46949       { "scs-240kHz", "nr-rrc.scs_240kHz",
46950         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_scs_240kHz_vals), 0,
46951         NULL, HFILL }},
46952     { &hf_nr_rrc_maxNumberNonGroupBeamReporting,
46953       { "maxNumberNonGroupBeamReporting", "nr-rrc.maxNumberNonGroupBeamReporting",
46954         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_maxNumberNonGroupBeamReporting_vals), 0,
46955         NULL, HFILL }},
46956     { &hf_nr_rrc_groupBeamReporting,
46957       { "groupBeamReporting", "nr-rrc.groupBeamReporting",
46958         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_groupBeamReporting_vals), 0,
46959         NULL, HFILL }},
46960     { &hf_nr_rrc_uplinkBeamManagement,
46961       { "uplinkBeamManagement", "nr-rrc.uplinkBeamManagement_element",
46962         FT_NONE, BASE_NONE, NULL, 0,
46963         NULL, HFILL }},
46964     { &hf_nr_rrc_maxNumberSRS_ResourcePerSet_BM,
46965       { "maxNumberSRS-ResourcePerSet-BM", "nr-rrc.maxNumberSRS_ResourcePerSet_BM",
46966         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_maxNumberSRS_ResourcePerSet_BM_vals), 0,
46967         "T_maxNumberSRS_ResourcePerSet_BM", HFILL }},
46968     { &hf_nr_rrc_maxNumberSRS_ResourceSet,
46969       { "maxNumberSRS-ResourceSet", "nr-rrc.maxNumberSRS_ResourceSet",
46970         FT_UINT32, BASE_DEC, NULL, 0,
46971         "INTEGER_1_8", HFILL }},
46972     { &hf_nr_rrc_maxNumberCSI_RS_BFR,
46973       { "maxNumberCSI-RS-BFR", "nr-rrc.maxNumberCSI_RS_BFR",
46974         FT_UINT32, BASE_DEC, NULL, 0,
46975         "INTEGER_1_64", HFILL }},
46976     { &hf_nr_rrc_maxNumberSSB_BFR,
46977       { "maxNumberSSB-BFR", "nr-rrc.maxNumberSSB_BFR",
46978         FT_UINT32, BASE_DEC, NULL, 0,
46979         "INTEGER_1_64", HFILL }},
46980     { &hf_nr_rrc_maxNumberCSI_RS_SSB_BFR,
46981       { "maxNumberCSI-RS-SSB-BFR", "nr-rrc.maxNumberCSI_RS_SSB_BFR",
46982         FT_UINT32, BASE_DEC, NULL, 0,
46983         "INTEGER_1_256", HFILL }},
46984     { &hf_nr_rrc_twoPortsPTRS_DL,
46985       { "twoPortsPTRS-DL", "nr-rrc.twoPortsPTRS_DL",
46986         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_twoPortsPTRS_DL_vals), 0,
46987         NULL, HFILL }},
46988     { &hf_nr_rrc_twoPortsPTRS_UL,
46989       { "twoPortsPTRS-UL", "nr-rrc.twoPortsPTRS_UL",
46990         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_twoPortsPTRS_UL_vals), 0,
46991         NULL, HFILL }},
46992     { &hf_nr_rrc_maxNumberSimultaneousSRS_PerCC,
46993       { "maxNumberSimultaneousSRS-PerCC", "nr-rrc.maxNumberSimultaneousSRS_PerCC",
46994         FT_UINT32, BASE_DEC, NULL, 0,
46995         "INTEGER_1_4", HFILL }},
46996     { &hf_nr_rrc_beamReportTiming,
46997       { "beamReportTiming", "nr-rrc.beamReportTiming_element",
46998         FT_NONE, BASE_NONE, NULL, 0,
46999         NULL, HFILL }},
47000     { &hf_nr_rrc_scs_15kHz_03,
47001       { "scs-15kHz", "nr-rrc.scs_15kHz",
47002         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_scs_15kHz_03_vals), 0,
47003         "T_scs_15kHz_03", HFILL }},
47004     { &hf_nr_rrc_scs_30kHz_03,
47005       { "scs-30kHz", "nr-rrc.scs_30kHz",
47006         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_scs_30kHz_03_vals), 0,
47007         "T_scs_30kHz_03", HFILL }},
47008     { &hf_nr_rrc_scs_60kHz_04,
47009       { "scs-60kHz", "nr-rrc.scs_60kHz",
47010         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_scs_60kHz_04_vals), 0,
47011         "T_scs_60kHz_04", HFILL }},
47012     { &hf_nr_rrc_scs_120kHz_03,
47013       { "scs-120kHz", "nr-rrc.scs_120kHz",
47014         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_scs_120kHz_03_vals), 0,
47015         "T_scs_120kHz_03", HFILL }},
47016     { &hf_nr_rrc_ptrs_DensityRecommendationSetDL,
47017       { "ptrs-DensityRecommendationSetDL", "nr-rrc.ptrs_DensityRecommendationSetDL_element",
47018         FT_NONE, BASE_NONE, NULL, 0,
47019         NULL, HFILL }},
47020     { &hf_nr_rrc_scs_15kHz_04,
47021       { "scs-15kHz", "nr-rrc.scs_15kHz_element",
47022         FT_NONE, BASE_NONE, NULL, 0,
47023         "PTRS_DensityRecommendationDL", HFILL }},
47024     { &hf_nr_rrc_scs_30kHz_04,
47025       { "scs-30kHz", "nr-rrc.scs_30kHz_element",
47026         FT_NONE, BASE_NONE, NULL, 0,
47027         "PTRS_DensityRecommendationDL", HFILL }},
47028     { &hf_nr_rrc_scs_60kHz_05,
47029       { "scs-60kHz", "nr-rrc.scs_60kHz_element",
47030         FT_NONE, BASE_NONE, NULL, 0,
47031         "PTRS_DensityRecommendationDL", HFILL }},
47032     { &hf_nr_rrc_scs_120kHz_04,
47033       { "scs-120kHz", "nr-rrc.scs_120kHz_element",
47034         FT_NONE, BASE_NONE, NULL, 0,
47035         "PTRS_DensityRecommendationDL", HFILL }},
47036     { &hf_nr_rrc_ptrs_DensityRecommendationSetUL,
47037       { "ptrs-DensityRecommendationSetUL", "nr-rrc.ptrs_DensityRecommendationSetUL_element",
47038         FT_NONE, BASE_NONE, NULL, 0,
47039         NULL, HFILL }},
47040     { &hf_nr_rrc_scs_15kHz_05,
47041       { "scs-15kHz", "nr-rrc.scs_15kHz_element",
47042         FT_NONE, BASE_NONE, NULL, 0,
47043         "PTRS_DensityRecommendationUL", HFILL }},
47044     { &hf_nr_rrc_scs_30kHz_05,
47045       { "scs-30kHz", "nr-rrc.scs_30kHz_element",
47046         FT_NONE, BASE_NONE, NULL, 0,
47047         "PTRS_DensityRecommendationUL", HFILL }},
47048     { &hf_nr_rrc_scs_60kHz_06,
47049       { "scs-60kHz", "nr-rrc.scs_60kHz_element",
47050         FT_NONE, BASE_NONE, NULL, 0,
47051         "PTRS_DensityRecommendationUL", HFILL }},
47052     { &hf_nr_rrc_scs_120kHz_05,
47053       { "scs-120kHz", "nr-rrc.scs_120kHz_element",
47054         FT_NONE, BASE_NONE, NULL, 0,
47055         "PTRS_DensityRecommendationUL", HFILL }},
47056     { &hf_nr_rrc_csi_RS_ForTracking,
47057       { "csi-RS-ForTracking", "nr-rrc.csi_RS_ForTracking_element",
47058         FT_NONE, BASE_NONE, NULL, 0,
47059         NULL, HFILL }},
47060     { &hf_nr_rrc_aperiodicTRS,
47061       { "aperiodicTRS", "nr-rrc.aperiodicTRS",
47062         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_aperiodicTRS_vals), 0,
47063         NULL, HFILL }},
47064     { &hf_nr_rrc_maxNumberSSB_CSI_RS_ResourceOneTx,
47065       { "maxNumberSSB-CSI-RS-ResourceOneTx", "nr-rrc.maxNumberSSB_CSI_RS_ResourceOneTx",
47066         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_maxNumberSSB_CSI_RS_ResourceOneTx_vals), 0,
47067         NULL, HFILL }},
47068     { &hf_nr_rrc_maxNumberSSB_CSI_RS_ResourceTwoTx,
47069       { "maxNumberSSB-CSI-RS-ResourceTwoTx", "nr-rrc.maxNumberSSB_CSI_RS_ResourceTwoTx",
47070         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_maxNumberSSB_CSI_RS_ResourceTwoTx_vals), 0,
47071         NULL, HFILL }},
47072     { &hf_nr_rrc_supportedCSI_RS_Density,
47073       { "supportedCSI-RS-Density", "nr-rrc.supportedCSI_RS_Density",
47074         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_supportedCSI_RS_Density_vals), 0,
47075         NULL, HFILL }},
47076     { &hf_nr_rrc_burstLength,
47077       { "burstLength", "nr-rrc.burstLength",
47078         FT_UINT32, BASE_DEC, NULL, 0,
47079         "INTEGER_1_2", HFILL }},
47080     { &hf_nr_rrc_maxSimultaneousResourceSetsPerCC,
47081       { "maxSimultaneousResourceSetsPerCC", "nr-rrc.maxSimultaneousResourceSetsPerCC",
47082         FT_UINT32, BASE_DEC, NULL, 0,
47083         "INTEGER_1_8", HFILL }},
47084     { &hf_nr_rrc_maxConfiguredResourceSetsPerCC,
47085       { "maxConfiguredResourceSetsPerCC", "nr-rrc.maxConfiguredResourceSetsPerCC",
47086         FT_UINT32, BASE_DEC, NULL, 0,
47087         "INTEGER_1_64", HFILL }},
47088     { &hf_nr_rrc_maxConfiguredResourceSetsAllCC,
47089       { "maxConfiguredResourceSetsAllCC", "nr-rrc.maxConfiguredResourceSetsAllCC",
47090         FT_UINT32, BASE_DEC, NULL, 0,
47091         "INTEGER_1_128", HFILL }},
47092     { &hf_nr_rrc_frequencyDensity1,
47093       { "frequencyDensity1", "nr-rrc.frequencyDensity1",
47094         FT_UINT32, BASE_DEC, NULL, 0,
47095         "INTEGER_1_276", HFILL }},
47096     { &hf_nr_rrc_frequencyDensity2,
47097       { "frequencyDensity2", "nr-rrc.frequencyDensity2",
47098         FT_UINT32, BASE_DEC, NULL, 0,
47099         "INTEGER_1_276", HFILL }},
47100     { &hf_nr_rrc_timeDensity1,
47101       { "timeDensity1", "nr-rrc.timeDensity1",
47102         FT_UINT32, BASE_DEC, NULL, 0,
47103         "INTEGER_0_29", HFILL }},
47104     { &hf_nr_rrc_timeDensity2,
47105       { "timeDensity2", "nr-rrc.timeDensity2",
47106         FT_UINT32, BASE_DEC, NULL, 0,
47107         "INTEGER_0_29", HFILL }},
47108     { &hf_nr_rrc_timeDensity3,
47109       { "timeDensity3", "nr-rrc.timeDensity3",
47110         FT_UINT32, BASE_DEC, NULL, 0,
47111         "INTEGER_0_29", HFILL }},
47112     { &hf_nr_rrc_sampleDensity1,
47113       { "sampleDensity1", "nr-rrc.sampleDensity1",
47114         FT_UINT32, BASE_DEC, NULL, 0,
47115         "INTEGER_1_276", HFILL }},
47116     { &hf_nr_rrc_sampleDensity2,
47117       { "sampleDensity2", "nr-rrc.sampleDensity2",
47118         FT_UINT32, BASE_DEC, NULL, 0,
47119         "INTEGER_1_276", HFILL }},
47120     { &hf_nr_rrc_sampleDensity3,
47121       { "sampleDensity3", "nr-rrc.sampleDensity3",
47122         FT_UINT32, BASE_DEC, NULL, 0,
47123         "INTEGER_1_276", HFILL }},
47124     { &hf_nr_rrc_sampleDensity4,
47125       { "sampleDensity4", "nr-rrc.sampleDensity4",
47126         FT_UINT32, BASE_DEC, NULL, 0,
47127         "INTEGER_1_276", HFILL }},
47128     { &hf_nr_rrc_sampleDensity5,
47129       { "sampleDensity5", "nr-rrc.sampleDensity5",
47130         FT_UINT32, BASE_DEC, NULL, 0,
47131         "INTEGER_1_276", HFILL }},
47132     { &hf_nr_rrc_maxNumberAperiodicSRS_PerBWP,
47133       { "maxNumberAperiodicSRS-PerBWP", "nr-rrc.maxNumberAperiodicSRS_PerBWP",
47134         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_maxNumberAperiodicSRS_PerBWP_vals), 0,
47135         NULL, HFILL }},
47136     { &hf_nr_rrc_maxNumberAperiodicSRS_PerBWP_PerSlot,
47137       { "maxNumberAperiodicSRS-PerBWP-PerSlot", "nr-rrc.maxNumberAperiodicSRS_PerBWP_PerSlot",
47138         FT_UINT32, BASE_DEC, NULL, 0,
47139         "INTEGER_1_6", HFILL }},
47140     { &hf_nr_rrc_maxNumberPeriodicSRS_PerBWP,
47141       { "maxNumberPeriodicSRS-PerBWP", "nr-rrc.maxNumberPeriodicSRS_PerBWP",
47142         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_maxNumberPeriodicSRS_PerBWP_vals), 0,
47143         NULL, HFILL }},
47144     { &hf_nr_rrc_maxNumberPeriodicSRS_PerBWP_PerSlot,
47145       { "maxNumberPeriodicSRS-PerBWP-PerSlot", "nr-rrc.maxNumberPeriodicSRS_PerBWP_PerSlot",
47146         FT_UINT32, BASE_DEC, NULL, 0,
47147         "INTEGER_1_6", HFILL }},
47148     { &hf_nr_rrc_maxNumberSemiPersitentSRS_PerBWP,
47149       { "maxNumberSemiPersitentSRS-PerBWP", "nr-rrc.maxNumberSemiPersitentSRS_PerBWP",
47150         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_maxNumberSemiPersitentSRS_PerBWP_vals), 0,
47151         NULL, HFILL }},
47152     { &hf_nr_rrc_maxNumberSP_SRS_PerBWP_PerSlot,
47153       { "maxNumberSP-SRS-PerBWP-PerSlot", "nr-rrc.maxNumberSP_SRS_PerBWP_PerSlot",
47154         FT_UINT32, BASE_DEC, NULL, 0,
47155         "INTEGER_1_6", HFILL }},
47156     { &hf_nr_rrc_maxNumberSRS_Ports_PerResource,
47157       { "maxNumberSRS-Ports-PerResource", "nr-rrc.maxNumberSRS_Ports_PerResource",
47158         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_maxNumberSRS_Ports_PerResource_vals), 0,
47159         NULL, HFILL }},
47160     { &hf_nr_rrc_supportedSRS_TxPortSwitch,
47161       { "supportedSRS-TxPortSwitch", "nr-rrc.supportedSRS_TxPortSwitch",
47162         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_supportedSRS_TxPortSwitch_vals), 0,
47163         NULL, HFILL }},
47164     { &hf_nr_rrc_txSwitchImpactToRx,
47165       { "txSwitchImpactToRx", "nr-rrc.txSwitchImpactToRx",
47166         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_txSwitchImpactToRx_vals), 0,
47167         NULL, HFILL }},
47168     { &hf_nr_rrc_singleUL_Transmission,
47169       { "singleUL-Transmission", "nr-rrc.singleUL_Transmission",
47170         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_singleUL_Transmission_vals), 0,
47171         NULL, HFILL }},
47172     { &hf_nr_rrc_dynamicPowerSharing,
47173       { "dynamicPowerSharing", "nr-rrc.dynamicPowerSharing",
47174         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_dynamicPowerSharing_vals), 0,
47175         NULL, HFILL }},
47176     { &hf_nr_rrc_tdm_Pattern,
47177       { "tdm-Pattern", "nr-rrc.tdm_Pattern",
47178         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_tdm_Pattern_vals), 0,
47179         NULL, HFILL }},
47180     { &hf_nr_rrc_ul_SharingEUTRA_NR,
47181       { "ul-SharingEUTRA-NR", "nr-rrc.ul_SharingEUTRA_NR",
47182         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_ul_SharingEUTRA_NR_vals), 0,
47183         NULL, HFILL }},
47184     { &hf_nr_rrc_ul_SwitchingTimeEUTRA_NR,
47185       { "ul-SwitchingTimeEUTRA-NR", "nr-rrc.ul_SwitchingTimeEUTRA_NR",
47186         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_ul_SwitchingTimeEUTRA_NR_vals), 0,
47187         NULL, HFILL }},
47188     { &hf_nr_rrc_simultaneousRxTxInterBandENDC,
47189       { "simultaneousRxTxInterBandENDC", "nr-rrc.simultaneousRxTxInterBandENDC",
47190         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_simultaneousRxTxInterBandENDC_vals), 0,
47191         NULL, HFILL }},
47192     { &hf_nr_rrc_asyncIntraBandENDC,
47193       { "asyncIntraBandENDC", "nr-rrc.asyncIntraBandENDC",
47194         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_asyncIntraBandENDC_vals), 0,
47195         NULL, HFILL }},
47196     { &hf_nr_rrc_supportedROHC_Profiles,
47197       { "supportedROHC-Profiles", "nr-rrc.supportedROHC_Profiles_element",
47198         FT_NONE, BASE_NONE, NULL, 0,
47199         NULL, HFILL }},
47200     { &hf_nr_rrc_profile0x0000,
47201       { "profile0x0000", "nr-rrc.profile0x0000",
47202         FT_BOOLEAN, BASE_NONE, NULL, 0,
47203         "BOOLEAN", HFILL }},
47204     { &hf_nr_rrc_maxNumberROHC_ContextSessions,
47205       { "maxNumberROHC-ContextSessions", "nr-rrc.maxNumberROHC_ContextSessions",
47206         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_maxNumberROHC_ContextSessions_vals), 0,
47207         NULL, HFILL }},
47208     { &hf_nr_rrc_uplinkOnlyROHC_Profiles,
47209       { "uplinkOnlyROHC-Profiles", "nr-rrc.uplinkOnlyROHC_Profiles",
47210         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_uplinkOnlyROHC_Profiles_vals), 0,
47211         NULL, HFILL }},
47212     { &hf_nr_rrc_continueROHC_Context,
47213       { "continueROHC-Context", "nr-rrc.continueROHC_Context",
47214         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_continueROHC_Context_vals), 0,
47215         NULL, HFILL }},
47216     { &hf_nr_rrc_outOfOrderDelivery_01,
47217       { "outOfOrderDelivery", "nr-rrc.outOfOrderDelivery",
47218         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_outOfOrderDelivery_01_vals), 0,
47219         "T_outOfOrderDelivery_01", HFILL }},
47220     { &hf_nr_rrc_shortSN,
47221       { "shortSN", "nr-rrc.shortSN",
47222         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_shortSN_vals), 0,
47223         NULL, HFILL }},
47224     { &hf_nr_rrc_pdcp_DuplicationSRB3,
47225       { "pdcp-DuplicationSRB3", "nr-rrc.pdcp_DuplicationSRB3",
47226         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pdcp_DuplicationSRB3_vals), 0,
47227         NULL, HFILL }},
47228     { &hf_nr_rrc_pdcp_DuplicationMCG_OrSCG,
47229       { "pdcp-DuplicationMCG-OrSCG", "nr-rrc.pdcp_DuplicationMCG_OrSCG",
47230         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pdcp_DuplicationMCG_OrSCG_vals), 0,
47231         NULL, HFILL }},
47232     { &hf_nr_rrc_pdcp_DuplicationSplitSRB,
47233       { "pdcp-DuplicationSplitSRB", "nr-rrc.pdcp_DuplicationSplitSRB",
47234         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pdcp_DuplicationSplitSRB_vals), 0,
47235         NULL, HFILL }},
47236     { &hf_nr_rrc_pdcp_DuplicationSplitDRB,
47237       { "pdcp-DuplicationSplitDRB", "nr-rrc.pdcp_DuplicationSplitDRB",
47238         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pdcp_DuplicationSplitDRB_vals), 0,
47239         NULL, HFILL }},
47240     { &hf_nr_rrc_phy_ParametersCommon,
47241       { "phy-ParametersCommon", "nr-rrc.phy_ParametersCommon_element",
47242         FT_NONE, BASE_NONE, NULL, 0,
47243         NULL, HFILL }},
47244     { &hf_nr_rrc_phy_ParametersXDD_Diff,
47245       { "phy-ParametersXDD-Diff", "nr-rrc.phy_ParametersXDD_Diff_element",
47246         FT_NONE, BASE_NONE, NULL, 0,
47247         NULL, HFILL }},
47248     { &hf_nr_rrc_phy_ParametersFRX_Diff,
47249       { "phy-ParametersFRX-Diff", "nr-rrc.phy_ParametersFRX_Diff_element",
47250         FT_NONE, BASE_NONE, NULL, 0,
47251         NULL, HFILL }},
47252     { &hf_nr_rrc_phy_ParametersFR1,
47253       { "phy-ParametersFR1", "nr-rrc.phy_ParametersFR1_element",
47254         FT_NONE, BASE_NONE, NULL, 0,
47255         NULL, HFILL }},
47256     { &hf_nr_rrc_phy_ParametersFR2,
47257       { "phy-ParametersFR2", "nr-rrc.phy_ParametersFR2_element",
47258         FT_NONE, BASE_NONE, NULL, 0,
47259         NULL, HFILL }},
47260     { &hf_nr_rrc_csi_RS_CFRA_ForHO,
47261       { "csi-RS-CFRA-ForHO", "nr-rrc.csi_RS_CFRA_ForHO",
47262         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_csi_RS_CFRA_ForHO_vals), 0,
47263         NULL, HFILL }},
47264     { &hf_nr_rrc_dynamicPRB_BundlingDL,
47265       { "dynamicPRB-BundlingDL", "nr-rrc.dynamicPRB_BundlingDL",
47266         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_dynamicPRB_BundlingDL_vals), 0,
47267         NULL, HFILL }},
47268     { &hf_nr_rrc_sp_CSI_ReportPUCCH,
47269       { "sp-CSI-ReportPUCCH", "nr-rrc.sp_CSI_ReportPUCCH",
47270         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_sp_CSI_ReportPUCCH_vals), 0,
47271         NULL, HFILL }},
47272     { &hf_nr_rrc_sp_CSI_ReportPUSCH,
47273       { "sp-CSI-ReportPUSCH", "nr-rrc.sp_CSI_ReportPUSCH",
47274         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_sp_CSI_ReportPUSCH_vals), 0,
47275         NULL, HFILL }},
47276     { &hf_nr_rrc_nzp_CSI_RS_IntefMgmt,
47277       { "nzp-CSI-RS-IntefMgmt", "nr-rrc.nzp_CSI_RS_IntefMgmt",
47278         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_nzp_CSI_RS_IntefMgmt_vals), 0,
47279         NULL, HFILL }},
47280     { &hf_nr_rrc_type2_SP_CSI_Feedback_LongPUCCH,
47281       { "type2-SP-CSI-Feedback-LongPUCCH", "nr-rrc.type2_SP_CSI_Feedback_LongPUCCH",
47282         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_type2_SP_CSI_Feedback_LongPUCCH_vals), 0,
47283         NULL, HFILL }},
47284     { &hf_nr_rrc_precoderGranularityCORESET,
47285       { "precoderGranularityCORESET", "nr-rrc.precoderGranularityCORESET",
47286         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_precoderGranularityCORESET_vals), 0,
47287         NULL, HFILL }},
47288     { &hf_nr_rrc_dynamicHARQ_ACK_Codebook,
47289       { "dynamicHARQ-ACK-Codebook", "nr-rrc.dynamicHARQ_ACK_Codebook",
47290         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_dynamicHARQ_ACK_Codebook_vals), 0,
47291         NULL, HFILL }},
47292     { &hf_nr_rrc_semiStaticHARQ_ACK_Codebook,
47293       { "semiStaticHARQ-ACK-Codebook", "nr-rrc.semiStaticHARQ_ACK_Codebook",
47294         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_semiStaticHARQ_ACK_Codebook_vals), 0,
47295         NULL, HFILL }},
47296     { &hf_nr_rrc_spatialBundlingHARQ_ACK,
47297       { "spatialBundlingHARQ-ACK", "nr-rrc.spatialBundlingHARQ_ACK",
47298         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_spatialBundlingHARQ_ACK_vals), 0,
47299         NULL, HFILL }},
47300     { &hf_nr_rrc_dynamicBetaOffsetInd_HARQ_ACK_CSI,
47301       { "dynamicBetaOffsetInd-HARQ-ACK-CSI", "nr-rrc.dynamicBetaOffsetInd_HARQ_ACK_CSI",
47302         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_dynamicBetaOffsetInd_HARQ_ACK_CSI_vals), 0,
47303         NULL, HFILL }},
47304     { &hf_nr_rrc_pucch_Repetition_F1_3_4,
47305       { "pucch-Repetition-F1-3-4", "nr-rrc.pucch_Repetition_F1_3_4",
47306         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pucch_Repetition_F1_3_4_vals), 0,
47307         NULL, HFILL }},
47308     { &hf_nr_rrc_ra_Type0_PUSCH,
47309       { "ra-Type0-PUSCH", "nr-rrc.ra_Type0_PUSCH",
47310         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_ra_Type0_PUSCH_vals), 0,
47311         NULL, HFILL }},
47312     { &hf_nr_rrc_dynamicSwitchRA_Type0_1_PDSCH,
47313       { "dynamicSwitchRA-Type0-1-PDSCH", "nr-rrc.dynamicSwitchRA_Type0_1_PDSCH",
47314         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_dynamicSwitchRA_Type0_1_PDSCH_vals), 0,
47315         NULL, HFILL }},
47316     { &hf_nr_rrc_dynamicSwitchRA_Type0_1_PUSCH,
47317       { "dynamicSwitchRA-Type0-1-PUSCH", "nr-rrc.dynamicSwitchRA_Type0_1_PUSCH",
47318         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_dynamicSwitchRA_Type0_1_PUSCH_vals), 0,
47319         NULL, HFILL }},
47320     { &hf_nr_rrc_pdsch_MappingTypeA,
47321       { "pdsch-MappingTypeA", "nr-rrc.pdsch_MappingTypeA",
47322         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pdsch_MappingTypeA_vals), 0,
47323         NULL, HFILL }},
47324     { &hf_nr_rrc_pdsch_MappingTypeB,
47325       { "pdsch-MappingTypeB", "nr-rrc.pdsch_MappingTypeB",
47326         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pdsch_MappingTypeB_vals), 0,
47327         NULL, HFILL }},
47328     { &hf_nr_rrc_interleavingVRB_ToPRB_PDSCH,
47329       { "interleavingVRB-ToPRB-PDSCH", "nr-rrc.interleavingVRB_ToPRB_PDSCH",
47330         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_interleavingVRB_ToPRB_PDSCH_vals), 0,
47331         NULL, HFILL }},
47332     { &hf_nr_rrc_interSlotFreqHopping_PUSCH,
47333       { "interSlotFreqHopping-PUSCH", "nr-rrc.interSlotFreqHopping_PUSCH",
47334         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_interSlotFreqHopping_PUSCH_vals), 0,
47335         NULL, HFILL }},
47336     { &hf_nr_rrc_type1_PUSCH_RepetitionMultiSlots,
47337       { "type1-PUSCH-RepetitionMultiSlots", "nr-rrc.type1_PUSCH_RepetitionMultiSlots",
47338         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_type1_PUSCH_RepetitionMultiSlots_vals), 0,
47339         NULL, HFILL }},
47340     { &hf_nr_rrc_type2_PUSCH_RepetitionMultiSlots,
47341       { "type2-PUSCH-RepetitionMultiSlots", "nr-rrc.type2_PUSCH_RepetitionMultiSlots",
47342         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_type2_PUSCH_RepetitionMultiSlots_vals), 0,
47343         NULL, HFILL }},
47344     { &hf_nr_rrc_pusch_RepetitionMultiSlots,
47345       { "pusch-RepetitionMultiSlots", "nr-rrc.pusch_RepetitionMultiSlots",
47346         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pusch_RepetitionMultiSlots_vals), 0,
47347         NULL, HFILL }},
47348     { &hf_nr_rrc_pdsch_RepetitionMultiSlots,
47349       { "pdsch-RepetitionMultiSlots", "nr-rrc.pdsch_RepetitionMultiSlots",
47350         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pdsch_RepetitionMultiSlots_vals), 0,
47351         NULL, HFILL }},
47352     { &hf_nr_rrc_downlinkSPS,
47353       { "downlinkSPS", "nr-rrc.downlinkSPS",
47354         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_downlinkSPS_vals), 0,
47355         NULL, HFILL }},
47356     { &hf_nr_rrc_configuredUL_GrantType1,
47357       { "configuredUL-GrantType1", "nr-rrc.configuredUL_GrantType1",
47358         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_configuredUL_GrantType1_vals), 0,
47359         NULL, HFILL }},
47360     { &hf_nr_rrc_configuredUL_GrantType2,
47361       { "configuredUL-GrantType2", "nr-rrc.configuredUL_GrantType2",
47362         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_configuredUL_GrantType2_vals), 0,
47363         NULL, HFILL }},
47364     { &hf_nr_rrc_pre_EmptIndication_DL,
47365       { "pre-EmptIndication-DL", "nr-rrc.pre_EmptIndication_DL",
47366         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pre_EmptIndication_DL_vals), 0,
47367         NULL, HFILL }},
47368     { &hf_nr_rrc_cbg_TransIndication_DL,
47369       { "cbg-TransIndication-DL", "nr-rrc.cbg_TransIndication_DL",
47370         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_cbg_TransIndication_DL_vals), 0,
47371         NULL, HFILL }},
47372     { &hf_nr_rrc_cbg_TransIndication_UL,
47373       { "cbg-TransIndication-UL", "nr-rrc.cbg_TransIndication_UL",
47374         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_cbg_TransIndication_UL_vals), 0,
47375         NULL, HFILL }},
47376     { &hf_nr_rrc_cbg_FlushIndication_DL,
47377       { "cbg-FlushIndication-DL", "nr-rrc.cbg_FlushIndication_DL",
47378         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_cbg_FlushIndication_DL_vals), 0,
47379         NULL, HFILL }},
47380     { &hf_nr_rrc_dynamicHARQ_ACK_CodeB_CBG_Retx_DL,
47381       { "dynamicHARQ-ACK-CodeB-CBG-Retx-DL", "nr-rrc.dynamicHARQ_ACK_CodeB_CBG_Retx_DL",
47382         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_dynamicHARQ_ACK_CodeB_CBG_Retx_DL_vals), 0,
47383         NULL, HFILL }},
47384     { &hf_nr_rrc_rateMatchingResrcSetSemi_Static,
47385       { "rateMatchingResrcSetSemi-Static", "nr-rrc.rateMatchingResrcSetSemi_Static",
47386         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_rateMatchingResrcSetSemi_Static_vals), 0,
47387         NULL, HFILL }},
47388     { &hf_nr_rrc_rateMatchingResrcSetDynamic,
47389       { "rateMatchingResrcSetDynamic", "nr-rrc.rateMatchingResrcSetDynamic",
47390         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_rateMatchingResrcSetDynamic_vals), 0,
47391         NULL, HFILL }},
47392     { &hf_nr_rrc_bwp_SwitchingDelay,
47393       { "bwp-SwitchingDelay", "nr-rrc.bwp_SwitchingDelay",
47394         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_bwp_SwitchingDelay_vals), 0,
47395         NULL, HFILL }},
47396     { &hf_nr_rrc_eutra_RS_SINR_measurement,
47397       { "eutra-RS-SINR-measurement", "nr-rrc.eutra_RS_SINR_measurement",
47398         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_eutra_RS_SINR_measurement_vals), 0,
47399         NULL, HFILL }},
47400     { &hf_nr_rrc_dynamicSFI,
47401       { "dynamicSFI", "nr-rrc.dynamicSFI",
47402         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_dynamicSFI_vals), 0,
47403         NULL, HFILL }},
47404     { &hf_nr_rrc_twoPUCCH_F0_2_ConsecSymbols,
47405       { "twoPUCCH-F0-2-ConsecSymbols", "nr-rrc.twoPUCCH_F0_2_ConsecSymbols",
47406         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_twoPUCCH_F0_2_ConsecSymbols_vals), 0,
47407         NULL, HFILL }},
47408     { &hf_nr_rrc_twoDifferentTPC_Loop_PUSCH,
47409       { "twoDifferentTPC-Loop-PUSCH", "nr-rrc.twoDifferentTPC_Loop_PUSCH",
47410         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_twoDifferentTPC_Loop_PUSCH_vals), 0,
47411         NULL, HFILL }},
47412     { &hf_nr_rrc_twoDifferentTPC_Loop_PUCCH,
47413       { "twoDifferentTPC-Loop-PUCCH", "nr-rrc.twoDifferentTPC_Loop_PUCCH",
47414         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_twoDifferentTPC_Loop_PUCCH_vals), 0,
47415         NULL, HFILL }},
47416     { &hf_nr_rrc_dynamicSFI_01,
47417       { "dynamicSFI", "nr-rrc.dynamicSFI",
47418         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_dynamicSFI_01_vals), 0,
47419         "T_dynamicSFI_01", HFILL }},
47420     { &hf_nr_rrc_oneFL_DMRS_TwoAdditionalDMRS,
47421       { "oneFL-DMRS-TwoAdditionalDMRS", "nr-rrc.oneFL_DMRS_TwoAdditionalDMRS",
47422         FT_BYTES, BASE_NONE, NULL, 0,
47423         "BIT_STRING_SIZE_2", HFILL }},
47424     { &hf_nr_rrc_twoFL_DMRS,
47425       { "twoFL-DMRS", "nr-rrc.twoFL_DMRS",
47426         FT_BYTES, BASE_NONE, NULL, 0,
47427         "BIT_STRING_SIZE_2", HFILL }},
47428     { &hf_nr_rrc_twoFL_DMRS_TwoAdditionalDMRS,
47429       { "twoFL-DMRS-TwoAdditionalDMRS", "nr-rrc.twoFL_DMRS_TwoAdditionalDMRS",
47430         FT_BYTES, BASE_NONE, NULL, 0,
47431         "BIT_STRING_SIZE_2", HFILL }},
47432     { &hf_nr_rrc_oneFL_DMRS_ThreeAdditionalDMRS,
47433       { "oneFL-DMRS-ThreeAdditionalDMRS", "nr-rrc.oneFL_DMRS_ThreeAdditionalDMRS",
47434         FT_BYTES, BASE_NONE, NULL, 0,
47435         "BIT_STRING_SIZE_2", HFILL }},
47436     { &hf_nr_rrc_supportedDMRS_TypeDL,
47437       { "supportedDMRS-TypeDL", "nr-rrc.supportedDMRS_TypeDL",
47438         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_supportedDMRS_TypeDL_vals), 0,
47439         NULL, HFILL }},
47440     { &hf_nr_rrc_supportedDMRS_TypeUL,
47441       { "supportedDMRS-TypeUL", "nr-rrc.supportedDMRS_TypeUL",
47442         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_supportedDMRS_TypeUL_vals), 0,
47443         NULL, HFILL }},
47444     { &hf_nr_rrc_semiOpenLoopCSI,
47445       { "semiOpenLoopCSI", "nr-rrc.semiOpenLoopCSI",
47446         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_semiOpenLoopCSI_vals), 0,
47447         NULL, HFILL }},
47448     { &hf_nr_rrc_csi_ReportWithoutPMI,
47449       { "csi-ReportWithoutPMI", "nr-rrc.csi_ReportWithoutPMI",
47450         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_csi_ReportWithoutPMI_vals), 0,
47451         NULL, HFILL }},
47452     { &hf_nr_rrc_csi_ReportWithoutCQI,
47453       { "csi-ReportWithoutCQI", "nr-rrc.csi_ReportWithoutCQI",
47454         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_csi_ReportWithoutCQI_vals), 0,
47455         NULL, HFILL }},
47456     { &hf_nr_rrc_onePortsPTRS,
47457       { "onePortsPTRS", "nr-rrc.onePortsPTRS",
47458         FT_BYTES, BASE_NONE, NULL, 0,
47459         "BIT_STRING_SIZE_2", HFILL }},
47460     { &hf_nr_rrc_twoPUCCH_F0_2_ConsecSymbols_01,
47461       { "twoPUCCH-F0-2-ConsecSymbols", "nr-rrc.twoPUCCH_F0_2_ConsecSymbols",
47462         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_twoPUCCH_F0_2_ConsecSymbols_01_vals), 0,
47463         "T_twoPUCCH_F0_2_ConsecSymbols_01", HFILL }},
47464     { &hf_nr_rrc_pucch_F2_WithFH,
47465       { "pucch-F2-WithFH", "nr-rrc.pucch_F2_WithFH",
47466         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pucch_F2_WithFH_vals), 0,
47467         NULL, HFILL }},
47468     { &hf_nr_rrc_pucch_F3_WithFH,
47469       { "pucch-F3-WithFH", "nr-rrc.pucch_F3_WithFH",
47470         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pucch_F3_WithFH_vals), 0,
47471         NULL, HFILL }},
47472     { &hf_nr_rrc_pucch_F4_WithFH,
47473       { "pucch-F4-WithFH", "nr-rrc.pucch_F4_WithFH",
47474         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pucch_F4_WithFH_vals), 0,
47475         NULL, HFILL }},
47476     { &hf_nr_rrc_freqHoppingPUCCH_F0_2,
47477       { "freqHoppingPUCCH-F0-2", "nr-rrc.freqHoppingPUCCH_F0_2",
47478         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_freqHoppingPUCCH_F0_2_vals), 0,
47479         NULL, HFILL }},
47480     { &hf_nr_rrc_freqHoppingPUCCH_F1_3_4,
47481       { "freqHoppingPUCCH-F1-3-4", "nr-rrc.freqHoppingPUCCH_F1_3_4",
47482         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_freqHoppingPUCCH_F1_3_4_vals), 0,
47483         NULL, HFILL }},
47484     { &hf_nr_rrc_mux_SR_HARQ_ACK_CSI_PUCCH,
47485       { "mux-SR-HARQ-ACK-CSI-PUCCH", "nr-rrc.mux_SR_HARQ_ACK_CSI_PUCCH",
47486         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_mux_SR_HARQ_ACK_CSI_PUCCH_vals), 0,
47487         NULL, HFILL }},
47488     { &hf_nr_rrc_uci_CodeBlockSegmentation,
47489       { "uci-CodeBlockSegmentation", "nr-rrc.uci_CodeBlockSegmentation",
47490         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_uci_CodeBlockSegmentation_vals), 0,
47491         NULL, HFILL }},
47492     { &hf_nr_rrc_onePUCCH_LongAndShortFormat,
47493       { "onePUCCH-LongAndShortFormat", "nr-rrc.onePUCCH_LongAndShortFormat",
47494         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_onePUCCH_LongAndShortFormat_vals), 0,
47495         NULL, HFILL }},
47496     { &hf_nr_rrc_twoPUCCH_AnyOthersInSlot,
47497       { "twoPUCCH-AnyOthersInSlot", "nr-rrc.twoPUCCH_AnyOthersInSlot",
47498         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_twoPUCCH_AnyOthersInSlot_vals), 0,
47499         NULL, HFILL }},
47500     { &hf_nr_rrc_intraSlotFreqHopping_PUSCH,
47501       { "intraSlotFreqHopping-PUSCH", "nr-rrc.intraSlotFreqHopping_PUSCH",
47502         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_intraSlotFreqHopping_PUSCH_vals), 0,
47503         NULL, HFILL }},
47504     { &hf_nr_rrc_pusch_LBRM,
47505       { "pusch-LBRM", "nr-rrc.pusch_LBRM",
47506         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pusch_LBRM_vals), 0,
47507         NULL, HFILL }},
47508     { &hf_nr_rrc_pdcch_BlindDetectionCA,
47509       { "pdcch-BlindDetectionCA", "nr-rrc.pdcch_BlindDetectionCA",
47510         FT_UINT32, BASE_DEC, NULL, 0,
47511         "INTEGER_4_16", HFILL }},
47512     { &hf_nr_rrc_tpc_PUSCH_RNTI_01,
47513       { "tpc-PUSCH-RNTI", "nr-rrc.tpc_PUSCH_RNTI",
47514         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_tpc_PUSCH_RNTI_vals), 0,
47515         NULL, HFILL }},
47516     { &hf_nr_rrc_tpc_PUCCH_RNTI_01,
47517       { "tpc-PUCCH-RNTI", "nr-rrc.tpc_PUCCH_RNTI",
47518         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_tpc_PUCCH_RNTI_vals), 0,
47519         NULL, HFILL }},
47520     { &hf_nr_rrc_tpc_SRS_RNTI_01,
47521       { "tpc-SRS-RNTI", "nr-rrc.tpc_SRS_RNTI",
47522         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_tpc_SRS_RNTI_vals), 0,
47523         NULL, HFILL }},
47524     { &hf_nr_rrc_absoluteTPC_Command,
47525       { "absoluteTPC-Command", "nr-rrc.absoluteTPC_Command",
47526         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_absoluteTPC_Command_vals), 0,
47527         NULL, HFILL }},
47528     { &hf_nr_rrc_twoDifferentTPC_Loop_PUSCH_01,
47529       { "twoDifferentTPC-Loop-PUSCH", "nr-rrc.twoDifferentTPC_Loop_PUSCH",
47530         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_twoDifferentTPC_Loop_PUSCH_01_vals), 0,
47531         "T_twoDifferentTPC_Loop_PUSCH_01", HFILL }},
47532     { &hf_nr_rrc_twoDifferentTPC_Loop_PUCCH_01,
47533       { "twoDifferentTPC-Loop-PUCCH", "nr-rrc.twoDifferentTPC_Loop_PUCCH",
47534         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_twoDifferentTPC_Loop_PUCCH_01_vals), 0,
47535         "T_twoDifferentTPC_Loop_PUCCH_01", HFILL }},
47536     { &hf_nr_rrc_pusch_HalfPi_BPSK,
47537       { "pusch-HalfPi-BPSK", "nr-rrc.pusch_HalfPi_BPSK",
47538         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pusch_HalfPi_BPSK_vals), 0,
47539         NULL, HFILL }},
47540     { &hf_nr_rrc_pucch_F3_4_HalfPi_BPSK,
47541       { "pucch-F3-4-HalfPi-BPSK", "nr-rrc.pucch_F3_4_HalfPi_BPSK",
47542         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pucch_F3_4_HalfPi_BPSK_vals), 0,
47543         NULL, HFILL }},
47544     { &hf_nr_rrc_almostContiguousCP_OFDM_UL,
47545       { "almostContiguousCP-OFDM-UL", "nr-rrc.almostContiguousCP_OFDM_UL",
47546         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_almostContiguousCP_OFDM_UL_vals), 0,
47547         NULL, HFILL }},
47548     { &hf_nr_rrc_sp_CSI_RS,
47549       { "sp-CSI-RS", "nr-rrc.sp_CSI_RS",
47550         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_sp_CSI_RS_vals), 0,
47551         NULL, HFILL }},
47552     { &hf_nr_rrc_sp_CSI_IM,
47553       { "sp-CSI-IM", "nr-rrc.sp_CSI_IM",
47554         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_sp_CSI_IM_vals), 0,
47555         NULL, HFILL }},
47556     { &hf_nr_rrc_tdd_MultiDL_UL_SwitchPerSlot,
47557       { "tdd-MultiDL-UL-SwitchPerSlot", "nr-rrc.tdd_MultiDL_UL_SwitchPerSlot",
47558         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_tdd_MultiDL_UL_SwitchPerSlot_vals), 0,
47559         NULL, HFILL }},
47560     { &hf_nr_rrc_multipleCORESET,
47561       { "multipleCORESET", "nr-rrc.multipleCORESET",
47562         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_multipleCORESET_vals), 0,
47563         NULL, HFILL }},
47564     { &hf_nr_rrc_pdcchMonitoringSingleOccasion,
47565       { "pdcchMonitoringSingleOccasion", "nr-rrc.pdcchMonitoringSingleOccasion",
47566         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pdcchMonitoringSingleOccasion_vals), 0,
47567         NULL, HFILL }},
47568     { &hf_nr_rrc_scs_60kHz_07,
47569       { "scs-60kHz", "nr-rrc.scs_60kHz",
47570         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_scs_60kHz_05_vals), 0,
47571         "T_scs_60kHz_05", HFILL }},
47572     { &hf_nr_rrc_pdsch_256QAM_FR1,
47573       { "pdsch-256QAM-FR1", "nr-rrc.pdsch_256QAM_FR1",
47574         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pdsch_256QAM_FR1_vals), 0,
47575         NULL, HFILL }},
47576     { &hf_nr_rrc_pdsch_RE_MappingFR1,
47577       { "pdsch-RE-MappingFR1", "nr-rrc.pdsch_RE_MappingFR1",
47578         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pdsch_RE_MappingFR1_vals), 0,
47579         NULL, HFILL }},
47580     { &hf_nr_rrc_calibrationGapPA,
47581       { "calibrationGapPA", "nr-rrc.calibrationGapPA",
47582         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_calibrationGapPA_vals), 0,
47583         NULL, HFILL }},
47584     { &hf_nr_rrc_pdsch_RE_MappingFR2,
47585       { "pdsch-RE-MappingFR2", "nr-rrc.pdsch_RE_MappingFR2",
47586         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pdsch_RE_MappingFR2_vals), 0,
47587         NULL, HFILL }},
47588     { &hf_nr_rrc_naics_Capability_List,
47589       { "naics-Capability-List", "nr-rrc.naics_Capability_List",
47590         FT_UINT32, BASE_DEC, NULL, 0,
47591         "SEQUENCE_SIZE_1_maxNrofNAICS_Entries_OF_NAICS_Capability_Entry", HFILL }},
47592     { &hf_nr_rrc_naics_Capability_List_item,
47593       { "NAICS-Capability-Entry", "nr-rrc.NAICS_Capability_Entry_element",
47594         FT_NONE, BASE_NONE, NULL, 0,
47595         NULL, HFILL }},
47596     { &hf_nr_rrc_numberOfNAICS_CapableCC,
47597       { "numberOfNAICS-CapableCC", "nr-rrc.numberOfNAICS_CapableCC",
47598         FT_UINT32, BASE_DEC, NULL, 0,
47599         "INTEGER_1_5", HFILL }},
47600     { &hf_nr_rrc_numberOfAggregatedPRB,
47601       { "numberOfAggregatedPRB", "nr-rrc.numberOfAggregatedPRB",
47602         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_numberOfAggregatedPRB_vals), 0,
47603         NULL, HFILL }},
47604     { &hf_nr_rrc_supportedBandListNR,
47605       { "supportedBandListNR", "nr-rrc.supportedBandListNR",
47606         FT_UINT32, BASE_DEC, NULL, 0,
47607         "SEQUENCE_SIZE_1_maxBands_OF_BandNR", HFILL }},
47608     { &hf_nr_rrc_supportedBandListNR_item,
47609       { "BandNR", "nr-rrc.BandNR_element",
47610         FT_NONE, BASE_NONE, NULL, 0,
47611         NULL, HFILL }},
47612     { &hf_nr_rrc_supportedBandCombinationList,
47613       { "supportedBandCombinationList", "nr-rrc.supportedBandCombinationList",
47614         FT_UINT32, BASE_DEC, NULL, 0,
47615         "BandCombinationList", HFILL }},
47616     { &hf_nr_rrc_appliedFreqBandListFilter,
47617       { "appliedFreqBandListFilter", "nr-rrc.appliedFreqBandListFilter",
47618         FT_UINT32, BASE_DEC, NULL, 0,
47619         "FreqBandList", HFILL }},
47620     { &hf_nr_rrc_modifiedMPR_Behaviour,
47621       { "modifiedMPR-Behaviour", "nr-rrc.modifiedMPR_Behaviour",
47622         FT_BYTES, BASE_NONE, NULL, 0,
47623         "BIT_STRING_SIZE_8", HFILL }},
47624     { &hf_nr_rrc_mimo_ParametersPerBand,
47625       { "mimo-ParametersPerBand", "nr-rrc.mimo_ParametersPerBand_element",
47626         FT_NONE, BASE_NONE, NULL, 0,
47627         NULL, HFILL }},
47628     { &hf_nr_rrc_extendedCP,
47629       { "extendedCP", "nr-rrc.extendedCP",
47630         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_extendedCP_vals), 0,
47631         NULL, HFILL }},
47632     { &hf_nr_rrc_multipleTCI,
47633       { "multipleTCI", "nr-rrc.multipleTCI",
47634         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_multipleTCI_vals), 0,
47635         NULL, HFILL }},
47636     { &hf_nr_rrc_bwp_WithoutRestriction,
47637       { "bwp-WithoutRestriction", "nr-rrc.bwp_WithoutRestriction",
47638         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_bwp_WithoutRestriction_vals), 0,
47639         NULL, HFILL }},
47640     { &hf_nr_rrc_bwp_SameNumerology,
47641       { "bwp-SameNumerology", "nr-rrc.bwp_SameNumerology",
47642         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_bwp_SameNumerology_vals), 0,
47643         NULL, HFILL }},
47644     { &hf_nr_rrc_bwp_DiffNumerology,
47645       { "bwp-DiffNumerology", "nr-rrc.bwp_DiffNumerology",
47646         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_bwp_DiffNumerology_vals), 0,
47647         NULL, HFILL }},
47648     { &hf_nr_rrc_crossCarrierScheduling_SameSCS,
47649       { "crossCarrierScheduling-SameSCS", "nr-rrc.crossCarrierScheduling_SameSCS",
47650         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_crossCarrierScheduling_SameSCS_vals), 0,
47651         NULL, HFILL }},
47652     { &hf_nr_rrc_pdsch_256QAM_FR2,
47653       { "pdsch-256QAM-FR2", "nr-rrc.pdsch_256QAM_FR2",
47654         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pdsch_256QAM_FR2_vals), 0,
47655         NULL, HFILL }},
47656     { &hf_nr_rrc_pusch_256QAM,
47657       { "pusch-256QAM", "nr-rrc.pusch_256QAM",
47658         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_pusch_256QAM_vals), 0,
47659         NULL, HFILL }},
47660     { &hf_nr_rrc_ue_PowerClass,
47661       { "ue-PowerClass", "nr-rrc.ue_PowerClass",
47662         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_ue_PowerClass_vals), 0,
47663         NULL, HFILL }},
47664     { &hf_nr_rrc_rateMatchingLTE_CRS,
47665       { "rateMatchingLTE-CRS", "nr-rrc.rateMatchingLTE_CRS",
47666         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_rateMatchingLTE_CRS_vals), 0,
47667         NULL, HFILL }},
47668     { &hf_nr_rrc_channelBWs_DL_v1530,
47669       { "channelBWs-DL-v1530", "nr-rrc.channelBWs_DL_v1530",
47670         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_channelBWs_DL_v1530_vals), 0,
47671         NULL, HFILL }},
47672     { &hf_nr_rrc_fr1,
47673       { "fr1", "nr-rrc.fr1_element",
47674         FT_NONE, BASE_NONE, NULL, 0,
47675         NULL, HFILL }},
47676     { &hf_nr_rrc_scs_15kHz_06,
47677       { "scs-15kHz", "nr-rrc.scs_15kHz",
47678         FT_BYTES, BASE_NONE, NULL, 0,
47679         "BIT_STRING_SIZE_10", HFILL }},
47680     { &hf_nr_rrc_scs_30kHz_06,
47681       { "scs-30kHz", "nr-rrc.scs_30kHz",
47682         FT_BYTES, BASE_NONE, NULL, 0,
47683         "BIT_STRING_SIZE_10", HFILL }},
47684     { &hf_nr_rrc_scs_60kHz_08,
47685       { "scs-60kHz", "nr-rrc.scs_60kHz",
47686         FT_BYTES, BASE_NONE, NULL, 0,
47687         "BIT_STRING_SIZE_10", HFILL }},
47688     { &hf_nr_rrc_fr2,
47689       { "fr2", "nr-rrc.fr2_element",
47690         FT_NONE, BASE_NONE, NULL, 0,
47691         NULL, HFILL }},
47692     { &hf_nr_rrc_scs_60kHz_09,
47693       { "scs-60kHz", "nr-rrc.scs_60kHz",
47694         FT_BYTES, BASE_NONE, NULL, 0,
47695         "BIT_STRING_SIZE_3", HFILL }},
47696     { &hf_nr_rrc_scs_120kHz_06,
47697       { "scs-120kHz", "nr-rrc.scs_120kHz",
47698         FT_BYTES, BASE_NONE, NULL, 0,
47699         "BIT_STRING_SIZE_3", HFILL }},
47700     { &hf_nr_rrc_channelBWs_UL_v1530,
47701       { "channelBWs-UL-v1530", "nr-rrc.channelBWs_UL_v1530",
47702         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_channelBWs_UL_v1530_vals), 0,
47703         NULL, HFILL }},
47704     { &hf_nr_rrc_fr1_01,
47705       { "fr1", "nr-rrc.fr1_element",
47706         FT_NONE, BASE_NONE, NULL, 0,
47707         "T_fr1_01", HFILL }},
47708     { &hf_nr_rrc_fr2_01,
47709       { "fr2", "nr-rrc.fr2_element",
47710         FT_NONE, BASE_NONE, NULL, 0,
47711         "T_fr2_01", HFILL }},
47712     { &hf_nr_rrc_maxUplinkDutyCycle,
47713       { "maxUplinkDutyCycle", "nr-rrc.maxUplinkDutyCycle",
47714         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_maxUplinkDutyCycle_vals), 0,
47715         NULL, HFILL }},
47716     { &hf_nr_rrc_am_WithShortSN,
47717       { "am-WithShortSN", "nr-rrc.am_WithShortSN",
47718         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_am_WithShortSN_vals), 0,
47719         NULL, HFILL }},
47720     { &hf_nr_rrc_um_WithShortSN,
47721       { "um-WithShortSN", "nr-rrc.um_WithShortSN",
47722         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_um_WithShortSN_vals), 0,
47723         NULL, HFILL }},
47724     { &hf_nr_rrc_um_WithLongSN,
47725       { "um-WithLongSN", "nr-rrc.um_WithLongSN",
47726         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_um_WithLongSN_vals), 0,
47727         NULL, HFILL }},
47728     { &hf_nr_rrc_fr1_02,
47729       { "fr1", "nr-rrc.fr1",
47730         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_fr1_02_vals), 0,
47731         "T_fr1_02", HFILL }},
47732     { &hf_nr_rrc_fr2_02,
47733       { "fr2", "nr-rrc.fr2",
47734         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_fr2_02_vals), 0,
47735         "T_fr2_02", HFILL }},
47736     { &hf_nr_rrc_UE_CapabilityRAT_ContainerList_item,
47737       { "UE-CapabilityRAT-Container", "nr-rrc.UE_CapabilityRAT_Container_element",
47738         FT_NONE, BASE_NONE, NULL, 0,
47739         NULL, HFILL }},
47740     { &hf_nr_rrc_rat_Type,
47741       { "rat-Type", "nr-rrc.rat_Type",
47742         FT_UINT32, BASE_DEC, VALS(nr_rrc_RAT_Type_vals), 0,
47743         NULL, HFILL }},
47744     { &hf_nr_rrc_ue_CapabilityRAT_Container,
47745       { "ue-CapabilityRAT-Container", "nr-rrc.ue_CapabilityRAT_Container",
47746         FT_BYTES, BASE_NONE, NULL, 0,
47747         "T_ue_CapabilityRAT_Container", HFILL }},
47748     { &hf_nr_rrc_UE_CapabilityRAT_RequestList_item,
47749       { "UE-CapabilityRAT-Request", "nr-rrc.UE_CapabilityRAT_Request_element",
47750         FT_NONE, BASE_NONE, NULL, 0,
47751         NULL, HFILL }},
47752     { &hf_nr_rrc_capabilityRequestFilter,
47753       { "capabilityRequestFilter", "nr-rrc.capabilityRequestFilter",
47754         FT_BYTES, BASE_NONE, NULL, 0,
47755         NULL, HFILL }},
47756     { &hf_nr_rrc_frequencyBandList_02,
47757       { "frequencyBandList", "nr-rrc.frequencyBandList",
47758         FT_UINT32, BASE_DEC, NULL, 0,
47759         "FreqBandList", HFILL }},
47760     { &hf_nr_rrc_nonCriticalExtension_35,
47761       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
47762         FT_NONE, BASE_NONE, NULL, 0,
47763         "T_nonCriticalExtension_33", HFILL }},
47764     { &hf_nr_rrc_measAndMobParametersMRDC,
47765       { "measAndMobParametersMRDC", "nr-rrc.measAndMobParametersMRDC_element",
47766         FT_NONE, BASE_NONE, NULL, 0,
47767         NULL, HFILL }},
47768     { &hf_nr_rrc_phy_ParametersMRDC_v1530,
47769       { "phy-ParametersMRDC-v1530", "nr-rrc.phy_ParametersMRDC_v1530_element",
47770         FT_NONE, BASE_NONE, NULL, 0,
47771         "Phy_ParametersMRDC", HFILL }},
47772     { &hf_nr_rrc_rf_ParametersMRDC,
47773       { "rf-ParametersMRDC", "nr-rrc.rf_ParametersMRDC_element",
47774         FT_NONE, BASE_NONE, NULL, 0,
47775         NULL, HFILL }},
47776     { &hf_nr_rrc_generalParametersMRDC,
47777       { "generalParametersMRDC", "nr-rrc.generalParametersMRDC_element",
47778         FT_NONE, BASE_NONE, NULL, 0,
47779         "GeneralParametersMRDC_XDD_Diff", HFILL }},
47780     { &hf_nr_rrc_fdd_Add_UE_MRDC_Capabilities,
47781       { "fdd-Add-UE-MRDC-Capabilities", "nr-rrc.fdd_Add_UE_MRDC_Capabilities_element",
47782         FT_NONE, BASE_NONE, NULL, 0,
47783         "UE_MRDC_CapabilityAddXDD_Mode", HFILL }},
47784     { &hf_nr_rrc_tdd_Add_UE_MRDC_Capabilities,
47785       { "tdd-Add-UE-MRDC-Capabilities", "nr-rrc.tdd_Add_UE_MRDC_Capabilities_element",
47786         FT_NONE, BASE_NONE, NULL, 0,
47787         "UE_MRDC_CapabilityAddXDD_Mode", HFILL }},
47788     { &hf_nr_rrc_fr1_Add_UE_MRDC_Capabilities,
47789       { "fr1-Add-UE-MRDC-Capabilities", "nr-rrc.fr1_Add_UE_MRDC_Capabilities_element",
47790         FT_NONE, BASE_NONE, NULL, 0,
47791         "UE_MRDC_CapabilityAddFRX_Mode", HFILL }},
47792     { &hf_nr_rrc_fr2_Add_UE_MRDC_Capabilities,
47793       { "fr2-Add-UE-MRDC-Capabilities", "nr-rrc.fr2_Add_UE_MRDC_Capabilities_element",
47794         FT_NONE, BASE_NONE, NULL, 0,
47795         "UE_MRDC_CapabilityAddFRX_Mode", HFILL }},
47796     { &hf_nr_rrc_featureSetCombinations,
47797       { "featureSetCombinations", "nr-rrc.featureSetCombinations",
47798         FT_UINT32, BASE_DEC, NULL, 0,
47799         "SEQUENCE_SIZE_1_maxFeatureSetCombinations_OF_FeatureSetCombination", HFILL }},
47800     { &hf_nr_rrc_featureSetCombinations_item,
47801       { "FeatureSetCombination", "nr-rrc.FeatureSetCombination",
47802         FT_UINT32, BASE_DEC, NULL, 0,
47803         NULL, HFILL }},
47804     { &hf_nr_rrc_pdcp_ParametersMRDC_v1530,
47805       { "pdcp-ParametersMRDC-v1530", "nr-rrc.pdcp_ParametersMRDC_v1530_element",
47806         FT_NONE, BASE_NONE, NULL, 0,
47807         "PDCP_ParametersMRDC", HFILL }},
47808     { &hf_nr_rrc_nonCriticalExtension_36,
47809       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
47810         FT_NONE, BASE_NONE, NULL, 0,
47811         "T_nonCriticalExtension_34", HFILL }},
47812     { &hf_nr_rrc_generalParametersMRDC_XDD_Diff,
47813       { "generalParametersMRDC-XDD-Diff", "nr-rrc.generalParametersMRDC_XDD_Diff_element",
47814         FT_NONE, BASE_NONE, NULL, 0,
47815         NULL, HFILL }},
47816     { &hf_nr_rrc_splitSRB_WithOneUL_Path,
47817       { "splitSRB-WithOneUL-Path", "nr-rrc.splitSRB_WithOneUL_Path",
47818         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_splitSRB_WithOneUL_Path_vals), 0,
47819         NULL, HFILL }},
47820     { &hf_nr_rrc_splitDRB_withUL_Both_MCG_SCG,
47821       { "splitDRB-withUL-Both-MCG-SCG", "nr-rrc.splitDRB_withUL_Both_MCG_SCG",
47822         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_splitDRB_withUL_Both_MCG_SCG_vals), 0,
47823         NULL, HFILL }},
47824     { &hf_nr_rrc_srb3,
47825       { "srb3", "nr-rrc.srb3",
47826         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_srb3_vals), 0,
47827         NULL, HFILL }},
47828     { &hf_nr_rrc_v2x_EUTRA_v1530,
47829       { "v2x-EUTRA-v1530", "nr-rrc.v2x_EUTRA_v1530",
47830         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_v2x_EUTRA_v1530_vals), 0,
47831         NULL, HFILL }},
47832     { &hf_nr_rrc_accessStratumRelease,
47833       { "accessStratumRelease", "nr-rrc.accessStratumRelease",
47834         FT_UINT32, BASE_DEC, VALS(nr_rrc_AccessStratumRelease_vals), 0,
47835         NULL, HFILL }},
47836     { &hf_nr_rrc_pdcp_Parameters,
47837       { "pdcp-Parameters", "nr-rrc.pdcp_Parameters_element",
47838         FT_NONE, BASE_NONE, NULL, 0,
47839         NULL, HFILL }},
47840     { &hf_nr_rrc_rlc_Parameters,
47841       { "rlc-Parameters", "nr-rrc.rlc_Parameters_element",
47842         FT_NONE, BASE_NONE, NULL, 0,
47843         NULL, HFILL }},
47844     { &hf_nr_rrc_mac_Parameters,
47845       { "mac-Parameters", "nr-rrc.mac_Parameters_element",
47846         FT_NONE, BASE_NONE, NULL, 0,
47847         NULL, HFILL }},
47848     { &hf_nr_rrc_phy_Parameters,
47849       { "phy-Parameters", "nr-rrc.phy_Parameters_element",
47850         FT_NONE, BASE_NONE, NULL, 0,
47851         NULL, HFILL }},
47852     { &hf_nr_rrc_rf_Parameters,
47853       { "rf-Parameters", "nr-rrc.rf_Parameters_element",
47854         FT_NONE, BASE_NONE, NULL, 0,
47855         NULL, HFILL }},
47856     { &hf_nr_rrc_measAndMobParameters,
47857       { "measAndMobParameters", "nr-rrc.measAndMobParameters_element",
47858         FT_NONE, BASE_NONE, NULL, 0,
47859         NULL, HFILL }},
47860     { &hf_nr_rrc_fdd_Add_UE_NR_Capabilities,
47861       { "fdd-Add-UE-NR-Capabilities", "nr-rrc.fdd_Add_UE_NR_Capabilities_element",
47862         FT_NONE, BASE_NONE, NULL, 0,
47863         "UE_NR_CapabilityAddXDD_Mode", HFILL }},
47864     { &hf_nr_rrc_tdd_Add_UE_NR_Capabilities,
47865       { "tdd-Add-UE-NR-Capabilities", "nr-rrc.tdd_Add_UE_NR_Capabilities_element",
47866         FT_NONE, BASE_NONE, NULL, 0,
47867         "UE_NR_CapabilityAddXDD_Mode", HFILL }},
47868     { &hf_nr_rrc_fr1_Add_UE_NR_Capabilities,
47869       { "fr1-Add-UE-NR-Capabilities", "nr-rrc.fr1_Add_UE_NR_Capabilities_element",
47870         FT_NONE, BASE_NONE, NULL, 0,
47871         "UE_NR_CapabilityAddFRX_Mode", HFILL }},
47872     { &hf_nr_rrc_fr2_Add_UE_NR_Capabilities,
47873       { "fr2-Add-UE-NR-Capabilities", "nr-rrc.fr2_Add_UE_NR_Capabilities_element",
47874         FT_NONE, BASE_NONE, NULL, 0,
47875         "UE_NR_CapabilityAddFRX_Mode", HFILL }},
47876     { &hf_nr_rrc_featureSets,
47877       { "featureSets", "nr-rrc.featureSets_element",
47878         FT_NONE, BASE_NONE, NULL, 0,
47879         NULL, HFILL }},
47880     { &hf_nr_rrc_nonCriticalExtension_37,
47881       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
47882         FT_NONE, BASE_NONE, NULL, 0,
47883         "UE_NR_Capability_1530", HFILL }},
47884     { &hf_nr_rrc_fdd_Add_UE_NR_Capabilities_1530,
47885       { "fdd-Add-UE-NR-Capabilities-1530", "nr-rrc.fdd_Add_UE_NR_Capabilities_1530_element",
47886         FT_NONE, BASE_NONE, NULL, 0,
47887         "UE_NR_CapabilityAddXDD_Mode_1530", HFILL }},
47888     { &hf_nr_rrc_tdd_Add_UE_NR_Capabilities_1530,
47889       { "tdd-Add-UE-NR-Capabilities-1530", "nr-rrc.tdd_Add_UE_NR_Capabilities_1530_element",
47890         FT_NONE, BASE_NONE, NULL, 0,
47891         "UE_NR_CapabilityAddXDD_Mode_1530", HFILL }},
47892     { &hf_nr_rrc_voiceOverMCG_Bearer,
47893       { "voiceOverMCG-Bearer", "nr-rrc.voiceOverMCG_Bearer",
47894         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_voiceOverMCG_Bearer_vals), 0,
47895         NULL, HFILL }},
47896     { &hf_nr_rrc_interRAT_Parameters,
47897       { "interRAT-Parameters", "nr-rrc.interRAT_Parameters_element",
47898         FT_NONE, BASE_NONE, NULL, 0,
47899         NULL, HFILL }},
47900     { &hf_nr_rrc_inactiveState,
47901       { "inactiveState", "nr-rrc.inactiveState",
47902         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_inactiveState_vals), 0,
47903         NULL, HFILL }},
47904     { &hf_nr_rrc_delayBudgetReporting,
47905       { "delayBudgetReporting", "nr-rrc.delayBudgetReporting",
47906         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_delayBudgetReporting_vals), 0,
47907         NULL, HFILL }},
47908     { &hf_nr_rrc_nonCriticalExtension_38,
47909       { "nonCriticalExtension", "nr-rrc.nonCriticalExtension_element",
47910         FT_NONE, BASE_NONE, NULL, 0,
47911         "T_nonCriticalExtension_35", HFILL }},
47912     { &hf_nr_rrc_EUTRA_MBSFN_SubframeConfigList_item,
47913       { "EUTRA-MBSFN-SubframeConfig", "nr-rrc.EUTRA_MBSFN_SubframeConfig_element",
47914         FT_NONE, BASE_NONE, NULL, 0,
47915         NULL, HFILL }},
47916     { &hf_nr_rrc_radioframeAllocationPeriod,
47917       { "radioframeAllocationPeriod", "nr-rrc.radioframeAllocationPeriod",
47918         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_radioframeAllocationPeriod_vals), 0,
47919         NULL, HFILL }},
47920     { &hf_nr_rrc_radioframeAllocationOffset,
47921       { "radioframeAllocationOffset", "nr-rrc.radioframeAllocationOffset",
47922         FT_UINT32, BASE_DEC, NULL, 0,
47923         "INTEGER_0_7", HFILL }},
47924     { &hf_nr_rrc_subframeAllocation1,
47925       { "subframeAllocation1", "nr-rrc.subframeAllocation1",
47926         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_subframeAllocation1_vals), 0,
47927         NULL, HFILL }},
47928     { &hf_nr_rrc_oneFrame,
47929       { "oneFrame", "nr-rrc.oneFrame",
47930         FT_BYTES, BASE_NONE, NULL, 0,
47931         "BIT_STRING_SIZE_6", HFILL }},
47932     { &hf_nr_rrc_fourFrames,
47933       { "fourFrames", "nr-rrc.fourFrames",
47934         FT_BYTES, BASE_NONE, NULL, 0,
47935         "BIT_STRING_SIZE_24", HFILL }},
47936     { &hf_nr_rrc_subframeAllocation2,
47937       { "subframeAllocation2", "nr-rrc.subframeAllocation2",
47938         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_subframeAllocation2_vals), 0,
47939         NULL, HFILL }},
47940     { &hf_nr_rrc_oneFrame_01,
47941       { "oneFrame", "nr-rrc.oneFrame",
47942         FT_BYTES, BASE_NONE, NULL, 0,
47943         "BIT_STRING_SIZE_2", HFILL }},
47944     { &hf_nr_rrc_fourFrames_01,
47945       { "fourFrames", "nr-rrc.fourFrames",
47946         FT_BYTES, BASE_NONE, NULL, 0,
47947         "BIT_STRING_SIZE_8", HFILL }},
47948     { &hf_nr_rrc_EUTRA_MultiBandInfoList_item,
47949       { "EUTRA-MultiBandInfo", "nr-rrc.EUTRA_MultiBandInfo_element",
47950         FT_NONE, BASE_NONE, NULL, 0,
47951         NULL, HFILL }},
47952     { &hf_nr_rrc_eutra_FreqBandIndicator,
47953       { "eutra-FreqBandIndicator", "nr-rrc.eutra_FreqBandIndicator",
47954         FT_UINT32, BASE_DEC, NULL, 0,
47955         "FreqBandIndicatorEUTRA", HFILL }},
47956     { &hf_nr_rrc_eutra_NS_PmaxList,
47957       { "eutra-NS-PmaxList", "nr-rrc.eutra_NS_PmaxList",
47958         FT_UINT32, BASE_DEC, NULL, 0,
47959         NULL, HFILL }},
47960     { &hf_nr_rrc_EUTRA_NS_PmaxList_item,
47961       { "EUTRA-NS-PmaxValue", "nr-rrc.EUTRA_NS_PmaxValue_element",
47962         FT_NONE, BASE_NONE, NULL, 0,
47963         NULL, HFILL }},
47964     { &hf_nr_rrc_additionalPmax,
47965       { "additionalPmax", "nr-rrc.additionalPmax",
47966         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_dbm, 0,
47967         "INTEGER_M30_33", HFILL }},
47968     { &hf_nr_rrc_additionalSpectrumEmission_01,
47969       { "additionalSpectrumEmission", "nr-rrc.additionalSpectrumEmission",
47970         FT_UINT32, BASE_DEC, NULL, 0,
47971         "INTEGER_1_288", HFILL }},
47972     { &hf_nr_rrc_start_01,
47973       { "start", "nr-rrc.start",
47974         FT_UINT32, BASE_DEC, NULL, 0,
47975         "EUTRA_PhysCellId", HFILL }},
47976     { &hf_nr_rrc_range_01,
47977       { "range", "nr-rrc.range",
47978         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_range_01_vals), 0,
47979         "T_range_01", HFILL }},
47980     { &hf_nr_rrc_MultiFrequencyBandListNR_SIB_item,
47981       { "NR-MultiBandInfo", "nr-rrc.NR_MultiBandInfo_element",
47982         FT_NONE, BASE_NONE, NULL, 0,
47983         NULL, HFILL }},
47984     { &hf_nr_rrc_freqBandIndicatorNR,
47985       { "freqBandIndicatorNR", "nr-rrc.freqBandIndicatorNR",
47986         FT_UINT32, BASE_DEC, NULL, 0,
47987         NULL, HFILL }},
47988     { &hf_nr_rrc_nr_NS_PmaxList,
47989       { "nr-NS-PmaxList", "nr-rrc.nr_NS_PmaxList",
47990         FT_UINT32, BASE_DEC, NULL, 0,
47991         NULL, HFILL }},
47992     { &hf_nr_rrc_NR_NS_PmaxList_item,
47993       { "NR-NS-PmaxValue", "nr-rrc.NR_NS_PmaxValue_element",
47994         FT_NONE, BASE_NONE, NULL, 0,
47995         NULL, HFILL }},
47996     { &hf_nr_rrc_additionalPmax_01,
47997       { "additionalPmax", "nr-rrc.additionalPmax",
47998         FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_dbm, 0,
47999         "P_Max", HFILL }},
48000     { &hf_nr_rrc_delayBudgetReportingConfig,
48001       { "delayBudgetReportingConfig", "nr-rrc.delayBudgetReportingConfig",
48002         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_delayBudgetReportingConfig_vals), 0,
48003         NULL, HFILL }},
48004     { &hf_nr_rrc_setup_49,
48005       { "setup", "nr-rrc.setup_element",
48006         FT_NONE, BASE_NONE, NULL, 0,
48007         NULL, HFILL }},
48008     { &hf_nr_rrc_delayBudgetReportingProhibitTimer,
48009       { "delayBudgetReportingProhibitTimer", "nr-rrc.delayBudgetReportingProhibitTimer",
48010         FT_UINT32, BASE_DEC, VALS(nr_rrc_T_delayBudgetReportingProhibitTimer_vals), 0,
48011         NULL, HFILL }},
48012
48013 /*--- End of included file: packet-nr-rrc-hfarr.c ---*/
48014 #line 364 "./asn1/nr-rrc/packet-nr-rrc-template.c"
48015
48016     { &hf_nr_rrc_serialNumber_gs,
48017       { "Geographical Scope", "nr-rrc.serialNumber.gs",
48018         FT_UINT16, BASE_DEC, VALS(nr_rrc_serialNumber_gs_vals), 0xc000,
48019         NULL, HFILL }},
48020     { &hf_nr_rrc_serialNumber_msg_code,
48021       { "Message Code", "nr-rrc.serialNumber.msg_code",
48022         FT_UINT16, BASE_DEC, NULL, 0x3ff0,
48023         NULL, HFILL }},
48024     { &hf_nr_rrc_serialNumber_upd_nb,
48025       { "Update Number", "nr-rrc.serialNumber.upd_nb",
48026         FT_UINT16, BASE_DEC, NULL, 0x000f,
48027         NULL, HFILL }},
48028     { &hf_nr_rrc_warningType_value,
48029       { "Warning Type Value", "nr-rrc.warningType.value",
48030         FT_UINT16, BASE_DEC, VALS(nr_rrc_warningType_vals), 0xfe00,
48031         NULL, HFILL }},
48032     { &hf_nr_rrc_warningType_emergency_user_alert,
48033       { "Emergency User Alert", "nr-rrc.warningType.emergency_user_alert",
48034         FT_BOOLEAN, 16, TFS(&tfs_yes_no), 0x0100,
48035         NULL, HFILL }},
48036     { &hf_nr_rrc_warningType_popup,
48037       { "Popup", "nr-rrc.warningType.popup",
48038         FT_BOOLEAN, 16, TFS(&tfs_yes_no), 0x0080,
48039         NULL, HFILL }},
48040     { &hf_nr_rrc_warningMessageSegment_nb_pages,
48041       { "Number of Pages", "nr-rrc.warningMessageSegment.nb_pages",
48042         FT_UINT8, BASE_DEC, NULL, 0,
48043         NULL, HFILL }},
48044     { &hf_nr_rrc_warningMessageSegment_decoded_page,
48045       { "Decoded Page", "nr-rrc.warningMessageSegment.decoded_page",
48046         FT_STRING, STR_UNICODE, NULL, 0,
48047         NULL, HFILL }},
48048     { &hf_nr_rrc_sib7_fragments,
48049       { "Fragments", "nr-rrc.warningMessageSegment.fragments",
48050         FT_NONE, BASE_NONE, NULL, 0,
48051         NULL, HFILL }},
48052     { &hf_nr_rrc_sib7_fragment,
48053       { "Fragment", "nr-rrc.warningMessageSegment.fragment",
48054          FT_FRAMENUM, BASE_NONE, NULL, 0,
48055         NULL, HFILL }},
48056     { &hf_nr_rrc_sib7_fragment_overlap,
48057       { "Fragment Overlap", "nr-rrc.warningMessageSegment.fragment_overlap",
48058          FT_BOOLEAN, BASE_NONE, NULL, 0,
48059         NULL, HFILL }},
48060     { &hf_nr_rrc_sib7_fragment_overlap_conflict,
48061       { "Fragment Overlap Conflict", "nr-rrc.warningMessageSegment.fragment_overlap_conflict",
48062          FT_BOOLEAN, BASE_NONE, NULL, 0,
48063         NULL, HFILL }},
48064     { &hf_nr_rrc_sib7_fragment_multiple_tails,
48065       { "Fragment Multiple Tails", "nr-rrc.warningMessageSegment.fragment_multiple_tails",
48066          FT_BOOLEAN, BASE_NONE, NULL, 0,
48067         NULL, HFILL }},
48068     { &hf_nr_rrc_sib7_fragment_too_long_fragment,
48069       { "Too Long Fragment", "nr-rrc.warningMessageSegment.fragment_too_long_fragment",
48070          FT_BOOLEAN, BASE_NONE, NULL, 0,
48071         NULL, HFILL }},
48072     { &hf_nr_rrc_sib7_fragment_error,
48073       { "Fragment Error", "nr-rrc.warningMessageSegment.fragment_error",
48074          FT_FRAMENUM, BASE_NONE, NULL, 0,
48075         NULL, HFILL }},
48076     { &hf_nr_rrc_sib7_fragment_count,
48077       { "Fragment Count", "nr-rrc.warningMessageSegment.fragment_count",
48078          FT_UINT32, BASE_DEC, NULL, 0,
48079         NULL, HFILL }},
48080     { &hf_nr_rrc_sib7_reassembled_in,
48081       { "Reassembled In", "nr-rrc.warningMessageSegment.reassembled_in",
48082          FT_FRAMENUM, BASE_NONE, NULL, 0,
48083         NULL, HFILL }},
48084     { &hf_nr_rrc_sib7_reassembled_length,
48085       { "Reassembled Length", "nr-rrc.warningMessageSegment.reassembled_length",
48086          FT_UINT32, BASE_DEC, NULL, 0,
48087         NULL, HFILL }},
48088     { &hf_nr_rrc_sib7_reassembled_data,
48089       { "Reassembled Data", "nr-rrc.warningMessageSegment.reassembled_data",
48090          FT_BYTES, BASE_NONE, NULL, 0,
48091         NULL, HFILL }},
48092     { &hf_nr_rrc_sib8_fragments,
48093       { "Fragments", "nr-rrc.warningMessageSegment.fragments",
48094         FT_NONE, BASE_NONE, NULL, 0,
48095         NULL, HFILL }},
48096     { &hf_nr_rrc_sib8_fragment,
48097       { "Fragment", "nr-rrc.warningMessageSegment.fragment",
48098          FT_FRAMENUM, BASE_NONE, NULL, 0,
48099         NULL, HFILL }},
48100     { &hf_nr_rrc_sib8_fragment_overlap,
48101       { "Fragment Overlap", "nr-rrc.warningMessageSegment.fragment_overlap",
48102          FT_BOOLEAN, BASE_NONE, NULL, 0,
48103         NULL, HFILL }},
48104     { &hf_nr_rrc_sib8_fragment_overlap_conflict,
48105       { "Fragment Overlap Conflict", "nr-rrc.warningMessageSegment.fragment_overlap_conflict",
48106          FT_BOOLEAN, BASE_NONE, NULL, 0,
48107         NULL, HFILL }},
48108     { &hf_nr_rrc_sib8_fragment_multiple_tails,
48109       { "Fragment Multiple Tails", "nr-rrc.warningMessageSegment.fragment_multiple_tails",
48110          FT_BOOLEAN, BASE_NONE, NULL, 0,
48111         NULL, HFILL }},
48112     { &hf_nr_rrc_sib8_fragment_too_long_fragment,
48113       { "Too Long Fragment", "nr-rrc.warningMessageSegment.fragment_too_long_fragment",
48114          FT_BOOLEAN, BASE_NONE, NULL, 0,
48115         NULL, HFILL }},
48116     { &hf_nr_rrc_sib8_fragment_error,
48117       { "Fragment Error", "nr-rrc.warningMessageSegment.fragment_error",
48118          FT_FRAMENUM, BASE_NONE, NULL, 0,
48119         NULL, HFILL }},
48120     { &hf_nr_rrc_sib8_fragment_count,
48121       { "Fragment Count", "nr-rrc.warningMessageSegment.fragment_count",
48122          FT_UINT32, BASE_DEC, NULL, 0,
48123         NULL, HFILL }},
48124     { &hf_nr_rrc_sib8_reassembled_in,
48125       { "Reassembled In", "nr-rrc.warningMessageSegment.reassembled_in",
48126          FT_FRAMENUM, BASE_NONE, NULL, 0,
48127         NULL, HFILL }},
48128     { &hf_nr_rrc_sib8_reassembled_length,
48129       { "Reassembled Length", "nr-rrc.warningMessageSegment.reassembled_length",
48130          FT_UINT32, BASE_DEC, NULL, 0,
48131         NULL, HFILL }},
48132     { &hf_nr_rrc_sib8_reassembled_data,
48133       { "Reassembled Data", "nr-rrc.warningMessageSegment.reassembled_data",
48134          FT_BYTES, BASE_NONE, NULL, 0,
48135         NULL, HFILL }},
48136     { &hf_nr_rrc_utc_time,
48137       { "UTC   time", "nr-rrc.utc_time",
48138         FT_ABSOLUTE_TIME, ABSOLUTE_TIME_UTC, NULL, 0x0,
48139         NULL, HFILL }},
48140     { &hf_nr_rrc_local_time,
48141       { "Local time", "nr-rrc.local_time",
48142         FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0x0,
48143         NULL, HFILL }},
48144   };
48145
48146   static gint *ett[] = {
48147     &ett_nr_rrc,
48148
48149 /*--- Included file: packet-nr-rrc-ettarr.c ---*/
48150 #line 1 "./asn1/nr-rrc/packet-nr-rrc-ettarr.c"
48151     &ett_nr_rrc_HandoverCommand,
48152     &ett_nr_rrc_T_criticalExtensions,
48153     &ett_nr_rrc_T_c1,
48154     &ett_nr_rrc_T_criticalExtensionsFuture,
48155     &ett_nr_rrc_HandoverCommand_IEs,
48156     &ett_nr_rrc_T_nonCriticalExtension,
48157     &ett_nr_rrc_HandoverPreparationInformation,
48158     &ett_nr_rrc_T_criticalExtensions_01,
48159     &ett_nr_rrc_T_c1_01,
48160     &ett_nr_rrc_T_criticalExtensionsFuture_01,
48161     &ett_nr_rrc_HandoverPreparationInformation_IEs,
48162     &ett_nr_rrc_T_nonCriticalExtension_01,
48163     &ett_nr_rrc_AS_Config,
48164     &ett_nr_rrc_AS_Context,
48165     &ett_nr_rrc_ReestablishmentInfo,
48166     &ett_nr_rrc_ReestabNCellInfoList,
48167     &ett_nr_rrc_ReestabNCellInfo,
48168     &ett_nr_rrc_RRM_Config,
48169     &ett_nr_rrc_CG_Config,
48170     &ett_nr_rrc_T_criticalExtensions_02,
48171     &ett_nr_rrc_T_c1_02,
48172     &ett_nr_rrc_T_criticalExtensionsFuture_02,
48173     &ett_nr_rrc_CG_Config_IEs,
48174     &ett_nr_rrc_T_nonCriticalExtension_02,
48175     &ett_nr_rrc_MeasConfigSN,
48176     &ett_nr_rrc_SEQUENCE_SIZE_1_maxMeasFreqsSN_OF_NR_FreqInfo,
48177     &ett_nr_rrc_NR_FreqInfo,
48178     &ett_nr_rrc_ConfigRestrictModReqSCG,
48179     &ett_nr_rrc_BandCombinationInfoSN,
48180     &ett_nr_rrc_FR_InfoList,
48181     &ett_nr_rrc_FR_Info,
48182     &ett_nr_rrc_CandidateServingFreqListNR,
48183     &ett_nr_rrc_CG_ConfigInfo,
48184     &ett_nr_rrc_T_criticalExtensions_03,
48185     &ett_nr_rrc_T_c1_03,
48186     &ett_nr_rrc_T_criticalExtensionsFuture_03,
48187     &ett_nr_rrc_CG_ConfigInfo_IEs,
48188     &ett_nr_rrc_T_scgFailureInfo,
48189     &ett_nr_rrc_T_nonCriticalExtension_03,
48190     &ett_nr_rrc_ConfigRestrictInfoSCG,
48191     &ett_nr_rrc_T_powerCoordination_FR1,
48192     &ett_nr_rrc_T_servCellIndexRangeSCG,
48193     &ett_nr_rrc_BandCombinationInfoList,
48194     &ett_nr_rrc_BandCombinationInfo,
48195     &ett_nr_rrc_SEQUENCE_SIZE_1_maxFeatureSetsPerBand_OF_FeatureSetEntryIndex,
48196     &ett_nr_rrc_DRX_Info,
48197     &ett_nr_rrc_T_drx_LongCycleStartOffset,
48198     &ett_nr_rrc_T_shortDRX,
48199     &ett_nr_rrc_MeasConfigMN,
48200     &ett_nr_rrc_SEQUENCE_SIZE_1_maxMeasFreqsMN_OF_NR_FreqInfo,
48201     &ett_nr_rrc_T_measGapConfig,
48202     &ett_nr_rrc_MRDC_AssistanceInfo,
48203     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCombIDC_OF_AffectedCarrierFreqCombInfoMRDC,
48204     &ett_nr_rrc_AffectedCarrierFreqCombInfoMRDC,
48205     &ett_nr_rrc_T_affectedCarrierFreqCombMRDC,
48206     &ett_nr_rrc_VictimSystemType,
48207     &ett_nr_rrc_AffectedCarrierFreqCombEUTRA,
48208     &ett_nr_rrc_AffectedCarrierFreqCombNR,
48209     &ett_nr_rrc_MeasurementTimingConfiguration,
48210     &ett_nr_rrc_T_criticalExtensions_04,
48211     &ett_nr_rrc_T_c1_04,
48212     &ett_nr_rrc_T_criticalExtensionsFuture_04,
48213     &ett_nr_rrc_MeasurementTimingConfiguration_IEs,
48214     &ett_nr_rrc_T_nonCriticalExtension_04,
48215     &ett_nr_rrc_MeasTimingList,
48216     &ett_nr_rrc_MeasTiming,
48217     &ett_nr_rrc_T_frequencyAndTiming,
48218     &ett_nr_rrc_UERadioPagingInformation,
48219     &ett_nr_rrc_T_criticalExtensions_05,
48220     &ett_nr_rrc_T_c1_05,
48221     &ett_nr_rrc_T_criticalExtensionsFuture_05,
48222     &ett_nr_rrc_UERadioPagingInformation_IEs,
48223     &ett_nr_rrc_SEQUENCE_SIZE_1_maxBands_OF_FreqBandIndicatorNR,
48224     &ett_nr_rrc_T_nonCriticalExtension_05,
48225     &ett_nr_rrc_UERadioAccessCapabilityInformation,
48226     &ett_nr_rrc_T_criticalExtensions_06,
48227     &ett_nr_rrc_T_c1_06,
48228     &ett_nr_rrc_T_criticalExtensionsFuture_06,
48229     &ett_nr_rrc_UERadioAccessCapabilityInformation_IEs,
48230     &ett_nr_rrc_T_nonCriticalExtension_06,
48231     &ett_nr_rrc_BCCH_BCH_Message,
48232     &ett_nr_rrc_BCCH_BCH_MessageType,
48233     &ett_nr_rrc_T_messageClassExtension,
48234     &ett_nr_rrc_BCCH_DL_SCH_Message,
48235     &ett_nr_rrc_BCCH_DL_SCH_MessageType,
48236     &ett_nr_rrc_T_c1_07,
48237     &ett_nr_rrc_T_messageClassExtension_01,
48238     &ett_nr_rrc_DL_CCCH_Message,
48239     &ett_nr_rrc_DL_CCCH_MessageType,
48240     &ett_nr_rrc_T_c1_08,
48241     &ett_nr_rrc_T_messageClassExtension_02,
48242     &ett_nr_rrc_DL_DCCH_Message,
48243     &ett_nr_rrc_DL_DCCH_MessageType,
48244     &ett_nr_rrc_T_c1_09,
48245     &ett_nr_rrc_T_messageClassExtension_03,
48246     &ett_nr_rrc_PCCH_Message,
48247     &ett_nr_rrc_PCCH_MessageType,
48248     &ett_nr_rrc_T_c1_10,
48249     &ett_nr_rrc_T_messageClassExtension_04,
48250     &ett_nr_rrc_UL_CCCH_Message,
48251     &ett_nr_rrc_UL_CCCH_MessageType,
48252     &ett_nr_rrc_T_c1_11,
48253     &ett_nr_rrc_T_messageClassExtension_05,
48254     &ett_nr_rrc_UL_CCCH1_Message,
48255     &ett_nr_rrc_UL_CCCH1_MessageType,
48256     &ett_nr_rrc_T_c1_12,
48257     &ett_nr_rrc_T_messageClassExtension_06,
48258     &ett_nr_rrc_UL_DCCH_Message,
48259     &ett_nr_rrc_UL_DCCH_MessageType,
48260     &ett_nr_rrc_T_c1_13,
48261     &ett_nr_rrc_T_messageClassExtension_07,
48262     &ett_nr_rrc_CounterCheck,
48263     &ett_nr_rrc_T_criticalExtensions_07,
48264     &ett_nr_rrc_T_criticalExtensionsFuture_07,
48265     &ett_nr_rrc_CounterCheck_IEs,
48266     &ett_nr_rrc_T_nonCriticalExtension_07,
48267     &ett_nr_rrc_DRB_CountMSB_InfoList,
48268     &ett_nr_rrc_DRB_CountMSB_Info,
48269     &ett_nr_rrc_CounterCheckResponse,
48270     &ett_nr_rrc_T_criticalExtensions_08,
48271     &ett_nr_rrc_T_criticalExtensionsFuture_08,
48272     &ett_nr_rrc_CounterCheckResponse_IEs,
48273     &ett_nr_rrc_T_nonCriticalExtension_08,
48274     &ett_nr_rrc_DRB_CountInfoList,
48275     &ett_nr_rrc_DRB_CountInfo,
48276     &ett_nr_rrc_DLInformationTransfer,
48277     &ett_nr_rrc_T_criticalExtensions_09,
48278     &ett_nr_rrc_T_criticalExtensionsFuture_09,
48279     &ett_nr_rrc_DLInformationTransfer_IEs,
48280     &ett_nr_rrc_T_nonCriticalExtension_09,
48281     &ett_nr_rrc_LocationMeasurementIndication,
48282     &ett_nr_rrc_T_criticalExtensions_10,
48283     &ett_nr_rrc_T_criticalExtensionsFuture_10,
48284     &ett_nr_rrc_LocationMeasurementIndication_IEs,
48285     &ett_nr_rrc_T_measurementIndication,
48286     &ett_nr_rrc_T_nonCriticalExtension_10,
48287     &ett_nr_rrc_MIB,
48288     &ett_nr_rrc_MeasurementReport,
48289     &ett_nr_rrc_T_criticalExtensions_11,
48290     &ett_nr_rrc_T_criticalExtensionsFuture_11,
48291     &ett_nr_rrc_MeasurementReport_IEs,
48292     &ett_nr_rrc_T_nonCriticalExtension_11,
48293     &ett_nr_rrc_MobilityFromNRCommand,
48294     &ett_nr_rrc_T_criticalExtensions_12,
48295     &ett_nr_rrc_T_criticalExtensionsFuture_12,
48296     &ett_nr_rrc_MobilityFromNRCommand_IEs,
48297     &ett_nr_rrc_T_nonCriticalExtension_12,
48298     &ett_nr_rrc_Paging,
48299     &ett_nr_rrc_T_nonCriticalExtension_13,
48300     &ett_nr_rrc_PagingRecordList,
48301     &ett_nr_rrc_PagingRecord,
48302     &ett_nr_rrc_PagingUE_Identity,
48303     &ett_nr_rrc_RRCReestablishment,
48304     &ett_nr_rrc_T_criticalExtensions_13,
48305     &ett_nr_rrc_T_criticalExtensionsFuture_13,
48306     &ett_nr_rrc_RRCReestablishment_IEs,
48307     &ett_nr_rrc_T_nonCriticalExtension_14,
48308     &ett_nr_rrc_RRCReestablishmentComplete,
48309     &ett_nr_rrc_T_criticalExtensions_14,
48310     &ett_nr_rrc_T_criticalExtensionsFuture_14,
48311     &ett_nr_rrc_RRCReestablishmentComplete_IEs,
48312     &ett_nr_rrc_T_nonCriticalExtension_15,
48313     &ett_nr_rrc_RRCReestablishmentRequest,
48314     &ett_nr_rrc_RRCReestablishmentRequest_IEs,
48315     &ett_nr_rrc_ReestabUE_Identity,
48316     &ett_nr_rrc_RRCReconfiguration,
48317     &ett_nr_rrc_T_criticalExtensions_15,
48318     &ett_nr_rrc_T_criticalExtensionsFuture_15,
48319     &ett_nr_rrc_RRCReconfiguration_IEs,
48320     &ett_nr_rrc_RRCReconfiguration_v1530_IEs,
48321     &ett_nr_rrc_SEQUENCE_SIZE_1_maxDRB_OF_DedicatedNAS_Message,
48322     &ett_nr_rrc_T_nonCriticalExtension_16,
48323     &ett_nr_rrc_MasterKeyUpdate,
48324     &ett_nr_rrc_RRCReconfigurationComplete,
48325     &ett_nr_rrc_T_criticalExtensions_16,
48326     &ett_nr_rrc_T_criticalExtensionsFuture_16,
48327     &ett_nr_rrc_RRCReconfigurationComplete_IEs,
48328     &ett_nr_rrc_RRCReconfigurationComplete_v1530_IEs,
48329     &ett_nr_rrc_T_nonCriticalExtension_17,
48330     &ett_nr_rrc_RRCReject,
48331     &ett_nr_rrc_T_criticalExtensions_17,
48332     &ett_nr_rrc_T_criticalExtensionsFuture_17,
48333     &ett_nr_rrc_RRCReject_IEs,
48334     &ett_nr_rrc_T_nonCriticalExtension_18,
48335     &ett_nr_rrc_RRCRelease,
48336     &ett_nr_rrc_T_criticalExtensions_18,
48337     &ett_nr_rrc_T_criticalExtensionsFuture_18,
48338     &ett_nr_rrc_RRCRelease_IEs,
48339     &ett_nr_rrc_T_deprioritisationReq,
48340     &ett_nr_rrc_T_nonCriticalExtension_19,
48341     &ett_nr_rrc_RedirectedCarrierInfo,
48342     &ett_nr_rrc_RedirectedCarrierInfo_EUTRA,
48343     &ett_nr_rrc_CarrierInfoNR,
48344     &ett_nr_rrc_SuspendConfig,
48345     &ett_nr_rrc_CellReselectionPriorities,
48346     &ett_nr_rrc_FreqPriorityListEUTRA,
48347     &ett_nr_rrc_FreqPriorityListNR,
48348     &ett_nr_rrc_FreqPriorityEUTRA,
48349     &ett_nr_rrc_FreqPriorityNR,
48350     &ett_nr_rrc_RAN_NotificationAreaInfo,
48351     &ett_nr_rrc_PLMN_RAN_AreaCellList,
48352     &ett_nr_rrc_PLMN_RAN_AreaCell,
48353     &ett_nr_rrc_SEQUENCE_SIZE_1_32_OF_CellIdentity,
48354     &ett_nr_rrc_PLMN_RAN_AreaConfigList,
48355     &ett_nr_rrc_PLMN_RAN_AreaConfig,
48356     &ett_nr_rrc_SEQUENCE_SIZE_1_16_OF_RAN_AreaConfig,
48357     &ett_nr_rrc_RAN_AreaConfig,
48358     &ett_nr_rrc_SEQUENCE_SIZE_1_32_OF_RAN_AreaCode,
48359     &ett_nr_rrc_RRCResume,
48360     &ett_nr_rrc_T_criticalExtensions_19,
48361     &ett_nr_rrc_T_criticalExtensionsFuture_19,
48362     &ett_nr_rrc_RRCResume_IEs,
48363     &ett_nr_rrc_T_nonCriticalExtension_20,
48364     &ett_nr_rrc_RRCResumeComplete,
48365     &ett_nr_rrc_T_criticalExtensions_20,
48366     &ett_nr_rrc_T_criticalExtensionsFuture_20,
48367     &ett_nr_rrc_RRCResumeComplete_IEs,
48368     &ett_nr_rrc_T_nonCriticalExtension_21,
48369     &ett_nr_rrc_RRCResumeRequest,
48370     &ett_nr_rrc_RRCResumeRequest_IEs,
48371     &ett_nr_rrc_RRCResumeRequest1,
48372     &ett_nr_rrc_RRCResumeRequest1_IEs,
48373     &ett_nr_rrc_RRCSetup,
48374     &ett_nr_rrc_T_criticalExtensions_21,
48375     &ett_nr_rrc_T_criticalExtensionsFuture_21,
48376     &ett_nr_rrc_RRCSetup_IEs,
48377     &ett_nr_rrc_T_nonCriticalExtension_22,
48378     &ett_nr_rrc_RRCSetupComplete,
48379     &ett_nr_rrc_T_criticalExtensions_22,
48380     &ett_nr_rrc_T_criticalExtensionsFuture_22,
48381     &ett_nr_rrc_RRCSetupComplete_IEs,
48382     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofS_NSSAI_OF_S_NSSAI,
48383     &ett_nr_rrc_T_ng_5G_S_TMSI_Value,
48384     &ett_nr_rrc_T_nonCriticalExtension_23,
48385     &ett_nr_rrc_RegisteredAMF,
48386     &ett_nr_rrc_RRCSetupRequest,
48387     &ett_nr_rrc_RRCSetupRequest_IEs,
48388     &ett_nr_rrc_InitialUE_Identity,
48389     &ett_nr_rrc_RRCSystemInfoRequest,
48390     &ett_nr_rrc_T_criticalExtensions_23,
48391     &ett_nr_rrc_T_criticalExtensionsFuture_23,
48392     &ett_nr_rrc_RRCSystemInfoRequest_r15_IEs,
48393     &ett_nr_rrc_SecurityModeCommand,
48394     &ett_nr_rrc_T_criticalExtensions_24,
48395     &ett_nr_rrc_T_criticalExtensionsFuture_24,
48396     &ett_nr_rrc_SecurityModeCommand_IEs,
48397     &ett_nr_rrc_T_nonCriticalExtension_24,
48398     &ett_nr_rrc_SecurityConfigSMC,
48399     &ett_nr_rrc_SecurityModeComplete,
48400     &ett_nr_rrc_T_criticalExtensions_25,
48401     &ett_nr_rrc_T_criticalExtensionsFuture_25,
48402     &ett_nr_rrc_SecurityModeComplete_IEs,
48403     &ett_nr_rrc_T_nonCriticalExtension_25,
48404     &ett_nr_rrc_SecurityModeFailure,
48405     &ett_nr_rrc_T_criticalExtensions_26,
48406     &ett_nr_rrc_T_criticalExtensionsFuture_26,
48407     &ett_nr_rrc_SecurityModeFailure_IEs,
48408     &ett_nr_rrc_T_nonCriticalExtension_26,
48409     &ett_nr_rrc_SIB1,
48410     &ett_nr_rrc_T_cellSelectionInfo,
48411     &ett_nr_rrc_T_uac_BarringInfo,
48412     &ett_nr_rrc_T_uac_AccessCategory1_SelectionAssistanceInfo,
48413     &ett_nr_rrc_SEQUENCE_SIZE_2_maxPLMN_OF_UAC_AccessCategory1_SelectionAssistanceInfo,
48414     &ett_nr_rrc_T_nonCriticalExtension_27,
48415     &ett_nr_rrc_SystemInformation,
48416     &ett_nr_rrc_T_criticalExtensions_27,
48417     &ett_nr_rrc_T_criticalExtensionsFuture_27,
48418     &ett_nr_rrc_SystemInformation_IEs,
48419     &ett_nr_rrc_T_sib_TypeAndInfo,
48420     &ett_nr_rrc_T_sib_TypeAndInfo_item,
48421     &ett_nr_rrc_T_nonCriticalExtension_28,
48422     &ett_nr_rrc_UEAssistanceInformation,
48423     &ett_nr_rrc_T_criticalExtensions_28,
48424     &ett_nr_rrc_T_criticalExtensionsFuture_28,
48425     &ett_nr_rrc_UEAssistanceInformation_IEs,
48426     &ett_nr_rrc_T_nonCriticalExtension_29,
48427     &ett_nr_rrc_DelayBudgetReport,
48428     &ett_nr_rrc_UECapabilityEnquiry,
48429     &ett_nr_rrc_T_criticalExtensions_29,
48430     &ett_nr_rrc_T_criticalExtensionsFuture_29,
48431     &ett_nr_rrc_UECapabilityEnquiry_IEs,
48432     &ett_nr_rrc_T_nonCriticalExtension_30,
48433     &ett_nr_rrc_UECapabilityInformation,
48434     &ett_nr_rrc_T_criticalExtensions_30,
48435     &ett_nr_rrc_T_criticalExtensionsFuture_30,
48436     &ett_nr_rrc_UECapabilityInformation_IEs,
48437     &ett_nr_rrc_T_nonCriticalExtension_31,
48438     &ett_nr_rrc_ULInformationTransfer,
48439     &ett_nr_rrc_T_criticalExtensions_31,
48440     &ett_nr_rrc_T_criticalExtensionsFuture_31,
48441     &ett_nr_rrc_ULInformationTransfer_IEs,
48442     &ett_nr_rrc_T_nonCriticalExtension_32,
48443     &ett_nr_rrc_SIB2,
48444     &ett_nr_rrc_T_cellReselectionInfoCommon,
48445     &ett_nr_rrc_T_speedStateReselectionPars,
48446     &ett_nr_rrc_T_q_HystSF,
48447     &ett_nr_rrc_T_cellReselectionServingFreqInfo,
48448     &ett_nr_rrc_T_intraFreqCellReselectionInfo,
48449     &ett_nr_rrc_SIB3,
48450     &ett_nr_rrc_IntraFreqNeighCellList,
48451     &ett_nr_rrc_IntraFreqNeighCellInfo,
48452     &ett_nr_rrc_IntraFreqBlackCellList,
48453     &ett_nr_rrc_SIB4,
48454     &ett_nr_rrc_InterFreqCarrierFreqList,
48455     &ett_nr_rrc_InterFreqCarrierFreqInfo,
48456     &ett_nr_rrc_T_threshX_Q,
48457     &ett_nr_rrc_InterFreqNeighCellList,
48458     &ett_nr_rrc_InterFreqNeighCellInfo,
48459     &ett_nr_rrc_InterFreqBlackCellList,
48460     &ett_nr_rrc_SIB5,
48461     &ett_nr_rrc_CarrierFreqListEUTRA,
48462     &ett_nr_rrc_CarrierFreqEUTRA,
48463     &ett_nr_rrc_T_threshX_Q_01,
48464     &ett_nr_rrc_EUTRA_FreqBlackCellList,
48465     &ett_nr_rrc_EUTRA_FreqNeighCellList,
48466     &ett_nr_rrc_EUTRA_FreqNeighCellInfo,
48467     &ett_nr_rrc_SIB6,
48468     &ett_nr_rrc_SIB7,
48469     &ett_nr_rrc_SIB8,
48470     &ett_nr_rrc_SIB9,
48471     &ett_nr_rrc_T_timeInfo,
48472     &ett_nr_rrc_BeamFailureRecoveryConfig,
48473     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCandidateBeams_OF_PRACH_ResourceDedicatedBFR,
48474     &ett_nr_rrc_PRACH_ResourceDedicatedBFR,
48475     &ett_nr_rrc_BFR_SSB_Resource,
48476     &ett_nr_rrc_BFR_CSIRS_Resource,
48477     &ett_nr_rrc_T_ra_OccasionList,
48478     &ett_nr_rrc_BSR_Config,
48479     &ett_nr_rrc_BWP,
48480     &ett_nr_rrc_BWP_Downlink,
48481     &ett_nr_rrc_BWP_DownlinkCommon,
48482     &ett_nr_rrc_T_pdcch_ConfigCommon,
48483     &ett_nr_rrc_T_pdsch_ConfigCommon,
48484     &ett_nr_rrc_BWP_DownlinkDedicated,
48485     &ett_nr_rrc_T_pdcch_Config,
48486     &ett_nr_rrc_T_pdsch_Config,
48487     &ett_nr_rrc_T_sps_Config,
48488     &ett_nr_rrc_T_radioLinkMonitoringConfig,
48489     &ett_nr_rrc_BWP_Uplink,
48490     &ett_nr_rrc_BWP_UplinkCommon,
48491     &ett_nr_rrc_T_rach_ConfigCommon,
48492     &ett_nr_rrc_T_pusch_ConfigCommon,
48493     &ett_nr_rrc_T_pucch_ConfigCommon,
48494     &ett_nr_rrc_BWP_UplinkDedicated,
48495     &ett_nr_rrc_T_pucch_Config,
48496     &ett_nr_rrc_T_pusch_Config,
48497     &ett_nr_rrc_T_configuredGrantConfig,
48498     &ett_nr_rrc_T_srs_Config,
48499     &ett_nr_rrc_T_beamFailureRecoveryConfig,
48500     &ett_nr_rrc_CellAccessRelatedInfo,
48501     &ett_nr_rrc_CellAccessRelatedInfo_EUTRA_5GC,
48502     &ett_nr_rrc_PLMN_IdentityList_EUTRA_5GC,
48503     &ett_nr_rrc_PLMN_Identity_EUTRA_5GC,
48504     &ett_nr_rrc_CellIdentity_EUTRA_5GC,
48505     &ett_nr_rrc_CellAccessRelatedInfo_EUTRA_EPC,
48506     &ett_nr_rrc_PLMN_IdentityList_EUTRA_EPC,
48507     &ett_nr_rrc_CellGroupConfig,
48508     &ett_nr_rrc_SEQUENCE_SIZE_1_maxLC_ID_OF_RLC_BearerConfig,
48509     &ett_nr_rrc_SEQUENCE_SIZE_1_maxLC_ID_OF_LogicalChannelIdentity,
48510     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSCells_OF_SCellConfig,
48511     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSCells_OF_SCellIndex,
48512     &ett_nr_rrc_SpCellConfig,
48513     &ett_nr_rrc_T_rlf_TimersAndConstants,
48514     &ett_nr_rrc_ReconfigurationWithSync,
48515     &ett_nr_rrc_T_rach_ConfigDedicated,
48516     &ett_nr_rrc_SCellConfig,
48517     &ett_nr_rrc_CGI_Info,
48518     &ett_nr_rrc_T_noSIB1,
48519     &ett_nr_rrc_CodebookConfig,
48520     &ett_nr_rrc_T_codebookType,
48521     &ett_nr_rrc_T_type1_01,
48522     &ett_nr_rrc_T_subType,
48523     &ett_nr_rrc_T_typeI_SinglePanel,
48524     &ett_nr_rrc_T_nrOfAntennaPorts,
48525     &ett_nr_rrc_T_two,
48526     &ett_nr_rrc_T_moreThanTwo,
48527     &ett_nr_rrc_T_n1_n2,
48528     &ett_nr_rrc_T_typeI_MultiPanel,
48529     &ett_nr_rrc_T_ng_n1_n2,
48530     &ett_nr_rrc_T_type2,
48531     &ett_nr_rrc_T_subType_01,
48532     &ett_nr_rrc_T_typeII,
48533     &ett_nr_rrc_T_n1_n2_codebookSubsetRestriction,
48534     &ett_nr_rrc_T_typeII_PortSelection,
48535     &ett_nr_rrc_ConfiguredGrantConfig,
48536     &ett_nr_rrc_T_uci_OnPUSCH,
48537     &ett_nr_rrc_T_rrc_ConfiguredUplinkGrant,
48538     &ett_nr_rrc_CG_UCI_OnPUSCH,
48539     &ett_nr_rrc_SEQUENCE_SIZE_1_4_OF_BetaOffsets,
48540     &ett_nr_rrc_ConnEstFailureControl,
48541     &ett_nr_rrc_ControlResourceSet,
48542     &ett_nr_rrc_T_cce_REG_MappingType,
48543     &ett_nr_rrc_T_interleaved,
48544     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofTCI_StatesPDCCH_OF_TCI_StateId,
48545     &ett_nr_rrc_CrossCarrierSchedulingConfig,
48546     &ett_nr_rrc_T_schedulingCellInfo,
48547     &ett_nr_rrc_T_own,
48548     &ett_nr_rrc_T_other,
48549     &ett_nr_rrc_CSI_AperiodicTriggerStateList,
48550     &ett_nr_rrc_CSI_AperiodicTriggerState,
48551     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofReportConfigPerAperiodicTrigger_OF_CSI_AssociatedReportConfigInfo,
48552     &ett_nr_rrc_CSI_AssociatedReportConfigInfo,
48553     &ett_nr_rrc_T_resourcesForChannel,
48554     &ett_nr_rrc_T_nzp_CSI_RS,
48555     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofAP_CSI_RS_ResourcesPerSet_OF_TCI_StateId,
48556     &ett_nr_rrc_CSI_FrequencyOccupation,
48557     &ett_nr_rrc_CSI_IM_Resource,
48558     &ett_nr_rrc_T_csi_IM_ResourceElementPattern,
48559     &ett_nr_rrc_T_pattern0,
48560     &ett_nr_rrc_T_pattern1,
48561     &ett_nr_rrc_CSI_IM_ResourceSet,
48562     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourcesPerSet_OF_CSI_IM_ResourceId,
48563     &ett_nr_rrc_CSI_MeasConfig,
48564     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_Resources_OF_NZP_CSI_RS_Resource,
48565     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_Resources_OF_NZP_CSI_RS_ResourceId,
48566     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourceSets_OF_NZP_CSI_RS_ResourceSet,
48567     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourceSets_OF_NZP_CSI_RS_ResourceSetId,
48568     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_IM_Resources_OF_CSI_IM_Resource,
48569     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_IM_Resources_OF_CSI_IM_ResourceId,
48570     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourceSets_OF_CSI_IM_ResourceSet,
48571     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourceSets_OF_CSI_IM_ResourceSetId,
48572     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourceSets_OF_CSI_SSB_ResourceSet,
48573     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourceSets_OF_CSI_SSB_ResourceSetId,
48574     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_ResourceConfigurations_OF_CSI_ResourceConfig,
48575     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_ResourceConfigurations_OF_CSI_ResourceConfigId,
48576     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_ReportConfigurations_OF_CSI_ReportConfig,
48577     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_ReportConfigurations_OF_CSI_ReportConfigId,
48578     &ett_nr_rrc_T_aperiodicTriggerStateList,
48579     &ett_nr_rrc_T_semiPersistentOnPUSCH_TriggerStateList,
48580     &ett_nr_rrc_CSI_ReportConfig,
48581     &ett_nr_rrc_T_reportConfigType,
48582     &ett_nr_rrc_T_periodic,
48583     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofBWPs_OF_PUCCH_CSI_Resource,
48584     &ett_nr_rrc_T_semiPersistentOnPUCCH,
48585     &ett_nr_rrc_T_semiPersistentOnPUSCH,
48586     &ett_nr_rrc_T_reportSlotOffsetList,
48587     &ett_nr_rrc_T_aperiodic,
48588     &ett_nr_rrc_T_reportSlotOffsetList_01,
48589     &ett_nr_rrc_T_reportQuantity,
48590     &ett_nr_rrc_T_cri_RI_i1_CQI,
48591     &ett_nr_rrc_T_reportFreqConfiguration,
48592     &ett_nr_rrc_T_csi_ReportingBand,
48593     &ett_nr_rrc_T_groupBasedBeamReporting,
48594     &ett_nr_rrc_T_disabled,
48595     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourcesPerConfig_OF_PortIndexFor8Ranks,
48596     &ett_nr_rrc_T_semiPersistentOnPUSCH_v1530,
48597     &ett_nr_rrc_CSI_ReportPeriodicityAndOffset,
48598     &ett_nr_rrc_PUCCH_CSI_Resource,
48599     &ett_nr_rrc_PortIndexFor8Ranks,
48600     &ett_nr_rrc_T_portIndex8,
48601     &ett_nr_rrc_SEQUENCE_SIZE_2_OF_PortIndex8,
48602     &ett_nr_rrc_SEQUENCE_SIZE_3_OF_PortIndex8,
48603     &ett_nr_rrc_SEQUENCE_SIZE_4_OF_PortIndex8,
48604     &ett_nr_rrc_SEQUENCE_SIZE_5_OF_PortIndex8,
48605     &ett_nr_rrc_SEQUENCE_SIZE_6_OF_PortIndex8,
48606     &ett_nr_rrc_SEQUENCE_SIZE_7_OF_PortIndex8,
48607     &ett_nr_rrc_SEQUENCE_SIZE_8_OF_PortIndex8,
48608     &ett_nr_rrc_T_portIndex4,
48609     &ett_nr_rrc_SEQUENCE_SIZE_2_OF_PortIndex4,
48610     &ett_nr_rrc_SEQUENCE_SIZE_3_OF_PortIndex4,
48611     &ett_nr_rrc_SEQUENCE_SIZE_4_OF_PortIndex4,
48612     &ett_nr_rrc_T_portIndex2,
48613     &ett_nr_rrc_SEQUENCE_SIZE_2_OF_PortIndex2,
48614     &ett_nr_rrc_CSI_ResourceConfig,
48615     &ett_nr_rrc_T_csi_RS_ResourceSetList,
48616     &ett_nr_rrc_T_nzp_CSI_RS_SSB,
48617     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourceSetsPerConfig_OF_NZP_CSI_RS_ResourceSetId,
48618     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourceSetsPerConfig_OF_CSI_SSB_ResourceSetId,
48619     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_IM_ResourceSetsPerConfig_OF_CSI_IM_ResourceSetId,
48620     &ett_nr_rrc_CSI_ResourcePeriodicityAndOffset,
48621     &ett_nr_rrc_CSI_RS_ResourceConfigMobility,
48622     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_RS_CellsRRM_OF_CSI_RS_CellMobility,
48623     &ett_nr_rrc_CSI_RS_CellMobility,
48624     &ett_nr_rrc_T_csi_rs_MeasurementBW,
48625     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_RS_ResourcesRRM_OF_CSI_RS_Resource_Mobility,
48626     &ett_nr_rrc_CSI_RS_Resource_Mobility,
48627     &ett_nr_rrc_T_slotConfig,
48628     &ett_nr_rrc_T_associatedSSB,
48629     &ett_nr_rrc_T_frequencyDomainAllocation,
48630     &ett_nr_rrc_CSI_RS_ResourceMapping,
48631     &ett_nr_rrc_T_frequencyDomainAllocation_01,
48632     &ett_nr_rrc_T_density_01,
48633     &ett_nr_rrc_CSI_SemiPersistentOnPUSCH_TriggerStateList,
48634     &ett_nr_rrc_CSI_SemiPersistentOnPUSCH_TriggerState,
48635     &ett_nr_rrc_CSI_SSB_ResourceSet,
48636     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCSI_SSB_ResourcePerSet_OF_SSB_Index,
48637     &ett_nr_rrc_DMRS_DownlinkConfig,
48638     &ett_nr_rrc_T_phaseTrackingRS,
48639     &ett_nr_rrc_DMRS_UplinkConfig,
48640     &ett_nr_rrc_T_phaseTrackingRS_01,
48641     &ett_nr_rrc_T_transformPrecodingDisabled,
48642     &ett_nr_rrc_T_transformPrecodingEnabled,
48643     &ett_nr_rrc_DownlinkConfigCommon,
48644     &ett_nr_rrc_DownlinkConfigCommonSIB,
48645     &ett_nr_rrc_BCCH_Config,
48646     &ett_nr_rrc_PCCH_Config,
48647     &ett_nr_rrc_T_nAndPagingFrameOffset,
48648     &ett_nr_rrc_T_firstPDCCH_MonitoringOccasionOfPO,
48649     &ett_nr_rrc_T_sCS15KHZoneT,
48650     &ett_nr_rrc_T_sCS30KHZoneT_SCS15KHZhalfT,
48651     &ett_nr_rrc_T_sCS60KHZoneT_SCS30KHZhalfT_SCS15KHZquarterT,
48652     &ett_nr_rrc_T_sCS120KHZoneT_SCS60KHZhalfT_SCS30KHZquarterT_SCS15KHZoneEighthT,
48653     &ett_nr_rrc_T_sCS120KHZhalfT_SCS60KHZquarterT_SCS30KHZoneEighthT_SCS15KHZoneSixteenthT,
48654     &ett_nr_rrc_T_sCS120KHZquarterT_SCS60KHZoneEighthT_SCS30KHZoneSixteenthT,
48655     &ett_nr_rrc_T_sCS120KHZoneEighthT_SCS60KHZoneSixteenthT,
48656     &ett_nr_rrc_T_sCS120KHZoneSixteenthT,
48657     &ett_nr_rrc_DownlinkPreemption,
48658     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofServingCells_OF_INT_ConfigurationPerServingCell,
48659     &ett_nr_rrc_INT_ConfigurationPerServingCell,
48660     &ett_nr_rrc_DRX_Config,
48661     &ett_nr_rrc_T_drx_onDurationTimer,
48662     &ett_nr_rrc_T_drx_LongCycleStartOffset_01,
48663     &ett_nr_rrc_T_shortDRX_01,
48664     &ett_nr_rrc_FrequencyInfoDL,
48665     &ett_nr_rrc_SEQUENCE_SIZE_1_maxSCSs_OF_SCS_SpecificCarrier,
48666     &ett_nr_rrc_FrequencyInfoDL_SIB,
48667     &ett_nr_rrc_FrequencyInfoUL,
48668     &ett_nr_rrc_FrequencyInfoUL_SIB,
48669     &ett_nr_rrc_LocationMeasurementInfo,
48670     &ett_nr_rrc_EUTRA_RSTD_InfoList,
48671     &ett_nr_rrc_EUTRA_RSTD_Info,
48672     &ett_nr_rrc_LogicalChannelConfig,
48673     &ett_nr_rrc_T_ul_SpecificParameters,
48674     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofServingCells_1_OF_ServCellIndex,
48675     &ett_nr_rrc_SEQUENCE_SIZE_1_maxSCSs_OF_SubcarrierSpacing,
48676     &ett_nr_rrc_MAC_CellGroupConfig,
48677     &ett_nr_rrc_T_drx_Config,
48678     &ett_nr_rrc_T_phr_Config,
48679     &ett_nr_rrc_T_dataInactivityTimer_v1530,
48680     &ett_nr_rrc_MeasConfig,
48681     &ett_nr_rrc_T_s_MeasureConfig,
48682     &ett_nr_rrc_MeasObjectToRemoveList,
48683     &ett_nr_rrc_MeasIdToRemoveList,
48684     &ett_nr_rrc_ReportConfigToRemoveList,
48685     &ett_nr_rrc_MeasGapConfig,
48686     &ett_nr_rrc_T_gapFR2,
48687     &ett_nr_rrc_T_gapFR1,
48688     &ett_nr_rrc_T_gapUE,
48689     &ett_nr_rrc_GapConfig,
48690     &ett_nr_rrc_MeasGapSharingConfig,
48691     &ett_nr_rrc_T_gapSharingFR2,
48692     &ett_nr_rrc_T_gapSharingFR1,
48693     &ett_nr_rrc_T_gapSharingUE,
48694     &ett_nr_rrc_MeasIdToAddModList,
48695     &ett_nr_rrc_MeasIdToAddMod,
48696     &ett_nr_rrc_MeasObjectEUTRA,
48697     &ett_nr_rrc_SEQUENCE_SIZE_1_maxCellMeasEUTRA_OF_EUTRA_Cell,
48698     &ett_nr_rrc_SEQUENCE_SIZE_1_maxCellMeasEUTRA_OF_EUTRA_BlackCell,
48699     &ett_nr_rrc_EUTRA_CellIndexList,
48700     &ett_nr_rrc_EUTRA_Cell,
48701     &ett_nr_rrc_EUTRA_BlackCell,
48702     &ett_nr_rrc_MeasObjectNR,
48703     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPCI_Ranges_OF_PCI_RangeElement,
48704     &ett_nr_rrc_ReferenceSignalConfig,
48705     &ett_nr_rrc_T_csi_rs_ResourceConfigMobility,
48706     &ett_nr_rrc_SSB_ConfigMobility,
48707     &ett_nr_rrc_T_ssb_ToMeasure,
48708     &ett_nr_rrc_Q_OffsetRangeList,
48709     &ett_nr_rrc_ThresholdNR,
48710     &ett_nr_rrc_CellsToAddModList,
48711     &ett_nr_rrc_CellsToAddMod,
48712     &ett_nr_rrc_MeasObjectToAddModList,
48713     &ett_nr_rrc_MeasObjectToAddMod,
48714     &ett_nr_rrc_T_measObject,
48715     &ett_nr_rrc_MeasResultCellListSFTD,
48716     &ett_nr_rrc_MeasResultCellSFTD,
48717     &ett_nr_rrc_MeasResults,
48718     &ett_nr_rrc_T_measResultNeighCells,
48719     &ett_nr_rrc_MeasResultServMOList,
48720     &ett_nr_rrc_MeasResultServMO,
48721     &ett_nr_rrc_MeasResultListNR,
48722     &ett_nr_rrc_MeasResultNR,
48723     &ett_nr_rrc_T_measResult,
48724     &ett_nr_rrc_T_cellResults,
48725     &ett_nr_rrc_T_rsIndexResults,
48726     &ett_nr_rrc_MeasResultListEUTRA,
48727     &ett_nr_rrc_MeasResultEUTRA,
48728     &ett_nr_rrc_T_cgi_Info,
48729     &ett_nr_rrc_T_cgi_info_EPC,
48730     &ett_nr_rrc_SEQUENCE_SIZE_1_maxPLMN_OF_CellAccessRelatedInfo_EUTRA_EPC,
48731     &ett_nr_rrc_SEQUENCE_SIZE_1_maxPLMN_OF_CellAccessRelatedInfo_EUTRA_5GC,
48732     &ett_nr_rrc_MultiBandInfoListEUTRA,
48733     &ett_nr_rrc_MeasQuantityResults,
48734     &ett_nr_rrc_MeasQuantityResultsEUTRA,
48735     &ett_nr_rrc_ResultsPerSSB_IndexList,
48736     &ett_nr_rrc_ResultsPerSSB_Index,
48737     &ett_nr_rrc_ResultsPerCSI_RS_IndexList,
48738     &ett_nr_rrc_ResultsPerCSI_RS_Index,
48739     &ett_nr_rrc_MeasResultSCG_Failure,
48740     &ett_nr_rrc_MeasResultList2NR,
48741     &ett_nr_rrc_MeasResult2NR,
48742     &ett_nr_rrc_MobilityStateParameters,
48743     &ett_nr_rrc_MultiFrequencyBandListNR,
48744     &ett_nr_rrc_NZP_CSI_RS_Resource,
48745     &ett_nr_rrc_NZP_CSI_RS_ResourceSet,
48746     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofNZP_CSI_RS_ResourcesPerSet_OF_NZP_CSI_RS_ResourceId,
48747     &ett_nr_rrc_PCI_List,
48748     &ett_nr_rrc_PCI_Range,
48749     &ett_nr_rrc_PCI_RangeElement,
48750     &ett_nr_rrc_PCI_RangeIndexList,
48751     &ett_nr_rrc_PDCCH_Config,
48752     &ett_nr_rrc_SEQUENCE_SIZE_1_3_OF_ControlResourceSet,
48753     &ett_nr_rrc_SEQUENCE_SIZE_1_3_OF_ControlResourceSetId,
48754     &ett_nr_rrc_SEQUENCE_SIZE_1_10_OF_SearchSpace,
48755     &ett_nr_rrc_SEQUENCE_SIZE_1_10_OF_SearchSpaceId,
48756     &ett_nr_rrc_T_downlinkPreemption,
48757     &ett_nr_rrc_T_tpc_PUSCH,
48758     &ett_nr_rrc_T_tpc_PUCCH,
48759     &ett_nr_rrc_T_tpc_SRS,
48760     &ett_nr_rrc_PDCCH_ConfigCommon,
48761     &ett_nr_rrc_SEQUENCE_SIZE_1_4_OF_SearchSpace,
48762     &ett_nr_rrc_PDCCH_ConfigSIB1,
48763     &ett_nr_rrc_PDCCH_ServingCellConfig,
48764     &ett_nr_rrc_T_slotFormatIndicator,
48765     &ett_nr_rrc_PDCP_Config,
48766     &ett_nr_rrc_T_drb,
48767     &ett_nr_rrc_T_headerCompression,
48768     &ett_nr_rrc_T_rohc,
48769     &ett_nr_rrc_T_profiles,
48770     &ett_nr_rrc_T_uplinkOnlyROHC,
48771     &ett_nr_rrc_T_profiles_01,
48772     &ett_nr_rrc_T_moreThanOneRLC,
48773     &ett_nr_rrc_T_primaryPath,
48774     &ett_nr_rrc_PDSCH_Config,
48775     &ett_nr_rrc_T_dmrs_DownlinkForPDSCH_MappingTypeA,
48776     &ett_nr_rrc_T_dmrs_DownlinkForPDSCH_MappingTypeB,
48777     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofTCI_States_OF_TCI_State,
48778     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofTCI_States_OF_TCI_StateId,
48779     &ett_nr_rrc_T_pdsch_TimeDomainAllocationList,
48780     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofRateMatchPatterns_OF_RateMatchPattern,
48781     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofRateMatchPatterns_OF_RateMatchPatternId,
48782     &ett_nr_rrc_T_prb_BundlingType,
48783     &ett_nr_rrc_T_staticBundling,
48784     &ett_nr_rrc_T_dynamicBundling,
48785     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_Resources_OF_ZP_CSI_RS_Resource,
48786     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_Resources_OF_ZP_CSI_RS_ResourceId,
48787     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourceSets_OF_ZP_CSI_RS_ResourceSet,
48788     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourceSets_OF_ZP_CSI_RS_ResourceSetId,
48789     &ett_nr_rrc_T_p_ZP_CSI_RS_ResourceSet,
48790     &ett_nr_rrc_RateMatchPatternGroup,
48791     &ett_nr_rrc_RateMatchPatternGroup_item,
48792     &ett_nr_rrc_PDSCH_ConfigCommon,
48793     &ett_nr_rrc_PDSCH_ServingCellConfig,
48794     &ett_nr_rrc_T_codeBlockGroupTransmission,
48795     &ett_nr_rrc_PDSCH_CodeBlockGroupTransmission,
48796     &ett_nr_rrc_PDSCH_TimeDomainResourceAllocationList,
48797     &ett_nr_rrc_PDSCH_TimeDomainResourceAllocation,
48798     &ett_nr_rrc_PHR_Config,
48799     &ett_nr_rrc_PhysicalCellGroupConfig,
48800     &ett_nr_rrc_T_cs_RNTI,
48801     &ett_nr_rrc_PLMN_Identity,
48802     &ett_nr_rrc_MCC,
48803     &ett_nr_rrc_MNC,
48804     &ett_nr_rrc_PLMN_IdentityInfoList,
48805     &ett_nr_rrc_PLMN_IdentityInfo,
48806     &ett_nr_rrc_SEQUENCE_SIZE_1_maxPLMN_OF_PLMN_Identity,
48807     &ett_nr_rrc_PTRS_DownlinkConfig,
48808     &ett_nr_rrc_T_frequencyDensity,
48809     &ett_nr_rrc_T_timeDensity,
48810     &ett_nr_rrc_PTRS_UplinkConfig,
48811     &ett_nr_rrc_T_transformPrecoderDisabled,
48812     &ett_nr_rrc_T_frequencyDensity_01,
48813     &ett_nr_rrc_T_timeDensity_01,
48814     &ett_nr_rrc_T_transformPrecoderEnabled,
48815     &ett_nr_rrc_T_sampleDensity,
48816     &ett_nr_rrc_PUCCH_Config,
48817     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_ResourceSets_OF_PUCCH_ResourceSet,
48818     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_ResourceSets_OF_PUCCH_ResourceSetId,
48819     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_Resources_OF_PUCCH_Resource,
48820     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_Resources_OF_PUCCH_ResourceId,
48821     &ett_nr_rrc_T_format1,
48822     &ett_nr_rrc_T_format2,
48823     &ett_nr_rrc_T_format3,
48824     &ett_nr_rrc_T_format4,
48825     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSR_Resources_OF_SchedulingRequestResourceConfig,
48826     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSR_Resources_OF_SchedulingRequestResourceId,
48827     &ett_nr_rrc_SEQUENCE_SIZE_1_2_OF_PUCCH_ResourceId,
48828     &ett_nr_rrc_T_dl_DataToUL_ACK,
48829     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSpatialRelationInfos_OF_PUCCH_SpatialRelationInfo,
48830     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSpatialRelationInfos_OF_PUCCH_SpatialRelationInfoId,
48831     &ett_nr_rrc_PUCCH_FormatConfig,
48832     &ett_nr_rrc_PUCCH_ResourceSet,
48833     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_ResourcesPerSet_OF_PUCCH_ResourceId,
48834     &ett_nr_rrc_PUCCH_Resource,
48835     &ett_nr_rrc_T_format,
48836     &ett_nr_rrc_PUCCH_format0,
48837     &ett_nr_rrc_PUCCH_format1,
48838     &ett_nr_rrc_PUCCH_format2,
48839     &ett_nr_rrc_PUCCH_format3,
48840     &ett_nr_rrc_PUCCH_format4,
48841     &ett_nr_rrc_PUCCH_ConfigCommon,
48842     &ett_nr_rrc_PUCCH_PowerControl,
48843     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_P0_PerSet_OF_P0_PUCCH,
48844     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUCCH_PathlossReferenceRSs_OF_PUCCH_PathlossReferenceRS,
48845     &ett_nr_rrc_P0_PUCCH,
48846     &ett_nr_rrc_PUCCH_PathlossReferenceRS,
48847     &ett_nr_rrc_T_referenceSignal,
48848     &ett_nr_rrc_PUCCH_SpatialRelationInfo,
48849     &ett_nr_rrc_T_referenceSignal_01,
48850     &ett_nr_rrc_T_srs,
48851     &ett_nr_rrc_PUCCH_TPC_CommandConfig,
48852     &ett_nr_rrc_PUSCH_Config,
48853     &ett_nr_rrc_T_dmrs_UplinkForPUSCH_MappingTypeA,
48854     &ett_nr_rrc_T_dmrs_UplinkForPUSCH_MappingTypeB,
48855     &ett_nr_rrc_T_frequencyHoppingOffsetLists,
48856     &ett_nr_rrc_T_pusch_TimeDomainAllocationList,
48857     &ett_nr_rrc_T_uci_OnPUSCH_01,
48858     &ett_nr_rrc_UCI_OnPUSCH,
48859     &ett_nr_rrc_T_betaOffsets,
48860     &ett_nr_rrc_SEQUENCE_SIZE_4_OF_BetaOffsets,
48861     &ett_nr_rrc_PUSCH_ConfigCommon,
48862     &ett_nr_rrc_PUSCH_PowerControl,
48863     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofP0_PUSCH_AlphaSets_OF_P0_PUSCH_AlphaSet,
48864     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUSCH_PathlossReferenceRSs_OF_PUSCH_PathlossReferenceRS,
48865     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPUSCH_PathlossReferenceRSs_OF_PUSCH_PathlossReferenceRS_Id,
48866     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRI_PUSCH_Mappings_OF_SRI_PUSCH_PowerControl,
48867     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRI_PUSCH_Mappings_OF_SRI_PUSCH_PowerControlId,
48868     &ett_nr_rrc_P0_PUSCH_AlphaSet,
48869     &ett_nr_rrc_PUSCH_PathlossReferenceRS,
48870     &ett_nr_rrc_T_referenceSignal_02,
48871     &ett_nr_rrc_SRI_PUSCH_PowerControl,
48872     &ett_nr_rrc_BetaOffsets,
48873     &ett_nr_rrc_PUSCH_ServingCellConfig,
48874     &ett_nr_rrc_T_codeBlockGroupTransmission_01,
48875     &ett_nr_rrc_PUSCH_CodeBlockGroupTransmission,
48876     &ett_nr_rrc_PUSCH_TimeDomainResourceAllocationList,
48877     &ett_nr_rrc_PUSCH_TimeDomainResourceAllocation,
48878     &ett_nr_rrc_PUSCH_TPC_CommandConfig,
48879     &ett_nr_rrc_QuantityConfig,
48880     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofQuantityConfig_OF_QuantityConfigNR,
48881     &ett_nr_rrc_QuantityConfigNR,
48882     &ett_nr_rrc_QuantityConfigRS,
48883     &ett_nr_rrc_FilterConfig,
48884     &ett_nr_rrc_RACH_ConfigCommon,
48885     &ett_nr_rrc_T_ssb_perRACH_OccasionAndCB_PreamblesPerSSB,
48886     &ett_nr_rrc_T_groupBconfigured,
48887     &ett_nr_rrc_T_prach_RootSequenceIndex,
48888     &ett_nr_rrc_RACH_ConfigDedicated,
48889     &ett_nr_rrc_CFRA,
48890     &ett_nr_rrc_T_occasions,
48891     &ett_nr_rrc_T_resources,
48892     &ett_nr_rrc_T_ssb,
48893     &ett_nr_rrc_SEQUENCE_SIZE_1_maxRA_SSB_Resources_OF_CFRA_SSB_Resource,
48894     &ett_nr_rrc_T_csirs,
48895     &ett_nr_rrc_SEQUENCE_SIZE_1_maxRA_CSIRS_Resources_OF_CFRA_CSIRS_Resource,
48896     &ett_nr_rrc_CFRA_SSB_Resource,
48897     &ett_nr_rrc_CFRA_CSIRS_Resource,
48898     &ett_nr_rrc_T_ra_OccasionList_01,
48899     &ett_nr_rrc_RACH_ConfigGeneric,
48900     &ett_nr_rrc_RA_Prioritization,
48901     &ett_nr_rrc_RadioBearerConfig,
48902     &ett_nr_rrc_SRB_ToAddModList,
48903     &ett_nr_rrc_SRB_ToAddMod,
48904     &ett_nr_rrc_DRB_ToAddModList,
48905     &ett_nr_rrc_DRB_ToAddMod,
48906     &ett_nr_rrc_T_cnAssociation,
48907     &ett_nr_rrc_DRB_ToReleaseList,
48908     &ett_nr_rrc_SecurityConfig,
48909     &ett_nr_rrc_RadioLinkMonitoringConfig,
48910     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofFailureDetectionResources_OF_RadioLinkMonitoringRS,
48911     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofFailureDetectionResources_OF_RadioLinkMonitoringRS_Id,
48912     &ett_nr_rrc_RadioLinkMonitoringRS,
48913     &ett_nr_rrc_T_detectionResource,
48914     &ett_nr_rrc_RateMatchPattern,
48915     &ett_nr_rrc_T_patternType,
48916     &ett_nr_rrc_T_bitmaps,
48917     &ett_nr_rrc_T_symbolsInResourceBlock,
48918     &ett_nr_rrc_T_periodicityAndPattern,
48919     &ett_nr_rrc_RateMatchPatternLTE_CRS,
48920     &ett_nr_rrc_ReportConfigInterRAT,
48921     &ett_nr_rrc_T_reportType,
48922     &ett_nr_rrc_ReportCGI_EUTRA,
48923     &ett_nr_rrc_EventTriggerConfigInterRAT,
48924     &ett_nr_rrc_T_eventId,
48925     &ett_nr_rrc_T_eventB1,
48926     &ett_nr_rrc_T_eventB2,
48927     &ett_nr_rrc_PeriodicalReportConfigInterRAT,
48928     &ett_nr_rrc_MeasTriggerQuantityEUTRA,
48929     &ett_nr_rrc_ReportConfigNR,
48930     &ett_nr_rrc_T_reportType_01,
48931     &ett_nr_rrc_ReportCGI,
48932     &ett_nr_rrc_EventTriggerConfig,
48933     &ett_nr_rrc_T_eventId_01,
48934     &ett_nr_rrc_T_eventA1,
48935     &ett_nr_rrc_T_eventA2,
48936     &ett_nr_rrc_T_eventA3,
48937     &ett_nr_rrc_T_eventA4,
48938     &ett_nr_rrc_T_eventA5,
48939     &ett_nr_rrc_T_eventA6,
48940     &ett_nr_rrc_PeriodicalReportConfig,
48941     &ett_nr_rrc_MeasTriggerQuantity,
48942     &ett_nr_rrc_MeasTriggerQuantityOffset,
48943     &ett_nr_rrc_MeasReportQuantity,
48944     &ett_nr_rrc_ReportConfigToAddModList,
48945     &ett_nr_rrc_ReportConfigToAddMod,
48946     &ett_nr_rrc_T_reportConfig,
48947     &ett_nr_rrc_RLC_BearerConfig,
48948     &ett_nr_rrc_T_servedRadioBearer,
48949     &ett_nr_rrc_RLC_Config,
48950     &ett_nr_rrc_T_am,
48951     &ett_nr_rrc_T_um_Bi_Directional,
48952     &ett_nr_rrc_T_um_Uni_Directional_UL,
48953     &ett_nr_rrc_T_um_Uni_Directional_DL,
48954     &ett_nr_rrc_UL_AM_RLC,
48955     &ett_nr_rrc_DL_AM_RLC,
48956     &ett_nr_rrc_UL_UM_RLC,
48957     &ett_nr_rrc_DL_UM_RLC,
48958     &ett_nr_rrc_RLF_TimersAndConstants,
48959     &ett_nr_rrc_SchedulingRequestConfig,
48960     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSR_ConfigPerCellGroup_OF_SchedulingRequestToAddMod,
48961     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSR_ConfigPerCellGroup_OF_SchedulingRequestId,
48962     &ett_nr_rrc_SchedulingRequestToAddMod,
48963     &ett_nr_rrc_SchedulingRequestResourceConfig,
48964     &ett_nr_rrc_T_periodicityAndOffset,
48965     &ett_nr_rrc_SCS_SpecificCarrier,
48966     &ett_nr_rrc_SDAP_Config,
48967     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofQFIs_OF_QFI,
48968     &ett_nr_rrc_SearchSpace,
48969     &ett_nr_rrc_T_monitoringSlotPeriodicityAndOffset,
48970     &ett_nr_rrc_T_nrofCandidates,
48971     &ett_nr_rrc_T_searchSpaceType,
48972     &ett_nr_rrc_T_common,
48973     &ett_nr_rrc_T_dci_Format0_0_AndFormat1_0,
48974     &ett_nr_rrc_T_dci_Format2_0,
48975     &ett_nr_rrc_T_nrofCandidates_SFI,
48976     &ett_nr_rrc_T_dci_Format2_1,
48977     &ett_nr_rrc_T_dci_Format2_2,
48978     &ett_nr_rrc_T_dci_Format2_3,
48979     &ett_nr_rrc_T_ue_Specific,
48980     &ett_nr_rrc_SecurityAlgorithmConfig,
48981     &ett_nr_rrc_ServingCellConfig,
48982     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofBWPs_OF_BWP_Id,
48983     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofBWPs_OF_BWP_Downlink,
48984     &ett_nr_rrc_T_pdcch_ServingCellConfig,
48985     &ett_nr_rrc_T_pdsch_ServingCellConfig,
48986     &ett_nr_rrc_T_csi_MeasConfig,
48987     &ett_nr_rrc_UplinkConfig,
48988     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofBWPs_OF_BWP_Uplink,
48989     &ett_nr_rrc_T_pusch_ServingCellConfig,
48990     &ett_nr_rrc_T_carrierSwitching,
48991     &ett_nr_rrc_ServingCellConfigCommon,
48992     &ett_nr_rrc_T_ssb_PositionsInBurst,
48993     &ett_nr_rrc_T_lte_CRS_ToMatchAround,
48994     &ett_nr_rrc_ServingCellConfigCommonSIB,
48995     &ett_nr_rrc_T_ssb_PositionsInBurst_01,
48996     &ett_nr_rrc_SI_SchedulingInfo,
48997     &ett_nr_rrc_SEQUENCE_SIZE_1_maxSI_Message_OF_SchedulingInfo,
48998     &ett_nr_rrc_SchedulingInfo,
48999     &ett_nr_rrc_SIB_Mapping,
49000     &ett_nr_rrc_SIB_TypeInfo,
49001     &ett_nr_rrc_SI_RequestConfig,
49002     &ett_nr_rrc_T_rach_OccasionsSI,
49003     &ett_nr_rrc_SEQUENCE_SIZE_1_maxSI_Message_OF_SI_RequestResources,
49004     &ett_nr_rrc_SI_RequestResources,
49005     &ett_nr_rrc_SlotFormatCombinationsPerCell,
49006     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSlotFormatCombinationsPerSet_OF_SlotFormatCombination,
49007     &ett_nr_rrc_SlotFormatCombination,
49008     &ett_nr_rrc_T_slotFormats,
49009     &ett_nr_rrc_SlotFormatIndicator,
49010     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofAggregatedCellsPerCellGroup_OF_SlotFormatCombinationsPerCell,
49011     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofAggregatedCellsPerCellGroup_OF_ServCellIndex,
49012     &ett_nr_rrc_S_NSSAI,
49013     &ett_nr_rrc_SpeedStateScaleFactors,
49014     &ett_nr_rrc_SS_RSSI_Measurement,
49015     &ett_nr_rrc_SPS_Config,
49016     &ett_nr_rrc_SRS_CarrierSwitching,
49017     &ett_nr_rrc_T_srs_TPC_PDCCH_Group,
49018     &ett_nr_rrc_SEQUENCE_SIZE_1_32_OF_SRS_TPC_PDCCH_Config,
49019     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofServingCells_OF_ServCellIndex,
49020     &ett_nr_rrc_SRS_TPC_PDCCH_Config,
49021     &ett_nr_rrc_SEQUENCE_SIZE_1_4_OF_SRS_CC_SetIndex,
49022     &ett_nr_rrc_SRS_CC_SetIndex,
49023     &ett_nr_rrc_SRS_Config,
49024     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRS_ResourceSets_OF_SRS_ResourceSetId,
49025     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRS_ResourceSets_OF_SRS_ResourceSet,
49026     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRS_Resources_OF_SRS_ResourceId,
49027     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRS_Resources_OF_SRS_Resource,
49028     &ett_nr_rrc_SRS_ResourceSet,
49029     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSRS_ResourcesPerSet_OF_SRS_ResourceId,
49030     &ett_nr_rrc_T_resourceType_01,
49031     &ett_nr_rrc_T_aperiodic_01,
49032     &ett_nr_rrc_T_aperiodicSRS_ResourceTriggerList_v1530,
49033     &ett_nr_rrc_T_semi_persistent,
49034     &ett_nr_rrc_T_periodic_01,
49035     &ett_nr_rrc_T_pathlossReferenceRS,
49036     &ett_nr_rrc_SRS_Resource,
49037     &ett_nr_rrc_T_transmissionComb,
49038     &ett_nr_rrc_T_n2,
49039     &ett_nr_rrc_T_n4,
49040     &ett_nr_rrc_T_resourceMapping,
49041     &ett_nr_rrc_T_freqHopping,
49042     &ett_nr_rrc_T_resourceType_02,
49043     &ett_nr_rrc_T_aperiodic_02,
49044     &ett_nr_rrc_T_semi_persistent_01,
49045     &ett_nr_rrc_T_periodic_02,
49046     &ett_nr_rrc_SRS_SpatialRelationInfo,
49047     &ett_nr_rrc_T_referenceSignal_03,
49048     &ett_nr_rrc_T_srs_01,
49049     &ett_nr_rrc_SRS_PeriodicityAndOffset,
49050     &ett_nr_rrc_SRS_TPC_CommandConfig,
49051     &ett_nr_rrc_SSB_MTC,
49052     &ett_nr_rrc_T_periodicityAndOffset_01,
49053     &ett_nr_rrc_SSB_MTC2,
49054     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofPCIsPerSMTC_OF_PhysCellId,
49055     &ett_nr_rrc_SSB_ToMeasure,
49056     &ett_nr_rrc_TAG_Config,
49057     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofTAGs_OF_TAG_Id,
49058     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofTAGs_OF_TAG,
49059     &ett_nr_rrc_TAG,
49060     &ett_nr_rrc_TCI_State,
49061     &ett_nr_rrc_QCL_Info,
49062     &ett_nr_rrc_T_referenceSignal_04,
49063     &ett_nr_rrc_TDD_UL_DL_ConfigCommon,
49064     &ett_nr_rrc_TDD_UL_DL_Pattern,
49065     &ett_nr_rrc_TDD_UL_DL_ConfigDedicated,
49066     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSlots_OF_TDD_UL_DL_SlotConfig,
49067     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofSlots_OF_TDD_UL_DL_SlotIndex,
49068     &ett_nr_rrc_TDD_UL_DL_SlotConfig,
49069     &ett_nr_rrc_T_symbols,
49070     &ett_nr_rrc_T_explicit,
49071     &ett_nr_rrc_UAC_BarringInfoSetList,
49072     &ett_nr_rrc_UAC_BarringInfoSet,
49073     &ett_nr_rrc_UAC_BarringPerCatList,
49074     &ett_nr_rrc_UAC_BarringPerCat,
49075     &ett_nr_rrc_UAC_BarringPerPLMN_List,
49076     &ett_nr_rrc_UAC_BarringPerPLMN,
49077     &ett_nr_rrc_T_uac_ACBarringListType,
49078     &ett_nr_rrc_SEQUENCE_SIZE_maxAccessCat_1_OF_UAC_BarringInfoSetIndex,
49079     &ett_nr_rrc_UE_TimersAndConstants,
49080     &ett_nr_rrc_UplinkConfigCommon,
49081     &ett_nr_rrc_UplinkConfigCommonSIB,
49082     &ett_nr_rrc_UplinkTxDirectCurrentList,
49083     &ett_nr_rrc_UplinkTxDirectCurrentCell,
49084     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofBWPs_OF_UplinkTxDirectCurrentBWP,
49085     &ett_nr_rrc_UplinkTxDirectCurrentBWP,
49086     &ett_nr_rrc_ZP_CSI_RS_Resource,
49087     &ett_nr_rrc_ZP_CSI_RS_ResourceSet,
49088     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofZP_CSI_RS_ResourcesPerSet_OF_ZP_CSI_RS_ResourceId,
49089     &ett_nr_rrc_BandCombinationList,
49090     &ett_nr_rrc_BandCombination,
49091     &ett_nr_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_OF_BandParameters,
49092     &ett_nr_rrc_BandParameters,
49093     &ett_nr_rrc_T_eutra,
49094     &ett_nr_rrc_T_nr,
49095     &ett_nr_rrc_CA_ParametersEUTRA,
49096     &ett_nr_rrc_CA_ParametersNR,
49097     &ett_nr_rrc_FeatureSetCombination,
49098     &ett_nr_rrc_FeatureSetsPerBand,
49099     &ett_nr_rrc_FeatureSet,
49100     &ett_nr_rrc_T_eutra_01,
49101     &ett_nr_rrc_T_nr_01,
49102     &ett_nr_rrc_FeatureSetDownlink,
49103     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofServingCells_OF_FeatureSetDownlinkPerCC_Id,
49104     &ett_nr_rrc_T_timeDurationForQCL,
49105     &ett_nr_rrc_T_pdsch_DifferentTB_PerSlot,
49106     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeI_SinglePanelCodebook,
49107     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeI_MultiPanelCodebook,
49108     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeII_Codebook,
49109     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofCodebooks_OF_TypeII_CodebookPortSelection,
49110     &ett_nr_rrc_CSI_RS_IM_ReceptionForFeedback,
49111     &ett_nr_rrc_TypeI_SinglePanelCodebook,
49112     &ett_nr_rrc_TypeI_MultiPanelCodebook,
49113     &ett_nr_rrc_TypeII_Codebook,
49114     &ett_nr_rrc_TypeII_CodebookPortSelection,
49115     &ett_nr_rrc_FeatureSetDownlinkPerCC,
49116     &ett_nr_rrc_FeatureSets,
49117     &ett_nr_rrc_SEQUENCE_SIZE_1_maxDownlinkFeatureSets_OF_FeatureSetDownlink,
49118     &ett_nr_rrc_SEQUENCE_SIZE_1_maxPerCC_FeatureSets_OF_FeatureSetDownlinkPerCC,
49119     &ett_nr_rrc_SEQUENCE_SIZE_1_maxUplinkFeatureSets_OF_FeatureSetUplink,
49120     &ett_nr_rrc_SEQUENCE_SIZE_1_maxPerCC_FeatureSets_OF_FeatureSetUplinkPerCC,
49121     &ett_nr_rrc_FeatureSetUplink,
49122     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofServingCells_OF_FeatureSetUplinkPerCC_Id,
49123     &ett_nr_rrc_T_pusch_DifferentTB_PerSlot,
49124     &ett_nr_rrc_CSI_ReportFramework,
49125     &ett_nr_rrc_FeatureSetUplinkPerCC,
49126     &ett_nr_rrc_T_mimo_CB_PUSCH,
49127     &ett_nr_rrc_FreqBandList,
49128     &ett_nr_rrc_FreqBandInformation,
49129     &ett_nr_rrc_FreqBandInformationEUTRA,
49130     &ett_nr_rrc_FreqBandInformationNR,
49131     &ett_nr_rrc_InterRAT_Parameters,
49132     &ett_nr_rrc_EUTRA_Parameters,
49133     &ett_nr_rrc_SEQUENCE_SIZE_1_maxBandsEUTRA_OF_FreqBandIndicatorEUTRA,
49134     &ett_nr_rrc_EUTRA_ParametersCommon,
49135     &ett_nr_rrc_EUTRA_ParametersXDD_Diff,
49136     &ett_nr_rrc_MAC_Parameters,
49137     &ett_nr_rrc_MAC_ParametersCommon,
49138     &ett_nr_rrc_MAC_ParametersXDD_Diff,
49139     &ett_nr_rrc_MeasAndMobParameters,
49140     &ett_nr_rrc_MeasAndMobParametersCommon,
49141     &ett_nr_rrc_MeasAndMobParametersXDD_Diff,
49142     &ett_nr_rrc_MeasAndMobParametersFRX_Diff,
49143     &ett_nr_rrc_MeasAndMobParametersMRDC,
49144     &ett_nr_rrc_MeasAndMobParametersMRDC_Common,
49145     &ett_nr_rrc_MeasAndMobParametersMRDC_XDD_Diff,
49146     &ett_nr_rrc_MeasAndMobParametersMRDC_FRX_Diff,
49147     &ett_nr_rrc_MIMO_ParametersPerBand,
49148     &ett_nr_rrc_T_tci_StatePDSCH,
49149     &ett_nr_rrc_T_maxNumberRxTxBeamSwitchDL,
49150     &ett_nr_rrc_T_uplinkBeamManagement,
49151     &ett_nr_rrc_T_beamReportTiming,
49152     &ett_nr_rrc_T_ptrs_DensityRecommendationSetDL,
49153     &ett_nr_rrc_T_ptrs_DensityRecommendationSetUL,
49154     &ett_nr_rrc_BeamManagementSSB_CSI_RS,
49155     &ett_nr_rrc_CSI_RS_ForTracking,
49156     &ett_nr_rrc_PTRS_DensityRecommendationDL,
49157     &ett_nr_rrc_PTRS_DensityRecommendationUL,
49158     &ett_nr_rrc_SRS_Resources,
49159     &ett_nr_rrc_SRS_TxSwitch,
49160     &ett_nr_rrc_MRDC_Parameters,
49161     &ett_nr_rrc_PDCP_Parameters,
49162     &ett_nr_rrc_T_supportedROHC_Profiles,
49163     &ett_nr_rrc_PDCP_ParametersMRDC,
49164     &ett_nr_rrc_Phy_Parameters,
49165     &ett_nr_rrc_Phy_ParametersCommon,
49166     &ett_nr_rrc_Phy_ParametersXDD_Diff,
49167     &ett_nr_rrc_Phy_ParametersFRX_Diff,
49168     &ett_nr_rrc_Phy_ParametersFR1,
49169     &ett_nr_rrc_Phy_ParametersFR2,
49170     &ett_nr_rrc_Phy_ParametersMRDC,
49171     &ett_nr_rrc_SEQUENCE_SIZE_1_maxNrofNAICS_Entries_OF_NAICS_Capability_Entry,
49172     &ett_nr_rrc_NAICS_Capability_Entry,
49173     &ett_nr_rrc_RF_Parameters,
49174     &ett_nr_rrc_SEQUENCE_SIZE_1_maxBands_OF_BandNR,
49175     &ett_nr_rrc_BandNR,
49176     &ett_nr_rrc_T_channelBWs_DL_v1530,
49177     &ett_nr_rrc_T_fr1,
49178     &ett_nr_rrc_T_fr2,
49179     &ett_nr_rrc_T_channelBWs_UL_v1530,
49180     &ett_nr_rrc_T_fr1_01,
49181     &ett_nr_rrc_T_fr2_01,
49182     &ett_nr_rrc_RF_ParametersMRDC,
49183     &ett_nr_rrc_RLC_Parameters,
49184     &ett_nr_rrc_SupportedBandwidth,
49185     &ett_nr_rrc_UE_CapabilityRAT_ContainerList,
49186     &ett_nr_rrc_UE_CapabilityRAT_Container,
49187     &ett_nr_rrc_UE_CapabilityRAT_RequestList,
49188     &ett_nr_rrc_UE_CapabilityRAT_Request,
49189     &ett_nr_rrc_UE_CapabilityRequestFilterNR,
49190     &ett_nr_rrc_T_nonCriticalExtension_33,
49191     &ett_nr_rrc_UE_MRDC_Capability,
49192     &ett_nr_rrc_SEQUENCE_SIZE_1_maxFeatureSetCombinations_OF_FeatureSetCombination,
49193     &ett_nr_rrc_T_nonCriticalExtension_34,
49194     &ett_nr_rrc_UE_MRDC_CapabilityAddXDD_Mode,
49195     &ett_nr_rrc_UE_MRDC_CapabilityAddFRX_Mode,
49196     &ett_nr_rrc_GeneralParametersMRDC_XDD_Diff,
49197     &ett_nr_rrc_UE_NR_Capability,
49198     &ett_nr_rrc_UE_NR_Capability_1530,
49199     &ett_nr_rrc_T_nonCriticalExtension_35,
49200     &ett_nr_rrc_UE_NR_CapabilityAddXDD_Mode,
49201     &ett_nr_rrc_UE_NR_CapabilityAddXDD_Mode_1530,
49202     &ett_nr_rrc_UE_NR_CapabilityAddFRX_Mode,
49203     &ett_nr_rrc_EUTRA_MBSFN_SubframeConfigList,
49204     &ett_nr_rrc_EUTRA_MBSFN_SubframeConfig,
49205     &ett_nr_rrc_T_subframeAllocation1,
49206     &ett_nr_rrc_T_subframeAllocation2,
49207     &ett_nr_rrc_EUTRA_MultiBandInfoList,
49208     &ett_nr_rrc_EUTRA_MultiBandInfo,
49209     &ett_nr_rrc_EUTRA_NS_PmaxList,
49210     &ett_nr_rrc_EUTRA_NS_PmaxValue,
49211     &ett_nr_rrc_EUTRA_PhysCellIdRange,
49212     &ett_nr_rrc_MultiFrequencyBandListNR_SIB,
49213     &ett_nr_rrc_NR_MultiBandInfo,
49214     &ett_nr_rrc_NR_NS_PmaxList,
49215     &ett_nr_rrc_NR_NS_PmaxValue,
49216     &ett_nr_rrc_OtherConfig,
49217     &ett_nr_rrc_T_delayBudgetReportingConfig,
49218     &ett_nr_rrc_T_setup,
49219
49220 /*--- End of included file: packet-nr-rrc-ettarr.c ---*/
49221 #line 498 "./asn1/nr-rrc/packet-nr-rrc-template.c"
49222     &ett_nr_rrc_DedicatedNAS_Message,
49223     &ett_rr_rrc_targetRAT_MessageContainer,
49224     &ett_nr_rrc_nas_Container,
49225     &ett_nr_rrc_serialNumber,
49226     &ett_nr_rrc_warningType,
49227     &ett_nr_rrc_dataCodingScheme,
49228     &ett_nr_rrc_sib7_fragment,
49229     &ett_nr_rrc_sib7_fragments,
49230     &ett_nr_rrc_sib8_fragment,
49231     &ett_nr_rrc_sib8_fragments,
49232     &ett_nr_rrc_warningMessageSegment,
49233     &ett_nr_rrc_timeInfo,
49234     &ett_nr_rrc_capabilityRequestFilter
49235   };
49236
49237   static ei_register_info ei[] = {
49238      { &ei_nr_rrc_number_pages_le15, { "nr-rrc.number_pages_le15", PI_MALFORMED, PI_ERROR, "Number of pages should be <=15", EXPFILL }},
49239   };
49240
49241   expert_module_t* expert_nr_rrc;
49242
49243   /* Register protocol */
49244   proto_nr_rrc = proto_register_protocol(PNAME, PSNAME, PFNAME);
49245
49246   /* Register fields and subtrees */
49247   proto_register_field_array(proto_nr_rrc, hf, array_length(hf));
49248   proto_register_subtree_array(ett, array_length(ett));
49249   expert_nr_rrc = expert_register_protocol(proto_nr_rrc);
49250   expert_register_field_array(expert_nr_rrc, ei, array_length(ei));
49251
49252   /* Register the dissectors defined in nr-rrc.cnf */
49253
49254 /*--- Included file: packet-nr-rrc-dis-reg.c ---*/
49255 #line 1 "./asn1/nr-rrc/packet-nr-rrc-dis-reg.c"
49256   register_dissector("nr-rrc.ue_radio_paging_info", dissect_UERadioPagingInformation_PDU, proto_nr_rrc);
49257   register_dissector("nr-rrc.ue_radio_access_cap_info", dissect_UERadioAccessCapabilityInformation_PDU, proto_nr_rrc);
49258   register_dissector("nr-rrc.bcch.bch", dissect_BCCH_BCH_Message_PDU, proto_nr_rrc);
49259   register_dissector("nr-rrc.bcch.dl.sch", dissect_BCCH_DL_SCH_Message_PDU, proto_nr_rrc);
49260   register_dissector("nr-rrc.dl.ccch", dissect_DL_CCCH_Message_PDU, proto_nr_rrc);
49261   register_dissector("nr-rrc.dl.dcch", dissect_DL_DCCH_Message_PDU, proto_nr_rrc);
49262   register_dissector("nr-rrc.pcch", dissect_PCCH_Message_PDU, proto_nr_rrc);
49263   register_dissector("nr-rrc.ul.ccch", dissect_UL_CCCH_Message_PDU, proto_nr_rrc);
49264   register_dissector("nr-rrc.ul.ccch1", dissect_UL_CCCH1_Message_PDU, proto_nr_rrc);
49265   register_dissector("nr-rrc.ul.dcch", dissect_nr_rrc_UL_DCCH_Message_PDU, proto_nr_rrc);
49266   register_dissector("nr-rrc.rrc_reconf", dissect_nr_rrc_RRCReconfiguration_PDU, proto_nr_rrc);
49267   register_dissector("nr-rrc.ue_mrdc_cap", dissect_nr_rrc_UE_MRDC_Capability_PDU, proto_nr_rrc);
49268   register_dissector("nr-rrc.ue_nr_cap", dissect_nr_rrc_UE_NR_Capability_PDU, proto_nr_rrc);
49269
49270
49271 /*--- End of included file: packet-nr-rrc-dis-reg.c ---*/
49272 #line 530 "./asn1/nr-rrc/packet-nr-rrc-template.c"
49273
49274   nr_rrc_etws_cmas_dcs_hash = wmem_map_new_autoreset(wmem_epan_scope(), wmem_file_scope(),
49275                                                      g_direct_hash, g_direct_equal);
49276
49277   reassembly_table_register(&nr_rrc_sib7_reassembly_table,
49278                             &addresses_reassembly_table_functions);
49279   reassembly_table_register(&nr_rrc_sib8_reassembly_table,
49280                             &addresses_reassembly_table_functions);
49281 }
49282
49283 void
49284 proto_reg_handoff_nr_rrc(void)
49285 {
49286   nas_5gs_handle = find_dissector("nas-5gs");
49287   lte_rrc_conn_reconf_handle = find_dissector("lte-rrc.rrc_conn_reconf");
49288 }