Regenerate a few more of the ASN.1 dissectors
[obnox/wireshark/wip.git] / epan / dissectors / packet-HI2Operations.c
1 /* Do not modify this file.                                                   */
2 /* It is created automatically by the ASN.1 to Wireshark dissector compiler   */
3 /* packet-HI2Operations.c                                                     */
4 /* ../../tools/asn2wrs.py -b -p HI2Operations -c ./HI2Operations.cnf -s ./packet-HI2Operations-template -D . HI2Operations_ver11.asn UmtsHI2Operations.asn TS101909201.asn PCESP.asn EN301040.asn */
5
6 /* Input file: packet-HI2Operations-template.c */
7
8 #line 1 "packet-HI2Operations-template.c"
9 /* packet-HI2Operations.c
10  * Routines for HI2 (ETSI TS 101 671 V3.5.1 (2009-11))
11  *  Erwin van Eijk 2010
12  *
13  * $Id$
14  *
15  * Wireshark - Network traffic analyzer
16  * By Gerald Combs <gerald@wireshark.org>
17  * Copyright 1998 Gerald Combs
18  *
19  * This program is free software; you can redistribute it and/or
20  * modify it under the terms of the GNU General Public License
21  * as published by the Free Software Foundation; either version 2
22  * of the License, or (at your option) any later version.
23  *
24  * This program is distributed in the hope that it will be useful,
25  * but WITHOUT ANY WARRANTY; without even the implied warranty of
26  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
27  * GNU General Public License for more details.
28  *
29  * You should have received a copy of the GNU General Public License
30  * along with this program; if not, write to the Free Software
31  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
32  */
33
34 #ifdef HAVE_CONFIG_H
35 # include "config.h"
36 #endif
37
38 #include <glib.h>
39 #include <epan/packet.h>
40 #include <epan/conversation.h>
41 #include <epan/oids.h>
42 #include <epan/asn1.h>
43
44 #include "packet-ber.h"
45
46 #define PNAME  "HI2Operations"
47 #define PSNAME "HI2OPERATIONS"
48 #define PFNAME "hi2operations"
49
50 /* Initialize the protocol and registered fields */
51 int proto_HI2Operations = -1;
52
53 /*--- Included file: packet-HI2Operations-hf.c ---*/
54 #line 1 "packet-HI2Operations-hf.c"
55 static int hf_HI2Operations_IRIsContent_PDU = -1;  /* IRIsContent */
56 static int hf_HI2Operations_iRIContent = -1;      /* IRIContent */
57 static int hf_HI2Operations_iRISequence = -1;     /* IRISequence */
58 static int hf_HI2Operations_IRISequence_item = -1;  /* IRIContent */
59 static int hf_HI2Operations_iRI_Begin_record = -1;  /* IRI_Parameters */
60 static int hf_HI2Operations_iRI_End_record = -1;  /* IRI_Parameters */
61 static int hf_HI2Operations_iRI_Continue_record = -1;  /* IRI_Parameters */
62 static int hf_HI2Operations_iRI_Report_record = -1;  /* IRI_Parameters */
63 static int hf_HI2Operations_domainID = -1;        /* OBJECT_IDENTIFIER */
64 static int hf_HI2Operations_iRIversion = -1;      /* T_iRIversion */
65 static int hf_HI2Operations_lawfulInterceptionIdentifier = -1;  /* LawfulInterceptionIdentifier */
66 static int hf_HI2Operations_communicationIdentifier = -1;  /* CommunicationIdentifier */
67 static int hf_HI2Operations_timeStamp = -1;       /* TimeStamp */
68 static int hf_HI2Operations_intercepted_Call_Direct = -1;  /* T_intercepted_Call_Direct */
69 static int hf_HI2Operations_intercepted_Call_State = -1;  /* Intercepted_Call_State */
70 static int hf_HI2Operations_ringingDuration = -1;  /* OCTET_STRING_SIZE_3 */
71 static int hf_HI2Operations_conversationDuration = -1;  /* OCTET_STRING_SIZE_3 */
72 static int hf_HI2Operations_locationOfTheTarget = -1;  /* Location */
73 static int hf_HI2Operations_partyInformation = -1;  /* SET_SIZE_1_10_OF_PartyInformation */
74 static int hf_HI2Operations_partyInformation_item = -1;  /* PartyInformation */
75 static int hf_HI2Operations_callContentLinkInformation = -1;  /* T_callContentLinkInformation */
76 static int hf_HI2Operations_cCLink1Characteristics = -1;  /* CallContentLinkCharacteristics */
77 static int hf_HI2Operations_cCLink2Characteristics = -1;  /* CallContentLinkCharacteristics */
78 static int hf_HI2Operations_release_Reason_Of_Intercepted_Call = -1;  /* OCTET_STRING_SIZE_2 */
79 static int hf_HI2Operations_nature_Of_The_intercepted_call = -1;  /* T_nature_Of_The_intercepted_call */
80 static int hf_HI2Operations_serverCenterAddress = -1;  /* PartyInformation */
81 static int hf_HI2Operations_sMS = -1;             /* SMS_report */
82 static int hf_HI2Operations_cC_Link_Identifier = -1;  /* CC_Link_Identifier */
83 static int hf_HI2Operations_national_Parameters = -1;  /* National_Parameters */
84 static int hf_HI2Operations_gPRSCorrelationNumber = -1;  /* GPRSCorrelationNumber */
85 static int hf_HI2Operations_gPRSevent = -1;       /* GPRSEvent */
86 static int hf_HI2Operations_sgsnAddress = -1;     /* DataNodeAddress */
87 static int hf_HI2Operations_gPRSOperationErrorCode = -1;  /* GPRSOperationErrorCode */
88 static int hf_HI2Operations_ggsnAddress = -1;     /* DataNodeAddress */
89 static int hf_HI2Operations_qOS = -1;             /* UmtsQos */
90 static int hf_HI2Operations_networkIdentifier = -1;  /* Network_Identifier */
91 static int hf_HI2Operations_sMSOriginatingAddress = -1;  /* DataNodeAddress */
92 static int hf_HI2Operations_sMSTerminatingAddress = -1;  /* DataNodeAddress */
93 static int hf_HI2Operations_iMSevent = -1;        /* IMSevent */
94 static int hf_HI2Operations_sIPMessage = -1;      /* OCTET_STRING */
95 static int hf_HI2Operations_servingSGSN_number = -1;  /* OCTET_STRING_SIZE_1_20 */
96 static int hf_HI2Operations_servingSGSN_address = -1;  /* OCTET_STRING_SIZE_5_17 */
97 static int hf_HI2Operations_tARGETACTIVITYMONITOR = -1;  /* TARGETACTIVITYMONITOR_1 */
98 static int hf_HI2Operations_ldiEvent = -1;        /* LDIevent */
99 static int hf_HI2Operations_correlation = -1;     /* CorrelationValues */
100 static int hf_HI2Operations_tARGETACTIVITYMONITORind = -1;  /* TARGETACTIVITYMONITORind */
101 static int hf_HI2Operations_tARGETCOMMSMONITORind = -1;  /* TARGETCOMMSMONITORind */
102 static int hf_HI2Operations_tTRAFFICind = -1;     /* TTRAFFICind */
103 static int hf_HI2Operations_cTTRAFFICind = -1;    /* CTTRAFFICind */
104 static int hf_HI2Operations_national_HI2_ASN1parameters = -1;  /* National_HI2_ASN1parameters */
105 static int hf_HI2Operations_communication_Identity_Number = -1;  /* OCTET_STRING_SIZE_1_8 */
106 static int hf_HI2Operations_network_Identifier = -1;  /* Network_Identifier */
107 static int hf_HI2Operations_operator_Identifier = -1;  /* OCTET_STRING_SIZE_1_5 */
108 static int hf_HI2Operations_network_Element_Identifier = -1;  /* Network_Element_Identifier */
109 static int hf_HI2Operations_e164_Format = -1;     /* OCTET_STRING_SIZE_1_25 */
110 static int hf_HI2Operations_x25_Format = -1;      /* OCTET_STRING_SIZE_1_25 */
111 static int hf_HI2Operations_iP_Format = -1;       /* OCTET_STRING_SIZE_1_25 */
112 static int hf_HI2Operations_dNS_Format = -1;      /* OCTET_STRING_SIZE_1_25 */
113 static int hf_HI2Operations_iP_Address = -1;      /* IPAddress */
114 static int hf_HI2Operations_localTime = -1;       /* LocalTimeStamp */
115 static int hf_HI2Operations_utcTime = -1;         /* UTCTime */
116 static int hf_HI2Operations_generalizedTime = -1;  /* GeneralizedTime */
117 static int hf_HI2Operations_winterSummerIndication = -1;  /* T_winterSummerIndication */
118 static int hf_HI2Operations_party_Qualifier = -1;  /* T_party_Qualifier */
119 static int hf_HI2Operations_partyIdentity = -1;   /* T_partyIdentity */
120 static int hf_HI2Operations_imei = -1;            /* OCTET_STRING_SIZE_8 */
121 static int hf_HI2Operations_tei = -1;             /* OCTET_STRING_SIZE_1_15 */
122 static int hf_HI2Operations_imsi = -1;            /* OCTET_STRING_SIZE_3_8 */
123 static int hf_HI2Operations_callingPartyNumber = -1;  /* CallingPartyNumber */
124 static int hf_HI2Operations_calledPartyNumber = -1;  /* CalledPartyNumber */
125 static int hf_HI2Operations_msISDN = -1;          /* OCTET_STRING_SIZE_1_9 */
126 static int hf_HI2Operations_sip_uri = -1;         /* OCTET_STRING */
127 static int hf_HI2Operations_tel_url = -1;         /* OCTET_STRING */
128 static int hf_HI2Operations_services_Information = -1;  /* Services_Information */
129 static int hf_HI2Operations_supplementary_Services_Information = -1;  /* Supplementary_Services */
130 static int hf_HI2Operations_services_Data_Information = -1;  /* Services_Data_Information */
131 static int hf_HI2Operations_iSUP_Format = -1;     /* OCTET_STRING_SIZE_1_25 */
132 static int hf_HI2Operations_dSS1_Format = -1;     /* OCTET_STRING_SIZE_1_25 */
133 static int hf_HI2Operations_mAP_Format = -1;      /* OCTET_STRING_SIZE_1_25 */
134 static int hf_HI2Operations_e164_Number = -1;     /* OCTET_STRING_SIZE_1_25 */
135 static int hf_HI2Operations_globalCellID = -1;    /* OCTET_STRING_SIZE_5_7 */
136 static int hf_HI2Operations_tetraLocation = -1;   /* TetraLocation */
137 static int hf_HI2Operations_rAI = -1;             /* OCTET_STRING_SIZE_6 */
138 static int hf_HI2Operations_gsmLocation = -1;     /* GSMLocation */
139 static int hf_HI2Operations_umtsLocation = -1;    /* UMTSLocation */
140 static int hf_HI2Operations_sAI = -1;             /* OCTET_STRING_SIZE_7 */
141 static int hf_HI2Operations_oldRAI = -1;          /* OCTET_STRING_SIZE_6 */
142 static int hf_HI2Operations_ms_Loc = -1;          /* T_ms_Loc */
143 static int hf_HI2Operations_mcc = -1;             /* INTEGER_0_1023 */
144 static int hf_HI2Operations_mnc = -1;             /* INTEGER_0_16383 */
145 static int hf_HI2Operations_lai = -1;             /* INTEGER_0_65535 */
146 static int hf_HI2Operations_ci = -1;              /* INTEGER */
147 static int hf_HI2Operations_ls_Loc = -1;          /* INTEGER */
148 static int hf_HI2Operations_geoCoordinates = -1;  /* T_geoCoordinates */
149 static int hf_HI2Operations_latitude = -1;        /* PrintableString_SIZE_7_10 */
150 static int hf_HI2Operations_longitude = -1;       /* PrintableString_SIZE_8_11 */
151 static int hf_HI2Operations_mapDatum = -1;        /* MapDatum */
152 static int hf_HI2Operations_azimuth = -1;         /* INTEGER_0_359 */
153 static int hf_HI2Operations_utmCoordinates = -1;  /* T_utmCoordinates */
154 static int hf_HI2Operations_utm_East = -1;        /* PrintableString_SIZE_10 */
155 static int hf_HI2Operations_utm_North = -1;       /* PrintableString_SIZE_7 */
156 static int hf_HI2Operations_utmRefCoordinates = -1;  /* T_utmRefCoordinates */
157 static int hf_HI2Operations_utmref_string = -1;   /* PrintableString_SIZE_13 */
158 static int hf_HI2Operations_wGS84Coordinates = -1;  /* OCTET_STRING */
159 static int hf_HI2Operations_point = -1;           /* GA_Point */
160 static int hf_HI2Operations_pointWithUnCertainty = -1;  /* GA_PointWithUnCertainty */
161 static int hf_HI2Operations_polygon = -1;         /* GA_Polygon */
162 static int hf_HI2Operations_latitudeSign = -1;    /* T_latitudeSign */
163 static int hf_HI2Operations_latitude_01 = -1;     /* INTEGER_0_8388607 */
164 static int hf_HI2Operations_longitude_01 = -1;    /* INTEGER_M8388608_8388607 */
165 static int hf_HI2Operations_geographicalCoordinates = -1;  /* GeographicalCoordinates */
166 static int hf_HI2Operations_uncertaintyCode = -1;  /* INTEGER_0_127 */
167 static int hf_HI2Operations_GA_Polygon_item = -1;  /* GA_Polygon_item */
168 static int hf_HI2Operations_cCLink_State = -1;    /* CCLink_State */
169 static int hf_HI2Operations_release_Time = -1;    /* TimeStamp */
170 static int hf_HI2Operations_release_Reason = -1;  /* OCTET_STRING_SIZE_2 */
171 static int hf_HI2Operations_lEMF_Address = -1;    /* CalledPartyNumber */
172 static int hf_HI2Operations_iSUP_parameters = -1;  /* ISUP_parameters */
173 static int hf_HI2Operations_dSS1_parameters_codeset_0 = -1;  /* DSS1_parameters_codeset_0 */
174 static int hf_HI2Operations_mAP_parameters = -1;  /* MAP_parameters */
175 static int hf_HI2Operations_ISUP_parameters_item = -1;  /* OCTET_STRING_SIZE_1_256 */
176 static int hf_HI2Operations_DSS1_parameters_codeset_0_item = -1;  /* OCTET_STRING_SIZE_1_256 */
177 static int hf_HI2Operations_MAP_parameters_item = -1;  /* OCTET_STRING_SIZE_1_256 */
178 static int hf_HI2Operations_standard_Supplementary_Services = -1;  /* Standard_Supplementary_Services */
179 static int hf_HI2Operations_non_Standard_Supplementary_Services = -1;  /* Non_Standard_Supplementary_Services */
180 static int hf_HI2Operations_other_Services = -1;  /* Other_Services */
181 static int hf_HI2Operations_iSUP_SS_parameters = -1;  /* ISUP_SS_parameters */
182 static int hf_HI2Operations_dSS1_SS_parameters_codeset_0 = -1;  /* DSS1_SS_parameters_codeset_0 */
183 static int hf_HI2Operations_dSS1_SS_parameters_codeset_4 = -1;  /* DSS1_SS_parameters_codeset_4 */
184 static int hf_HI2Operations_dSS1_SS_parameters_codeset_5 = -1;  /* DSS1_SS_parameters_codeset_5 */
185 static int hf_HI2Operations_dSS1_SS_parameters_codeset_6 = -1;  /* DSS1_SS_parameters_codeset_6 */
186 static int hf_HI2Operations_dSS1_SS_parameters_codeset_7 = -1;  /* DSS1_SS_parameters_codeset_7 */
187 static int hf_HI2Operations_dSS1_SS_Invoke_components = -1;  /* DSS1_SS_Invoke_Components */
188 static int hf_HI2Operations_mAP_SS_Parameters = -1;  /* MAP_SS_Parameters */
189 static int hf_HI2Operations_mAP_SS_Invoke_Components = -1;  /* MAP_SS_Invoke_Components */
190 static int hf_HI2Operations_Non_Standard_Supplementary_Services_item = -1;  /* Non_Standard_Supplementary_Services_item */
191 static int hf_HI2Operations_simpleIndication = -1;  /* SimpleIndication */
192 static int hf_HI2Operations_sciData = -1;         /* SciDataMode */
193 static int hf_HI2Operations_Other_Services_item = -1;  /* OCTET_STRING_SIZE_1_256 */
194 static int hf_HI2Operations_ISUP_SS_parameters_item = -1;  /* OCTET_STRING_SIZE_1_256 */
195 static int hf_HI2Operations_DSS1_SS_parameters_codeset_0_item = -1;  /* OCTET_STRING_SIZE_1_256 */
196 static int hf_HI2Operations_DSS1_SS_parameters_codeset_4_item = -1;  /* OCTET_STRING_SIZE_1_256 */
197 static int hf_HI2Operations_DSS1_SS_parameters_codeset_5_item = -1;  /* OCTET_STRING_SIZE_1_256 */
198 static int hf_HI2Operations_DSS1_SS_parameters_codeset_6_item = -1;  /* OCTET_STRING_SIZE_1_256 */
199 static int hf_HI2Operations_DSS1_SS_parameters_codeset_7_item = -1;  /* OCTET_STRING_SIZE_1_256 */
200 static int hf_HI2Operations_DSS1_SS_Invoke_Components_item = -1;  /* OCTET_STRING_SIZE_1_256 */
201 static int hf_HI2Operations_MAP_SS_Invoke_Components_item = -1;  /* OCTET_STRING_SIZE_1_256 */
202 static int hf_HI2Operations_MAP_SS_Parameters_item = -1;  /* OCTET_STRING_SIZE_1_256 */
203 static int hf_HI2Operations_sMS_Contents = -1;    /* T_sMS_Contents */
204 static int hf_HI2Operations_initiator = -1;       /* T_initiator */
205 static int hf_HI2Operations_transfer_status = -1;  /* T_transfer_status */
206 static int hf_HI2Operations_other_message = -1;   /* T_other_message */
207 static int hf_HI2Operations_content = -1;         /* OCTET_STRING_SIZE_1_270 */
208 static int hf_HI2Operations_National_Parameters_item = -1;  /* OCTET_STRING_SIZE_1_256 */
209 static int hf_HI2Operations_gPRS_parameters = -1;  /* GPRS_parameters */
210 static int hf_HI2Operations_pDP_address_allocated_to_the_target = -1;  /* DataNodeAddress */
211 static int hf_HI2Operations_aPN = -1;             /* OCTET_STRING_SIZE_1_100 */
212 static int hf_HI2Operations_pDP_type = -1;        /* OCTET_STRING_SIZE_2 */
213 static int hf_HI2Operations_ipAddress = -1;       /* IPAddress */
214 static int hf_HI2Operations_x25Address = -1;      /* X25Address */
215 static int hf_HI2Operations_iP_type = -1;         /* T_iP_type */
216 static int hf_HI2Operations_iP_value = -1;        /* IP_value */
217 static int hf_HI2Operations_iP_assignment = -1;   /* T_iP_assignment */
218 static int hf_HI2Operations_iPBinaryAddress = -1;  /* OCTET_STRING_SIZE_4_16 */
219 static int hf_HI2Operations_iPTextAddress = -1;   /* IA5String_SIZE_7_45 */
220 static int hf_HI2Operations_countryCode = -1;     /* PrintableString_SIZE_2 */
221 static int hf_HI2Operations_qosMobileRadio = -1;  /* OCTET_STRING */
222 static int hf_HI2Operations_qosGn = -1;           /* OCTET_STRING */
223 static int hf_HI2Operations_iri_to_CC = -1;       /* IRI_to_CC_Correlation */
224 static int hf_HI2Operations_iri_to_iri = -1;      /* IRI_to_IRI_Correlation */
225 static int hf_HI2Operations_both_IRI_CC = -1;     /* T_both_IRI_CC */
226 static int hf_HI2Operations_iri_CC = -1;          /* IRI_to_CC_Correlation */
227 static int hf_HI2Operations_iri_IRI = -1;         /* IRI_to_IRI_Correlation */
228 static int hf_HI2Operations_cc = -1;              /* T_cc */
229 static int hf_HI2Operations_cc_item = -1;         /* OCTET_STRING */
230 static int hf_HI2Operations_iri = -1;             /* OCTET_STRING */
231 static int hf_HI2Operations_version = -1;         /* INTEGER */
232 static int hf_HI2Operations_lIInstanceid = -1;    /* LIIDType */
233 static int hf_HI2Operations_timestamp = -1;       /* UTCTime */
234 static int hf_HI2Operations_targetLocation = -1;  /* LocationType */
235 static int hf_HI2Operations_direction = -1;       /* DirectionType */
236 static int hf_HI2Operations_iRITransaction = -1;  /* IRITransactionType */
237 static int hf_HI2Operations_iRITransactionNumber = -1;  /* INTEGER */
238 static int hf_HI2Operations_userSignal = -1;      /* UserSignalType */
239 static int hf_HI2Operations_cryptoCheckSum = -1;  /* BIT_STRING */
240 static int hf_HI2Operations_copySignal = -1;      /* BIT_STRING */
241 static int hf_HI2Operations_interpretedSignal = -1;  /* INTEGER */
242 static int hf_HI2Operations_cdcPdu = -1;          /* CdcPdu */
243 static int hf_HI2Operations_geodeticData = -1;    /* BIT_STRING */
244 static int hf_HI2Operations_nameAddress = -1;     /* PrintableString_SIZE_1_100 */
245 static int hf_HI2Operations_protocolVersion = -1;  /* ProtocolVersion */
246 static int hf_HI2Operations_message = -1;         /* Message */
247 static int hf_HI2Operations_answer = -1;          /* Answer */
248 static int hf_HI2Operations_ccclose = -1;         /* CCClose */
249 static int hf_HI2Operations_ccopen = -1;          /* CCOpen */
250 static int hf_HI2Operations_reserved0 = -1;       /* NULL */
251 static int hf_HI2Operations_origination = -1;     /* Origination */
252 static int hf_HI2Operations_reserved1 = -1;       /* NULL */
253 static int hf_HI2Operations_redirection = -1;     /* Redirection */
254 static int hf_HI2Operations_release = -1;         /* Release */
255 static int hf_HI2Operations_reserved2 = -1;       /* NULL */
256 static int hf_HI2Operations_terminationattempt = -1;  /* TerminationAttempt */
257 static int hf_HI2Operations_reserved = -1;        /* NULL */
258 static int hf_HI2Operations_ccchange = -1;        /* CCChange */
259 static int hf_HI2Operations_reserved3 = -1;       /* NULL */
260 static int hf_HI2Operations_reserved4 = -1;       /* NULL */
261 static int hf_HI2Operations_reserved5 = -1;       /* NULL */
262 static int hf_HI2Operations_networksignal = -1;   /* NetworkSignal */
263 static int hf_HI2Operations_subjectsignal = -1;   /* SubjectSignal */
264 static int hf_HI2Operations_mediareport = -1;     /* MediaReport */
265 static int hf_HI2Operations_serviceinstance = -1;  /* ServiceInstance */
266 static int hf_HI2Operations_caseId = -1;          /* CaseId */
267 static int hf_HI2Operations_accessingElementId = -1;  /* AccessingElementId */
268 static int hf_HI2Operations_eventTime = -1;       /* EventTime */
269 static int hf_HI2Operations_callId = -1;          /* CallId */
270 static int hf_HI2Operations_answering = -1;       /* PartyId */
271 static int hf_HI2Operations_cCCId = -1;           /* CCCId */
272 static int hf_HI2Operations_subject = -1;         /* SDP */
273 static int hf_HI2Operations_associate = -1;       /* SDP */
274 static int hf_HI2Operations_flowDirection = -1;   /* FlowDirection */
275 static int hf_HI2Operations_resourceState = -1;   /* ResourceState */
276 static int hf_HI2Operations_ccOpenOption = -1;    /* T_ccOpenOption */
277 static int hf_HI2Operations_ccOpenTime = -1;      /* SEQUENCE_OF_CallId */
278 static int hf_HI2Operations_ccOpenTime_item = -1;  /* CallId */
279 static int hf_HI2Operations_alertingSignal = -1;  /* AlertingSignal */
280 static int hf_HI2Operations_subjectAudibleSignal = -1;  /* AudibleSignal */
281 static int hf_HI2Operations_terminalDisplayInfo = -1;  /* TerminalDisplayInfo */
282 static int hf_HI2Operations_other = -1;           /* VisibleString_SIZE_1_128_ */
283 static int hf_HI2Operations_calling = -1;         /* PartyId */
284 static int hf_HI2Operations_called = -1;          /* PartyId */
285 static int hf_HI2Operations_input = -1;           /* T_input */
286 static int hf_HI2Operations_userinput = -1;       /* VisibleString_SIZE_1_32_ */
287 static int hf_HI2Operations_translationinput = -1;  /* VisibleString_SIZE_1_32_ */
288 static int hf_HI2Operations_transitCarrierId = -1;  /* TransitCarrierId */
289 static int hf_HI2Operations_old = -1;             /* CallId */
290 static int hf_HI2Operations_redirectedto = -1;    /* PartyId */
291 static int hf_HI2Operations_new = -1;             /* CallId */
292 static int hf_HI2Operations_redirectedfrom = -1;  /* PartyId */
293 static int hf_HI2Operations_relatedCallId = -1;   /* CallId */
294 static int hf_HI2Operations_serviceName = -1;     /* VisibleString_SIZE_1_128_ */
295 static int hf_HI2Operations_firstCallCalling = -1;  /* PartyId */
296 static int hf_HI2Operations_secondCallCalling = -1;  /* PartyId */
297 static int hf_HI2Operations_signal = -1;          /* T_signal */
298 static int hf_HI2Operations_switchhookFlash = -1;  /* VisibleString_SIZE_1_128_ */
299 static int hf_HI2Operations_dialedDigits = -1;    /* VisibleString_SIZE_1_128_ */
300 static int hf_HI2Operations_featureKey = -1;      /* VisibleString_SIZE_1_128_ */
301 static int hf_HI2Operations_otherSignalingInformation = -1;  /* VisibleString_SIZE_1_128_ */
302 static int hf_HI2Operations_redirectedFromInfo = -1;  /* RedirectedFromInfo */
303 static int hf_HI2Operations_sequencenumber = -1;  /* VisibleString_SIZE_1_25_ */
304 static int hf_HI2Operations_systemidentity = -1;  /* VisibleString_SIZE_1_15_ */
305 static int hf_HI2Operations_combCCC = -1;         /* VisibleString_SIZE_1_20_ */
306 static int hf_HI2Operations_sepCCCpair = -1;      /* T_sepCCCpair */
307 static int hf_HI2Operations_sepXmitCCC = -1;      /* VisibleString_SIZE_1_20_ */
308 static int hf_HI2Operations_sepRecvCCC = -1;      /* VisibleString_SIZE_1_20_ */
309 static int hf_HI2Operations_dn = -1;              /* VisibleString_SIZE_1_15_ */
310 static int hf_HI2Operations_userProvided = -1;    /* VisibleString_SIZE_1_15_ */
311 static int hf_HI2Operations_reserved6 = -1;       /* NULL */
312 static int hf_HI2Operations_reserved7 = -1;       /* NULL */
313 static int hf_HI2Operations_ipAddress_01 = -1;    /* VisibleString_SIZE_1_32_ */
314 static int hf_HI2Operations_reserved8 = -1;       /* NULL */
315 static int hf_HI2Operations_trunkId = -1;         /* VisibleString_SIZE_1_32_ */
316 static int hf_HI2Operations_reserved9 = -1;       /* NULL */
317 static int hf_HI2Operations_genericAddress = -1;  /* VisibleString_SIZE_1_32_ */
318 static int hf_HI2Operations_genericDigits = -1;   /* VisibleString_SIZE_1_32_ */
319 static int hf_HI2Operations_genericName = -1;     /* VisibleString_SIZE_1_48_ */
320 static int hf_HI2Operations_port = -1;            /* VisibleString_SIZE_1_32_ */
321 static int hf_HI2Operations_context = -1;         /* VisibleString_SIZE_1_32_ */
322 static int hf_HI2Operations_lastRedirecting = -1;  /* PartyId */
323 static int hf_HI2Operations_originalCalled = -1;  /* PartyId */
324 static int hf_HI2Operations_numRedirections = -1;  /* INTEGER_1_100_ */
325 static int hf_HI2Operations_generalDisplay = -1;  /* VisibleString_SIZE_1_80_ */
326 static int hf_HI2Operations_calledNumber = -1;    /* VisibleString_SIZE_1_40_ */
327 static int hf_HI2Operations_callingNumber = -1;   /* VisibleString_SIZE_1_40_ */
328 static int hf_HI2Operations_callingName = -1;     /* VisibleString_SIZE_1_40_ */
329 static int hf_HI2Operations_originalCalledNumber = -1;  /* VisibleString_SIZE_1_40_ */
330 static int hf_HI2Operations_lastRedirectingNumber = -1;  /* VisibleString_SIZE_1_40_ */
331 static int hf_HI2Operations_redirectingName = -1;  /* VisibleString_SIZE_1_40_ */
332 static int hf_HI2Operations_redirectingReason = -1;  /* VisibleString_SIZE_1_40_ */
333 static int hf_HI2Operations_messageWaitingNotif = -1;  /* VisibleString_SIZE_1_40_ */
334 static int hf_HI2Operations_tLIInstanceid = -1;   /* TLIIdType */
335 static int hf_HI2Operations_targetLocation_01 = -1;  /* LocationType_en301040 */
336 static int hf_HI2Operations_targetAction = -1;    /* ActivityType */
337 static int hf_HI2Operations_supplementaryTargetaddress = -1;  /* AddressType */
338 static int hf_HI2Operations_cotargetaddress = -1;  /* SEQUENCE_OF_AddressType */
339 static int hf_HI2Operations_cotargetaddress_item = -1;  /* AddressType */
340 static int hf_HI2Operations_cotargetlocation = -1;  /* SEQUENCE_OF_LocationType_en301040 */
341 static int hf_HI2Operations_cotargetlocation_item = -1;  /* LocationType_en301040 */
342 static int hf_HI2Operations_targetlocation = -1;  /* LocationType_en301040 */
343 static int hf_HI2Operations_targetcommsid = -1;   /* CircuitIdType */
344 static int hf_HI2Operations_cotargetcommsid = -1;  /* SEQUENCE_OF_CircuitIdType */
345 static int hf_HI2Operations_cotargetcommsid_item = -1;  /* CircuitIdType */
346 static int hf_HI2Operations_trafficPacket = -1;   /* BIT_STRING */
347 static int hf_HI2Operations_cctivity = -1;        /* ActivityClassType */
348 static int hf_HI2Operations_callRelation = -1;    /* T_callRelation */
349 static int hf_HI2Operations_direction_01 = -1;    /* T_direction */
350 static int hf_HI2Operations_scope = -1;           /* T_scope */
351 static int hf_HI2Operations_cPlaneData = -1;      /* BIT_STRING */
352 static int hf_HI2Operations_sStype = -1;          /* SSType */
353 static int hf_HI2Operations_tSI = -1;             /* TSIType */
354 static int hf_HI2Operations_supplementaryAddress = -1;  /* SEQUENCE_OF_TETRAAddressType */
355 static int hf_HI2Operations_supplementaryAddress_item = -1;  /* TETRAAddressType */
356 static int hf_HI2Operations_tETRAaddress = -1;    /* TSIType */
357 static int hf_HI2Operations_pISNaddress = -1;     /* NumericString_SIZE_20 */
358 static int hf_HI2Operations_iP4address = -1;      /* BIT_STRING_SIZE_32 */
359 static int hf_HI2Operations_iP6address = -1;      /* BIT_STRING_SIZE_128 */
360 static int hf_HI2Operations_e164address = -1;     /* NumericString_SIZE_20 */
361 static int hf_HI2Operations_tEI = -1;             /* TEIType */
362 static int hf_HI2Operations_mSLoc = -1;           /* TETRACGIType */
363 static int hf_HI2Operations_lSLoc = -1;           /* TETRAAddressType */
364 static int hf_HI2Operations_mcc_01 = -1;          /* MCCType */
365 static int hf_HI2Operations_mnc_01 = -1;          /* MNCType */
366 static int hf_HI2Operations_lai_01 = -1;          /* LocationAreaType */
367 static int hf_HI2Operations_cI = -1;              /* CellIdType */
368 static int hf_HI2Operations_ssi = -1;             /* SSIType */
369
370 /*--- End of included file: packet-HI2Operations-hf.c ---*/
371 #line 45 "packet-HI2Operations-template.c"
372
373 /* Initialize the subtree pointers */
374
375 /*--- Included file: packet-HI2Operations-ett.c ---*/
376 #line 1 "packet-HI2Operations-ett.c"
377 static gint ett_HI2Operations_IRIsContent = -1;
378 static gint ett_HI2Operations_IRISequence = -1;
379 static gint ett_HI2Operations_IRIContent = -1;
380 static gint ett_HI2Operations_IRI_Parameters = -1;
381 static gint ett_HI2Operations_SET_SIZE_1_10_OF_PartyInformation = -1;
382 static gint ett_HI2Operations_T_callContentLinkInformation = -1;
383 static gint ett_HI2Operations_CommunicationIdentifier = -1;
384 static gint ett_HI2Operations_Network_Identifier = -1;
385 static gint ett_HI2Operations_Network_Element_Identifier = -1;
386 static gint ett_HI2Operations_TimeStamp = -1;
387 static gint ett_HI2Operations_LocalTimeStamp = -1;
388 static gint ett_HI2Operations_PartyInformation = -1;
389 static gint ett_HI2Operations_T_partyIdentity = -1;
390 static gint ett_HI2Operations_CallingPartyNumber = -1;
391 static gint ett_HI2Operations_CalledPartyNumber = -1;
392 static gint ett_HI2Operations_Location = -1;
393 static gint ett_HI2Operations_TetraLocation = -1;
394 static gint ett_HI2Operations_T_ms_Loc = -1;
395 static gint ett_HI2Operations_GSMLocation = -1;
396 static gint ett_HI2Operations_T_geoCoordinates = -1;
397 static gint ett_HI2Operations_T_utmCoordinates = -1;
398 static gint ett_HI2Operations_T_utmRefCoordinates = -1;
399 static gint ett_HI2Operations_UMTSLocation = -1;
400 static gint ett_HI2Operations_GeographicalCoordinates = -1;
401 static gint ett_HI2Operations_GA_Point = -1;
402 static gint ett_HI2Operations_GA_PointWithUnCertainty = -1;
403 static gint ett_HI2Operations_GA_Polygon = -1;
404 static gint ett_HI2Operations_GA_Polygon_item = -1;
405 static gint ett_HI2Operations_CallContentLinkCharacteristics = -1;
406 static gint ett_HI2Operations_Services_Information = -1;
407 static gint ett_HI2Operations_ISUP_parameters = -1;
408 static gint ett_HI2Operations_DSS1_parameters_codeset_0 = -1;
409 static gint ett_HI2Operations_MAP_parameters = -1;
410 static gint ett_HI2Operations_Supplementary_Services = -1;
411 static gint ett_HI2Operations_Standard_Supplementary_Services = -1;
412 static gint ett_HI2Operations_Non_Standard_Supplementary_Services = -1;
413 static gint ett_HI2Operations_Non_Standard_Supplementary_Services_item = -1;
414 static gint ett_HI2Operations_Other_Services = -1;
415 static gint ett_HI2Operations_ISUP_SS_parameters = -1;
416 static gint ett_HI2Operations_DSS1_SS_parameters_codeset_0 = -1;
417 static gint ett_HI2Operations_DSS1_SS_parameters_codeset_4 = -1;
418 static gint ett_HI2Operations_DSS1_SS_parameters_codeset_5 = -1;
419 static gint ett_HI2Operations_DSS1_SS_parameters_codeset_6 = -1;
420 static gint ett_HI2Operations_DSS1_SS_parameters_codeset_7 = -1;
421 static gint ett_HI2Operations_DSS1_SS_Invoke_Components = -1;
422 static gint ett_HI2Operations_MAP_SS_Invoke_Components = -1;
423 static gint ett_HI2Operations_MAP_SS_Parameters = -1;
424 static gint ett_HI2Operations_SMS_report = -1;
425 static gint ett_HI2Operations_T_sMS_Contents = -1;
426 static gint ett_HI2Operations_National_Parameters = -1;
427 static gint ett_HI2Operations_Services_Data_Information = -1;
428 static gint ett_HI2Operations_GPRS_parameters = -1;
429 static gint ett_HI2Operations_DataNodeAddress = -1;
430 static gint ett_HI2Operations_IPAddress = -1;
431 static gint ett_HI2Operations_IP_value = -1;
432 static gint ett_HI2Operations_National_HI2_ASN1parameters = -1;
433 static gint ett_HI2Operations_UmtsQos = -1;
434 static gint ett_HI2Operations_CorrelationValues = -1;
435 static gint ett_HI2Operations_T_both_IRI_CC = -1;
436 static gint ett_HI2Operations_IRI_to_CC_Correlation = -1;
437 static gint ett_HI2Operations_T_cc = -1;
438 static gint ett_HI2Operations_TARGETACTIVITYMONITOR_1 = -1;
439 static gint ett_HI2Operations_UserSignalType = -1;
440 static gint ett_HI2Operations_LocationType = -1;
441 static gint ett_HI2Operations_CdcPdu = -1;
442 static gint ett_HI2Operations_Message = -1;
443 static gint ett_HI2Operations_Answer = -1;
444 static gint ett_HI2Operations_CCChange = -1;
445 static gint ett_HI2Operations_CCClose = -1;
446 static gint ett_HI2Operations_CCOpen = -1;
447 static gint ett_HI2Operations_T_ccOpenOption = -1;
448 static gint ett_HI2Operations_SEQUENCE_OF_CallId = -1;
449 static gint ett_HI2Operations_MediaReport = -1;
450 static gint ett_HI2Operations_NetworkSignal = -1;
451 static gint ett_HI2Operations_Origination = -1;
452 static gint ett_HI2Operations_T_input = -1;
453 static gint ett_HI2Operations_Redirection = -1;
454 static gint ett_HI2Operations_Release = -1;
455 static gint ett_HI2Operations_ServiceInstance = -1;
456 static gint ett_HI2Operations_SubjectSignal = -1;
457 static gint ett_HI2Operations_T_signal = -1;
458 static gint ett_HI2Operations_TerminationAttempt = -1;
459 static gint ett_HI2Operations_CallId = -1;
460 static gint ett_HI2Operations_CCCId = -1;
461 static gint ett_HI2Operations_T_sepCCCpair = -1;
462 static gint ett_HI2Operations_PartyId = -1;
463 static gint ett_HI2Operations_RedirectedFromInfo = -1;
464 static gint ett_HI2Operations_TerminalDisplayInfo = -1;
465 static gint ett_HI2Operations_TARGETACTIVITYMONITORind = -1;
466 static gint ett_HI2Operations_SEQUENCE_OF_AddressType = -1;
467 static gint ett_HI2Operations_SEQUENCE_OF_LocationType_en301040 = -1;
468 static gint ett_HI2Operations_TARGETCOMMSMONITORind = -1;
469 static gint ett_HI2Operations_SEQUENCE_OF_CircuitIdType = -1;
470 static gint ett_HI2Operations_TTRAFFICind = -1;
471 static gint ett_HI2Operations_CTTRAFFICind = -1;
472 static gint ett_HI2Operations_ActivityType = -1;
473 static gint ett_HI2Operations_AddressType = -1;
474 static gint ett_HI2Operations_SEQUENCE_OF_TETRAAddressType = -1;
475 static gint ett_HI2Operations_TETRAAddressType = -1;
476 static gint ett_HI2Operations_LocationType_en301040 = -1;
477 static gint ett_HI2Operations_TETRACGIType = -1;
478 static gint ett_HI2Operations_TSIType = -1;
479
480 /*--- End of included file: packet-HI2Operations-ett.c ---*/
481 #line 48 "packet-HI2Operations-template.c"
482
483
484 /*--- Included file: packet-HI2Operations-fn.c ---*/
485 #line 1 "packet-HI2Operations-fn.c"
486
487
488 static int
489 dissect_HI2Operations_OBJECT_IDENTIFIER(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
490   offset = dissect_ber_object_identifier(implicit_tag, actx, tree, tvb, offset, hf_index, NULL);
491
492   return offset;
493 }
494
495
496 static const value_string HI2Operations_T_iRIversion_vals[] = {
497   {   2, "version2" },
498   {   3, "version3" },
499   {   4, "version4" },
500   {   5, "version5" },
501   {   6, "version6" },
502   {   7, "version7" },
503   {   8, "lastVersion" },
504   { 0, NULL }
505 };
506
507
508 static int
509 dissect_HI2Operations_T_iRIversion(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
510   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
511                                   NULL);
512
513   return offset;
514 }
515
516
517
518 static int
519 dissect_HI2Operations_LawfulInterceptionIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
520   offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
521                                        NULL);
522
523   return offset;
524 }
525
526
527
528 static int
529 dissect_HI2Operations_OCTET_STRING_SIZE_1_8(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
530   offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
531                                        NULL);
532
533   return offset;
534 }
535
536
537
538 static int
539 dissect_HI2Operations_OCTET_STRING_SIZE_1_5(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
540   offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
541                                        NULL);
542
543   return offset;
544 }
545
546
547
548 static int
549 dissect_HI2Operations_OCTET_STRING_SIZE_1_25(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
550   offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
551                                        NULL);
552
553   return offset;
554 }
555
556
557 static const value_string HI2Operations_T_iP_type_vals[] = {
558   {   0, "iPV4" },
559   {   1, "iPV6" },
560   { 0, NULL }
561 };
562
563
564 static int
565 dissect_HI2Operations_T_iP_type(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
566   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
567                                   NULL);
568
569   return offset;
570 }
571
572
573
574 static int
575 dissect_HI2Operations_OCTET_STRING_SIZE_4_16(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
576   offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
577                                        NULL);
578
579   return offset;
580 }
581
582
583
584 static int
585 dissect_HI2Operations_IA5String_SIZE_7_45(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
586   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_IA5String,
587                                             actx, tree, tvb, offset, hf_index,
588                                             NULL);
589
590   return offset;
591 }
592
593
594 static const value_string HI2Operations_IP_value_vals[] = {
595   {   1, "iPBinaryAddress" },
596   {   2, "iPTextAddress" },
597   { 0, NULL }
598 };
599
600 static const ber_choice_t IP_value_choice[] = {
601   {   1, &hf_HI2Operations_iPBinaryAddress, BER_CLASS_CON, 1, 0, dissect_HI2Operations_OCTET_STRING_SIZE_4_16 },
602   {   2, &hf_HI2Operations_iPTextAddress, BER_CLASS_CON, 2, 0, dissect_HI2Operations_IA5String_SIZE_7_45 },
603   { 0, NULL, 0, 0, 0, NULL }
604 };
605
606 static int
607 dissect_HI2Operations_IP_value(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
608   offset = dissect_ber_choice(actx, tree, tvb, offset,
609                                  IP_value_choice, hf_index, ett_HI2Operations_IP_value,
610                                  NULL);
611
612   return offset;
613 }
614
615
616 static const value_string HI2Operations_T_iP_assignment_vals[] = {
617   {   1, "static" },
618   {   2, "dynamic" },
619   {   3, "notKnown" },
620   { 0, NULL }
621 };
622
623
624 static int
625 dissect_HI2Operations_T_iP_assignment(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
626   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
627                                   NULL);
628
629   return offset;
630 }
631
632
633 static const ber_sequence_t IPAddress_sequence[] = {
634   { &hf_HI2Operations_iP_type, BER_CLASS_CON, 1, 0, dissect_HI2Operations_T_iP_type },
635   { &hf_HI2Operations_iP_value, BER_CLASS_CON, 2, BER_FLAGS_NOTCHKTAG, dissect_HI2Operations_IP_value },
636   { &hf_HI2Operations_iP_assignment, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_HI2Operations_T_iP_assignment },
637   { NULL, 0, 0, 0, NULL }
638 };
639
640 static int
641 dissect_HI2Operations_IPAddress(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
642   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
643                                    IPAddress_sequence, hf_index, ett_HI2Operations_IPAddress);
644
645   return offset;
646 }
647
648
649 static const value_string HI2Operations_Network_Element_Identifier_vals[] = {
650   {   1, "e164-Format" },
651   {   2, "x25-Format" },
652   {   3, "iP-Format" },
653   {   4, "dNS-Format" },
654   {   5, "iP-Address" },
655   { 0, NULL }
656 };
657
658 static const ber_choice_t Network_Element_Identifier_choice[] = {
659   {   1, &hf_HI2Operations_e164_Format, BER_CLASS_CON, 1, 0, dissect_HI2Operations_OCTET_STRING_SIZE_1_25 },
660   {   2, &hf_HI2Operations_x25_Format, BER_CLASS_CON, 2, 0, dissect_HI2Operations_OCTET_STRING_SIZE_1_25 },
661   {   3, &hf_HI2Operations_iP_Format, BER_CLASS_CON, 3, 0, dissect_HI2Operations_OCTET_STRING_SIZE_1_25 },
662   {   4, &hf_HI2Operations_dNS_Format, BER_CLASS_CON, 4, 0, dissect_HI2Operations_OCTET_STRING_SIZE_1_25 },
663   {   5, &hf_HI2Operations_iP_Address, BER_CLASS_CON, 5, 0, dissect_HI2Operations_IPAddress },
664   { 0, NULL, 0, 0, 0, NULL }
665 };
666
667 static int
668 dissect_HI2Operations_Network_Element_Identifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
669   offset = dissect_ber_choice(actx, tree, tvb, offset,
670                                  Network_Element_Identifier_choice, hf_index, ett_HI2Operations_Network_Element_Identifier,
671                                  NULL);
672
673   return offset;
674 }
675
676
677 static const ber_sequence_t Network_Identifier_sequence[] = {
678   { &hf_HI2Operations_operator_Identifier, BER_CLASS_CON, 0, 0, dissect_HI2Operations_OCTET_STRING_SIZE_1_5 },
679   { &hf_HI2Operations_network_Element_Identifier, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_HI2Operations_Network_Element_Identifier },
680   { NULL, 0, 0, 0, NULL }
681 };
682
683 static int
684 dissect_HI2Operations_Network_Identifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
685   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
686                                    Network_Identifier_sequence, hf_index, ett_HI2Operations_Network_Identifier);
687
688   return offset;
689 }
690
691
692 static const ber_sequence_t CommunicationIdentifier_sequence[] = {
693   { &hf_HI2Operations_communication_Identity_Number, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_HI2Operations_OCTET_STRING_SIZE_1_8 },
694   { &hf_HI2Operations_network_Identifier, BER_CLASS_CON, 1, 0, dissect_HI2Operations_Network_Identifier },
695   { NULL, 0, 0, 0, NULL }
696 };
697
698 static int
699 dissect_HI2Operations_CommunicationIdentifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
700   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
701                                    CommunicationIdentifier_sequence, hf_index, ett_HI2Operations_CommunicationIdentifier);
702
703   return offset;
704 }
705
706
707
708 static int
709 dissect_HI2Operations_GeneralizedTime(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
710   offset = dissect_ber_GeneralizedTime(implicit_tag, actx, tree, tvb, offset, hf_index);
711
712   return offset;
713 }
714
715
716 static const value_string HI2Operations_T_winterSummerIndication_vals[] = {
717   {   0, "notProvided" },
718   {   1, "winterTime" },
719   {   2, "summerTime" },
720   { 0, NULL }
721 };
722
723
724 static int
725 dissect_HI2Operations_T_winterSummerIndication(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
726   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
727                                   NULL);
728
729   return offset;
730 }
731
732
733 static const ber_sequence_t LocalTimeStamp_sequence[] = {
734   { &hf_HI2Operations_generalizedTime, BER_CLASS_CON, 0, 0, dissect_HI2Operations_GeneralizedTime },
735   { &hf_HI2Operations_winterSummerIndication, BER_CLASS_CON, 1, 0, dissect_HI2Operations_T_winterSummerIndication },
736   { NULL, 0, 0, 0, NULL }
737 };
738
739 static int
740 dissect_HI2Operations_LocalTimeStamp(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
741   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
742                                    LocalTimeStamp_sequence, hf_index, ett_HI2Operations_LocalTimeStamp);
743
744   return offset;
745 }
746
747
748
749 static int
750 dissect_HI2Operations_UTCTime(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
751   offset = dissect_ber_UTCTime(implicit_tag, actx, tree, tvb, offset, hf_index);
752
753   return offset;
754 }
755
756
757 static const value_string HI2Operations_TimeStamp_vals[] = {
758   {   0, "localTime" },
759   {   1, "utcTime" },
760   { 0, NULL }
761 };
762
763 static const ber_choice_t TimeStamp_choice[] = {
764   {   0, &hf_HI2Operations_localTime, BER_CLASS_CON, 0, 0, dissect_HI2Operations_LocalTimeStamp },
765   {   1, &hf_HI2Operations_utcTime, BER_CLASS_CON, 1, 0, dissect_HI2Operations_UTCTime },
766   { 0, NULL, 0, 0, 0, NULL }
767 };
768
769 static int
770 dissect_HI2Operations_TimeStamp(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
771   offset = dissect_ber_choice(actx, tree, tvb, offset,
772                                  TimeStamp_choice, hf_index, ett_HI2Operations_TimeStamp,
773                                  NULL);
774
775   return offset;
776 }
777
778
779 static const value_string HI2Operations_T_intercepted_Call_Direct_vals[] = {
780   {   0, "not-Available" },
781   {   1, "originating-Target" },
782   {   2, "terminating-Target" },
783   { 0, NULL }
784 };
785
786
787 static int
788 dissect_HI2Operations_T_intercepted_Call_Direct(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
789   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
790                                   NULL);
791
792   return offset;
793 }
794
795
796 static const value_string HI2Operations_Intercepted_Call_State_vals[] = {
797   {   1, "idle" },
798   {   2, "setUpInProcess" },
799   {   3, "connected" },
800   { 0, NULL }
801 };
802
803
804 static int
805 dissect_HI2Operations_Intercepted_Call_State(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
806   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
807                                   NULL);
808
809   return offset;
810 }
811
812
813
814 static int
815 dissect_HI2Operations_OCTET_STRING_SIZE_3(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
816   offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
817                                        NULL);
818
819   return offset;
820 }
821
822
823
824 static int
825 dissect_HI2Operations_OCTET_STRING_SIZE_5_7(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
826   offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
827                                        NULL);
828
829   return offset;
830 }
831
832
833
834 static int
835 dissect_HI2Operations_INTEGER_0_1023(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
836   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
837                                                 NULL);
838
839   return offset;
840 }
841
842
843
844 static int
845 dissect_HI2Operations_INTEGER_0_16383(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
846   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
847                                                 NULL);
848
849   return offset;
850 }
851
852
853
854 static int
855 dissect_HI2Operations_INTEGER_0_65535(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
856   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
857                                                 NULL);
858
859   return offset;
860 }
861
862
863
864 static int
865 dissect_HI2Operations_INTEGER(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
866   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
867                                                 NULL);
868
869   return offset;
870 }
871
872
873 static const ber_sequence_t T_ms_Loc_sequence[] = {
874   { &hf_HI2Operations_mcc   , BER_CLASS_CON, 1, 0, dissect_HI2Operations_INTEGER_0_1023 },
875   { &hf_HI2Operations_mnc   , BER_CLASS_CON, 2, 0, dissect_HI2Operations_INTEGER_0_16383 },
876   { &hf_HI2Operations_lai   , BER_CLASS_CON, 3, 0, dissect_HI2Operations_INTEGER_0_65535 },
877   { &hf_HI2Operations_ci    , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_HI2Operations_INTEGER },
878   { NULL, 0, 0, 0, NULL }
879 };
880
881 static int
882 dissect_HI2Operations_T_ms_Loc(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
883   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
884                                    T_ms_Loc_sequence, hf_index, ett_HI2Operations_T_ms_Loc);
885
886   return offset;
887 }
888
889
890 static const value_string HI2Operations_TetraLocation_vals[] = {
891   {   1, "ms-Loc" },
892   {   2, "ls-Loc" },
893   { 0, NULL }
894 };
895
896 static const ber_choice_t TetraLocation_choice[] = {
897   {   1, &hf_HI2Operations_ms_Loc, BER_CLASS_CON, 1, 0, dissect_HI2Operations_T_ms_Loc },
898   {   2, &hf_HI2Operations_ls_Loc, BER_CLASS_CON, 2, 0, dissect_HI2Operations_INTEGER },
899   { 0, NULL, 0, 0, 0, NULL }
900 };
901
902 static int
903 dissect_HI2Operations_TetraLocation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
904   offset = dissect_ber_choice(actx, tree, tvb, offset,
905                                  TetraLocation_choice, hf_index, ett_HI2Operations_TetraLocation,
906                                  NULL);
907
908   return offset;
909 }
910
911
912
913 static int
914 dissect_HI2Operations_OCTET_STRING_SIZE_6(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
915   offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
916                                        NULL);
917
918   return offset;
919 }
920
921
922
923 static int
924 dissect_HI2Operations_PrintableString_SIZE_7_10(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
925   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString,
926                                             actx, tree, tvb, offset, hf_index,
927                                             NULL);
928
929   return offset;
930 }
931
932
933
934 static int
935 dissect_HI2Operations_PrintableString_SIZE_8_11(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
936   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString,
937                                             actx, tree, tvb, offset, hf_index,
938                                             NULL);
939
940   return offset;
941 }
942
943
944 static const value_string HI2Operations_MapDatum_vals[] = {
945   {   0, "wGS84" },
946   {   1, "wGS72" },
947   {   2, "eD50" },
948   { 0, NULL }
949 };
950
951
952 static int
953 dissect_HI2Operations_MapDatum(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
954   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
955                                   NULL);
956
957   return offset;
958 }
959
960
961
962 static int
963 dissect_HI2Operations_INTEGER_0_359(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
964   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
965                                                 NULL);
966
967   return offset;
968 }
969
970
971 static const ber_sequence_t T_geoCoordinates_sequence[] = {
972   { &hf_HI2Operations_latitude, BER_CLASS_CON, 1, 0, dissect_HI2Operations_PrintableString_SIZE_7_10 },
973   { &hf_HI2Operations_longitude, BER_CLASS_CON, 2, 0, dissect_HI2Operations_PrintableString_SIZE_8_11 },
974   { &hf_HI2Operations_mapDatum, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_HI2Operations_MapDatum },
975   { &hf_HI2Operations_azimuth, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_HI2Operations_INTEGER_0_359 },
976   { NULL, 0, 0, 0, NULL }
977 };
978
979 static int
980 dissect_HI2Operations_T_geoCoordinates(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
981   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
982                                    T_geoCoordinates_sequence, hf_index, ett_HI2Operations_T_geoCoordinates);
983
984   return offset;
985 }
986
987
988
989 static int
990 dissect_HI2Operations_PrintableString_SIZE_10(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
991   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString,
992                                             actx, tree, tvb, offset, hf_index,
993                                             NULL);
994
995   return offset;
996 }
997
998
999
1000 static int
1001 dissect_HI2Operations_PrintableString_SIZE_7(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1002   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString,
1003                                             actx, tree, tvb, offset, hf_index,
1004                                             NULL);
1005
1006   return offset;
1007 }
1008
1009
1010 static const ber_sequence_t T_utmCoordinates_sequence[] = {
1011   { &hf_HI2Operations_utm_East, BER_CLASS_CON, 1, 0, dissect_HI2Operations_PrintableString_SIZE_10 },
1012   { &hf_HI2Operations_utm_North, BER_CLASS_CON, 2, 0, dissect_HI2Operations_PrintableString_SIZE_7 },
1013   { &hf_HI2Operations_mapDatum, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_HI2Operations_MapDatum },
1014   { &hf_HI2Operations_azimuth, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_HI2Operations_INTEGER_0_359 },
1015   { NULL, 0, 0, 0, NULL }
1016 };
1017
1018 static int
1019 dissect_HI2Operations_T_utmCoordinates(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1020   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1021                                    T_utmCoordinates_sequence, hf_index, ett_HI2Operations_T_utmCoordinates);
1022
1023   return offset;
1024 }
1025
1026
1027
1028 static int
1029 dissect_HI2Operations_PrintableString_SIZE_13(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1030   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString,
1031                                             actx, tree, tvb, offset, hf_index,
1032                                             NULL);
1033
1034   return offset;
1035 }
1036
1037
1038 static const ber_sequence_t T_utmRefCoordinates_sequence[] = {
1039   { &hf_HI2Operations_utmref_string, BER_CLASS_CON, 2, 0, dissect_HI2Operations_PrintableString_SIZE_13 },
1040   { &hf_HI2Operations_mapDatum, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_HI2Operations_MapDatum },
1041   { NULL, 0, 0, 0, NULL }
1042 };
1043
1044 static int
1045 dissect_HI2Operations_T_utmRefCoordinates(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1046   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1047                                    T_utmRefCoordinates_sequence, hf_index, ett_HI2Operations_T_utmRefCoordinates);
1048
1049   return offset;
1050 }
1051
1052
1053
1054 static int
1055 dissect_HI2Operations_OCTET_STRING(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1056   offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
1057                                        NULL);
1058
1059   return offset;
1060 }
1061
1062
1063 static const value_string HI2Operations_GSMLocation_vals[] = {
1064   {   1, "geoCoordinates" },
1065   {   2, "utmCoordinates" },
1066   {   3, "utmRefCoordinates" },
1067   {   4, "wGS84Coordinates" },
1068   { 0, NULL }
1069 };
1070
1071 static const ber_choice_t GSMLocation_choice[] = {
1072   {   1, &hf_HI2Operations_geoCoordinates, BER_CLASS_CON, 1, 0, dissect_HI2Operations_T_geoCoordinates },
1073   {   2, &hf_HI2Operations_utmCoordinates, BER_CLASS_CON, 2, 0, dissect_HI2Operations_T_utmCoordinates },
1074   {   3, &hf_HI2Operations_utmRefCoordinates, BER_CLASS_CON, 3, 0, dissect_HI2Operations_T_utmRefCoordinates },
1075   {   4, &hf_HI2Operations_wGS84Coordinates, BER_CLASS_CON, 4, 0, dissect_HI2Operations_OCTET_STRING },
1076   { 0, NULL, 0, 0, 0, NULL }
1077 };
1078
1079 static int
1080 dissect_HI2Operations_GSMLocation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1081   offset = dissect_ber_choice(actx, tree, tvb, offset,
1082                                  GSMLocation_choice, hf_index, ett_HI2Operations_GSMLocation,
1083                                  NULL);
1084
1085   return offset;
1086 }
1087
1088
1089 static const value_string HI2Operations_T_latitudeSign_vals[] = {
1090   {   0, "north" },
1091   {   1, "south" },
1092   { 0, NULL }
1093 };
1094
1095
1096 static int
1097 dissect_HI2Operations_T_latitudeSign(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1098   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1099                                   NULL);
1100
1101   return offset;
1102 }
1103
1104
1105
1106 static int
1107 dissect_HI2Operations_INTEGER_0_8388607(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1108   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1109                                                 NULL);
1110
1111   return offset;
1112 }
1113
1114
1115
1116 static int
1117 dissect_HI2Operations_INTEGER_M8388608_8388607(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1118   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1119                                                 NULL);
1120
1121   return offset;
1122 }
1123
1124
1125 static const ber_sequence_t GeographicalCoordinates_sequence[] = {
1126   { &hf_HI2Operations_latitudeSign, BER_CLASS_CON, 0, 0, dissect_HI2Operations_T_latitudeSign },
1127   { &hf_HI2Operations_latitude_01, BER_CLASS_CON, 1, 0, dissect_HI2Operations_INTEGER_0_8388607 },
1128   { &hf_HI2Operations_longitude_01, BER_CLASS_CON, 2, 0, dissect_HI2Operations_INTEGER_M8388608_8388607 },
1129   { NULL, 0, 0, 0, NULL }
1130 };
1131
1132 static int
1133 dissect_HI2Operations_GeographicalCoordinates(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1134   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1135                                    GeographicalCoordinates_sequence, hf_index, ett_HI2Operations_GeographicalCoordinates);
1136
1137   return offset;
1138 }
1139
1140
1141 static const ber_sequence_t GA_Point_sequence[] = {
1142   { &hf_HI2Operations_geographicalCoordinates, BER_CLASS_CON, 0, 0, dissect_HI2Operations_GeographicalCoordinates },
1143   { NULL, 0, 0, 0, NULL }
1144 };
1145
1146 static int
1147 dissect_HI2Operations_GA_Point(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1148   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1149                                    GA_Point_sequence, hf_index, ett_HI2Operations_GA_Point);
1150
1151   return offset;
1152 }
1153
1154
1155
1156 static int
1157 dissect_HI2Operations_INTEGER_0_127(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1158   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1159                                                 NULL);
1160
1161   return offset;
1162 }
1163
1164
1165 static const ber_sequence_t GA_PointWithUnCertainty_sequence[] = {
1166   { &hf_HI2Operations_geographicalCoordinates, BER_CLASS_CON, 0, 0, dissect_HI2Operations_GeographicalCoordinates },
1167   { &hf_HI2Operations_uncertaintyCode, BER_CLASS_CON, 1, 0, dissect_HI2Operations_INTEGER_0_127 },
1168   { NULL, 0, 0, 0, NULL }
1169 };
1170
1171 static int
1172 dissect_HI2Operations_GA_PointWithUnCertainty(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1173   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1174                                    GA_PointWithUnCertainty_sequence, hf_index, ett_HI2Operations_GA_PointWithUnCertainty);
1175
1176   return offset;
1177 }
1178
1179
1180 static const ber_sequence_t GA_Polygon_item_sequence[] = {
1181   { &hf_HI2Operations_geographicalCoordinates, BER_CLASS_CON, 0, 0, dissect_HI2Operations_GeographicalCoordinates },
1182   { NULL, 0, 0, 0, NULL }
1183 };
1184
1185 static int
1186 dissect_HI2Operations_GA_Polygon_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1187   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1188                                    GA_Polygon_item_sequence, hf_index, ett_HI2Operations_GA_Polygon_item);
1189
1190   return offset;
1191 }
1192
1193
1194 static const ber_sequence_t GA_Polygon_sequence_of[1] = {
1195   { &hf_HI2Operations_GA_Polygon_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_HI2Operations_GA_Polygon_item },
1196 };
1197
1198 static int
1199 dissect_HI2Operations_GA_Polygon(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1200   offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
1201                                       GA_Polygon_sequence_of, hf_index, ett_HI2Operations_GA_Polygon);
1202
1203   return offset;
1204 }
1205
1206
1207 static const value_string HI2Operations_UMTSLocation_vals[] = {
1208   {   1, "point" },
1209   {   2, "pointWithUnCertainty" },
1210   {   3, "polygon" },
1211   { 0, NULL }
1212 };
1213
1214 static const ber_choice_t UMTSLocation_choice[] = {
1215   {   1, &hf_HI2Operations_point , BER_CLASS_CON, 1, 0, dissect_HI2Operations_GA_Point },
1216   {   2, &hf_HI2Operations_pointWithUnCertainty, BER_CLASS_CON, 2, 0, dissect_HI2Operations_GA_PointWithUnCertainty },
1217   {   3, &hf_HI2Operations_polygon, BER_CLASS_CON, 3, 0, dissect_HI2Operations_GA_Polygon },
1218   { 0, NULL, 0, 0, 0, NULL }
1219 };
1220
1221 static int
1222 dissect_HI2Operations_UMTSLocation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1223   offset = dissect_ber_choice(actx, tree, tvb, offset,
1224                                  UMTSLocation_choice, hf_index, ett_HI2Operations_UMTSLocation,
1225                                  NULL);
1226
1227   return offset;
1228 }
1229
1230
1231
1232 static int
1233 dissect_HI2Operations_OCTET_STRING_SIZE_7(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1234   offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
1235                                        NULL);
1236
1237   return offset;
1238 }
1239
1240
1241 static const ber_sequence_t Location_sequence[] = {
1242   { &hf_HI2Operations_e164_Number, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_HI2Operations_OCTET_STRING_SIZE_1_25 },
1243   { &hf_HI2Operations_globalCellID, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_HI2Operations_OCTET_STRING_SIZE_5_7 },
1244   { &hf_HI2Operations_tetraLocation, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_HI2Operations_TetraLocation },
1245   { &hf_HI2Operations_rAI   , BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_HI2Operations_OCTET_STRING_SIZE_6 },
1246   { &hf_HI2Operations_gsmLocation, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_HI2Operations_GSMLocation },
1247   { &hf_HI2Operations_umtsLocation, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_HI2Operations_UMTSLocation },
1248   { &hf_HI2Operations_sAI   , BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL, dissect_HI2Operations_OCTET_STRING_SIZE_7 },
1249   { &hf_HI2Operations_oldRAI, BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL, dissect_HI2Operations_OCTET_STRING_SIZE_6 },
1250   { NULL, 0, 0, 0, NULL }
1251 };
1252
1253 static int
1254 dissect_HI2Operations_Location(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1255   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1256                                    Location_sequence, hf_index, ett_HI2Operations_Location);
1257
1258   return offset;
1259 }
1260
1261
1262 static const value_string HI2Operations_T_party_Qualifier_vals[] = {
1263   {   0, "originating-Party" },
1264   {   1, "terminating-Party" },
1265   {   2, "forwarded-to-Party" },
1266   {   3, "gPRS-Target" },
1267   { 0, NULL }
1268 };
1269
1270
1271 static int
1272 dissect_HI2Operations_T_party_Qualifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1273   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1274                                   NULL);
1275
1276   return offset;
1277 }
1278
1279
1280
1281 static int
1282 dissect_HI2Operations_OCTET_STRING_SIZE_8(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1283   offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
1284                                        NULL);
1285
1286   return offset;
1287 }
1288
1289
1290
1291 static int
1292 dissect_HI2Operations_OCTET_STRING_SIZE_1_15(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1293   offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
1294                                        NULL);
1295
1296   return offset;
1297 }
1298
1299
1300
1301 static int
1302 dissect_HI2Operations_OCTET_STRING_SIZE_3_8(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1303   offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
1304                                        NULL);
1305
1306   return offset;
1307 }
1308
1309
1310 static const value_string HI2Operations_CallingPartyNumber_vals[] = {
1311   {   1, "iSUP-Format" },
1312   {   2, "dSS1-Format" },
1313   {   3, "mAP-Format" },
1314   { 0, NULL }
1315 };
1316
1317 static const ber_choice_t CallingPartyNumber_choice[] = {
1318   {   1, &hf_HI2Operations_iSUP_Format, BER_CLASS_CON, 1, 0, dissect_HI2Operations_OCTET_STRING_SIZE_1_25 },
1319   {   2, &hf_HI2Operations_dSS1_Format, BER_CLASS_CON, 2, 0, dissect_HI2Operations_OCTET_STRING_SIZE_1_25 },
1320   {   3, &hf_HI2Operations_mAP_Format, BER_CLASS_CON, 3, 0, dissect_HI2Operations_OCTET_STRING_SIZE_1_25 },
1321   { 0, NULL, 0, 0, 0, NULL }
1322 };
1323
1324 static int
1325 dissect_HI2Operations_CallingPartyNumber(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1326   offset = dissect_ber_choice(actx, tree, tvb, offset,
1327                                  CallingPartyNumber_choice, hf_index, ett_HI2Operations_CallingPartyNumber,
1328                                  NULL);
1329
1330   return offset;
1331 }
1332
1333
1334 static const value_string HI2Operations_CalledPartyNumber_vals[] = {
1335   {   1, "iSUP-Format" },
1336   {   2, "mAP-Format" },
1337   {   3, "dSS1-Format" },
1338   { 0, NULL }
1339 };
1340
1341 static const ber_choice_t CalledPartyNumber_choice[] = {
1342   {   1, &hf_HI2Operations_iSUP_Format, BER_CLASS_CON, 1, 0, dissect_HI2Operations_OCTET_STRING_SIZE_1_25 },
1343   {   2, &hf_HI2Operations_mAP_Format, BER_CLASS_CON, 2, 0, dissect_HI2Operations_OCTET_STRING_SIZE_1_25 },
1344   {   3, &hf_HI2Operations_dSS1_Format, BER_CLASS_CON, 3, 0, dissect_HI2Operations_OCTET_STRING_SIZE_1_25 },
1345   { 0, NULL, 0, 0, 0, NULL }
1346 };
1347
1348 static int
1349 dissect_HI2Operations_CalledPartyNumber(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1350   offset = dissect_ber_choice(actx, tree, tvb, offset,
1351                                  CalledPartyNumber_choice, hf_index, ett_HI2Operations_CalledPartyNumber,
1352                                  NULL);
1353
1354   return offset;
1355 }
1356
1357
1358
1359 static int
1360 dissect_HI2Operations_OCTET_STRING_SIZE_1_9(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1361   offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
1362                                        NULL);
1363
1364   return offset;
1365 }
1366
1367
1368 static const ber_sequence_t T_partyIdentity_sequence[] = {
1369   { &hf_HI2Operations_imei  , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_HI2Operations_OCTET_STRING_SIZE_8 },
1370   { &hf_HI2Operations_tei   , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_HI2Operations_OCTET_STRING_SIZE_1_15 },
1371   { &hf_HI2Operations_imsi  , BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_HI2Operations_OCTET_STRING_SIZE_3_8 },
1372   { &hf_HI2Operations_callingPartyNumber, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_HI2Operations_CallingPartyNumber },
1373   { &hf_HI2Operations_calledPartyNumber, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_HI2Operations_CalledPartyNumber },
1374   { &hf_HI2Operations_msISDN, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL, dissect_HI2Operations_OCTET_STRING_SIZE_1_9 },
1375   { &hf_HI2Operations_e164_Format, BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL, dissect_HI2Operations_OCTET_STRING_SIZE_1_25 },
1376   { &hf_HI2Operations_sip_uri, BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL, dissect_HI2Operations_OCTET_STRING },
1377   { &hf_HI2Operations_tel_url, BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL, dissect_HI2Operations_OCTET_STRING },
1378   { NULL, 0, 0, 0, NULL }
1379 };
1380
1381 static int
1382 dissect_HI2Operations_T_partyIdentity(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1383   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1384                                    T_partyIdentity_sequence, hf_index, ett_HI2Operations_T_partyIdentity);
1385
1386   return offset;
1387 }
1388
1389
1390
1391 static int
1392 dissect_HI2Operations_OCTET_STRING_SIZE_1_256(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1393   offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
1394                                        NULL);
1395
1396   return offset;
1397 }
1398
1399
1400 static const ber_sequence_t ISUP_parameters_set_of[1] = {
1401   { &hf_HI2Operations_ISUP_parameters_item, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_HI2Operations_OCTET_STRING_SIZE_1_256 },
1402 };
1403
1404 static int
1405 dissect_HI2Operations_ISUP_parameters(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1406   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1407                                  ISUP_parameters_set_of, hf_index, ett_HI2Operations_ISUP_parameters);
1408
1409   return offset;
1410 }
1411
1412
1413 static const ber_sequence_t DSS1_parameters_codeset_0_set_of[1] = {
1414   { &hf_HI2Operations_DSS1_parameters_codeset_0_item, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_HI2Operations_OCTET_STRING_SIZE_1_256 },
1415 };
1416
1417 static int
1418 dissect_HI2Operations_DSS1_parameters_codeset_0(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1419   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1420                                  DSS1_parameters_codeset_0_set_of, hf_index, ett_HI2Operations_DSS1_parameters_codeset_0);
1421
1422   return offset;
1423 }
1424
1425
1426 static const ber_sequence_t MAP_parameters_set_of[1] = {
1427   { &hf_HI2Operations_MAP_parameters_item, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_HI2Operations_OCTET_STRING_SIZE_1_256 },
1428 };
1429
1430 static int
1431 dissect_HI2Operations_MAP_parameters(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1432   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1433                                  MAP_parameters_set_of, hf_index, ett_HI2Operations_MAP_parameters);
1434
1435   return offset;
1436 }
1437
1438
1439 static const ber_sequence_t Services_Information_sequence[] = {
1440   { &hf_HI2Operations_iSUP_parameters, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_HI2Operations_ISUP_parameters },
1441   { &hf_HI2Operations_dSS1_parameters_codeset_0, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_HI2Operations_DSS1_parameters_codeset_0 },
1442   { &hf_HI2Operations_mAP_parameters, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_HI2Operations_MAP_parameters },
1443   { NULL, 0, 0, 0, NULL }
1444 };
1445
1446 static int
1447 dissect_HI2Operations_Services_Information(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1448   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1449                                    Services_Information_sequence, hf_index, ett_HI2Operations_Services_Information);
1450
1451   return offset;
1452 }
1453
1454
1455 static const ber_sequence_t ISUP_SS_parameters_set_of[1] = {
1456   { &hf_HI2Operations_ISUP_SS_parameters_item, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_HI2Operations_OCTET_STRING_SIZE_1_256 },
1457 };
1458
1459 static int
1460 dissect_HI2Operations_ISUP_SS_parameters(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1461   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1462                                  ISUP_SS_parameters_set_of, hf_index, ett_HI2Operations_ISUP_SS_parameters);
1463
1464   return offset;
1465 }
1466
1467
1468 static const ber_sequence_t DSS1_SS_parameters_codeset_0_set_of[1] = {
1469   { &hf_HI2Operations_DSS1_SS_parameters_codeset_0_item, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_HI2Operations_OCTET_STRING_SIZE_1_256 },
1470 };
1471
1472 static int
1473 dissect_HI2Operations_DSS1_SS_parameters_codeset_0(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1474   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1475                                  DSS1_SS_parameters_codeset_0_set_of, hf_index, ett_HI2Operations_DSS1_SS_parameters_codeset_0);
1476
1477   return offset;
1478 }
1479
1480
1481 static const ber_sequence_t DSS1_SS_parameters_codeset_4_set_of[1] = {
1482   { &hf_HI2Operations_DSS1_SS_parameters_codeset_4_item, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_HI2Operations_OCTET_STRING_SIZE_1_256 },
1483 };
1484
1485 static int
1486 dissect_HI2Operations_DSS1_SS_parameters_codeset_4(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1487   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1488                                  DSS1_SS_parameters_codeset_4_set_of, hf_index, ett_HI2Operations_DSS1_SS_parameters_codeset_4);
1489
1490   return offset;
1491 }
1492
1493
1494 static const ber_sequence_t DSS1_SS_parameters_codeset_5_set_of[1] = {
1495   { &hf_HI2Operations_DSS1_SS_parameters_codeset_5_item, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_HI2Operations_OCTET_STRING_SIZE_1_256 },
1496 };
1497
1498 static int
1499 dissect_HI2Operations_DSS1_SS_parameters_codeset_5(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1500   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1501                                  DSS1_SS_parameters_codeset_5_set_of, hf_index, ett_HI2Operations_DSS1_SS_parameters_codeset_5);
1502
1503   return offset;
1504 }
1505
1506
1507 static const ber_sequence_t DSS1_SS_parameters_codeset_6_set_of[1] = {
1508   { &hf_HI2Operations_DSS1_SS_parameters_codeset_6_item, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_HI2Operations_OCTET_STRING_SIZE_1_256 },
1509 };
1510
1511 static int
1512 dissect_HI2Operations_DSS1_SS_parameters_codeset_6(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1513   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1514                                  DSS1_SS_parameters_codeset_6_set_of, hf_index, ett_HI2Operations_DSS1_SS_parameters_codeset_6);
1515
1516   return offset;
1517 }
1518
1519
1520 static const ber_sequence_t DSS1_SS_parameters_codeset_7_set_of[1] = {
1521   { &hf_HI2Operations_DSS1_SS_parameters_codeset_7_item, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_HI2Operations_OCTET_STRING_SIZE_1_256 },
1522 };
1523
1524 static int
1525 dissect_HI2Operations_DSS1_SS_parameters_codeset_7(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1526   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1527                                  DSS1_SS_parameters_codeset_7_set_of, hf_index, ett_HI2Operations_DSS1_SS_parameters_codeset_7);
1528
1529   return offset;
1530 }
1531
1532
1533 static const ber_sequence_t DSS1_SS_Invoke_Components_set_of[1] = {
1534   { &hf_HI2Operations_DSS1_SS_Invoke_Components_item, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_HI2Operations_OCTET_STRING_SIZE_1_256 },
1535 };
1536
1537 static int
1538 dissect_HI2Operations_DSS1_SS_Invoke_Components(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1539   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1540                                  DSS1_SS_Invoke_Components_set_of, hf_index, ett_HI2Operations_DSS1_SS_Invoke_Components);
1541
1542   return offset;
1543 }
1544
1545
1546 static const ber_sequence_t MAP_SS_Parameters_set_of[1] = {
1547   { &hf_HI2Operations_MAP_SS_Parameters_item, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_HI2Operations_OCTET_STRING_SIZE_1_256 },
1548 };
1549
1550 static int
1551 dissect_HI2Operations_MAP_SS_Parameters(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1552   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1553                                  MAP_SS_Parameters_set_of, hf_index, ett_HI2Operations_MAP_SS_Parameters);
1554
1555   return offset;
1556 }
1557
1558
1559 static const ber_sequence_t MAP_SS_Invoke_Components_set_of[1] = {
1560   { &hf_HI2Operations_MAP_SS_Invoke_Components_item, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_HI2Operations_OCTET_STRING_SIZE_1_256 },
1561 };
1562
1563 static int
1564 dissect_HI2Operations_MAP_SS_Invoke_Components(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1565   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1566                                  MAP_SS_Invoke_Components_set_of, hf_index, ett_HI2Operations_MAP_SS_Invoke_Components);
1567
1568   return offset;
1569 }
1570
1571
1572 static const ber_sequence_t Standard_Supplementary_Services_sequence[] = {
1573   { &hf_HI2Operations_iSUP_SS_parameters, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_HI2Operations_ISUP_SS_parameters },
1574   { &hf_HI2Operations_dSS1_SS_parameters_codeset_0, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_HI2Operations_DSS1_SS_parameters_codeset_0 },
1575   { &hf_HI2Operations_dSS1_SS_parameters_codeset_4, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_HI2Operations_DSS1_SS_parameters_codeset_4 },
1576   { &hf_HI2Operations_dSS1_SS_parameters_codeset_5, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_HI2Operations_DSS1_SS_parameters_codeset_5 },
1577   { &hf_HI2Operations_dSS1_SS_parameters_codeset_6, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL, dissect_HI2Operations_DSS1_SS_parameters_codeset_6 },
1578   { &hf_HI2Operations_dSS1_SS_parameters_codeset_7, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL, dissect_HI2Operations_DSS1_SS_parameters_codeset_7 },
1579   { &hf_HI2Operations_dSS1_SS_Invoke_components, BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL, dissect_HI2Operations_DSS1_SS_Invoke_Components },
1580   { &hf_HI2Operations_mAP_SS_Parameters, BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL, dissect_HI2Operations_MAP_SS_Parameters },
1581   { &hf_HI2Operations_mAP_SS_Invoke_Components, BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL, dissect_HI2Operations_MAP_SS_Invoke_Components },
1582   { NULL, 0, 0, 0, NULL }
1583 };
1584
1585 static int
1586 dissect_HI2Operations_Standard_Supplementary_Services(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1587   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1588                                    Standard_Supplementary_Services_sequence, hf_index, ett_HI2Operations_Standard_Supplementary_Services);
1589
1590   return offset;
1591 }
1592
1593
1594 static const value_string HI2Operations_SimpleIndication_vals[] = {
1595   {   0, "call-Waiting-Indication" },
1596   {   1, "add-conf-Indication" },
1597   {   2, "call-on-hold-Indication" },
1598   {   3, "retrieve-Indication" },
1599   {   4, "suspend-Indication" },
1600   {   5, "resume-Indication" },
1601   {   6, "answer-Indication" },
1602   { 0, NULL }
1603 };
1604
1605
1606 static int
1607 dissect_HI2Operations_SimpleIndication(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1608   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1609                                   NULL);
1610
1611   return offset;
1612 }
1613
1614
1615
1616 static int
1617 dissect_HI2Operations_SciDataMode(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1618   offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
1619                                        NULL);
1620
1621   return offset;
1622 }
1623
1624
1625 static const value_string HI2Operations_Non_Standard_Supplementary_Services_item_vals[] = {
1626   {   1, "simpleIndication" },
1627   {   2, "sciData" },
1628   { 0, NULL }
1629 };
1630
1631 static const ber_choice_t Non_Standard_Supplementary_Services_item_choice[] = {
1632   {   1, &hf_HI2Operations_simpleIndication, BER_CLASS_CON, 1, 0, dissect_HI2Operations_SimpleIndication },
1633   {   2, &hf_HI2Operations_sciData, BER_CLASS_CON, 2, 0, dissect_HI2Operations_SciDataMode },
1634   { 0, NULL, 0, 0, 0, NULL }
1635 };
1636
1637 static int
1638 dissect_HI2Operations_Non_Standard_Supplementary_Services_item(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1639   offset = dissect_ber_choice(actx, tree, tvb, offset,
1640                                  Non_Standard_Supplementary_Services_item_choice, hf_index, ett_HI2Operations_Non_Standard_Supplementary_Services_item,
1641                                  NULL);
1642
1643   return offset;
1644 }
1645
1646
1647 static const ber_sequence_t Non_Standard_Supplementary_Services_set_of[1] = {
1648   { &hf_HI2Operations_Non_Standard_Supplementary_Services_item, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_HI2Operations_Non_Standard_Supplementary_Services_item },
1649 };
1650
1651 static int
1652 dissect_HI2Operations_Non_Standard_Supplementary_Services(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1653   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1654                                  Non_Standard_Supplementary_Services_set_of, hf_index, ett_HI2Operations_Non_Standard_Supplementary_Services);
1655
1656   return offset;
1657 }
1658
1659
1660 static const ber_sequence_t Other_Services_set_of[1] = {
1661   { &hf_HI2Operations_Other_Services_item, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_HI2Operations_OCTET_STRING_SIZE_1_256 },
1662 };
1663
1664 static int
1665 dissect_HI2Operations_Other_Services(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1666   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1667                                  Other_Services_set_of, hf_index, ett_HI2Operations_Other_Services);
1668
1669   return offset;
1670 }
1671
1672
1673 static const ber_sequence_t Supplementary_Services_sequence[] = {
1674   { &hf_HI2Operations_standard_Supplementary_Services, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_HI2Operations_Standard_Supplementary_Services },
1675   { &hf_HI2Operations_non_Standard_Supplementary_Services, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_HI2Operations_Non_Standard_Supplementary_Services },
1676   { &hf_HI2Operations_other_Services, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_HI2Operations_Other_Services },
1677   { NULL, 0, 0, 0, NULL }
1678 };
1679
1680 static int
1681 dissect_HI2Operations_Supplementary_Services(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1682   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1683                                    Supplementary_Services_sequence, hf_index, ett_HI2Operations_Supplementary_Services);
1684
1685   return offset;
1686 }
1687
1688
1689
1690 static int
1691 dissect_HI2Operations_X25Address(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1692   offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
1693                                        NULL);
1694
1695   return offset;
1696 }
1697
1698
1699 static const value_string HI2Operations_DataNodeAddress_vals[] = {
1700   {   1, "ipAddress" },
1701   {   2, "x25Address" },
1702   { 0, NULL }
1703 };
1704
1705 static const ber_choice_t DataNodeAddress_choice[] = {
1706   {   1, &hf_HI2Operations_ipAddress, BER_CLASS_CON, 1, 0, dissect_HI2Operations_IPAddress },
1707   {   2, &hf_HI2Operations_x25Address, BER_CLASS_CON, 2, 0, dissect_HI2Operations_X25Address },
1708   { 0, NULL, 0, 0, 0, NULL }
1709 };
1710
1711 static int
1712 dissect_HI2Operations_DataNodeAddress(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1713   offset = dissect_ber_choice(actx, tree, tvb, offset,
1714                                  DataNodeAddress_choice, hf_index, ett_HI2Operations_DataNodeAddress,
1715                                  NULL);
1716
1717   return offset;
1718 }
1719
1720
1721
1722 static int
1723 dissect_HI2Operations_OCTET_STRING_SIZE_1_100(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1724   offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
1725                                        NULL);
1726
1727   return offset;
1728 }
1729
1730
1731
1732 static int
1733 dissect_HI2Operations_OCTET_STRING_SIZE_2(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1734   offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
1735                                        NULL);
1736
1737   return offset;
1738 }
1739
1740
1741 static const ber_sequence_t GPRS_parameters_sequence[] = {
1742   { &hf_HI2Operations_pDP_address_allocated_to_the_target, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_HI2Operations_DataNodeAddress },
1743   { &hf_HI2Operations_aPN   , BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_HI2Operations_OCTET_STRING_SIZE_1_100 },
1744   { &hf_HI2Operations_pDP_type, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_HI2Operations_OCTET_STRING_SIZE_2 },
1745   { NULL, 0, 0, 0, NULL }
1746 };
1747
1748 static int
1749 dissect_HI2Operations_GPRS_parameters(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1750   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1751                                    GPRS_parameters_sequence, hf_index, ett_HI2Operations_GPRS_parameters);
1752
1753   return offset;
1754 }
1755
1756
1757 static const ber_sequence_t Services_Data_Information_sequence[] = {
1758   { &hf_HI2Operations_gPRS_parameters, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_HI2Operations_GPRS_parameters },
1759   { NULL, 0, 0, 0, NULL }
1760 };
1761
1762 static int
1763 dissect_HI2Operations_Services_Data_Information(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1764   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1765                                    Services_Data_Information_sequence, hf_index, ett_HI2Operations_Services_Data_Information);
1766
1767   return offset;
1768 }
1769
1770
1771 static const ber_sequence_t PartyInformation_sequence[] = {
1772   { &hf_HI2Operations_party_Qualifier, BER_CLASS_CON, 0, 0, dissect_HI2Operations_T_party_Qualifier },
1773   { &hf_HI2Operations_partyIdentity, BER_CLASS_CON, 1, 0, dissect_HI2Operations_T_partyIdentity },
1774   { &hf_HI2Operations_services_Information, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_HI2Operations_Services_Information },
1775   { &hf_HI2Operations_supplementary_Services_Information, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_HI2Operations_Supplementary_Services },
1776   { &hf_HI2Operations_services_Data_Information, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_HI2Operations_Services_Data_Information },
1777   { NULL, 0, 0, 0, NULL }
1778 };
1779
1780 static int
1781 dissect_HI2Operations_PartyInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1782   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1783                                    PartyInformation_sequence, hf_index, ett_HI2Operations_PartyInformation);
1784
1785   return offset;
1786 }
1787
1788
1789 static const ber_sequence_t SET_SIZE_1_10_OF_PartyInformation_set_of[1] = {
1790   { &hf_HI2Operations_partyInformation_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_HI2Operations_PartyInformation },
1791 };
1792
1793 static int
1794 dissect_HI2Operations_SET_SIZE_1_10_OF_PartyInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1795   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1796                                  SET_SIZE_1_10_OF_PartyInformation_set_of, hf_index, ett_HI2Operations_SET_SIZE_1_10_OF_PartyInformation);
1797
1798   return offset;
1799 }
1800
1801
1802 static const value_string HI2Operations_CCLink_State_vals[] = {
1803   {   1, "setUpInProcess" },
1804   {   2, "callActive" },
1805   {   3, "callReleased" },
1806   {   4, "lack-of-resource" },
1807   { 0, NULL }
1808 };
1809
1810
1811 static int
1812 dissect_HI2Operations_CCLink_State(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1813   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1814                                   NULL);
1815
1816   return offset;
1817 }
1818
1819
1820 static const ber_sequence_t CallContentLinkCharacteristics_sequence[] = {
1821   { &hf_HI2Operations_cCLink_State, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_HI2Operations_CCLink_State },
1822   { &hf_HI2Operations_release_Time, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_HI2Operations_TimeStamp },
1823   { &hf_HI2Operations_release_Reason, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_HI2Operations_OCTET_STRING_SIZE_2 },
1824   { &hf_HI2Operations_lEMF_Address, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL|BER_FLAGS_NOTCHKTAG, dissect_HI2Operations_CalledPartyNumber },
1825   { NULL, 0, 0, 0, NULL }
1826 };
1827
1828 static int
1829 dissect_HI2Operations_CallContentLinkCharacteristics(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1830   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1831                                    CallContentLinkCharacteristics_sequence, hf_index, ett_HI2Operations_CallContentLinkCharacteristics);
1832
1833   return offset;
1834 }
1835
1836
1837 static const ber_sequence_t T_callContentLinkInformation_sequence[] = {
1838   { &hf_HI2Operations_cCLink1Characteristics, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_HI2Operations_CallContentLinkCharacteristics },
1839   { &hf_HI2Operations_cCLink2Characteristics, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_HI2Operations_CallContentLinkCharacteristics },
1840   { NULL, 0, 0, 0, NULL }
1841 };
1842
1843 static int
1844 dissect_HI2Operations_T_callContentLinkInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1845   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1846                                    T_callContentLinkInformation_sequence, hf_index, ett_HI2Operations_T_callContentLinkInformation);
1847
1848   return offset;
1849 }
1850
1851
1852 static const value_string HI2Operations_T_nature_Of_The_intercepted_call_vals[] = {
1853   {   0, "gSM-ISDN-PSTN-circuit-call" },
1854   {   1, "gSM-SMS-Message" },
1855   {   2, "uUS4-Messages" },
1856   {   3, "tETRA-circuit-call" },
1857   {   4, "teTRA-Packet-Data" },
1858   {   5, "gPRS-Packet-Data" },
1859   {   6, "uMTS-circuit-call" },
1860   { 0, NULL }
1861 };
1862
1863
1864 static int
1865 dissect_HI2Operations_T_nature_Of_The_intercepted_call(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1866   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1867                                   NULL);
1868
1869   return offset;
1870 }
1871
1872
1873 static const value_string HI2Operations_T_initiator_vals[] = {
1874   {   0, "target" },
1875   {   1, "server" },
1876   {   2, "undefined-party" },
1877   { 0, NULL }
1878 };
1879
1880
1881 static int
1882 dissect_HI2Operations_T_initiator(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1883   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1884                                   NULL);
1885
1886   return offset;
1887 }
1888
1889
1890 static const value_string HI2Operations_T_transfer_status_vals[] = {
1891   {   0, "succeed-transfer" },
1892   {   1, "not-succeed-transfer" },
1893   {   2, "undefined" },
1894   { 0, NULL }
1895 };
1896
1897
1898 static int
1899 dissect_HI2Operations_T_transfer_status(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1900   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1901                                   NULL);
1902
1903   return offset;
1904 }
1905
1906
1907 static const value_string HI2Operations_T_other_message_vals[] = {
1908   {   0, "yes" },
1909   {   1, "no" },
1910   {   2, "undefined" },
1911   { 0, NULL }
1912 };
1913
1914
1915 static int
1916 dissect_HI2Operations_T_other_message(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1917   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
1918                                   NULL);
1919
1920   return offset;
1921 }
1922
1923
1924
1925 static int
1926 dissect_HI2Operations_OCTET_STRING_SIZE_1_270(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1927   offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
1928                                        NULL);
1929
1930   return offset;
1931 }
1932
1933
1934 static const ber_sequence_t T_sMS_Contents_sequence[] = {
1935   { &hf_HI2Operations_initiator, BER_CLASS_CON, 1, 0, dissect_HI2Operations_T_initiator },
1936   { &hf_HI2Operations_transfer_status, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_HI2Operations_T_transfer_status },
1937   { &hf_HI2Operations_other_message, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_HI2Operations_T_other_message },
1938   { &hf_HI2Operations_content, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_HI2Operations_OCTET_STRING_SIZE_1_270 },
1939   { NULL, 0, 0, 0, NULL }
1940 };
1941
1942 static int
1943 dissect_HI2Operations_T_sMS_Contents(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1944   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1945                                    T_sMS_Contents_sequence, hf_index, ett_HI2Operations_T_sMS_Contents);
1946
1947   return offset;
1948 }
1949
1950
1951 static const ber_sequence_t SMS_report_sequence[] = {
1952   { &hf_HI2Operations_communicationIdentifier, BER_CLASS_CON, 1, 0, dissect_HI2Operations_CommunicationIdentifier },
1953   { &hf_HI2Operations_timeStamp, BER_CLASS_CON, 2, BER_FLAGS_NOTCHKTAG, dissect_HI2Operations_TimeStamp },
1954   { &hf_HI2Operations_sMS_Contents, BER_CLASS_CON, 3, 0, dissect_HI2Operations_T_sMS_Contents },
1955   { NULL, 0, 0, 0, NULL }
1956 };
1957
1958 static int
1959 dissect_HI2Operations_SMS_report(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1960   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
1961                                    SMS_report_sequence, hf_index, ett_HI2Operations_SMS_report);
1962
1963   return offset;
1964 }
1965
1966
1967
1968 static int
1969 dissect_HI2Operations_CC_Link_Identifier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1970   offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
1971                                        NULL);
1972
1973   return offset;
1974 }
1975
1976
1977 static const ber_sequence_t National_Parameters_set_of[1] = {
1978   { &hf_HI2Operations_National_Parameters_item, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_HI2Operations_OCTET_STRING_SIZE_1_256 },
1979 };
1980
1981 static int
1982 dissect_HI2Operations_National_Parameters(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1983   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
1984                                  National_Parameters_set_of, hf_index, ett_HI2Operations_National_Parameters);
1985
1986   return offset;
1987 }
1988
1989
1990
1991 static int
1992 dissect_HI2Operations_GPRSCorrelationNumber(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
1993   offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
1994                                        NULL);
1995
1996   return offset;
1997 }
1998
1999
2000 static const value_string HI2Operations_GPRSEvent_vals[] = {
2001   {   1, "pDPContextActivation" },
2002   {   2, "startOfInterceptionWithPDPContextActive" },
2003   {   4, "pDPContextDeactivation" },
2004   {   5, "gPRSAttach" },
2005   {   6, "gPRSDetach" },
2006   {  10, "cellOrRAUpdate" },
2007   {  11, "sMS" },
2008   {  13, "pDPContextModification" },
2009   { 0, NULL }
2010 };
2011
2012
2013 static int
2014 dissect_HI2Operations_GPRSEvent(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2015   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2016                                   NULL);
2017
2018   return offset;
2019 }
2020
2021
2022
2023 static int
2024 dissect_HI2Operations_GPRSOperationErrorCode(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2025   offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
2026                                        NULL);
2027
2028   return offset;
2029 }
2030
2031
2032 static const value_string HI2Operations_UmtsQos_vals[] = {
2033   {   1, "qosMobileRadio" },
2034   {   2, "qosGn" },
2035   { 0, NULL }
2036 };
2037
2038 static const ber_choice_t UmtsQos_choice[] = {
2039   {   1, &hf_HI2Operations_qosMobileRadio, BER_CLASS_CON, 1, 0, dissect_HI2Operations_OCTET_STRING },
2040   {   2, &hf_HI2Operations_qosGn , BER_CLASS_CON, 2, 0, dissect_HI2Operations_OCTET_STRING },
2041   { 0, NULL, 0, 0, 0, NULL }
2042 };
2043
2044 static int
2045 dissect_HI2Operations_UmtsQos(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2046   offset = dissect_ber_choice(actx, tree, tvb, offset,
2047                                  UmtsQos_choice, hf_index, ett_HI2Operations_UmtsQos,
2048                                  NULL);
2049
2050   return offset;
2051 }
2052
2053
2054 static const value_string HI2Operations_IMSevent_vals[] = {
2055   {   1, "unfilteredSIPmessage" },
2056   {   2, "sIPheaderOnly" },
2057   { 0, NULL }
2058 };
2059
2060
2061 static int
2062 dissect_HI2Operations_IMSevent(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2063   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2064                                   NULL);
2065
2066   return offset;
2067 }
2068
2069
2070
2071 static int
2072 dissect_HI2Operations_OCTET_STRING_SIZE_1_20(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2073   offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
2074                                        NULL);
2075
2076   return offset;
2077 }
2078
2079
2080
2081 static int
2082 dissect_HI2Operations_OCTET_STRING_SIZE_5_17(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2083   offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
2084                                        NULL);
2085
2086   return offset;
2087 }
2088
2089
2090
2091 static int
2092 dissect_HI2Operations_LIIDType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2093   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2094                                                 NULL);
2095
2096   return offset;
2097 }
2098
2099
2100
2101 static int
2102 dissect_HI2Operations_BIT_STRING(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2103   offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
2104                                     NULL, hf_index, -1,
2105                                     NULL);
2106
2107   return offset;
2108 }
2109
2110
2111
2112 static int
2113 dissect_HI2Operations_PrintableString_SIZE_1_100(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2114   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_PrintableString,
2115                                             actx, tree, tvb, offset, hf_index,
2116                                             NULL);
2117
2118   return offset;
2119 }
2120
2121
2122 static const value_string HI2Operations_LocationType_vals[] = {
2123   {   0, "geodeticData" },
2124   {   1, "nameAddress" },
2125   { 0, NULL }
2126 };
2127
2128 static const ber_choice_t LocationType_choice[] = {
2129   {   0, &hf_HI2Operations_geodeticData, BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_HI2Operations_BIT_STRING },
2130   {   1, &hf_HI2Operations_nameAddress, BER_CLASS_UNI, BER_UNI_TAG_PrintableString, BER_FLAGS_NOOWNTAG, dissect_HI2Operations_PrintableString_SIZE_1_100 },
2131   { 0, NULL, 0, 0, 0, NULL }
2132 };
2133
2134 static int
2135 dissect_HI2Operations_LocationType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2136   offset = dissect_ber_choice(actx, tree, tvb, offset,
2137                                  LocationType_choice, hf_index, ett_HI2Operations_LocationType,
2138                                  NULL);
2139
2140   return offset;
2141 }
2142
2143
2144 static const value_string HI2Operations_DirectionType_vals[] = {
2145   {   0, "toTarget" },
2146   {   1, "fromTarget" },
2147   {   2, "unknown" },
2148   { 0, NULL }
2149 };
2150
2151
2152 static int
2153 dissect_HI2Operations_DirectionType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2154   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2155                                   NULL);
2156
2157   return offset;
2158 }
2159
2160
2161 static const value_string HI2Operations_IRITransactionType_vals[] = {
2162   {   0, "iRIbegin" },
2163   {   1, "iRIcontinue" },
2164   {   2, "iRIend" },
2165   {   3, "iRIreport" },
2166   { 0, NULL }
2167 };
2168
2169
2170 static int
2171 dissect_HI2Operations_IRITransactionType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2172   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2173                                   NULL);
2174
2175   return offset;
2176 }
2177
2178
2179 static const value_string HI2Operations_ProtocolVersion_vals[] = {
2180   {   3, "io3" },
2181   { 0, NULL }
2182 };
2183
2184
2185 static int
2186 dissect_HI2Operations_ProtocolVersion(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2187   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2188                                   NULL);
2189
2190   return offset;
2191 }
2192
2193
2194
2195 static int
2196 dissect_HI2Operations_CaseId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2197   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_VisibleString,
2198                                             actx, tree, tvb, offset, hf_index,
2199                                             NULL);
2200
2201   return offset;
2202 }
2203
2204
2205
2206 static int
2207 dissect_HI2Operations_AccessingElementId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2208   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_VisibleString,
2209                                             actx, tree, tvb, offset, hf_index,
2210                                             NULL);
2211
2212   return offset;
2213 }
2214
2215
2216
2217 static int
2218 dissect_HI2Operations_EventTime(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2219   offset = dissect_ber_GeneralizedTime(implicit_tag, actx, tree, tvb, offset, hf_index);
2220
2221   return offset;
2222 }
2223
2224
2225
2226 static int
2227 dissect_HI2Operations_VisibleString_SIZE_1_25_(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2228   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_VisibleString,
2229                                             actx, tree, tvb, offset, hf_index,
2230                                             NULL);
2231
2232   return offset;
2233 }
2234
2235
2236
2237 static int
2238 dissect_HI2Operations_VisibleString_SIZE_1_15_(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2239   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_VisibleString,
2240                                             actx, tree, tvb, offset, hf_index,
2241                                             NULL);
2242
2243   return offset;
2244 }
2245
2246
2247 static const ber_sequence_t CallId_sequence[] = {
2248   { &hf_HI2Operations_sequencenumber, BER_CLASS_CON, 0, 0, dissect_HI2Operations_VisibleString_SIZE_1_25_ },
2249   { &hf_HI2Operations_systemidentity, BER_CLASS_CON, 1, 0, dissect_HI2Operations_VisibleString_SIZE_1_15_ },
2250   { NULL, 0, 0, 0, NULL }
2251 };
2252
2253 static int
2254 dissect_HI2Operations_CallId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2255   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2256                                    CallId_sequence, hf_index, ett_HI2Operations_CallId);
2257
2258   return offset;
2259 }
2260
2261
2262
2263 static int
2264 dissect_HI2Operations_NULL(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2265   offset = dissect_ber_null(implicit_tag, actx, tree, tvb, offset, hf_index);
2266
2267   return offset;
2268 }
2269
2270
2271
2272 static int
2273 dissect_HI2Operations_VisibleString_SIZE_1_32_(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2274   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_VisibleString,
2275                                             actx, tree, tvb, offset, hf_index,
2276                                             NULL);
2277
2278   return offset;
2279 }
2280
2281
2282
2283 static int
2284 dissect_HI2Operations_VisibleString_SIZE_1_48_(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2285   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_VisibleString,
2286                                             actx, tree, tvb, offset, hf_index,
2287                                             NULL);
2288
2289   return offset;
2290 }
2291
2292
2293 static const ber_sequence_t PartyId_sequence[] = {
2294   { &hf_HI2Operations_reserved0, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_HI2Operations_NULL },
2295   { &hf_HI2Operations_reserved1, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_HI2Operations_NULL },
2296   { &hf_HI2Operations_reserved2, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_HI2Operations_NULL },
2297   { &hf_HI2Operations_reserved3, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_HI2Operations_NULL },
2298   { &hf_HI2Operations_reserved4, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_HI2Operations_NULL },
2299   { &hf_HI2Operations_reserved5, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL, dissect_HI2Operations_NULL },
2300   { &hf_HI2Operations_dn    , BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL, dissect_HI2Operations_VisibleString_SIZE_1_15_ },
2301   { &hf_HI2Operations_userProvided, BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL, dissect_HI2Operations_VisibleString_SIZE_1_15_ },
2302   { &hf_HI2Operations_reserved6, BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL, dissect_HI2Operations_NULL },
2303   { &hf_HI2Operations_reserved7, BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL, dissect_HI2Operations_NULL },
2304   { &hf_HI2Operations_ipAddress_01, BER_CLASS_CON, 10, BER_FLAGS_OPTIONAL, dissect_HI2Operations_VisibleString_SIZE_1_32_ },
2305   { &hf_HI2Operations_reserved8, BER_CLASS_CON, 11, BER_FLAGS_OPTIONAL, dissect_HI2Operations_NULL },
2306   { &hf_HI2Operations_trunkId, BER_CLASS_CON, 12, BER_FLAGS_OPTIONAL, dissect_HI2Operations_VisibleString_SIZE_1_32_ },
2307   { &hf_HI2Operations_reserved9, BER_CLASS_CON, 13, BER_FLAGS_OPTIONAL, dissect_HI2Operations_NULL },
2308   { &hf_HI2Operations_genericAddress, BER_CLASS_CON, 14, BER_FLAGS_OPTIONAL, dissect_HI2Operations_VisibleString_SIZE_1_32_ },
2309   { &hf_HI2Operations_genericDigits, BER_CLASS_CON, 15, BER_FLAGS_OPTIONAL, dissect_HI2Operations_VisibleString_SIZE_1_32_ },
2310   { &hf_HI2Operations_genericName, BER_CLASS_CON, 16, BER_FLAGS_OPTIONAL, dissect_HI2Operations_VisibleString_SIZE_1_48_ },
2311   { &hf_HI2Operations_port  , BER_CLASS_CON, 17, BER_FLAGS_OPTIONAL, dissect_HI2Operations_VisibleString_SIZE_1_32_ },
2312   { &hf_HI2Operations_context, BER_CLASS_CON, 18, BER_FLAGS_OPTIONAL, dissect_HI2Operations_VisibleString_SIZE_1_32_ },
2313   { NULL, 0, 0, 0, NULL }
2314 };
2315
2316 static int
2317 dissect_HI2Operations_PartyId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2318   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2319                                    PartyId_sequence, hf_index, ett_HI2Operations_PartyId);
2320
2321   return offset;
2322 }
2323
2324
2325 static const ber_sequence_t Answer_sequence[] = {
2326   { &hf_HI2Operations_caseId, BER_CLASS_CON, 0, 0, dissect_HI2Operations_CaseId },
2327   { &hf_HI2Operations_accessingElementId, BER_CLASS_CON, 1, 0, dissect_HI2Operations_AccessingElementId },
2328   { &hf_HI2Operations_eventTime, BER_CLASS_CON, 2, 0, dissect_HI2Operations_EventTime },
2329   { &hf_HI2Operations_callId, BER_CLASS_CON, 3, 0, dissect_HI2Operations_CallId },
2330   { &hf_HI2Operations_answering, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_HI2Operations_PartyId },
2331   { NULL, 0, 0, 0, NULL }
2332 };
2333
2334 static int
2335 dissect_HI2Operations_Answer(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2336   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2337                                    Answer_sequence, hf_index, ett_HI2Operations_Answer);
2338
2339   return offset;
2340 }
2341
2342
2343
2344 static int
2345 dissect_HI2Operations_VisibleString_SIZE_1_20_(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2346   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_VisibleString,
2347                                             actx, tree, tvb, offset, hf_index,
2348                                             NULL);
2349
2350   return offset;
2351 }
2352
2353
2354 static const ber_sequence_t T_sepCCCpair_sequence[] = {
2355   { &hf_HI2Operations_sepXmitCCC, BER_CLASS_CON, 0, 0, dissect_HI2Operations_VisibleString_SIZE_1_20_ },
2356   { &hf_HI2Operations_sepRecvCCC, BER_CLASS_CON, 1, 0, dissect_HI2Operations_VisibleString_SIZE_1_20_ },
2357   { NULL, 0, 0, 0, NULL }
2358 };
2359
2360 static int
2361 dissect_HI2Operations_T_sepCCCpair(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2362   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2363                                    T_sepCCCpair_sequence, hf_index, ett_HI2Operations_T_sepCCCpair);
2364
2365   return offset;
2366 }
2367
2368
2369 static const value_string HI2Operations_CCCId_vals[] = {
2370   {   0, "combCCC" },
2371   {   1, "sepCCCpair" },
2372   { 0, NULL }
2373 };
2374
2375 static const ber_choice_t CCCId_choice[] = {
2376   {   0, &hf_HI2Operations_combCCC, BER_CLASS_CON, 0, 0, dissect_HI2Operations_VisibleString_SIZE_1_20_ },
2377   {   1, &hf_HI2Operations_sepCCCpair, BER_CLASS_CON, 1, 0, dissect_HI2Operations_T_sepCCCpair },
2378   { 0, NULL, 0, 0, 0, NULL }
2379 };
2380
2381 static int
2382 dissect_HI2Operations_CCCId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2383   offset = dissect_ber_choice(actx, tree, tvb, offset,
2384                                  CCCId_choice, hf_index, ett_HI2Operations_CCCId,
2385                                  NULL);
2386
2387   return offset;
2388 }
2389
2390
2391 static const value_string HI2Operations_FlowDirection_vals[] = {
2392   {   1, "downstream" },
2393   {   2, "upstream" },
2394   {   3, "downstream-and-upstream" },
2395   { 0, NULL }
2396 };
2397
2398
2399 static int
2400 dissect_HI2Operations_FlowDirection(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2401   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2402                                   NULL);
2403
2404   return offset;
2405 }
2406
2407
2408 static const ber_sequence_t CCClose_sequence[] = {
2409   { &hf_HI2Operations_caseId, BER_CLASS_CON, 0, 0, dissect_HI2Operations_CaseId },
2410   { &hf_HI2Operations_accessingElementId, BER_CLASS_CON, 1, 0, dissect_HI2Operations_AccessingElementId },
2411   { &hf_HI2Operations_eventTime, BER_CLASS_CON, 2, 0, dissect_HI2Operations_EventTime },
2412   { &hf_HI2Operations_cCCId , BER_CLASS_CON, 3, BER_FLAGS_NOTCHKTAG, dissect_HI2Operations_CCCId },
2413   { &hf_HI2Operations_flowDirection, BER_CLASS_CON, 4, 0, dissect_HI2Operations_FlowDirection },
2414   { NULL, 0, 0, 0, NULL }
2415 };
2416
2417 static int
2418 dissect_HI2Operations_CCClose(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2419   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2420                                    CCClose_sequence, hf_index, ett_HI2Operations_CCClose);
2421
2422   return offset;
2423 }
2424
2425
2426 static const ber_sequence_t SEQUENCE_OF_CallId_sequence_of[1] = {
2427   { &hf_HI2Operations_ccOpenTime_item, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_HI2Operations_CallId },
2428 };
2429
2430 static int
2431 dissect_HI2Operations_SEQUENCE_OF_CallId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2432   offset = dissect_ber_sequence_of(implicit_tag, actx, tree, tvb, offset,
2433                                       SEQUENCE_OF_CallId_sequence_of, hf_index, ett_HI2Operations_SEQUENCE_OF_CallId);
2434
2435   return offset;
2436 }
2437
2438
2439 static const value_string HI2Operations_T_ccOpenOption_vals[] = {
2440   {   3, "ccOpenTime" },
2441   {   4, "reserved0" },
2442   { 0, NULL }
2443 };
2444
2445 static const ber_choice_t T_ccOpenOption_choice[] = {
2446   {   3, &hf_HI2Operations_ccOpenTime, BER_CLASS_CON, 3, 0, dissect_HI2Operations_SEQUENCE_OF_CallId },
2447   {   4, &hf_HI2Operations_reserved0, BER_CLASS_CON, 4, 0, dissect_HI2Operations_NULL },
2448   { 0, NULL, 0, 0, 0, NULL }
2449 };
2450
2451 static int
2452 dissect_HI2Operations_T_ccOpenOption(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2453   offset = dissect_ber_choice(actx, tree, tvb, offset,
2454                                  T_ccOpenOption_choice, hf_index, ett_HI2Operations_T_ccOpenOption,
2455                                  NULL);
2456
2457   return offset;
2458 }
2459
2460
2461
2462 static int
2463 dissect_HI2Operations_SDP(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2464   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_UTF8String,
2465                                             actx, tree, tvb, offset, hf_index,
2466                                             NULL);
2467
2468   return offset;
2469 }
2470
2471
2472 static const ber_sequence_t CCOpen_sequence[] = {
2473   { &hf_HI2Operations_caseId, BER_CLASS_CON, 0, 0, dissect_HI2Operations_CaseId },
2474   { &hf_HI2Operations_accessingElementId, BER_CLASS_CON, 1, 0, dissect_HI2Operations_AccessingElementId },
2475   { &hf_HI2Operations_eventTime, BER_CLASS_CON, 2, 0, dissect_HI2Operations_EventTime },
2476   { &hf_HI2Operations_ccOpenOption, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_HI2Operations_T_ccOpenOption },
2477   { &hf_HI2Operations_cCCId , BER_CLASS_CON, 5, BER_FLAGS_NOTCHKTAG, dissect_HI2Operations_CCCId },
2478   { &hf_HI2Operations_subject, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL, dissect_HI2Operations_SDP },
2479   { &hf_HI2Operations_associate, BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL, dissect_HI2Operations_SDP },
2480   { &hf_HI2Operations_flowDirection, BER_CLASS_CON, 8, 0, dissect_HI2Operations_FlowDirection },
2481   { NULL, 0, 0, 0, NULL }
2482 };
2483
2484 static int
2485 dissect_HI2Operations_CCOpen(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2486   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2487                                    CCOpen_sequence, hf_index, ett_HI2Operations_CCOpen);
2488
2489   return offset;
2490 }
2491
2492
2493 static const value_string HI2Operations_T_input_vals[] = {
2494   {   6, "userinput" },
2495   {   7, "translationinput" },
2496   { 0, NULL }
2497 };
2498
2499 static const ber_choice_t T_input_choice[] = {
2500   {   6, &hf_HI2Operations_userinput, BER_CLASS_CON, 6, 0, dissect_HI2Operations_VisibleString_SIZE_1_32_ },
2501   {   7, &hf_HI2Operations_translationinput, BER_CLASS_CON, 7, 0, dissect_HI2Operations_VisibleString_SIZE_1_32_ },
2502   { 0, NULL, 0, 0, 0, NULL }
2503 };
2504
2505 static int
2506 dissect_HI2Operations_T_input(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2507   offset = dissect_ber_choice(actx, tree, tvb, offset,
2508                                  T_input_choice, hf_index, ett_HI2Operations_T_input,
2509                                  NULL);
2510
2511   return offset;
2512 }
2513
2514
2515
2516 static int
2517 dissect_HI2Operations_TransitCarrierId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2518   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_VisibleString,
2519                                             actx, tree, tvb, offset, hf_index,
2520                                             NULL);
2521
2522   return offset;
2523 }
2524
2525
2526 static const ber_sequence_t Origination_sequence[] = {
2527   { &hf_HI2Operations_caseId, BER_CLASS_CON, 0, 0, dissect_HI2Operations_CaseId },
2528   { &hf_HI2Operations_accessingElementId, BER_CLASS_CON, 1, 0, dissect_HI2Operations_AccessingElementId },
2529   { &hf_HI2Operations_eventTime, BER_CLASS_CON, 2, 0, dissect_HI2Operations_EventTime },
2530   { &hf_HI2Operations_callId, BER_CLASS_CON, 3, 0, dissect_HI2Operations_CallId },
2531   { &hf_HI2Operations_calling, BER_CLASS_CON, 4, 0, dissect_HI2Operations_PartyId },
2532   { &hf_HI2Operations_called, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL, dissect_HI2Operations_PartyId },
2533   { &hf_HI2Operations_input , BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_HI2Operations_T_input },
2534   { &hf_HI2Operations_reserved0, BER_CLASS_CON, 8, 0, dissect_HI2Operations_NULL },
2535   { &hf_HI2Operations_transitCarrierId, BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL, dissect_HI2Operations_TransitCarrierId },
2536   { NULL, 0, 0, 0, NULL }
2537 };
2538
2539 static int
2540 dissect_HI2Operations_Origination(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2541   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2542                                    Origination_sequence, hf_index, ett_HI2Operations_Origination);
2543
2544   return offset;
2545 }
2546
2547
2548 static const ber_sequence_t Redirection_sequence[] = {
2549   { &hf_HI2Operations_caseId, BER_CLASS_CON, 0, 0, dissect_HI2Operations_CaseId },
2550   { &hf_HI2Operations_accessingElementId, BER_CLASS_CON, 1, 0, dissect_HI2Operations_AccessingElementId },
2551   { &hf_HI2Operations_eventTime, BER_CLASS_CON, 2, 0, dissect_HI2Operations_EventTime },
2552   { &hf_HI2Operations_old   , BER_CLASS_CON, 3, 0, dissect_HI2Operations_CallId },
2553   { &hf_HI2Operations_redirectedto, BER_CLASS_CON, 4, 0, dissect_HI2Operations_PartyId },
2554   { &hf_HI2Operations_transitCarrierId, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL, dissect_HI2Operations_TransitCarrierId },
2555   { &hf_HI2Operations_reserved0, BER_CLASS_CON, 6, 0, dissect_HI2Operations_NULL },
2556   { &hf_HI2Operations_reserved1, BER_CLASS_CON, 7, 0, dissect_HI2Operations_NULL },
2557   { &hf_HI2Operations_new   , BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL, dissect_HI2Operations_CallId },
2558   { &hf_HI2Operations_redirectedfrom, BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL, dissect_HI2Operations_PartyId },
2559   { NULL, 0, 0, 0, NULL }
2560 };
2561
2562 static int
2563 dissect_HI2Operations_Redirection(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2564   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2565                                    Redirection_sequence, hf_index, ett_HI2Operations_Redirection);
2566
2567   return offset;
2568 }
2569
2570
2571 static const ber_sequence_t Release_sequence[] = {
2572   { &hf_HI2Operations_caseId, BER_CLASS_CON, 0, 0, dissect_HI2Operations_CaseId },
2573   { &hf_HI2Operations_accessingElementId, BER_CLASS_CON, 1, 0, dissect_HI2Operations_AccessingElementId },
2574   { &hf_HI2Operations_eventTime, BER_CLASS_CON, 2, 0, dissect_HI2Operations_EventTime },
2575   { &hf_HI2Operations_callId, BER_CLASS_CON, 3, 0, dissect_HI2Operations_CallId },
2576   { NULL, 0, 0, 0, NULL }
2577 };
2578
2579 static int
2580 dissect_HI2Operations_Release(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2581   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2582                                    Release_sequence, hf_index, ett_HI2Operations_Release);
2583
2584   return offset;
2585 }
2586
2587
2588
2589 static int
2590 dissect_HI2Operations_INTEGER_1_100_(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2591   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2592                                                 NULL);
2593
2594   return offset;
2595 }
2596
2597
2598 static const ber_sequence_t RedirectedFromInfo_sequence[] = {
2599   { &hf_HI2Operations_lastRedirecting, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_HI2Operations_PartyId },
2600   { &hf_HI2Operations_originalCalled, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_HI2Operations_PartyId },
2601   { &hf_HI2Operations_numRedirections, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_HI2Operations_INTEGER_1_100_ },
2602   { NULL, 0, 0, 0, NULL }
2603 };
2604
2605 static int
2606 dissect_HI2Operations_RedirectedFromInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2607   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2608                                    RedirectedFromInfo_sequence, hf_index, ett_HI2Operations_RedirectedFromInfo);
2609
2610   return offset;
2611 }
2612
2613
2614 static const ber_sequence_t TerminationAttempt_sequence[] = {
2615   { &hf_HI2Operations_caseId, BER_CLASS_CON, 0, 0, dissect_HI2Operations_CaseId },
2616   { &hf_HI2Operations_accessingElementId, BER_CLASS_CON, 1, 0, dissect_HI2Operations_AccessingElementId },
2617   { &hf_HI2Operations_eventTime, BER_CLASS_CON, 2, 0, dissect_HI2Operations_EventTime },
2618   { &hf_HI2Operations_callId, BER_CLASS_CON, 3, 0, dissect_HI2Operations_CallId },
2619   { &hf_HI2Operations_calling, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_HI2Operations_PartyId },
2620   { &hf_HI2Operations_called, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL, dissect_HI2Operations_PartyId },
2621   { &hf_HI2Operations_reserved0, BER_CLASS_CON, 6, 0, dissect_HI2Operations_NULL },
2622   { &hf_HI2Operations_redirectedFromInfo, BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL, dissect_HI2Operations_RedirectedFromInfo },
2623   { NULL, 0, 0, 0, NULL }
2624 };
2625
2626 static int
2627 dissect_HI2Operations_TerminationAttempt(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2628   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2629                                    TerminationAttempt_sequence, hf_index, ett_HI2Operations_TerminationAttempt);
2630
2631   return offset;
2632 }
2633
2634
2635 static const value_string HI2Operations_ResourceState_vals[] = {
2636   {   1, "reserved" },
2637   {   2, "committed" },
2638   { 0, NULL }
2639 };
2640
2641
2642 static int
2643 dissect_HI2Operations_ResourceState(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2644   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2645                                   NULL);
2646
2647   return offset;
2648 }
2649
2650
2651 static const ber_sequence_t CCChange_sequence[] = {
2652   { &hf_HI2Operations_caseId, BER_CLASS_CON, 0, 0, dissect_HI2Operations_CaseId },
2653   { &hf_HI2Operations_accessingElementId, BER_CLASS_CON, 1, 0, dissect_HI2Operations_AccessingElementId },
2654   { &hf_HI2Operations_eventTime, BER_CLASS_CON, 2, 0, dissect_HI2Operations_EventTime },
2655   { &hf_HI2Operations_callId, BER_CLASS_CON, 3, 0, dissect_HI2Operations_CallId },
2656   { &hf_HI2Operations_cCCId , BER_CLASS_CON, 4, BER_FLAGS_NOTCHKTAG, dissect_HI2Operations_CCCId },
2657   { &hf_HI2Operations_subject, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL, dissect_HI2Operations_SDP },
2658   { &hf_HI2Operations_associate, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL, dissect_HI2Operations_SDP },
2659   { &hf_HI2Operations_flowDirection, BER_CLASS_CON, 7, 0, dissect_HI2Operations_FlowDirection },
2660   { &hf_HI2Operations_resourceState, BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL, dissect_HI2Operations_ResourceState },
2661   { NULL, 0, 0, 0, NULL }
2662 };
2663
2664 static int
2665 dissect_HI2Operations_CCChange(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2666   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2667                                    CCChange_sequence, hf_index, ett_HI2Operations_CCChange);
2668
2669   return offset;
2670 }
2671
2672
2673 static const value_string HI2Operations_AlertingSignal_vals[] = {
2674   {   0, "notUsed" },
2675   {   1, "alertingPattern0" },
2676   {   2, "alertingPattern1" },
2677   {   3, "alertingPattern2" },
2678   {   4, "alertingPattern3" },
2679   {   5, "alertingPattern4" },
2680   {   6, "callWaitingPattern1" },
2681   {   7, "callWaitingPattern2" },
2682   {   8, "callWaitingPattern3" },
2683   {   9, "callWaitingPattern4" },
2684   {  10, "bargeInTone" },
2685   {  11, "alertingPattern5" },
2686   {  12, "alertingPattern6" },
2687   {  13, "alertingPattern7" },
2688   {  14, "alertingPattern8" },
2689   {  15, "alertingPattern9" },
2690   { 0, NULL }
2691 };
2692
2693
2694 static int
2695 dissect_HI2Operations_AlertingSignal(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2696   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2697                                   NULL);
2698
2699   return offset;
2700 }
2701
2702
2703 static const value_string HI2Operations_AudibleSignal_vals[] = {
2704   {   0, "notUsed" },
2705   {   1, "dialTone" },
2706   {   2, "recallDialTone" },
2707   {   3, "ringbackTone" },
2708   {   4, "reorderTone" },
2709   {   5, "busyTone" },
2710   {   6, "confirmationTone" },
2711   {   7, "expensiveRouteTone" },
2712   {   8, "messageWaitingTone" },
2713   {   9, "receiverOffHookTone" },
2714   {  10, "specialInfoTone" },
2715   {  11, "denialTone" },
2716   {  12, "interceptTone" },
2717   {  13, "answerTone" },
2718   {  14, "tonesOff" },
2719   {  15, "pipTone" },
2720   {  16, "abbreviatedIntercept" },
2721   {  17, "abbreviatedCongestion" },
2722   {  18, "warningTone" },
2723   {  19, "dialToneBurst" },
2724   {  20, "numberUnObtainableTone" },
2725   {  21, "authenticationFailureTone" },
2726   { 0, NULL }
2727 };
2728
2729
2730 static int
2731 dissect_HI2Operations_AudibleSignal(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2732   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
2733                                   NULL);
2734
2735   return offset;
2736 }
2737
2738
2739
2740 static int
2741 dissect_HI2Operations_VisibleString_SIZE_1_80_(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2742   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_VisibleString,
2743                                             actx, tree, tvb, offset, hf_index,
2744                                             NULL);
2745
2746   return offset;
2747 }
2748
2749
2750
2751 static int
2752 dissect_HI2Operations_VisibleString_SIZE_1_40_(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2753   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_VisibleString,
2754                                             actx, tree, tvb, offset, hf_index,
2755                                             NULL);
2756
2757   return offset;
2758 }
2759
2760
2761 static const ber_sequence_t TerminalDisplayInfo_sequence[] = {
2762   { &hf_HI2Operations_generalDisplay, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_HI2Operations_VisibleString_SIZE_1_80_ },
2763   { &hf_HI2Operations_calledNumber, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_HI2Operations_VisibleString_SIZE_1_40_ },
2764   { &hf_HI2Operations_callingNumber, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_HI2Operations_VisibleString_SIZE_1_40_ },
2765   { &hf_HI2Operations_callingName, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_HI2Operations_VisibleString_SIZE_1_40_ },
2766   { &hf_HI2Operations_originalCalledNumber, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_HI2Operations_VisibleString_SIZE_1_40_ },
2767   { &hf_HI2Operations_lastRedirectingNumber, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL, dissect_HI2Operations_VisibleString_SIZE_1_40_ },
2768   { &hf_HI2Operations_redirectingName, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL, dissect_HI2Operations_VisibleString_SIZE_1_40_ },
2769   { &hf_HI2Operations_redirectingReason, BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL, dissect_HI2Operations_VisibleString_SIZE_1_40_ },
2770   { &hf_HI2Operations_messageWaitingNotif, BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL, dissect_HI2Operations_VisibleString_SIZE_1_40_ },
2771   { NULL, 0, 0, 0, NULL }
2772 };
2773
2774 static int
2775 dissect_HI2Operations_TerminalDisplayInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2776   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2777                                    TerminalDisplayInfo_sequence, hf_index, ett_HI2Operations_TerminalDisplayInfo);
2778
2779   return offset;
2780 }
2781
2782
2783
2784 static int
2785 dissect_HI2Operations_VisibleString_SIZE_1_128_(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2786   offset = dissect_ber_restricted_string(implicit_tag, BER_UNI_TAG_VisibleString,
2787                                             actx, tree, tvb, offset, hf_index,
2788                                             NULL);
2789
2790   return offset;
2791 }
2792
2793
2794 static const ber_sequence_t NetworkSignal_sequence[] = {
2795   { &hf_HI2Operations_caseId, BER_CLASS_CON, 0, 0, dissect_HI2Operations_CaseId },
2796   { &hf_HI2Operations_accessingElementId, BER_CLASS_CON, 1, 0, dissect_HI2Operations_AccessingElementId },
2797   { &hf_HI2Operations_eventTime, BER_CLASS_CON, 2, 0, dissect_HI2Operations_EventTime },
2798   { &hf_HI2Operations_callId, BER_CLASS_CON, 3, 0, dissect_HI2Operations_CallId },
2799   { &hf_HI2Operations_alertingSignal, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_HI2Operations_AlertingSignal },
2800   { &hf_HI2Operations_subjectAudibleSignal, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL, dissect_HI2Operations_AudibleSignal },
2801   { &hf_HI2Operations_terminalDisplayInfo, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL, dissect_HI2Operations_TerminalDisplayInfo },
2802   { &hf_HI2Operations_other , BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL, dissect_HI2Operations_VisibleString_SIZE_1_128_ },
2803   { NULL, 0, 0, 0, NULL }
2804 };
2805
2806 static int
2807 dissect_HI2Operations_NetworkSignal(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2808   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2809                                    NetworkSignal_sequence, hf_index, ett_HI2Operations_NetworkSignal);
2810
2811   return offset;
2812 }
2813
2814
2815 static const ber_sequence_t T_signal_sequence[] = {
2816   { &hf_HI2Operations_switchhookFlash, BER_CLASS_CON, 0, BER_FLAGS_OPTIONAL, dissect_HI2Operations_VisibleString_SIZE_1_128_ },
2817   { &hf_HI2Operations_dialedDigits, BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_HI2Operations_VisibleString_SIZE_1_128_ },
2818   { &hf_HI2Operations_featureKey, BER_CLASS_CON, 2, BER_FLAGS_OPTIONAL, dissect_HI2Operations_VisibleString_SIZE_1_128_ },
2819   { &hf_HI2Operations_otherSignalingInformation, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_HI2Operations_VisibleString_SIZE_1_128_ },
2820   { NULL, 0, 0, 0, NULL }
2821 };
2822
2823 static int
2824 dissect_HI2Operations_T_signal(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2825   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2826                                    T_signal_sequence, hf_index, ett_HI2Operations_T_signal);
2827
2828   return offset;
2829 }
2830
2831
2832 static const ber_sequence_t SubjectSignal_sequence[] = {
2833   { &hf_HI2Operations_caseId, BER_CLASS_CON, 0, 0, dissect_HI2Operations_CaseId },
2834   { &hf_HI2Operations_accessingElementId, BER_CLASS_CON, 1, 0, dissect_HI2Operations_AccessingElementId },
2835   { &hf_HI2Operations_eventTime, BER_CLASS_CON, 2, 0, dissect_HI2Operations_EventTime },
2836   { &hf_HI2Operations_callId, BER_CLASS_CON, 3, BER_FLAGS_OPTIONAL, dissect_HI2Operations_CallId },
2837   { &hf_HI2Operations_signal, BER_CLASS_CON, 4, 0, dissect_HI2Operations_T_signal },
2838   { NULL, 0, 0, 0, NULL }
2839 };
2840
2841 static int
2842 dissect_HI2Operations_SubjectSignal(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2843   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2844                                    SubjectSignal_sequence, hf_index, ett_HI2Operations_SubjectSignal);
2845
2846   return offset;
2847 }
2848
2849
2850 static const ber_sequence_t MediaReport_sequence[] = {
2851   { &hf_HI2Operations_caseId, BER_CLASS_CON, 0, 0, dissect_HI2Operations_CaseId },
2852   { &hf_HI2Operations_accessingElementId, BER_CLASS_CON, 1, 0, dissect_HI2Operations_AccessingElementId },
2853   { &hf_HI2Operations_eventTime, BER_CLASS_CON, 2, 0, dissect_HI2Operations_EventTime },
2854   { &hf_HI2Operations_callId, BER_CLASS_CON, 3, 0, dissect_HI2Operations_CallId },
2855   { &hf_HI2Operations_subject, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_HI2Operations_SDP },
2856   { &hf_HI2Operations_associate, BER_CLASS_CON, 5, BER_FLAGS_OPTIONAL, dissect_HI2Operations_SDP },
2857   { NULL, 0, 0, 0, NULL }
2858 };
2859
2860 static int
2861 dissect_HI2Operations_MediaReport(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2862   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2863                                    MediaReport_sequence, hf_index, ett_HI2Operations_MediaReport);
2864
2865   return offset;
2866 }
2867
2868
2869 static const ber_sequence_t ServiceInstance_sequence[] = {
2870   { &hf_HI2Operations_caseId, BER_CLASS_CON, 0, 0, dissect_HI2Operations_CaseId },
2871   { &hf_HI2Operations_accessingElementId, BER_CLASS_CON, 1, 0, dissect_HI2Operations_AccessingElementId },
2872   { &hf_HI2Operations_eventTime, BER_CLASS_CON, 2, 0, dissect_HI2Operations_EventTime },
2873   { &hf_HI2Operations_callId, BER_CLASS_CON, 3, 0, dissect_HI2Operations_CallId },
2874   { &hf_HI2Operations_relatedCallId, BER_CLASS_CON, 4, BER_FLAGS_OPTIONAL, dissect_HI2Operations_CallId },
2875   { &hf_HI2Operations_serviceName, BER_CLASS_CON, 5, 0, dissect_HI2Operations_VisibleString_SIZE_1_128_ },
2876   { &hf_HI2Operations_firstCallCalling, BER_CLASS_CON, 6, BER_FLAGS_OPTIONAL, dissect_HI2Operations_PartyId },
2877   { &hf_HI2Operations_secondCallCalling, BER_CLASS_CON, 7, BER_FLAGS_OPTIONAL, dissect_HI2Operations_PartyId },
2878   { &hf_HI2Operations_called, BER_CLASS_CON, 8, BER_FLAGS_OPTIONAL, dissect_HI2Operations_PartyId },
2879   { &hf_HI2Operations_calling, BER_CLASS_CON, 9, BER_FLAGS_OPTIONAL, dissect_HI2Operations_PartyId },
2880   { NULL, 0, 0, 0, NULL }
2881 };
2882
2883 static int
2884 dissect_HI2Operations_ServiceInstance(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2885   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2886                                    ServiceInstance_sequence, hf_index, ett_HI2Operations_ServiceInstance);
2887
2888   return offset;
2889 }
2890
2891
2892 static const value_string HI2Operations_Message_vals[] = {
2893   {   1, "answer" },
2894   {   2, "ccclose" },
2895   {   3, "ccopen" },
2896   {   4, "reserved0" },
2897   {   5, "origination" },
2898   {   6, "reserved1" },
2899   {   7, "redirection" },
2900   {   8, "release" },
2901   {   9, "reserved2" },
2902   {  10, "terminationattempt" },
2903   {  11, "reserved" },
2904   {  12, "ccchange" },
2905   {  13, "reserved3" },
2906   {  14, "reserved4" },
2907   {  15, "reserved5" },
2908   {  16, "networksignal" },
2909   {  17, "subjectsignal" },
2910   {  18, "mediareport" },
2911   {  19, "serviceinstance" },
2912   { 0, NULL }
2913 };
2914
2915 static const ber_choice_t Message_choice[] = {
2916   {   1, &hf_HI2Operations_answer, BER_CLASS_CON, 1, 0, dissect_HI2Operations_Answer },
2917   {   2, &hf_HI2Operations_ccclose, BER_CLASS_CON, 2, 0, dissect_HI2Operations_CCClose },
2918   {   3, &hf_HI2Operations_ccopen, BER_CLASS_CON, 3, 0, dissect_HI2Operations_CCOpen },
2919   {   4, &hf_HI2Operations_reserved0, BER_CLASS_CON, 4, 0, dissect_HI2Operations_NULL },
2920   {   5, &hf_HI2Operations_origination, BER_CLASS_CON, 5, 0, dissect_HI2Operations_Origination },
2921   {   6, &hf_HI2Operations_reserved1, BER_CLASS_CON, 6, 0, dissect_HI2Operations_NULL },
2922   {   7, &hf_HI2Operations_redirection, BER_CLASS_CON, 7, 0, dissect_HI2Operations_Redirection },
2923   {   8, &hf_HI2Operations_release, BER_CLASS_CON, 8, 0, dissect_HI2Operations_Release },
2924   {   9, &hf_HI2Operations_reserved2, BER_CLASS_CON, 9, 0, dissect_HI2Operations_NULL },
2925   {  10, &hf_HI2Operations_terminationattempt, BER_CLASS_CON, 10, 0, dissect_HI2Operations_TerminationAttempt },
2926   {  11, &hf_HI2Operations_reserved, BER_CLASS_CON, 11, 0, dissect_HI2Operations_NULL },
2927   {  12, &hf_HI2Operations_ccchange, BER_CLASS_CON, 12, 0, dissect_HI2Operations_CCChange },
2928   {  13, &hf_HI2Operations_reserved3, BER_CLASS_CON, 13, 0, dissect_HI2Operations_NULL },
2929   {  14, &hf_HI2Operations_reserved4, BER_CLASS_CON, 14, 0, dissect_HI2Operations_NULL },
2930   {  15, &hf_HI2Operations_reserved5, BER_CLASS_CON, 15, 0, dissect_HI2Operations_NULL },
2931   {  16, &hf_HI2Operations_networksignal, BER_CLASS_CON, 16, 0, dissect_HI2Operations_NetworkSignal },
2932   {  17, &hf_HI2Operations_subjectsignal, BER_CLASS_CON, 17, 0, dissect_HI2Operations_SubjectSignal },
2933   {  18, &hf_HI2Operations_mediareport, BER_CLASS_CON, 18, 0, dissect_HI2Operations_MediaReport },
2934   {  19, &hf_HI2Operations_serviceinstance, BER_CLASS_CON, 19, 0, dissect_HI2Operations_ServiceInstance },
2935   { 0, NULL, 0, 0, 0, NULL }
2936 };
2937
2938 static int
2939 dissect_HI2Operations_Message(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2940   offset = dissect_ber_choice(actx, tree, tvb, offset,
2941                                  Message_choice, hf_index, ett_HI2Operations_Message,
2942                                  NULL);
2943
2944   return offset;
2945 }
2946
2947
2948 static const ber_sequence_t CdcPdu_sequence[] = {
2949   { &hf_HI2Operations_protocolVersion, BER_CLASS_CON, 0, 0, dissect_HI2Operations_ProtocolVersion },
2950   { &hf_HI2Operations_message, BER_CLASS_CON, 1, BER_FLAGS_NOTCHKTAG, dissect_HI2Operations_Message },
2951   { NULL, 0, 0, 0, NULL }
2952 };
2953
2954 static int
2955 dissect_HI2Operations_CdcPdu(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2956   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
2957                                    CdcPdu_sequence, hf_index, ett_HI2Operations_CdcPdu);
2958
2959   return offset;
2960 }
2961
2962
2963 static const value_string HI2Operations_UserSignalType_vals[] = {
2964   {   0, "copySignal" },
2965   {   1, "interpretedSignal" },
2966   {   2, "cdcPdu" },
2967   { 0, NULL }
2968 };
2969
2970 static const ber_choice_t UserSignalType_choice[] = {
2971   {   0, &hf_HI2Operations_copySignal, BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_HI2Operations_BIT_STRING },
2972   {   1, &hf_HI2Operations_interpretedSignal, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_HI2Operations_INTEGER },
2973   {   2, &hf_HI2Operations_cdcPdu, BER_CLASS_UNI, BER_UNI_TAG_SEQUENCE, BER_FLAGS_NOOWNTAG, dissect_HI2Operations_CdcPdu },
2974   { 0, NULL, 0, 0, 0, NULL }
2975 };
2976
2977 static int
2978 dissect_HI2Operations_UserSignalType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
2979   offset = dissect_ber_choice(actx, tree, tvb, offset,
2980                                  UserSignalType_choice, hf_index, ett_HI2Operations_UserSignalType,
2981                                  NULL);
2982
2983   return offset;
2984 }
2985
2986
2987 static const ber_sequence_t TARGETACTIVITYMONITOR_1_sequence[] = {
2988   { &hf_HI2Operations_version, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_HI2Operations_INTEGER },
2989   { &hf_HI2Operations_lIInstanceid, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_HI2Operations_LIIDType },
2990   { &hf_HI2Operations_timestamp, BER_CLASS_UNI, BER_UNI_TAG_UTCTime, BER_FLAGS_NOOWNTAG, dissect_HI2Operations_UTCTime },
2991   { &hf_HI2Operations_targetLocation, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_HI2Operations_LocationType },
2992   { &hf_HI2Operations_direction, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_NOOWNTAG, dissect_HI2Operations_DirectionType },
2993   { &hf_HI2Operations_iRITransaction, BER_CLASS_UNI, BER_UNI_TAG_ENUMERATED, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_HI2Operations_IRITransactionType },
2994   { &hf_HI2Operations_iRITransactionNumber, BER_CLASS_UNI, BER_UNI_TAG_INTEGER, BER_FLAGS_NOOWNTAG, dissect_HI2Operations_INTEGER },
2995   { &hf_HI2Operations_userSignal, BER_CLASS_ANY/*choice*/, -1/*choice*/, BER_FLAGS_NOOWNTAG|BER_FLAGS_NOTCHKTAG, dissect_HI2Operations_UserSignalType },
2996   { &hf_HI2Operations_cryptoCheckSum, BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_HI2Operations_BIT_STRING },
2997   { NULL, 0, 0, 0, NULL }
2998 };
2999
3000 static int
3001 dissect_HI2Operations_TARGETACTIVITYMONITOR_1(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3002   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3003                                    TARGETACTIVITYMONITOR_1_sequence, hf_index, ett_HI2Operations_TARGETACTIVITYMONITOR_1);
3004
3005   return offset;
3006 }
3007
3008
3009 static const value_string HI2Operations_LDIevent_vals[] = {
3010   {   1, "targetEntersIA" },
3011   {   2, "targetLeavesIA" },
3012   { 0, NULL }
3013 };
3014
3015
3016 static int
3017 dissect_HI2Operations_LDIevent(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3018   offset = dissect_ber_integer(implicit_tag, actx, tree, tvb, offset, hf_index,
3019                                   NULL);
3020
3021   return offset;
3022 }
3023
3024
3025 static const ber_sequence_t T_cc_set_of[1] = {
3026   { &hf_HI2Operations_cc_item, BER_CLASS_UNI, BER_UNI_TAG_OCTETSTRING, BER_FLAGS_NOOWNTAG, dissect_HI2Operations_OCTET_STRING },
3027 };
3028
3029 static int
3030 dissect_HI2Operations_T_cc(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3031   offset = dissect_ber_set_of(implicit_tag, actx, tree, tvb, offset,
3032                                  T_cc_set_of, hf_index, ett_HI2Operations_T_cc);
3033
3034   return offset;
3035 }
3036
3037
3038 static const ber_sequence_t IRI_to_CC_Correlation_sequence[] = {
3039   { &hf_HI2Operations_cc    , BER_CLASS_CON, 0, 0, dissect_HI2Operations_T_cc },
3040   { &hf_HI2Operations_iri   , BER_CLASS_CON, 1, BER_FLAGS_OPTIONAL, dissect_HI2Operations_OCTET_STRING },
3041   { NULL, 0, 0, 0, NULL }
3042 };
3043
3044 static int
3045 dissect_HI2Operations_IRI_to_CC_Correlation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3046   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3047                                    IRI_to_CC_Correlation_sequence, hf_index, ett_HI2Operations_IRI_to_CC_Correlation);
3048
3049   return offset;
3050 }
3051
3052
3053
3054 static int
3055 dissect_HI2Operations_IRI_to_IRI_Correlation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3056   offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
3057                                        NULL);
3058
3059   return offset;
3060 }
3061
3062
3063 static const ber_sequence_t T_both_IRI_CC_sequence[] = {
3064   { &hf_HI2Operations_iri_CC, BER_CLASS_CON, 0, 0, dissect_HI2Operations_IRI_to_CC_Correlation },
3065   { &hf_HI2Operations_iri_IRI, BER_CLASS_CON, 1, 0, dissect_HI2Operations_IRI_to_IRI_Correlation },
3066   { NULL, 0, 0, 0, NULL }
3067 };
3068
3069 static int
3070 dissect_HI2Operations_T_both_IRI_CC(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3071   offset = dissect_ber_sequence(implicit_tag, actx, tree, tvb, offset,
3072                                    T_both_IRI_CC_sequence, hf_index, ett_HI2Operations_T_both_IRI_CC);
3073
3074   return offset;
3075 }
3076
3077
3078 static const value_string HI2Operations_CorrelationValues_vals[] = {
3079   {   0, "iri-to-CC" },
3080   {   1, "iri-to-iri" },
3081   {   2, "both-IRI-CC" },
3082   { 0, NULL }
3083 };
3084
3085 static const ber_choice_t CorrelationValues_choice[] = {
3086   {   0, &hf_HI2Operations_iri_to_CC, BER_CLASS_CON, 0, 0, dissect_HI2Operations_IRI_to_CC_Correlation },
3087   {   1, &hf_HI2Operations_iri_to_iri, BER_CLASS_CON, 1, 0, dissect_HI2Operations_IRI_to_IRI_Correlation },
3088   {   2, &hf_HI2Operations_both_IRI_CC, BER_CLASS_CON, 2, 0, dissect_HI2Operations_T_both_IRI_CC },
3089   { 0, NULL, 0, 0, 0, NULL }
3090 };
3091
3092 static int
3093 dissect_HI2Operations_CorrelationValues(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3094   offset = dissect_ber_choice(actx, tree, tvb, offset,
3095                                  CorrelationValues_choice, hf_index, ett_HI2Operations_CorrelationValues,
3096                                  NULL);
3097
3098   return offset;
3099 }
3100
3101
3102
3103 static int
3104 dissect_HI2Operations_TLIIdType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3105   offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
3106                                     NULL, hf_index, -1,
3107                                     NULL);
3108
3109   return offset;
3110 }
3111
3112
3113
3114 static int
3115 dissect_HI2Operations_MCCType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3116   offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
3117                                     NULL, hf_index, -1,
3118                                     NULL);
3119
3120   return offset;
3121 }
3122
3123
3124
3125 static int
3126 dissect_HI2Operations_MNCType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3127   offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
3128                                     NULL, hf_index, -1,
3129                                     NULL);
3130
3131   return offset;
3132 }
3133
3134
3135
3136 static int
3137 dissect_HI2Operations_LocationAreaType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3138   offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
3139                                     NULL, hf_index, -1,
3140                                     NULL);
3141
3142   return offset;
3143 }
3144
3145
3146
3147 static int
3148 dissect_HI2Operations_CellIdType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
3149   offset = dissect_ber_bitstring(implicit_tag, actx, tree, tvb, offset,
3150                                     NULL, hf_index, -1,
3151                                     NULL);
3152
3153   return offset;
3154 }
3155
3156
3157 static const ber_sequence_t TETRACGIType_sequence[] = {
3158   { &hf_HI2Operations_mcc_01, BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_HI2Operations_MCCType },
3159   { &hf_HI2Operations_mnc_01, BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_HI2Operations_MNCType },
3160   { &hf_HI2Operations_lai_01, BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_NOOWNTAG, dissect_HI2Operations_LocationAreaType },
3161   { &hf_HI2Operations_cI    , BER_CLASS_UNI, BER_UNI_TAG_BITSTRING, BER_FLAGS_OPTIONAL|BER_FLAGS_NOOWNTAG, dissect_HI2Operations_CellIdType },
3162   { NULL, 0, 0, 0, NULL }
3163 };
3164
3165 static int
3166 dissect_HI2Operations_TETRACGIType(gboolean implicit_tag&n