/* Do not modify this file. Changes will be overwritten.                      */
/* Generated automatically by the ASN.1 to Wireshark dissector compiler       */
/* packet-lppe.c                                                              */
/* asn2wrs.py -L -p lppe -c ./lppe.cnf -s ./packet-lppe-template -D . -O ../.. LPPe.asn */

/* packet-lppe.c
 * Routines for LPP Extensions (LLPe) packet dissection
 * Copyright 2012-2021, Pascal Quantin <pascal@wireshark.org>
 *
 * Wireshark - Network traffic analyzer
 * By Gerald Combs <gerald@wireshark.org>
 * Copyright 1998 Gerald Combs
 *
 * SPDX-License-Identifier: GPL-2.0-or-later
 *
 * Ref Open Mobile Alliance OMA-TS-LPPe-V1_0-20200630-D
 * https://gitlab.com/wireshark/wireshark/uploads/e1059f6dc0fc9e3b875b37a9732df39a/OMA-TS-LPPe-V1_0-20200630-D.doc
 */

#include "config.h"

#include <epan/packet.h>
#include <epan/asn1.h>

#include "packet-per.h"
#include "packet-lpp.h"

#define PNAME  "LTE Positioning Protocol Extensions (LLPe)"
#define PSNAME "LPPe"
#define PFNAME "lppe"

#ifdef _MSC_VER
/* disable: "warning C4146: unary minus operator applied to unsigned type, result still unsigned" */
#pragma warning(disable:4146)
#endif

void proto_register_lppe(void);
void proto_reg_handoff_lppe(void);

/* Initialize the protocol and registered fields */
static int proto_lppe = -1;

static dissector_handle_t xml_handle;

static int hf_lppe_OMA_LPPe_MessageExtension_PDU = -1;  /* OMA_LPPe_MessageExtension */
static int hf_lppe_lppeCompatibilityLevel = -1;   /* OMA_LPPe_LPPeCompatibilityLevel */
static int hf_lppe_lppeVersion = -1;              /* OMA_LPPe_LPPeVersion */
static int hf_lppe_lppeMode = -1;                 /* OMA_LPPe_LPPeMode */
static int hf_lppe_messageExtensionBody = -1;     /* OMA_LPPe_MessageExtensionBody */
static int hf_lppe_majorVersion = -1;             /* INTEGER_0_255 */
static int hf_lppe_minorVersion = -1;             /* INTEGER_0_255 */
static int hf_lppe_requestCapabilities = -1;      /* OMA_LPPe_RequestCapabilities */
static int hf_lppe_provideCapabilities = -1;      /* OMA_LPPe_ProvideCapabilities */
static int hf_lppe_requestAssistanceData = -1;    /* OMA_LPPe_RequestAssistanceData */
static int hf_lppe_provideAssistanceData = -1;    /* OMA_LPPe_ProvideAssistanceData */
static int hf_lppe_requestLocationInformation = -1;  /* OMA_LPPe_RequestLocationInformation */
static int hf_lppe_provideLocationInformation = -1;  /* OMA_LPPe_ProvideLocationInformation */
static int hf_lppe_error = -1;                    /* OMA_LPPe_Error */
static int hf_lppe_abort = -1;                    /* OMA_LPPe_Abort */
static int hf_lppe_commonIEsRequestCapabilities = -1;  /* OMA_LPPe_CommonIEsRequestCapabilities */
static int hf_lppe_agnss_RequestCapabilities = -1;  /* OMA_LPPe_AGNSS_RequestCapabilities */
static int hf_lppe_otdoa_RequestCapabilities = -1;  /* OMA_LPPe_OTDOA_RequestCapabilities */
static int hf_lppe_eotd_RequestCapabilities = -1;  /* OMA_LPPe_EOTD_RequestCapabilities */
static int hf_lppe_otdoa_utra_RequestCapabilities = -1;  /* OMA_LPPe_OTDOA_UTRA_RequestCapabilities */
static int hf_lppe_ecid_lte_RequestCapabilities = -1;  /* OMA_LPPe_ECID_LTE_RequestCapabilities */
static int hf_lppe_ecid_gsm_RequestCapabilities = -1;  /* OMA_LPPe_ECID_GSM_RequestCapabilities */
static int hf_lppe_ecid_utra_RequestCapabilities = -1;  /* OMA_LPPe_ECID_UTRA_RequestCapabilities */
static int hf_lppe_wlan_ap_RequestCapabilities = -1;  /* OMA_LPPe_WLAN_AP_RequestCapabilities */
static int hf_lppe_ecid_wimax_RequestCapabilities = -1;  /* OMA_LPPe_ECID_WiMax_RequestCapabilities */
static int hf_lppe_sensor_RequestCapabilities = -1;  /* OMA_LPPe_Sensor_RequestCapabilities */
static int hf_lppe_srn_RequestCapabilities = -1;  /* OMA_LPPe_SRN_RequestCapabilities */
static int hf_lppe_commonIEsProvideCapabilities = -1;  /* OMA_LPPe_CommonIEsProvideCapabilities */
static int hf_lppe_agnss_ProvideCapabilities = -1;  /* OMA_LPPe_AGNSS_ProvideCapabilities */
static int hf_lppe_otdoa_ProvideCapabilities = -1;  /* OMA_LPPe_OTDOA_ProvideCapabilities */
static int hf_lppe_eotd_ProvideCapabilities = -1;  /* OMA_LPPe_EOTD_ProvideCapabilities */
static int hf_lppe_otdoa_utra_ProvideCapabilities = -1;  /* OMA_LPPe_OTDOA_UTRA_ProvideCapabilities */
static int hf_lppe_ecid_lte_ProvideCapabilities = -1;  /* OMA_LPPe_ECID_LTE_ProvideCapabilities */
static int hf_lppe_ecid_gsm_ProvideCapabilities = -1;  /* OMA_LPPe_ECID_GSM_ProvideCapabilities */
static int hf_lppe_ecid_utra_ProvideCapabilities = -1;  /* OMA_LPPe_ECID_UTRA_ProvideCapabilities */
static int hf_lppe_wlan_ap_ProvideCapabilities = -1;  /* OMA_LPPe_WLAN_AP_ProvideCapabilities */
static int hf_lppe_ecid_wimax_ProvideCapabilities = -1;  /* OMA_LPPe_ECID_WiMax_ProvideCapabilities */
static int hf_lppe_sensor_ProvideCapabilities = -1;  /* OMA_LPPe_Sensor_ProvideCapabilities */
static int hf_lppe_srn_ProvideCapabilities = -1;  /* OMA_LPPe_SRN_ProvideCapabilities */
static int hf_lppe_commonIEsRequestAssistanceData = -1;  /* OMA_LPPe_CommonIEsRequestAssistanceData */
static int hf_lppe_agnss_RequestAssistanceData = -1;  /* OMA_LPPe_AGNSS_RequestAssistanceData */
static int hf_lppe_otdoa_RequestAssistanceData = -1;  /* OMA_LPPe_OTDOA_RequestAssistanceData */
static int hf_lppe_eotd_RequestAssistanceData = -1;  /* OMA_LPPe_EOTD_RequestAssistanceData */
static int hf_lppe_otdoa_utra_RequestAssistanceData = -1;  /* OMA_LPPe_OTDOA_UTRA_RequestAssistanceData */
static int hf_lppe_ecid_lte_RequestAssistanceData = -1;  /* OMA_LPPe_ECID_LTE_RequestAssistanceData */
static int hf_lppe_ecid_gsm_RequestAssistanceData = -1;  /* OMA_LPPe_ECID_GSM_RequestAssistanceData */
static int hf_lppe_ecid_utra_RequestAssistanceData = -1;  /* OMA_LPPe_ECID_UTRA_RequestAssistanceData */
static int hf_lppe_wlan_ap_RequestAssistanceData = -1;  /* OMA_LPPe_WLAN_AP_RequestAssistanceData */
static int hf_lppe_sensor_RequestAssistanceData = -1;  /* OMA_LPPe_Sensor_RequestAssistanceData */
static int hf_lppe_srn_RequestAssistanceData = -1;  /* OMA_LPPe_SRN_RequestAssistanceData */
static int hf_lppe_commonIEsProvideAssistanceData = -1;  /* OMA_LPPe_CommonIEsProvideAssistanceData */
static int hf_lppe_agnss_ProvideAssistanceData = -1;  /* OMA_LPPe_AGNSS_ProvideAssistanceData */
static int hf_lppe_otdoa_ProvideAssistanceData = -1;  /* OMA_LPPe_OTDOA_ProvideAssistanceData */
static int hf_lppe_eotd_ProvideAssistanceData = -1;  /* OMA_LPPe_EOTD_ProvideAssistanceData */
static int hf_lppe_otdoa_utra_ProvideAssistanceData = -1;  /* OMA_LPPe_OTDOA_UTRA_ProvideAssistanceData */
static int hf_lppe_ecid_lte_ProvideAssistanceData = -1;  /* OMA_LPPe_ECID_LTE_ProvideAssistanceData */
static int hf_lppe_ecid_gsm_ProvideAssistanceData = -1;  /* OMA_LPPe_ECID_GSM_ProvideAssistanceData */
static int hf_lppe_ecid_utra_ProvideAssistanceData = -1;  /* OMA_LPPe_ECID_UTRA_ProvideAssistanceData */
static int hf_lppe_wlan_ap_ProvideAssistanceData = -1;  /* OMA_LPPe_WLAN_AP_ProvideAssistanceData */
static int hf_lppe_sensor_ProvideAssistanceData = -1;  /* OMA_LPPe_Sensor_ProvideAssistanceData */
static int hf_lppe_srn_ProvideAssistanceData = -1;  /* OMA_LPPe_SRN_ProvideAssistanceData */
static int hf_lppe_commonIEsRequestLocationInformation = -1;  /* OMA_LPPe_CommonIEsRequestLocationInformation */
static int hf_lppe_agnss_RequestLocationInformation = -1;  /* OMA_LPPe_AGNSS_RequestLocationInformation */
static int hf_lppe_otdoa_RequestLocationInformation = -1;  /* OMA_LPPe_OTDOA_RequestLocationInformation */
static int hf_lppe_eotd_RequestLocationInformation = -1;  /* OMA_LPPe_EOTD_RequestLocationInformation */
static int hf_lppe_otdoa_utra_RequestLocationInformation = -1;  /* OMA_LPPe_OTDOA_UTRA_RequestLocationInformation */
static int hf_lppe_ecid_lte_RequestLocationInformation = -1;  /* OMA_LPPe_ECID_LTE_RequestLocationInformation */
static int hf_lppe_ecid_gsm_RequestLocationInformation = -1;  /* OMA_LPPe_ECID_GSM_RequestLocationInformation */
static int hf_lppe_ecid_utra_RequestLocationInformation = -1;  /* OMA_LPPe_ECID_UTRA_RequestLocationInformation */
static int hf_lppe_wlan_ap_RequestLocationInformation = -1;  /* OMA_LPPe_WLAN_AP_RequestLocationInformation */
static int hf_lppe_ecid_wimax_RequestLocationInformation = -1;  /* OMA_LPPe_ECID_WiMax_RequestLocationInformation */
static int hf_lppe_sensor_RequestLocationInformation = -1;  /* OMA_LPPe_Sensor_RequestLocationInformation */
static int hf_lppe_srn_RequestLocationInformation = -1;  /* OMA_LPPe_SRN_RequestLocationInformation */
static int hf_lppe_commonIEsProvideLocationInformation = -1;  /* OMA_LPPe_CommonIEsProvideLocationInformation */
static int hf_lppe_agnss_ProvideLocationInformation = -1;  /* OMA_LPPe_AGNSS_ProvideLocationInformation */
static int hf_lppe_otdoa_ProvideLocationInformation = -1;  /* OMA_LPPe_OTDOA_ProvideLocationInformation */
static int hf_lppe_eotd_ProvideLocationInformation = -1;  /* OMA_LPPe_EOTD_ProvideLocationInformation */
static int hf_lppe_otdoa_utra_ProvideLocationInformation = -1;  /* OMA_LPPe_OTDOA_UTRA_ProvideLocationInformation */
static int hf_lppe_ecid_lte_ProvideLocationInformation = -1;  /* OMA_LPPe_ECID_LTE_ProvideLocationInformation */
static int hf_lppe_ecid_gsm_ProvideLocationInformation = -1;  /* OMA_LPPe_ECID_GSM_ProvideLocationInformation */
static int hf_lppe_ecid_utra_ProvideLocationInformation = -1;  /* OMA_LPPe_ECID_UTRA_ProvideLocationInformation */
static int hf_lppe_wlan_ap_ProvideLocationInformastion = -1;  /* OMA_LPPe_WLAN_AP_ProvideLocationInformation */
static int hf_lppe_ecid_wimax_ProvideLocationInformastion = -1;  /* OMA_LPPe_ECID_WiMax_ProvideLocationInformation */
static int hf_lppe_sensor_ProvideLocationInformation = -1;  /* OMA_LPPe_Sensor_ProvideLocationInformation */
static int hf_lppe_srn_ProvideLocationInformation = -1;  /* OMA_LPPe_SRN_ProvideLocationInformation */
static int hf_lppe_commonIEsAbort = -1;           /* OMA_LPPe_CommonIEsAbort */
static int hf_lppe_agnssAbort = -1;               /* OMA_LPPe_AGNSS_Abort */
static int hf_lppe_commonIEsError = -1;           /* OMA_LPPe_CommonIEsError */
static int hf_lppe_dataSerialNumber = -1;         /* INTEGER_0_4294967295 */
static int hf_lppe_containerID = -1;              /* INTEGER_0_65535 */
static int hf_lppe_OMA_LPPe_AssistanceContainerProvideList_item = -1;  /* OMA_LPPe_AssistanceContainerProvide */
static int hf_lppe_dataIdentifier = -1;           /* OMA_LPPe_VendorOrOperatorAssistanceDataIdentifier */
static int hf_lppe_checkOrUpdateOrError = -1;     /* T_checkOrUpdateOrError */
static int hf_lppe_dataResult = -1;               /* T_dataResult */
static int hf_lppe_simulationResult = -1;         /* INTEGER_0_5000 */
static int hf_lppe_data = -1;                     /* OMA_LPPe_AssistanceContainerData */
static int hf_lppe_errorCode = -1;                /* OMA_LPPe_AssistanceContainerProvideError */
static int hf_lppe_dataSerialNumber_01 = -1;      /* OMA_LPPe_AssistanceContainer_DataSerialNumber */
static int hf_lppe_data_01 = -1;                  /* OCTET_STRING */
static int hf_lppe_validityPeriod = -1;           /* OMA_LPPe_ValidityPeriod */
static int hf_lppe_validityArea = -1;             /* OMA_LPPe_ValidityArea */
static int hf_lppe_serverError = -1;              /* T_serverError */
static int hf_lppe_OMA_LPPe_AssistanceContainerRequestList_item = -1;  /* OMA_LPPe_AssistanceContainerRequest */
static int hf_lppe_simulatedReq = -1;             /* BOOLEAN */
static int hf_lppe_checkOrUpdateReq = -1;         /* OMA_LPPe_AssistanceContainerCheckOrUpdateReq */
static int hf_lppe_validityTimeRequest = -1;      /* OMA_LPPe_ValidityPeriod */
static int hf_lppe_proprietaryRequestParameters = -1;  /* OCTET_STRING */
static int hf_lppe_checkLatest = -1;              /* T_checkLatest */
static int hf_lppe_locationAreaCode = -1;         /* BIT_STRING_SIZE_16 */
static int hf_lppe_cellIdentity = -1;             /* BIT_STRING_SIZE_16 */
static int hf_lppe_bsic = -1;                     /* INTEGER_0_63 */
static int hf_lppe_bcch = -1;                     /* INTEGER_0_1023 */
static int hf_lppe_countryCode = -1;              /* OCTET_STRING_SIZE_2 */
static int hf_lppe_civicAddressElementList = -1;  /* OMA_LPPe_CivicAddressElementList */
static int hf_lppe_OMA_LPPe_CivicAddressElementList_item = -1;  /* OMA_LPPe_CivicAddressElement */
static int hf_lppe_caType = -1;                   /* INTEGER_0_511 */
static int hf_lppe_caValue = -1;                  /* OCTET_STRING_SIZE_1_256 */
static int hf_lppe_civicLocation = -1;            /* T_civicLocation */
static int hf_lppe_duration = -1;                 /* INTEGER_1_63 */
static int hf_lppe_durationLSB = -1;              /* INTEGER_1_89 */
static int hf_lppe_latitude = -1;                 /* INTEGER_M2147483648_2147483647 */
static int hf_lppe_longitude = -1;                /* INTEGER_M2147483648_2147483647 */
static int hf_lppe_cep = -1;                      /* INTEGER_0_255 */
static int hf_lppe_uncertainty_semimajor = -1;    /* INTEGER_0_255 */
static int hf_lppe_uncertainty_semiminor = -1;    /* INTEGER_0_255 */
static int hf_lppe_offset_angle = -1;             /* INTEGER_0_179 */
static int hf_lppe_confidenceHorizontal = -1;     /* INTEGER_0_99 */
static int hf_lppe_altitude = -1;                 /* INTEGER_M64000_1280000 */
static int hf_lppe_uncertainty_altitude = -1;     /* INTEGER_0_255 */
static int hf_lppe_confidenceVertical = -1;       /* INTEGER_0_99 */
static int hf_lppe_extUncertRange = -1;           /* BOOLEAN */
static int hf_lppe_enu_origin = -1;               /* OMA_LPPe_HighAccuracy3Dposition */
static int hf_lppe_east_component = -1;           /* INTEGER_0_511 */
static int hf_lppe_negative_sign_east = -1;       /* NULL */
static int hf_lppe_north_component = -1;          /* INTEGER_0_511 */
static int hf_lppe_negative_sign_north = -1;      /* NULL */
static int hf_lppe_up_component = -1;             /* INTEGER_0_511 */
static int hf_lppe_negative_sign_up = -1;         /* NULL */
static int hf_lppe_uncertainty_up_component = -1;  /* INTEGER_0_255 */
static int hf_lppe_confidenceUp = -1;             /* INTEGER_0_99 */
static int hf_lppe_vendorOrOperatorID = -1;       /* OMA_LPPe_VendorOrOperatorID */
static int hf_lppe_locationInformationContainerDataList = -1;  /* OMA_LPPe_LocationInformationContainerDataList */
static int hf_lppe_OMA_LPPe_LocationInformationContainerDataList_item = -1;  /* OMA_LPPe_LocationInformationContainerData */
static int hf_lppe_containerID_01 = -1;           /* OMA_LPPe_LocationInformationContainerID */
static int hf_lppe_containerData = -1;            /* OCTET_STRING */
static int hf_lppe_locationInformationContainerRequestList = -1;  /* OMA_LPPe_LocationInformationContainerRequestList */
static int hf_lppe_OMA_LPPe_LocationInformationContainerRequestList_item = -1;  /* OMA_LPPe_LocationInformationContainerRequestItem */
static int hf_lppe_additionalInformation = -1;    /* OCTET_STRING */
static int hf_lppe_dataID = -1;                   /* OMA_LPPe_AssistanceContainerID */
static int hf_lppe_mapReference = -1;             /* OCTET_STRING_SIZE_1_64 */
static int hf_lppe_mapSize = -1;                  /* INTEGER_1_5000 */
static int hf_lppe_eulerAngles = -1;              /* T_eulerAngles */
static int hf_lppe_alpha = -1;                    /* INTEGER_0_359 */
static int hf_lppe_beta = -1;                     /* INTEGER_0_180 */
static int hf_lppe_gamma = -1;                    /* INTEGER_0_359 */
static int hf_lppe_referencePointUniqueID = -1;   /* OMA_LPPe_ReferencePointUniqueID */
static int hf_lppe_referencePointGeographicLocation = -1;  /* T_referencePointGeographicLocation */
static int hf_lppe_location3D = -1;               /* EllipsoidPointWithAltitude */
static int hf_lppe_location3DwithUncertainty = -1;  /* EllipsoidPointWithAltitudeAndUncertaintyEllipsoid */
static int hf_lppe_locationwithhighaccuracy = -1;  /* OMA_LPPe_HighAccuracy3Dposition */
static int hf_lppe_referencePointCivicLocation = -1;  /* OMA_LPPe_CivicLocation */
static int hf_lppe_referencePointFloorLevel = -1;  /* INTEGER_M20_235 */
static int hf_lppe_relatedReferencePoints = -1;   /* SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointRelationship */
static int hf_lppe_relatedReferencePoints_item = -1;  /* OMA_LPPe_ReferencePointRelationship */
static int hf_lppe_mapDataInformation = -1;       /* OMA_LPPe_MapDataInformation */
static int hf_lppe_OMA_LPPe_MapDataInformation_item = -1;  /* OMA_LPPe_MapDataReferenceElement */
static int hf_lppe_mapDataUrl_choice = -1;        /* T_mapDataUrl_choice */
static int hf_lppe_mapDataUrl = -1;               /* OMA_LPPe_Uri */
static int hf_lppe_mapDataRef = -1;               /* OMA_LPPe_MapDataReference */
static int hf_lppe_mapProvider = -1;              /* T_mapProvider */
static int hf_lppe_sameAsRefPointProvider = -1;   /* NULL */
static int hf_lppe_notSameAsRefPointProvider = -1;  /* OMA_LPPe_VendorOrOperatorID */
static int hf_lppe_mapAssociation = -1;           /* T_mapAssociation */
static int hf_lppe_referencePointUniqueID_01 = -1;  /* NULL */
static int hf_lppe_otherID = -1;                  /* VisibleString_SIZE_1_64 */
static int hf_lppe_mapOffset = -1;                /* OMA_LPPe_RelativeLocation */
static int hf_lppe_origin = -1;                   /* NULL */
static int hf_lppe_mapHorizontalOrientation = -1;  /* INTEGER_0_359 */
static int hf_lppe_relativeLocation = -1;         /* OMA_LPPe_RelativeLocation */
static int hf_lppe_providerID = -1;               /* OMA_LPPe_VendorOrOperatorID */
static int hf_lppe_providerAssignedID = -1;       /* OCTET_STRING */
static int hf_lppe_version = -1;                  /* INTEGER_1_64 */
static int hf_lppe_units = -1;                    /* T_units */
static int hf_lppe_arc_second_units = -1;         /* T_arc_second_units */
static int hf_lppe_relativeNorth = -1;            /* INTEGER_M524288_524287 */
static int hf_lppe_relativeEast = -1;             /* INTEGER_M524288_524287 */
static int hf_lppe_relativeAltitude = -1;         /* OMA_LPPe_RelativeAltitude */
static int hf_lppe_horizontalUncertainty = -1;    /* OMA_LPPe_HorizontalUncertaintyAndConfidence */
static int hf_lppe_uncShape = -1;                 /* T_uncShape */
static int hf_lppe_circle = -1;                   /* INTEGER_0_127 */
static int hf_lppe_ellipse = -1;                  /* T_ellipse */
static int hf_lppe_semimajor = -1;                /* INTEGER_0_127 */
static int hf_lppe_semiminor = -1;                /* INTEGER_0_127 */
static int hf_lppe_offsetAngle = -1;              /* INTEGER_0_179 */
static int hf_lppe_confidence = -1;               /* INTEGER_0_99 */
static int hf_lppe_geodeticRelativeAltitude = -1;  /* OMA_LPPe_GeodeticRelativeAltitude */
static int hf_lppe_civicRelativeAltitude = -1;    /* OMA_LPPe_CivicRelativeAltitude */
static int hf_lppe_geodetic_height_depth = -1;    /* INTEGER_M32768_32767 */
static int hf_lppe_geodetic_uncertainty_and_confidence = -1;  /* OMA_LPPe_GeodeticUncertaintyAndConfidence */
static int hf_lppe_uncertainty = -1;              /* INTEGER_0_127 */
static int hf_lppe_civic_floors = -1;             /* INTEGER_M255_256 */
static int hf_lppe_civic_uncertainty_and_confidence = -1;  /* OMA_LPPe_CivicUncertaintyAndConfidence */
static int hf_lppe_provider_ID = -1;              /* OMA_LPPe_VendorOrOperatorID */
static int hf_lppe_server_ID = -1;                /* OCTET_STRING_SIZE_4 */
static int hf_lppe_session_ID = -1;               /* OCTET_STRING_SIZE_4 */
static int hf_lppe_regionSizeInv = -1;            /* INTEGER_1_255 */
static int hf_lppe_areaWidth = -1;                /* INTEGER_2_9180 */
static int hf_lppe_codedLatOfNWCorner = -1;       /* INTEGER_0_4589 */
static int hf_lppe_codedLonOfNWCorner = -1;       /* INTEGER_0_9179 */
static int hf_lppe_rleList = -1;                  /* OMA_LPPe_RleList */
static int hf_lppe_OMA_LPPe_RleList_item = -1;    /* INTEGER_0_255 */
static int hf_lppe_beginTime = -1;                /* GNSS_SystemTime */
static int hf_lppe_beginTimeAlt = -1;             /* INTEGER_0_2881 */
static int hf_lppe_duration_01 = -1;              /* INTEGER_1_2881 */
static int hf_lppe_assistanceDataID = -1;         /* OMA_LPPe_AssistanceContainerID */
static int hf_lppe_standard_VendorOrOperatorID = -1;  /* INTEGER_1_1024 */
static int hf_lppe_nonStandard_VendorOrOperatorID = -1;  /* OMA_LPPe_NonStandard_VendorOrOperatorID */
static int hf_lppe_encodedID = -1;                /* INTEGER_0_65535 */
static int hf_lppe_visibleIdentification = -1;    /* OMA_LPPe_CharArray */
static int hf_lppe_apMacAddress = -1;             /* BIT_STRING_SIZE_48 */
static int hf_lppe_truncation = -1;               /* INTEGER_M127_128 */
static int hf_lppe_areaType = -1;                 /* T_areaType */
static int hf_lppe_componentList = -1;            /* SEQUENCE_SIZE_1_16_OF_OMA_LPPe_WLANFemtoCoverageAreaElement */
static int hf_lppe_componentList_item = -1;       /* OMA_LPPe_WLANFemtoCoverageAreaElement */
static int hf_lppe_refPointAndArea = -1;          /* T_refPointAndArea */
static int hf_lppe_referenceLocation = -1;        /* T_referenceLocation */
static int hf_lppe_referencePoint = -1;           /* OMA_LPPe_ReferencePointUniqueID */
static int hf_lppe_locationAndArea = -1;          /* OMA_LPPe_RelativeLocation */
static int hf_lppe_type = -1;                     /* T_type */
static int hf_lppe_weight = -1;                   /* INTEGER_0_100 */
static int hf_lppe_iP_Address_RequestCapabilities = -1;  /* OMA_LPPe_IP_Address_RequestCapabilities */
static int hf_lppe_assistanceContainerSupportReq = -1;  /* OMA_LPPe_AssistanceContainerSupportReq */
static int hf_lppe_locationInformationContainerSupportReq = -1;  /* OMA_LPPe_LocationInformationContainerSupportReq */
static int hf_lppe_relativeLocationChange_RequestCapabilities = -1;  /* OMA_LPPe_RelativeLocationChange_RequestCapabilities */
static int hf_lppe_highAccuracyFormatCapabilitiesReq = -1;  /* OMA_LPPe_HighAccuracyFormatCapabilitiesReq */
static int hf_lppe_segmentedAssistanceData_ReqCapabilities = -1;  /* OMA_LPPe_SegmentedAssistanceData_ReqCapabilities */
static int hf_lppe_referencePointCapabilitiesReq = -1;  /* OMA_LPPe_ReferencePointCapabilitiesReq */
static int hf_lppe_scheduledLocation_RequestCapabilities = -1;  /* OMA_LPPe_ScheduledLocation_RequestCapabilities */
static int hf_lppe_accessCapabilitiesReq = -1;    /* OMA_LPPe_AccessCapabilitiesReq */
static int hf_lppe_segmentedLocationInformation_ReqCapabilities = -1;  /* OMA_LPPe_SegmentedLocationInformation_ReqCapabilities */
static int hf_lppe_vendorOrOperatorIDList = -1;   /* OMA_LPPe_VendorOrOperatorIDList */
static int hf_lppe_OMA_LPPe_VendorOrOperatorIDList_item = -1;  /* OMA_LPPe_VendorOrOperatorID */
static int hf_lppe_referencePointProviderSupportListReq = -1;  /* SEQUENCE_SIZE_1_128_OF_OMA_LPPe_VendorOrOperatorID */
static int hf_lppe_referencePointProviderSupportListReq_item = -1;  /* OMA_LPPe_VendorOrOperatorID */
static int hf_lppe_iP_Address_Capabilities = -1;  /* OMA_LPPe_IP_Address_Capabilities */
static int hf_lppe_assistanceContainerSupport = -1;  /* OMA_LPPe_AssistanceContainerSupport */
static int hf_lppe_locationInformationContainerSupport = -1;  /* OMA_LPPe_LocationInformationContainerSupport */
static int hf_lppe_relativeLocationChange_Capabilities = -1;  /* OMA_LPPe_RelativeLocationChange_Capabilities */
static int hf_lppe_highAccuracyFormatCapabilities = -1;  /* OMA_LPPe_HighAccuracyFormatCapabilities */
static int hf_lppe_segmentedAssistanceData_ProvideCapabs = -1;  /* OMA_LPPe_SegmentedAssistanceData_ProvideCapabs */
static int hf_lppe_referencePointCapabilities = -1;  /* OMA_LPPe_ReferencePointCapabilities */
static int hf_lppe_scheduledLocation_Capabilities = -1;  /* OMA_LPPe_ScheduledLocation_Capabilities */
static int hf_lppe_accessCapabilities = -1;       /* OMA_LPPe_AccessCapabilities */
static int hf_lppe_segmentedLocationInformation_ProvideCapabs = -1;  /* OMA_LPPe_SegmentedLocationInformation_ProvideCapabs */
static int hf_lppe_iP_Address_support = -1;       /* T_iP_Address_support */
static int hf_lppe_OMA_LPPe_AssistanceContainerSupport_item = -1;  /* OMA_LPPe_VendorOrOperatorAssistanceContainerList */
static int hf_lppe_assistanceContainerList = -1;  /* OMA_LPPe_AssistanceContainerList */
static int hf_lppe_OMA_LPPe_AssistanceContainerList_item = -1;  /* OMA_LPPe_AssistanceContainerID */
static int hf_lppe_OMA_LPPe_LocationInformationContainerSupport_item = -1;  /* OMA_LPPe_VendorOrOperatorLocationInformationContainerList */
static int hf_lppe_locationInformationContainerList = -1;  /* OMA_LPPe_LocationInformationContainerList */
static int hf_lppe_OMA_LPPe_LocationInformationContainerList_item = -1;  /* OMA_LPPe_LocationInformationContainerID */
static int hf_lppe_numberOfChanges = -1;          /* INTEGER_1_5 */
static int hf_lppe_maxSegments = -1;              /* INTEGER_2_4096 */
static int hf_lppe_maxSize = -1;                  /* INTEGER_1_5000 */
static int hf_lppe_minSize = -1;                  /* INTEGER_1_5000 */
static int hf_lppe_resume = -1;                   /* NULL */
static int hf_lppe_relativeLocationReportingSupport = -1;  /* T_relativeLocationReportingSupport */
static int hf_lppe_referencePointProviderSupportList = -1;  /* SEQUENCE_SIZE_1_128_OF_OMA_LPPe_ReferencePointProviderSupportElement */
static int hf_lppe_referencePointProviderSupportList_item = -1;  /* OMA_LPPe_ReferencePointProviderSupportElement */
static int hf_lppe_referencePointProvider = -1;   /* OMA_LPPe_VendorOrOperatorID */
static int hf_lppe_mapDataSupport = -1;           /* T_mapDataSupport */
static int hf_lppe_mapDataFormat = -1;            /* OCTET_STRING */
static int hf_lppe_minimumWindow = -1;            /* INTEGER_1_1024 */
static int hf_lppe_gnssTimeReference = -1;        /* GNSS_ID_Bitmap */
static int hf_lppe_networkTimeReference = -1;     /* T_networkTimeReference */
static int hf_lppe_accessTypeUnknown = -1;        /* NULL */
static int hf_lppe_fixedAccessTypes = -1;         /* OMA_LPPe_FixedAccessTypes */
static int hf_lppe_wirelessAccessTypes = -1;      /* OMA_LPPe_WirelessAccessTypes */
static int hf_lppe_approximate_location = -1;     /* EllipsoidPointWithAltitudeAndUncertaintyEllipsoid */
static int hf_lppe_assistanceContainerRequestList = -1;  /* OMA_LPPe_AssistanceContainerRequestList */
static int hf_lppe_requestPeriodicADwithUpdate = -1;  /* OMA_LPPe_RequestPeriodicADwithUpdate */
static int hf_lppe_segmentedADpreference = -1;    /* T_segmentedADpreference */
static int hf_lppe_segmentedADResume = -1;        /* OMA_LPPe_SegmentedADResume */
static int hf_lppe_referencePointAssistanceReq = -1;  /* OMA_LPPe_ReferencePointAssistanceReq */
static int hf_lppe_periodicAD_session_ID = -1;    /* OCTET_STRING_SIZE_4 */
static int hf_lppe_typeOfADRequest = -1;          /* TypeOfADRequest */
static int hf_lppe_segmentedAD_session_ID = -1;   /* OMA_LPPe_Session_ID */
static int hf_lppe_next_segment_number = -1;      /* INTEGER_1_4096 */
static int hf_lppe_referencePointReq = -1;        /* SEQUENCE_SIZE_1_16_OF_OMA_LPPe_ReferencePointAssistanceReqElement */
static int hf_lppe_referencePointReq_item = -1;   /* OMA_LPPe_ReferencePointAssistanceReqElement */
static int hf_lppe_mapDataReq = -1;               /* OCTET_STRING */
static int hf_lppe_assistanceContainerList_01 = -1;  /* OMA_LPPe_AssistanceContainerProvideList */
static int hf_lppe_providePeriodicADwithUpdate = -1;  /* OMA_LPPe_ProvidePeriodicADwithUpdate */
static int hf_lppe_segmentedADTransfer = -1;      /* OMA_LPPe_SegmentedADTransfer */
static int hf_lppe_default_reference_point = -1;  /* OMA_LPPe_ReferencePoint */
static int hf_lppe_typeOfADProvide = -1;          /* OMA_LPPe_TypeOfADProvide */
static int hf_lppe_segment_number = -1;           /* INTEGER_1_4096 */
static int hf_lppe_iP_Address_Request = -1;       /* OMA_LPPe_IP_Address_Request */
static int hf_lppe_locationInformationContainerRequest = -1;  /* OMA_LPPe_LocationInformationContainerRequest */
static int hf_lppe_requestPeriodicLocInfoWithUpdate = -1;  /* OMA_LPPe_RequestPeriodicLocInfoWithUpdate */
static int hf_lppe_relativeLocationChange_Request = -1;  /* OMA_LPPe_RelativeLocationChange_Request */
static int hf_lppe_localPositionRequest = -1;     /* OMA_LPPe_LocalPositionRequest */
static int hf_lppe_scheduledLocation_Request = -1;  /* OMA_LPPe_ScheduledLocation_Request */
static int hf_lppe_accessTypeRequest = -1;        /* OMA_LPPe_AccessTypeRequest */
static int hf_lppe_segmentedLIpreference = -1;    /* T_segmentedLIpreference */
static int hf_lppe_segmentedLIResume = -1;        /* OMA_LPPe_SegmentedLIResume */
static int hf_lppe_civicLocation_Request = -1;    /* OMA_LPPe_CivicLocation_Request */
static int hf_lppe_typeOfLocInfoRequest = -1;     /* OMA_LPPe_TypeOfLocInfoRequest */
static int hf_lppe_typeOfRequest = -1;            /* T_typeOfRequest */
static int hf_lppe_referencePointReq_01 = -1;     /* SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointUniqueID */
static int hf_lppe_referencePointReq_item_01 = -1;  /* OMA_LPPe_ReferencePointUniqueID */
static int hf_lppe_gnssTime = -1;                 /* GNSS_SystemTime */
static int hf_lppe_networkTime = -1;              /* NetworkTime */
static int hf_lppe_relativeTime = -1;             /* INTEGER_1_1024 */
static int hf_lppe_windowSize = -1;               /* INTEGER_1_1024 */
static int hf_lppe_segmentedLI_session_ID = -1;   /* INTEGER_1_256 */
static int hf_lppe_format = -1;                   /* T_format */
static int hf_lppe_highAccuracy3Dposition = -1;   /* OMA_LPPe_HighAccuracy3Dposition */
static int hf_lppe_localPosition = -1;            /* OMA_LPPe_LocalPosition */
static int hf_lppe_highAccuracy3Dvelocity = -1;   /* OMA_LPPe_HighAccuracy3Dvelocity */
static int hf_lppe_iP_Address_List = -1;          /* OMA_LPPe_IP_Address_List */
static int hf_lppe_locationInformationContainer = -1;  /* OMA_LPPe_LocationInformationContainer */
static int hf_lppe_providePeriodicLocInfoWithUpdate = -1;  /* OMA_LPPe_ProvidePeriodicLocInfowithUpdate */
static int hf_lppe_relativeLocationChangeList = -1;  /* OMA_LPPe_RelativeLocationChangeList */
static int hf_lppe_scheduledLocation = -1;        /* OMA_LPPe_ScheduledLocation */
static int hf_lppe_accessTypes = -1;              /* OMA_LPPe_AccessTypes */
static int hf_lppe_segmentedLITransfer = -1;      /* OMA_LPPe_SegmentedLITransfer */
static int hf_lppe_locationInformationTimeStamp = -1;  /* OMA_LPPe_TimeStamp */
static int hf_lppe_locationSource = -1;           /* OMA_LPPe_LocationSource */
static int hf_lppe_civicLocation_pidf_lo = -1;    /* OMA_LPPe_CivicLocation_pidf_lo */
static int hf_lppe_subjectLocation = -1;          /* OMA_LPPe_RelativeLocation */
static int hf_lppe_OMA_LPPe_IP_Address_List_item = -1;  /* OMA_LPPe_IP_Address */
static int hf_lppe_local_IP_Address = -1;         /* T_local_IP_Address */
static int hf_lppe_iPv4 = -1;                     /* BIT_STRING_SIZE_32 */
static int hf_lppe_iPv6 = -1;                     /* BIT_STRING_SIZE_128 */
static int hf_lppe_bearer = -1;                   /* OMA_LPPe_Bearer */
static int hf_lppe_nat = -1;                      /* BOOLEAN */
static int hf_lppe_typeOfLocInfoProvide = -1;     /* OMA_LPPe_TypeOfLocInfoProvide */
static int hf_lppe_OMA_LPPe_RelativeLocationChangeList_item = -1;  /* OMA_LPPe_RelativeLocationChange */
static int hf_lppe_relativeTime_01 = -1;          /* INTEGER_0_65535 */
static int hf_lppe_transactionID = -1;            /* INTEGER_0_255 */
static int hf_lppe_disposition = -1;              /* T_disposition */
static int hf_lppe_actualWindow = -1;             /* T_actualWindow */
static int hf_lppe_start = -1;                    /* INTEGER_M512_511 */
static int hf_lppe_duration_02 = -1;              /* INTEGER_0_2047 */
static int hf_lppe_relativeTime_02 = -1;          /* INTEGER_0_1024 */
static int hf_lppe_agnss = -1;                    /* NULL */
static int hf_lppe_otdoa = -1;                    /* NULL */
static int hf_lppe_eotd = -1;                     /* NULL */
static int hf_lppe_otdoaUTRA = -1;                /* NULL */
static int hf_lppe_ecidLTE = -1;                  /* NULL */
static int hf_lppe_ecidGSM = -1;                  /* NULL */
static int hf_lppe_ecidUTRA = -1;                 /* NULL */
static int hf_lppe_wlanAP = -1;                   /* NULL */
static int hf_lppe_srn = -1;                      /* NULL */
static int hf_lppe_sensors = -1;                  /* NULL */
static int hf_lppe_nr_dl_tdoa = -1;               /* NULL */
static int hf_lppe_nr_dl_aod = -1;                /* NULL */
static int hf_lppe_ecidNR = -1;                   /* NULL */
static int hf_lppe_bt = -1;                       /* NULL */
static int hf_lppe_mbs = -1;                      /* NULL */
static int hf_lppe_baro_sensor = -1;              /* NULL */
static int hf_lppe_motion_sensor = -1;            /* NULL */
static int hf_lppe_abortCause = -1;               /* T_abortCause */
static int hf_lppe_periodicSessionIDtoAbort = -1;  /* OCTET_STRING_SIZE_4 */
static int hf_lppe_commonAssistData = -1;         /* OMA_LPPe_AGNSS_CommonAssistData */
static int hf_lppe_genericAssistData = -1;        /* OMA_LPPe_AGNSS_GenericAssistData */
static int hf_lppe_error_01 = -1;                 /* OMA_LPPe_AGNSS_Error */
static int hf_lppe_ionosphericModel = -1;         /* OMA_LPPe_AGNSS_IonosphericModel */
static int hf_lppe_troposphereModel = -1;         /* OMA_LPPe_AGNSS_TroposphereModel */
static int hf_lppe_altitudeAssistance = -1;       /* OMA_LPPe_AGNSS_AltitudeAssistanceList */
static int hf_lppe_solarRadiation = -1;           /* OMA_LPPe_AGNSS_SolarRadiation */
static int hf_lppe_ccpAssistCommonProvide = -1;   /* OMA_LPPe_AGNSS_CCPassistCommonProvide */
static int hf_lppe_OMA_LPPe_AGNSS_GenericAssistData_item = -1;  /* OMA_LPPe_AGNSS_GenericAssistDataElement */
static int hf_lppe_gnss_ID = -1;                  /* GNSS_ID */
static int hf_lppe_wideAreaIonoSurfacePerSVlist = -1;  /* OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVlist */
static int hf_lppe_mechanicsForAllSVs = -1;       /* OMA_LPPe_AGNSS_MechanicsForAllSVs */
static int hf_lppe_dcbsForAllSVs = -1;            /* OMA_LPPe_AGNSS_DCBsForAllSVs */
static int hf_lppe_navModelDegradationModel = -1;  /* OMA_LPPe_AGNSS_NavModelDegradationModelList */
static int hf_lppe_ccpAssistProvide = -1;         /* OMA_LPPe_AGNSS_CCPassistGenericProvide */
static int hf_lppe_navModelList = -1;             /* OMA_LPPe_AGNSS_NavModelList */
static int hf_lppe_staticModels = -1;             /* T_staticModels */
static int hf_lppe_localKlobucharModelList = -1;  /* OMA_LPPe_AGNSS_LocalKlobucharModelList */
static int hf_lppe_ionoStormIndication = -1;      /* OMA_LPPe_AGNSS_IonoStormIndication */
static int hf_lppe_waIono = -1;                   /* T_waIono */
static int hf_lppe_controlParameters = -1;        /* OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersProvide */
static int hf_lppe_commonProvide = -1;            /* OMA_LPPe_AGNSS_WideAreaIonoSurfaceCommon */
static int hf_lppe_OMA_LPPe_AGNSS_LocalKlobucharModelList_item = -1;  /* OMA_LPPe_AGNSS_LocalKlobucharModelElement */
static int hf_lppe_klobucharModel = -1;           /* SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalKlobucharModel */
static int hf_lppe_klobucharModel_item = -1;      /* OMA_LPPe_AGNSS_LocalKlobucharModel */
static int hf_lppe_alfa0 = -1;                    /* INTEGER_M128_127 */
static int hf_lppe_alfa1 = -1;                    /* INTEGER_M128_127 */
static int hf_lppe_alfa2 = -1;                    /* INTEGER_M128_127 */
static int hf_lppe_alfa3 = -1;                    /* INTEGER_M128_127 */
static int hf_lppe_beta0 = -1;                    /* INTEGER_M128_127 */
static int hf_lppe_beta1 = -1;                    /* INTEGER_M128_127 */
static int hf_lppe_beta2 = -1;                    /* INTEGER_M128_127 */
static int hf_lppe_beta3 = -1;                    /* INTEGER_M128_127 */
static int hf_lppe_area = -1;                     /* OMA_LPPe_ValidityArea */
static int hf_lppe_stormList = -1;                /* OMA_LPPe_AGNSS_StormList */
static int hf_lppe_OMA_LPPe_AGNSS_StormList_item = -1;  /* OMA_LPPe_AGNSS_StormElement */
static int hf_lppe_rleListIono = -1;              /* OMA_LPPe_AGNSS_RleListIono */
static int hf_lppe_OMA_LPPe_AGNSS_RleListIono_item = -1;  /* OMA_LPPe_AGNSS_RleIonoElement */
static int hf_lppe_regionCount = -1;              /* INTEGER_0_255 */
static int hf_lppe_ionoIndex = -1;                /* T_ionoIndex */
static int hf_lppe_noaaScales = -1;               /* OMA_LPPe_AGNSS_NoaaScales */
static int hf_lppe_duration_03 = -1;              /* OMA_LPPe_Duration */
static int hf_lppe_rate = -1;                     /* INTEGER_1_64 */
static int hf_lppe_referencePosition = -1;        /* Ellipsoid_Point */
static int hf_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVlist_item = -1;  /* OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVelement */
static int hf_lppe_svID = -1;                     /* SV_ID */
static int hf_lppe_a0 = -1;                       /* INTEGER_0_8191 */
static int hf_lppe_e1 = -1;                       /* INTEGER_M4096_4095 */
static int hf_lppe_n1 = -1;                       /* INTEGER_M4096_4095 */
static int hf_lppe_e2 = -1;                       /* INTEGER_M4096_4095 */
static int hf_lppe_n2 = -1;                       /* INTEGER_M4096_4095 */
static int hf_lppe_en = -1;                       /* INTEGER_M4096_4095 */
static int hf_lppe_troposphereDelayList = -1;     /* OMA_LPPe_AGNSS_LocalTroposphereDelayList */
static int hf_lppe_surfaceParametersList = -1;    /* OMA_LPPe_AGNSS_LocalSurfaceParametersList */
static int hf_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayList_item = -1;  /* OMA_LPPe_AGNSS_LocalTroposphereDelayAreaElement */
static int hf_lppe_refAltitude = -1;              /* INTEGER_M1000_8192 */
static int hf_lppe_gradientReferencePosition = -1;  /* Ellipsoid_Point */
static int hf_lppe_delayList = -1;                /* SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement */
static int hf_lppe_delayList_item = -1;           /* OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement */
static int hf_lppe_zh0 = -1;                      /* INTEGER_0_4095 */
static int hf_lppe_eh = -1;                       /* INTEGER_0_4095 */
static int hf_lppe_zw0 = -1;                      /* INTEGER_0_4095 */
static int hf_lppe_ew = -1;                       /* INTEGER_0_4095 */
static int hf_lppe_gN = -1;                       /* INTEGER_M8192_8191 */
static int hf_lppe_gE = -1;                       /* INTEGER_M8192_8191 */
static int hf_lppe_mappingFunctionParameters = -1;  /* OMA_LPPe_AGNSS_MappingFunctionParameters */
static int hf_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersList_item = -1;  /* OMA_LPPe_AGNSS_LocalSurfaceParametersAreaElement */
static int hf_lppe_parameterList = -1;            /* SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement */
static int hf_lppe_parameterList_item = -1;       /* OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement */
static int hf_lppe_pressure = -1;                 /* INTEGER_M1024_1023 */
static int hf_lppe_pressureRate = -1;             /* INTEGER_M128_127 */
static int hf_lppe_gN_pressure = -1;              /* INTEGER_M128_127 */
static int hf_lppe_gE_pressure = -1;              /* INTEGER_M128_127 */
static int hf_lppe_temperature = -1;              /* INTEGER_M64_63 */
static int hf_lppe_temperatureRate = -1;          /* INTEGER_M16_16 */
static int hf_lppe_gN_temperature = -1;           /* INTEGER_M8_7 */
static int hf_lppe_gE_temperature = -1;           /* INTEGER_M8_7 */
static int hf_lppe_ah = -1;                       /* INTEGER_0_16383 */
static int hf_lppe_bh = -1;                       /* INTEGER_0_16383 */
static int hf_lppe_ch = -1;                       /* INTEGER_0_16383 */
static int hf_lppe_aw = -1;                       /* INTEGER_0_16383 */
static int hf_lppe_bw = -1;                       /* INTEGER_0_16383 */
static int hf_lppe_cw = -1;                       /* INTEGER_0_16383 */
static int hf_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceList_item = -1;  /* OMA_LPPe_AGNSS_AltitudeAssistanceAreaElement */
static int hf_lppe_gradientReferencePosition_01 = -1;  /* EllipsoidPointWithAltitudeAndUncertaintyEllipsoid */
static int hf_lppe_pressureAssistanceList = -1;   /* SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_PressureAssistanceElement */
static int hf_lppe_pressureAssistanceList_item = -1;  /* OMA_LPPe_AGNSS_PressureAssistanceElement */
static int hf_lppe_gN_01 = -1;                    /* INTEGER_M128_127 */
static int hf_lppe_gE_01 = -1;                    /* INTEGER_M128_127 */
static int hf_lppe_solarRadiation_01 = -1;        /* INTEGER_1000_2000 */
static int hf_lppe_OMA_LPPe_AGNSS_MechanicsForAllSVs_item = -1;  /* OMA_LPPe_AGNSS_MechanicsElement */
static int hf_lppe_svid = -1;                     /* SV_ID */
static int hf_lppe_mass = -1;                     /* INTEGER_1_4095 */
static int hf_lppe_effectiveReflectivityArea = -1;  /* INTEGER_1_511 */
static int hf_lppe_pco = -1;                      /* OMA_LPPe_AGNSS_PCOelement */
static int hf_lppe_svInfo = -1;                   /* T_svInfo */
static int hf_lppe_svType = -1;                   /* OMA_LPPe_AGNSS_SVtype */
static int hf_lppe_svNumber = -1;                 /* INTEGER_0_1000 */
static int hf_lppe_xOffsetSBF = -1;               /* INTEGER_M30000_30000 */
static int hf_lppe_yOffsetSBF = -1;               /* INTEGER_M30000_30000 */
static int hf_lppe_zOffsetSBF = -1;               /* INTEGER_M30000_30000 */
static int hf_lppe_OMA_LPPe_AGNSS_DCBsForAllSVs_item = -1;  /* OMA_LPPe_AGNSS_DCBlistElement */
static int hf_lppe_reference = -1;                /* T_reference */
static int hf_lppe_signal = -1;                   /* GNSS_SignalID */
static int hf_lppe_pd = -1;                       /* T_pd */
static int hf_lppe_dcbList = -1;                  /* OMA_LPPe_AGNSS_DCBlist */
static int hf_lppe_OMA_LPPe_AGNSS_DCBlist_item = -1;  /* OMA_LPPe_AGNSS_DCBelement */
static int hf_lppe_pd_01 = -1;                    /* T_pd_01 */
static int hf_lppe_dcb = -1;                      /* INTEGER_M4096_4095 */
static int hf_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelList_item = -1;  /* OMA_LPPe_AGNSS_NavModelDegradationModelElement */
static int hf_lppe_clockDegradationModel = -1;    /* OMA_LPPe_AGNSS_ClockModelDegradationModel */
static int hf_lppe_orbitDegradationModel = -1;    /* OMA_LPPe_AGNSS_OrbitModelDegradationModel */
static int hf_lppe_clockRMS0 = -1;                /* INTEGER_0_31 */
static int hf_lppe_clockRMS1 = -1;                /* INTEGER_0_7 */
static int hf_lppe_orbitRMS0 = -1;                /* INTEGER_0_31 */
static int hf_lppe_orbitRMS1 = -1;                /* INTEGER_0_7 */
static int hf_lppe_ccpProvideCommonParameters = -1;  /* OMA_LPPe_AGNSS_CCPprovideCommonParameters */
static int hf_lppe_ccpProvideControlParameters = -1;  /* OMA_LPPe_AGNSS_CCPprovideControlParameters */
static int hf_lppe_ccpReferenceTime = -1;         /* GNSS_SystemTime */
static int hf_lppe_ccpSupportArea = -1;           /* OMA_LPPe_AGNSS_CCPsupportArea */
static int hf_lppe_ccpNeighborList = -1;          /* OMA_LPPe_AGNSS_CCPreferenceStationList */
static int hf_lppe_ccpReferenceStationList = -1;  /* OMA_LPPe_AGNSS_CCPreferenceStationList */
static int hf_lppe_areaDescription = -1;          /* OMA_LPPe_ValidityArea */
static int hf_lppe_signalSupport = -1;            /* SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPsignalSupport */
static int hf_lppe_signalSupport_item = -1;       /* OMA_LPPe_AGNSS_CCPsignalSupport */
static int hf_lppe_gnss = -1;                     /* GNSS_ID */
static int hf_lppe_signals = -1;                  /* GNSS_SignalIDs */
static int hf_lppe_OMA_LPPe_AGNSS_CCPreferenceStationList_item = -1;  /* OMA_LPPe_AGNSS_CCPreferenceStationElement */
static int hf_lppe_referenceStationID = -1;       /* OMA_LPPe_AGNSS_CCPreferenceStationID */
static int hf_lppe_referenceStationLocation = -1;  /* OMA_LPPe_HighAccuracy3Dposition */
static int hf_lppe_antennaDescription = -1;       /* OMA_LPPe_AGNSS_AntennaDescription */
static int hf_lppe_OMA_LPPe_AGNSS_CCPassistGenericProvide_item = -1;  /* OMA_LPPe_AGNSS_CCPassistGenericProvideElement */
static int hf_lppe_ccpPerSignalList = -1;         /* SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPperSignalElement */
static int hf_lppe_ccpPerSignalList_item = -1;    /* OMA_LPPe_AGNSS_CCPperSignalElement */
static int hf_lppe_signal_ID = -1;                /* GNSS_SignalID */
static int hf_lppe_ccpPerSVlist = -1;             /* SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_CCPperSVelement */
static int hf_lppe_ccpPerSVlist_item = -1;        /* OMA_LPPe_AGNSS_CCPperSVelement */
static int hf_lppe_integerCodePhase = -1;         /* INTEGER_0_255 */
static int hf_lppe_codePhase = -1;                /* INTEGER_0_14989622 */
static int hf_lppe_codePhaseError = -1;           /* OMA_LPPe_AGNSS_CodePhaseError */
static int hf_lppe_phaseRangeDelta = -1;          /* INTEGER_M524288_524287 */
static int hf_lppe_phaseRangeRMSerror = -1;       /* INTEGER_0_127 */
static int hf_lppe_lockIndicator = -1;            /* BOOLEAN */
static int hf_lppe_codePhaseRMSError = -1;        /* INTEGER_0_63 */
static int hf_lppe_cnr = -1;                      /* INTEGER_0_255 */
static int hf_lppe_coordinateBased = -1;          /* OMA_LPPe_AGNSS_NavModel_CoordinateBased */
static int hf_lppe_fixedInterval = -1;            /* T_fixedInterval */
static int hf_lppe_interval = -1;                 /* INTEGER_1_30 */
static int hf_lppe_bases = -1;                    /* T_bases */
static int hf_lppe_baseForPosVel = -1;            /* INTEGER_M100000000_100000000 */
static int hf_lppe_baseForCcRate = -1;            /* OMA_LPPe_AGNSS_NavModel_BigNumber */
static int hf_lppe_referencedTo = -1;             /* T_referencedTo */
static int hf_lppe_pointList = -1;                /* SEQUENCE_SIZE_1_97_OF_OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement */
static int hf_lppe_pointList_item = -1;           /* OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement */
static int hf_lppe_time_of_record = -1;           /* GNSS_SystemTime */
static int hf_lppe_svIdList = -1;                 /* SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_NavModel_PVTelement */
static int hf_lppe_svIdList_item = -1;            /* OMA_LPPe_AGNSS_NavModel_PVTelement */
static int hf_lppe_svClockOffset = -1;            /* OMA_LPPe_AGNSS_NavModel_BigNumber */
static int hf_lppe_ecefPositionX = -1;            /* OMA_LPPe_AGNSS_NavModel_BigNumber */
static int hf_lppe_ecefPositionY = -1;            /* OMA_LPPe_AGNSS_NavModel_BigNumber */
static int hf_lppe_ecefPositionZ = -1;            /* OMA_LPPe_AGNSS_NavModel_BigNumber */
static int hf_lppe_clockPosSTD = -1;              /* OMA_LPPe_AGNSS_NavModel_STDmatrix */
static int hf_lppe_rateRecord = -1;               /* T_rateRecord */
static int hf_lppe_svClockRate = -1;              /* OMA_LPPe_AGNSS_NavModel_BigNumber */
static int hf_lppe_ecefVelocityX = -1;            /* OMA_LPPe_AGNSS_NavModel_BigNumber */
static int hf_lppe_ecefVelocityY = -1;            /* OMA_LPPe_AGNSS_NavModel_BigNumber */
static int hf_lppe_ecefVelocityZ = -1;            /* OMA_LPPe_AGNSS_NavModel_BigNumber */
static int hf_lppe_clockRateVelSTD = -1;          /* OMA_LPPe_AGNSS_NavModel_STDmatrix */
static int hf_lppe_msb = -1;                      /* INTEGER_M1000000000_1000000000 */
static int hf_lppe_lsb = -1;                      /* INTEGER_1_100 */
static int hf_lppe_e11 = -1;                      /* INTEGER_0_1000 */
static int hf_lppe_e22 = -1;                      /* INTEGER_0_1000 */
static int hf_lppe_e33 = -1;                      /* INTEGER_0_1000 */
static int hf_lppe_e44 = -1;                      /* INTEGER_0_1000000 */
static int hf_lppe_e12 = -1;                      /* INTEGER_0_10000000 */
static int hf_lppe_e13 = -1;                      /* INTEGER_0_10000000 */
static int hf_lppe_e14 = -1;                      /* INTEGER_0_10000000 */
static int hf_lppe_e23 = -1;                      /* INTEGER_0_10000000 */
static int hf_lppe_e24 = -1;                      /* INTEGER_0_10000000 */
static int hf_lppe_e34 = -1;                      /* INTEGER_0_10000000 */
static int hf_lppe_commonAssistDataReq = -1;      /* OMA_LPPe_AGNSS_CommonAssistanceDataReq */
static int hf_lppe_genericAssistDataReq = -1;     /* OMA_LPPe_AGNSS_GenericAssistanceDataReq */
static int hf_lppe_ionosphericModelReq = -1;      /* OMA_LPPe_AGNSS_IonosphericModelReq */
static int hf_lppe_troposphereModelReq = -1;      /* OMA_LPPe_AGNSS_TroposphereModelReq */
static int hf_lppe_altitudeAssistanceReq = -1;    /* OMA_LPPe_AGNSS_AltitudeAssistanceReq */
static int hf_lppe_solarRadiationRequest = -1;    /* OMA_LPPe_AGNSS_SolarRadiationReq */
static int hf_lppe_ccpRequestControlParameters = -1;  /* OMA_LPPe_AGNSS_CCPrequestControlParameters */
static int hf_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataReq_item = -1;  /* OMA_LPPe_AGNSS_GenericAssistDataReqElement */
static int hf_lppe_waIonoSurfaceReq = -1;         /* OMA_LPPe_AGNSS_WaIonoSurfaceRequest */
static int hf_lppe_mechanicsReq = -1;             /* OMA_LPPe_AGNSS_MechanicsReq */
static int hf_lppe_dcbReq = -1;                   /* OMA_LPPe_AGNSS_DCBreq */
static int hf_lppe_navModelDegradationModelReq = -1;  /* OMA_LPPe_AGNSS_NavModelDegradationModelReq */
static int hf_lppe_ccpAssistGenericReq = -1;      /* OMA_LPPe_AGNSS_CCPassistGenericReq */
static int hf_lppe_navigationModelReq = -1;       /* OMA_LPPe_AGNSS_NavigationModelReq */
static int hf_lppe_staticModels_01 = -1;          /* T_staticModels_01 */
static int hf_lppe_ionoreq = -1;                  /* T_ionoreq */
static int hf_lppe_requestBeginTime = -1;         /* GNSS_SystemTime */
static int hf_lppe_periodicModels = -1;           /* T_periodicModels */
static int hf_lppe_waIonoSurface = -1;            /* OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersRequest */
static int hf_lppe_troposphereModelReq_01 = -1;   /* T_troposphereModelReq */
static int hf_lppe_supportForMultipleGridPoints = -1;  /* BOOLEAN */
static int hf_lppe_reference_01 = -1;             /* T_reference_01 */
static int hf_lppe_pd_02 = -1;                    /* T_pd_02 */
static int hf_lppe_massRequest = -1;              /* BOOLEAN */
static int hf_lppe_effectiveReflectivityAreaRequest = -1;  /* BOOLEAN */
static int hf_lppe_pcoRequest = -1;               /* BOOLEAN */
static int hf_lppe_svInfoRequest = -1;            /* BOOLEAN */
static int hf_lppe_ccpSupportAreaRequest = -1;    /* NULL */
static int hf_lppe_ccpNeighborListRequest = -1;   /* NULL */
static int hf_lppe_ccpCommonRequest = -1;         /* T_ccpCommonRequest */
static int hf_lppe_refStation = -1;               /* T_refStation */
static int hf_lppe_posBasedReferenceStationRequest = -1;  /* T_posBasedReferenceStationRequest */
static int hf_lppe_requestedReferenceStationLocation = -1;  /* OMA_LPPe_HighAccuracy3Dposition */
static int hf_lppe_qor = -1;                      /* OMA_LPPe_AGNSS_QoR */
static int hf_lppe_idBasedReferenceStationRequest = -1;  /* OMA_LPPe_AGNSS_ReferenceStationIDlist */
static int hf_lppe_referenceStationKillList = -1;  /* OMA_LPPe_AGNSS_ReferenceStationIDlist */
static int hf_lppe_OMA_LPPe_AGNSS_ReferenceStationIDlist_item = -1;  /* OMA_LPPe_AGNSS_CCPreferenceStationID */
static int hf_lppe_ccpAssist_SignalsReq = -1;     /* GNSS_SignalIDs */
static int hf_lppe_navModelID_PrefList = -1;      /* T_navModelID_PrefList */
static int hf_lppe_navModelID_PrefList_item = -1;  /* INTEGER_1_8 */
static int hf_lppe_highAccuracyReferenceTime = -1;  /* GNSS_SystemTime */
static int hf_lppe_highAccuracyMeasurements = -1;  /* OMA_LPPe_AGNSS_HAgnssProvide */
static int hf_lppe_ionosphereMeasurements = -1;   /* OMA_LPPe_AGNSS_IonosphereMeasurements */
static int hf_lppe_localSurfaceMeasurements = -1;  /* OMA_LPPe_AGNSS_LocalSurfaceMeasurements */
static int hf_lppe_controlParameters_01 = -1;     /* T_controlParameters */
static int hf_lppe_measurements = -1;             /* T_measurements */
static int hf_lppe_position = -1;                 /* EllipsoidPointWithAltitudeAndUncertaintyEllipsoid */
static int hf_lppe_referenceTime = -1;            /* GNSS_SystemTime */
static int hf_lppe_localPressure = -1;            /* T_localPressure */
static int hf_lppe_pressureUncertainty = -1;      /* INTEGER_0_127 */
static int hf_lppe_antennaOrientation = -1;       /* OMA_LPPe_Orientation */
static int hf_lppe_signalMeasurements = -1;       /* SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssMeasurementElement */
static int hf_lppe_signalMeasurements_item = -1;  /* OMA_LPPe_AGNSS_HAgnssMeasurementElement */
static int hf_lppe_haGNSSperSignalList = -1;      /* SEQUENCE_SIZE_1_8_OF_OMA_LPPe_HAgnssPerSignalElement */
static int hf_lppe_haGNSSperSignalList_item = -1;  /* OMA_LPPe_HAgnssPerSignalElement */
static int hf_lppe_haGNSSperSVlist = -1;          /* SEQUENCE_SIZE_1_64_OF_OMA_LPPe_HAgnssPerSVelement */
static int hf_lppe_haGNSSperSVlist_item = -1;     /* OMA_LPPe_HAgnssPerSVelement */
static int hf_lppe_multipathDetection = -1;       /* T_multipathDetection */
static int hf_lppe_adr = -1;                      /* INTEGER_0_536870911 */
static int hf_lppe_adrRMSerror = -1;              /* INTEGER_0_127 */
static int hf_lppe_tecPerSV = -1;                 /* OMA_LPPe_AGNSS_TECPerSV */
static int hf_lppe_tecAtZenith = -1;              /* OMA_LPPe_AGNSS_TECAtZenith */
static int hf_lppe_OMA_LPPe_AGNSS_TECPerSV_item = -1;  /* OMA_LPPe_AGNSS_TECPerSVElement */
static int hf_lppe_azimuth = -1;                  /* INTEGER_0_359 */
static int hf_lppe_elevation = -1;                /* INTEGER_0_90 */
static int hf_lppe_tecValue = -1;                 /* INTEGER_0_511 */
static int hf_lppe_tecUncertainty = -1;           /* INTEGER_0_63 */
static int hf_lppe_tecValueAtZenith = -1;         /* INTEGER_0_511 */
static int hf_lppe_tecUncertaintyAtZenith = -1;   /* INTEGER_0_63 */
static int hf_lppe_temperatureMeasurement = -1;   /* T_temperatureMeasurement */
static int hf_lppe_temperatureUncertainty = -1;   /* INTEGER_0_7 */
static int hf_lppe_positioningInstructions = -1;  /* OMA_LPPe_AGNSS_PositioningInstructions */
static int hf_lppe_ionosphereMeasurementsReq = -1;  /* T_ionosphereMeasurementsReq */
static int hf_lppe_localSurfaceMeasurementReq = -1;  /* OMA_LPPe_AGNSS_LocalSurfaceMeasurementReq */
static int hf_lppe_highAccuracyMethodRequested = -1;  /* BOOLEAN */
static int hf_lppe_haGNSSreq = -1;                /* OMA_LPPe_AGNSS_HAgnssRequestControlParameters */
static int hf_lppe_rate_01 = -1;                  /* INTEGER_1_63 */
static int hf_lppe_antennaInformationReq = -1;    /* T_antennaInformationReq */
static int hf_lppe_pressureInformationReq = -1;   /* BOOLEAN */
static int hf_lppe_signalReqList = -1;            /* SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssSignalReqElement */
static int hf_lppe_signalReqList_item = -1;       /* OMA_LPPe_AGNSS_HAgnssSignalReqElement */
static int hf_lppe_gnssID = -1;                   /* GNSS_ID */
static int hf_lppe_assistanceDataSupportList = -1;  /* OMA_LPPe_AGNSS_AssistanceDataSupportList */
static int hf_lppe_environmentObservationSupportList = -1;  /* OMA_LPPe_AGNSS_EnvironmentObservationSupportList */
static int hf_lppe_haGNSSsupport = -1;            /* OMA_LPPe_AGNSS_HAgnssSupport */
static int hf_lppe_commonAssistanceDataSupport = -1;  /* OMA_LPPe_AGNSS_CommonAssistanceDataSupport */
static int hf_lppe_genericAssistanceDataSupport = -1;  /* OMA_LPPe_AGNSS_GenericAssistanceDataSupport */
static int hf_lppe_ionosphereMeasurementSupport = -1;  /* T_ionosphereMeasurementSupport */
static int hf_lppe_pressureMeasurementSupported = -1;  /* BOOLEAN */
static int hf_lppe_temperatureMeasurementSupported = -1;  /* BOOLEAN */
static int hf_lppe_ionosphericModelSupport = -1;  /* OMA_LPPe_AGNSS_IonosphericModelSupport */
static int hf_lppe_troposphereModelSupport = -1;  /* OMA_LPPe_AGNSS_TroposphereModelSupport */
static int hf_lppe_altitudeAssistanceSupport = -1;  /* OMA_LPPe_AGNSS_AltitudeAssistanceSupport */
static int hf_lppe_solarRadiationSupport = -1;    /* OMA_LPPe_AGNSS_SolarRadiationSupport */
static int hf_lppe_ccpSupport = -1;               /* OMA_LPPe_AGNSS_CCPsupport */
static int hf_lppe_ionoModel = -1;                /* T_ionoModel */
static int hf_lppe_tropoModel = -1;               /* T_tropoModel */
static int hf_lppe_supportAreaAssistanceSupported = -1;  /* BOOLEAN */
static int hf_lppe_multiReferenceStationSupported = -1;  /* BOOLEAN */
static int hf_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataSupport_item = -1;  /* OMA_LPPe_AGNSS_GenericAssistDataSupportElement */
static int hf_lppe_mechnanicsSupport = -1;        /* OMA_LPPe_AGNSS_MechanicsSupport */
static int hf_lppe_dcbSupport = -1;               /* OMA_LPPe_AGNSS_DCBsupport */
static int hf_lppe_navModelAccuracyModelDegradationSupport = -1;  /* OMA_LPPe_AGNSS_NavModelAccuracyModelDegradationSupport */
static int hf_lppe_ccpAssistanceSuppport = -1;    /* GNSS_SignalIDs */
static int hf_lppe_navModelSupport = -1;          /* OMA_LPPe_AGNSS_NavModelSupport */
static int hf_lppe_navModelSupport_01 = -1;       /* T_navModelSupport */
static int hf_lppe_navModelSupport_item = -1;     /* INTEGER_1_8 */
static int hf_lppe_modeSupport = -1;              /* T_modeSupport */
static int hf_lppe_haGNSSpressureInformationSupport = -1;  /* BOOLEAN */
static int hf_lppe_haGNSSantennaInformationSupport = -1;  /* T_haGNSSantennaInformationSupport */
static int hf_lppe_haGNSSperGNSSsupport = -1;     /* SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_HAgnssPerGNSSsupport */
static int hf_lppe_haGNSSperGNSSsupport_item = -1;  /* OMA_LPPe_AGNSS_HAgnssPerGNSSsupport */
static int hf_lppe_haGNSSsignalSupport = -1;      /* GNSS_SignalIDs */
static int hf_lppe_assistanceDataSupportListReq = -1;  /* NULL */
static int hf_lppe_environmentObservationSupportListReq = -1;  /* NULL */
static int hf_lppe_haGNSSsupportReq = -1;         /* NULL */
static int hf_lppe_agnss_locationServerErrorCauses = -1;  /* OMA_LPPe_AGNSS_LocationServerErrorCauses */
static int hf_lppe_agnss_targetDeviceErrorCauses = -1;  /* OMA_LPPe_AGNSS_TargetDeviceErrorCauses */
static int hf_lppe_waIonoErrorCauses = -1;        /* T_waIonoErrorCauses */
static int hf_lppe_ccpErrorCauses = -1;           /* T_ccpErrorCauses */
static int hf_lppe_highAccuracyErrorCauses = -1;  /* T_highAccuracyErrorCauses */
static int hf_lppe_ionosphereMeasurementErrorCauses = -1;  /* T_ionosphereMeasurementErrorCauses */
static int hf_lppe_environmentObservationErrorCauses = -1;  /* T_environmentObservationErrorCauses */
static int hf_lppe_haGNSSerrorCauses = -1;        /* T_haGNSSerrorCauses */
static int hf_lppe_stationID = -1;                /* INTEGER_0_65535 */
static int hf_lppe_antennaDescription_01 = -1;    /* T_antennaDescription */
static int hf_lppe_igsAntennaName = -1;           /* OMA_LPPe_CharArray */
static int hf_lppe_proprietaryName = -1;          /* OMA_LPPe_CharArray */
static int hf_lppe_antennaSetupID = -1;           /* INTEGER_0_255 */
static int hf_lppe_antennaSerialNumber = -1;      /* OMA_LPPe_CharArray */
static int hf_lppe_targetDeviceAbortCauses = -1;  /* T_targetDeviceAbortCauses */
static int hf_lppe_ccpAbort = -1;                 /* T_ccpAbort */
static int hf_lppe_waIonoAbort = -1;              /* T_waIonoAbort */
static int hf_lppe_otdoa_ReferenceCellInfo = -1;  /* OMA_LPPe_OTDOA_ReferenceCellInfo */
static int hf_lppe_otdoa_NeighbourCellInfo = -1;  /* OMA_LPPe_OTDOA_NeighbourCellInfoList */
static int hf_lppe_otdoa_Error = -1;              /* OMA_LPPe_OTDOA_Error */
static int hf_lppe_referenceCellInfo = -1;        /* OTDOA_ReferenceCellInfo */
static int hf_lppe_positionCalculationInfoRef = -1;  /* OMA_LPPe_OTDOA_PositionCalculationInfoRef */
static int hf_lppe_systemFrameNumber = -1;        /* BIT_STRING_SIZE_10 */
static int hf_lppe_rtdReferenceStd = -1;          /* OMA_LPPe_OTDOA_RTDquality */
static int hf_lppe_cellLocation = -1;             /* T_cellLocation */
static int hf_lppe_reference_point = -1;          /* OMA_LPPe_ReferencePoint */
static int hf_lppe_relative_location = -1;        /* OMA_LPPe_RelativeLocation */
static int hf_lppe_femtoCellInfo = -1;            /* T_femtoCellInfo */
static int hf_lppe_location_reliability = -1;     /* INTEGER_1_100 */
static int hf_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoList_item = -1;  /* OMA_LPPe_OTDOA_NeighbourFreqCellInfoList */
static int hf_lppe_neighbourCellInfoList_eNB = -1;  /* SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB */
static int hf_lppe_neighbourCellInfoList_eNB_item = -1;  /* OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB */
static int hf_lppe_neighbourCellInfoList_HeNB = -1;  /* SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB */
static int hf_lppe_neighbourCellInfoList_HeNB_item = -1;  /* OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB */
static int hf_lppe_relative_Location = -1;        /* OMA_LPPe_RelativeLocation */
static int hf_lppe_otdoa_eNB_CellDataList = -1;   /* SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_OTDOA_CellData */
static int hf_lppe_otdoa_eNB_CellDataList_item = -1;  /* OMA_LPPe_OTDOA_CellData */
static int hf_lppe_otdoa_HeNB_CellDataList = -1;  /* OMA_LPPe_OTDOA_CellData */
static int hf_lppe_otdoa_NeighbourCellInfoElement = -1;  /* OTDOA_NeighbourCellInfoElement */
static int hf_lppe_rtdInfo = -1;                  /* T_rtdInfo */
static int hf_lppe_subframeOffset = -1;           /* INTEGER_0_10229 */
static int hf_lppe_fineRTD = -1;                  /* INTEGER_0_99999 */
static int hf_lppe_fineRTDstd = -1;               /* OMA_LPPe_OTDOA_RTDquality */
static int hf_lppe_fineRTDdriftRate = -1;         /* INTEGER_M100_100 */
static int hf_lppe_resolution = -1;               /* T_resolution */
static int hf_lppe_quality = -1;                  /* INTEGER_0_127 */
static int hf_lppe_lteCell = -1;                  /* T_lteCell */
static int hf_lppe_physCellId = -1;               /* INTEGER_0_503 */
static int hf_lppe_eARFCN = -1;                   /* ARFCN_ValueEUTRA */
static int hf_lppe_ecgi = -1;                     /* CellGlobalIdEUTRA_AndUTRA */
static int hf_lppe_eARFCN_ext = -1;               /* ARFCN_ValueEUTRA_v9a0 */
static int hf_lppe_requestedCells = -1;           /* T_requestedCells */
static int hf_lppe_otdoaLocationInformation = -1;  /* OMA_LPPe_OTDOA_LocationInformation */
static int hf_lppe_otdoaError = -1;               /* OMA_LPPe_OTDOA_Error */
static int hf_lppe_cellGlobalId = -1;             /* CellGlobalIdEUTRA_AndUTRA */
static int hf_lppe_assistanceAvailability = -1;   /* BOOLEAN */
static int hf_lppe_eNodeB_AD_sup = -1;            /* T_eNodeB_AD_sup */
static int hf_lppe_home_eNodeB_AD_sup = -1;       /* T_home_eNodeB_AD_sup */
static int hf_lppe_locationServerErrorCauses = -1;  /* OMA_LPPe_OTDOA_LocationServerErrorCauses */
static int hf_lppe_targetDeviceErrorCauses = -1;  /* OMA_LPPe_OTDOA_TargetDeviceErrorCauses */
static int hf_lppe_cause = -1;                    /* T_cause */
static int hf_lppe_cause_01 = -1;                 /* T_cause_01 */
static int hf_lppe_referenceBTS = -1;             /* OMA_LPPe_EOTD_ReferenceBTSForAssistance */
static int hf_lppe_msrAssistDataList = -1;        /* OMA_LPPe_EOTD_MsrAssistDataList */
static int hf_lppe_systemInfoAssistDataList = -1;  /* OMA_LPPe_EOTD_SystemInfoAssistDataList */
static int hf_lppe_eotdError = -1;                /* OMA_LPPe_EOTD_Error */
static int hf_lppe_bsicAndCarrier = -1;           /* OMA_LPPe_CellNonUniqueIDGERAN */
static int hf_lppe_timeSlotScheme = -1;           /* OMA_LPPe_EOTD_TimeSlotScheme */
static int hf_lppe_btsPosition = -1;              /* T_btsPosition */
static int hf_lppe_ellipsoidPoint = -1;           /* Ellipsoid_Point */
static int hf_lppe_ellipsoidPointWithAltitudeAndUncertaintyEllipsoid = -1;  /* EllipsoidPointWithAltitudeAndUncertaintyEllipsoid */
static int hf_lppe_OMA_LPPe_EOTD_MsrAssistDataList_item = -1;  /* OMA_LPPe_EOTD_MsrAssistBTS */
static int hf_lppe_multiFrameOffset = -1;         /* OMA_LPPe_EOTD_MultiFrameOffset */
static int hf_lppe_roughRTD = -1;                 /* OMA_LPPe_EOTD_RoughRTD */
static int hf_lppe_expectedOTD = -1;              /* OMA_LPPe_EOTD_ExpectedOTD */
static int hf_lppe_calcAssistanceBTS = -1;        /* OMA_LPPe_EOTD_CalcAssistanceBTS */
static int hf_lppe_OMA_LPPe_EOTD_SystemInfoAssistDataList_item = -1;  /* OMA_LPPe_EOTD_SystemInfoAssistBTS */
static int hf_lppe_notPresent = -1;               /* NULL */
static int hf_lppe_present = -1;                  /* OMA_LPPe_EOTD_AssistBTSData */
static int hf_lppe_fineRTD_01 = -1;               /* OMA_LPPe_EOTD_FineRTD */
static int hf_lppe_relativePos = -1;              /* OMA_LPPe_EOTD_relativePos */
static int hf_lppe_relativeNorth_01 = -1;         /* OMA_LPPe_EOTD_RelDistance */
static int hf_lppe_relativeEast_01 = -1;          /* OMA_LPPe_EOTD_RelDistance */
static int hf_lppe_relativeAlt = -1;              /* OMA_LPPe_EOTD_RelativeAlt */
static int hf_lppe_eotdAssistanceReq = -1;        /* T_eotdAssistanceReq */
static int hf_lppe_eotdMsrElement = -1;           /* OMA_LPPe_EOTD_MsrElement */
static int hf_lppe_refFrameNumber = -1;           /* INTEGER_0_42431 */
static int hf_lppe_referenceTimeSlot = -1;        /* OMA_LPPe_EOTD_ModuloTimeSlot */
static int hf_lppe_toaMeasurementsOfRef = -1;     /* OMA_LPPe_EOTD_TOA_MeasurementsOfRef */
static int hf_lppe_stdResolution = -1;            /* BIT_STRING_SIZE_2 */
static int hf_lppe_taCorrection = -1;             /* INTEGER_0_960 */
static int hf_lppe_otd_FirstSetMsrs = -1;         /* SEQUENCE_SIZE_1_15_OF_OMA_LPPe_EOTD_MeasurementWithID */
static int hf_lppe_otd_FirstSetMsrs_item = -1;    /* OMA_LPPe_EOTD_MeasurementWithID */
static int hf_lppe_refQuality = -1;               /* BIT_STRING_SIZE_5 */
static int hf_lppe_numOfMeasurements = -1;        /* BIT_STRING_SIZE_3 */
static int hf_lppe_neighborIdentity = -1;         /* OMA_LPPe_EOTD_NeighborIdentity */
static int hf_lppe_nborTimeSlot = -1;             /* OMA_LPPe_EOTD_ModuloTimeSlot */
static int hf_lppe_eotdQuality = -1;              /* OMA_LPPe_EOTD_EOTDQuality */
static int hf_lppe_otdValue = -1;                 /* OMA_LPPe_EOTD_OTDValue */
static int hf_lppe_ci = -1;                       /* OMA_LPPe_EOTD_CellID */
static int hf_lppe_multiFrameCarrier = -1;        /* OMA_LPPe_EOTD_MultiFrameCarrier */
static int hf_lppe_requestIndex = -1;             /* OMA_LPPe_EOTD_RequestIndex */
static int hf_lppe_systemInfoIndex = -1;          /* OMA_LPPe_EOTD_SystemInfoIndex */
static int hf_lppe_ciAndLac = -1;                 /* OMA_LPPe_CellLocalIdGERAN */
static int hf_lppe_nbrOfMeasurements = -1;        /* BIT_STRING_SIZE_3 */
static int hf_lppe_stdOfEOTD = -1;                /* BIT_STRING_SIZE_5 */
static int hf_lppe_bcchCarrier = -1;              /* OMA_LPPe_EOTD_BCCHCarrier */
static int hf_lppe_eotdSupport = -1;              /* T_eotdSupport */
static int hf_lppe_locationServerErrorCauses_01 = -1;  /* OMA_LPPe_EOTD_LocationServerErrorCauses */
static int hf_lppe_targetDeviceErrorCauses_01 = -1;  /* OMA_LPPe_EOTD_TargetDeviceErrorCauses */
static int hf_lppe_cause_02 = -1;                 /* T_cause_02 */
static int hf_lppe_cause_03 = -1;                 /* T_cause_03 */
static int hf_lppe_expectedOTD_01 = -1;           /* INTEGER_0_1250 */
static int hf_lppe_expOTDUncertainty = -1;        /* INTEGER_0_7 */
static int hf_lppe_referenceCellInfo_01 = -1;     /* OMA_LPPe_OTDOA_UTRA_ReferenceCellInfo */
static int hf_lppe_neigborCellList = -1;          /* OMA_LPPe_OTDOA_UTRA_NeighborCellList */
static int hf_lppe_otdoaUtraError = -1;           /* OMA_LPPe_OTDOA_UTRA_Error */
static int hf_lppe_sfn = -1;                      /* INTEGER_0_4095 */
static int hf_lppe_modeSpecificInfo = -1;         /* T_modeSpecificInfo */
static int hf_lppe_fdd = -1;                      /* T_fdd */
static int hf_lppe_primaryCPICH_info = -1;        /* OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info */
static int hf_lppe_tdd = -1;                      /* T_tdd */
static int hf_lppe_cellAndChannelIdentity = -1;   /* OMA_LPPe_OTDOA_UTRA_CellAndChannelIdentity */
static int hf_lppe_frequencyInfo = -1;            /* OMA_LPPe_UTRA_FrequencyInfo */
static int hf_lppe_refPosAssist = -1;             /* OMA_LPPe_OTDOA_UTRA_RefPosAssist */
static int hf_lppe_ipdl_parameters = -1;          /* OMA_LPPe_OTDOA_UTRA_IPDL_Parameters */
static int hf_lppe_cellPosition = -1;             /* T_cellPosition */
static int hf_lppe_ellipsoidPointWithAltitude = -1;  /* EllipsoidPointWithAltitude */
static int hf_lppe_roundTripTime = -1;            /* INTEGER_0_32766 */
static int hf_lppe_roundTripTimeExtension = -1;   /* INTEGER_0_70274 */
static int hf_lppe_OMA_LPPe_OTDOA_UTRA_NeighborCellList_item = -1;  /* OMA_LPPe_OTDOA_UTRA_NeighborCellInfo */
static int hf_lppe_modeSpecificInfo_01 = -1;      /* T_modeSpecificInfo_01 */
static int hf_lppe_fdd_01 = -1;                   /* T_fdd_01 */
static int hf_lppe_tdd_01 = -1;                   /* T_tdd_01 */
static int hf_lppe_sfn_SFN_relTimeDifference = -1;  /* OMA_LPPe_OTDOA_UTRA_SFN_SFN_RelTimeDifference1 */
static int hf_lppe_sfn_offsetValidity = -1;       /* OMA_LPPe_OTDOA_UTRA_SFN_OffsetValidity */
static int hf_lppe_sfn_SFN_drift = -1;            /* OMA_LPPe_OTDOA_UTRA_SFN_SFN_Drift */
static int hf_lppe_searchWindowSize = -1;         /* OMA_LPPe_OTDOA_UTRA_SearchWindowSize */
static int hf_lppe_positioningAssistance = -1;    /* OMA_LPPe_OTDOA_UTRA_PositioningAssistance */
static int hf_lppe_sfn_offset = -1;               /* INTEGER_0_4095 */
static int hf_lppe_sfn_sfn_relTimeDifference = -1;  /* INTEGER_0_38399 */
static int hf_lppe_relativeNorth_02 = -1;         /* INTEGER_M20000_20000 */
static int hf_lppe_relativeEast_02 = -1;          /* INTEGER_M20000_20000 */
static int hf_lppe_relativeAltitude_01 = -1;      /* INTEGER_M4000_4000 */
static int hf_lppe_fineSFN_SFN = -1;              /* OMA_LPPe_OTDOA_UTRA_fineSFN_SFN */
static int hf_lppe_modeSpecificInfo_02 = -1;      /* T_modeSpecificInfo_02 */
static int hf_lppe_fdd_02 = -1;                   /* T_fdd_02 */
static int hf_lppe_ip_spacing = -1;               /* OMA_LPPe_OTDOA_UTRA_IP_Spacing */
static int hf_lppe_ip_length = -1;                /* OMA_LPPe_OTDOA_UTRA_IP_Length */
static int hf_lppe_ip_Offset = -1;                /* INTEGER_0_9 */
static int hf_lppe_seed = -1;                     /* INTEGER_0_63 */
static int hf_lppe_burstModeParameters = -1;      /* OMA_LPPe_OTDOA_UTRA_BurstModeParameters */
static int hf_lppe_tdd_02 = -1;                   /* T_tdd_02 */
static int hf_lppe_ip_spacing_tdd = -1;           /* OMA_LPPe_OTDOA_UTRA_IP_Spacing_TDD */
static int hf_lppe_ip_slot = -1;                  /* INTEGER_0_14 */
static int hf_lppe_ip_start = -1;                 /* INTEGER_0_4095 */
static int hf_lppe_ip_PCCPCH = -1;                /* OMA_LPPe_OTDOA_UTRA_IP_PCCPCH */
static int hf_lppe_burstStart = -1;               /* INTEGER_0_15 */
static int hf_lppe_burstLength = -1;              /* INTEGER_10_25 */
static int hf_lppe_burstFreq = -1;                /* INTEGER_1_16 */
static int hf_lppe_otdoaUtraAssistanceReq = -1;   /* T_otdoaUtraAssistanceReq */
static int hf_lppe_otdoaUtraMeasurement = -1;     /* OMA_LPPe_OTDOA_UTRA_Measurement */
static int hf_lppe_timeStampData = -1;            /* OMA_LPPe_OTDOA_UTRA_TimeStampData */
static int hf_lppe_modeSpecificInfoMeas = -1;     /* T_modeSpecificInfoMeas */
static int hf_lppe_fdd_03 = -1;                   /* T_fdd_03 */
static int hf_lppe_referenceCellIdentity = -1;    /* OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info */
static int hf_lppe_ue_RX_TX_TimeDifferenceType2Info = -1;  /* OMA_LPPe_OTDOA_UTRA_UE_RX_TX_TimeDifferenceType2Info */
static int hf_lppe_tdd_03 = -1;                   /* T_tdd_03 */
static int hf_lppe_neighborList = -1;             /* OMA_LPPe_OTDOA_UTRA_NeighborList */
static int hf_lppe_ue_RX_TX_timeDifferenceType2 = -1;  /* OMA_LPPe_OTDOA_UTRA_TimeDifferenceType2 */
static int hf_lppe_neighborQuality = -1;          /* OMA_LPPe_OTDOA_UTRA_NeighborQuality */
static int hf_lppe_OMA_LPPe_OTDOA_UTRA_NeighborList_item = -1;  /* OMA_LPPe_OTDOA_UTRA_Neighbor */
static int hf_lppe_modeSpecificInfo_03 = -1;      /* T_modeSpecificInfo_03 */
static int hf_lppe_fdd_04 = -1;                   /* T_fdd_04 */
static int hf_lppe_neighborIdentity_01 = -1;      /* OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info */
static int hf_lppe_ue_RX_TX_timeDifferenceType2Info = -1;  /* OMA_LPPe_OTDOA_UTRA_UE_RX_TX_TimeDifferenceType2Info */
static int hf_lppe_tdd_04 = -1;                   /* T_tdd_04 */
static int hf_lppe_uarfcn = -1;                   /* ARFCN_ValueUTRA */
static int hf_lppe_sfn_sfn_ObsTimeDifference2 = -1;  /* OMA_LPPe_OTDOA_UTRA_SFN_SFN_ObsTimeDifference2 */
static int hf_lppe_quality_01 = -1;               /* OMA_LPPe_OTDOA_UTRA_Quality */
static int hf_lppe_numberOfOTDOA_Measurements = -1;  /* BIT_STRING_SIZE_3 */
static int hf_lppe_stdOfOTDOA_Measurements = -1;  /* BIT_STRING_SIZE_5 */
static int hf_lppe_utraCellGlobalID = -1;         /* CellGlobalIdEUTRA_AndUTRA */
static int hf_lppe_nonUniqueCellID = -1;          /* T_nonUniqueCellID */
static int hf_lppe_primaryScramblingCode = -1;    /* OMA_LPPe_OTDOA_UTRA_PrimaryScramblingCode */
static int hf_lppe_cellParametersId = -1;         /* OMA_LPPe_OTDOA_UTRA_CellParametersID */
static int hf_lppe_ueBasedSupported = -1;         /* BOOLEAN */
static int hf_lppe_ueAssistedSupported = -1;      /* BOOLEAN */
static int hf_lppe_ipdlSupported = -1;            /* BOOLEAN */
static int hf_lppe_locationServerErrorCauses_02 = -1;  /* OMA_LPPe_OTDOA_UTRA_LocationServerErrorCauses */
static int hf_lppe_targetDeviceErrorCauses_02 = -1;  /* OMA_LPPe_OTDOA_UTRA_TargetDeviceErrorCauses */
static int hf_lppe_cause_04 = -1;                 /* T_cause_04 */
static int hf_lppe_cause_05 = -1;                 /* T_cause_05 */
static int hf_lppe_burstType = -1;                /* OMA_LPPe_OTDOA_UTRA_BurstType */
static int hf_lppe_midambleShift = -1;            /* OMA_LPPe_OTDOA_UTRA_MidambleShiftLong */
static int hf_lppe_timeslot = -1;                 /* OMA_LPPe_OTDOA_UTRA_TimeSlotNumber */
static int hf_lppe_cellParametersID = -1;         /* OMA_LPPe_OTDOA_UTRA_CellParametersID */
static int hf_lppe_ecid_LTE_NetworkData = -1;     /* SEQUENCE_SIZE_1_maxLTENetworks_OF_OMA_LPPe_ECID_LTE_NetworkData */
static int hf_lppe_ecid_LTE_NetworkData_item = -1;  /* OMA_LPPe_ECID_LTE_NetworkData */
static int hf_lppe_ecid_LTE_Error = -1;           /* OMA_LPPe_ECID_LTE_Error */
static int hf_lppe_plmn_Identity = -1;            /* T_plmn_Identity */
static int hf_lppe_mcc = -1;                      /* T_mcc */
static int hf_lppe_mcc_item = -1;                 /* INTEGER_0_9 */
static int hf_lppe_mnc = -1;                      /* T_mnc */
static int hf_lppe_mnc_item = -1;                 /* INTEGER_0_9 */
static int hf_lppe_multiple_PLMNs = -1;           /* BOOLEAN */
static int hf_lppe_reference_location = -1;       /* OMA_LPPe_ReferencePoint */
static int hf_lppe_ecid_lte_eNodeB_list = -1;     /* SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_ECID_LTE_eNodeBData */
static int hf_lppe_ecid_lte_eNodeB_list_item = -1;  /* OMA_LPPe_ECID_LTE_eNodeBData */
static int hf_lppe_ecid_lte_HeNB_list = -1;       /* SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_ECID_LTE_HeNBData */
static int hf_lppe_ecid_lte_HeNB_list_item = -1;  /* OMA_LPPe_ECID_LTE_HeNBData */
static int hf_lppe_ecid_lte_eNodeB_CellData = -1;  /* SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_ECID_LTE_CellData */
static int hf_lppe_ecid_lte_eNodeB_CellData_item = -1;  /* OMA_LPPe_ECID_LTE_CellData */
static int hf_lppe_coverageArea = -1;             /* OMA_LPPe_WLANFemtoCoverageArea */
static int hf_lppe_ecid_lte_HeNB_CellData = -1;   /* OMA_LPPe_ECID_LTE_CellData */
static int hf_lppe_cellIdentity_01 = -1;          /* BIT_STRING_SIZE_28 */
static int hf_lppe_dl_CarrierFreq = -1;           /* ARFCN_ValueEUTRA */
static int hf_lppe_rs_transmit_power = -1;        /* INTEGER_M127_128 */
static int hf_lppe_antennaPortConfig = -1;        /* T_antennaPortConfig */
static int hf_lppe_antenna_gain = -1;             /* INTEGER_M127_128 */
static int hf_lppe_beam_width = -1;               /* INTEGER_1_360 */
static int hf_lppe_transmit_direction = -1;       /* INTEGER_0_360 */
static int hf_lppe_frequency_accuracy = -1;       /* INTEGER_0_100 */
static int hf_lppe_dl_CarrierFreq_ext = -1;       /* ARFCN_ValueEUTRA_v9a0 */
static int hf_lppe_eNBrequestedAD = -1;           /* T_eNBrequestedAD */
static int hf_lppe_heNBrequestedAD = -1;          /* T_heNBrequestedAD */
static int hf_lppe_ecid_LTE_CombinedLocationInformation = -1;  /* SEQUENCE_SIZE_1_maxLTEECIDSize_OF_OMA_LPPe_ECID_LTE_LocationInformationList */
static int hf_lppe_ecid_LTE_CombinedLocationInformation_item = -1;  /* OMA_LPPe_ECID_LTE_LocationInformationList */
static int hf_lppe_ecid_LTE_LocationInformation = -1;  /* OMA_LPPe_ECID_LTE_LocationInformation */
static int hf_lppe_relativeTimeStamp = -1;        /* INTEGER_0_65535 */
static int hf_lppe_servingFlag = -1;              /* BOOLEAN */
static int hf_lppe_lpp_ECID_SignalMeasurementInformation = -1;  /* ECID_SignalMeasurementInformation */
static int hf_lppe_requestedMeasurements = -1;    /* T_requestedMeasurements */
static int hf_lppe_ecid_lte_MeasSupported = -1;   /* T_ecid_lte_MeasSupported */
static int hf_lppe_ecid_lte_eNodeB_ADSupported = -1;  /* T_ecid_lte_eNodeB_ADSupported */
static int hf_lppe_ecid_utra_HeNB_ADSupported = -1;  /* T_ecid_utra_HeNB_ADSupported */
static int hf_lppe_locationServerErrorCauses_03 = -1;  /* OMA_LPPe_ECID_LTE_LocationServerErrorCauses */
static int hf_lppe_targetDeviceErrorCauses_03 = -1;  /* OMA_LPPe_ECID_LTE_TargetDeviceErrorCauses */
static int hf_lppe_cause_06 = -1;                 /* T_cause_06 */
static int hf_lppe_eNodeBMandatoryDataUnavailable = -1;  /* NULL */
static int hf_lppe_eNodeBLocationsUnavailable = -1;  /* NULL */
static int hf_lppe_eNodeBcellTransmitPowerUnavailable = -1;  /* NULL */
static int hf_lppe_eNodeBcellAntennaPortConfigUnavailable = -1;  /* NULL */
static int hf_lppe_eNodeBcallAntennaGainUnavailable = -1;  /* NULL */
static int hf_lppe_eNodeBcellBeamWidthUnavailable = -1;  /* NULL */
static int hf_lppe_eNodeBcellTransmitDirectionUnavailable = -1;  /* NULL */
static int hf_lppe_eNodeBcellFrequencyAccuracyUnavailable = -1;  /* NULL */
static int hf_lppe_eNodeBnonservingADUnavailable = -1;  /* NULL */
static int hf_lppe_heNBMandatoryDataUnavailable = -1;  /* NULL */
static int hf_lppe_heNBLocationUnavailable = -1;  /* NULL */
static int hf_lppe_heNBLocationReliabilityUnavailable = -1;  /* NULL */
static int hf_lppe_heNBcellTransmitPowerUnavailable = -1;  /* NULL */
static int hf_lppe_heNBcellAntennaPortConfigUnavailable = -1;  /* NULL */
static int hf_lppe_heNBcellFrequencyAccuracyUnavailable = -1;  /* NULL */
static int hf_lppe_heNBCoverageAreaUnavailable = -1;  /* NULL */
static int hf_lppe_heNBnonservingADUnavailable = -1;  /* NULL */
static int hf_lppe_cause_07 = -1;                 /* T_cause_07 */
static int hf_lppe_rsrpMeasurementNotPossible = -1;  /* NULL */
static int hf_lppe_rsrqMeasurementNotPossible = -1;  /* NULL */
static int hf_lppe_ueRxTxMeasurementNotPossible = -1;  /* NULL */
static int hf_lppe_non_servingMeasurementsNotAvailable = -1;  /* NULL */
static int hf_lppe_historicMeasurementsNotAvailable = -1;  /* NULL */
static int hf_lppe_ecid_gsm_NetworkData = -1;     /* SEQUENCE_SIZE_1_maxGSMNetworks_OF_OMA_LPPe_ECID_GSM_NetworkData */
static int hf_lppe_ecid_gsm_NetworkData_item = -1;  /* OMA_LPPe_ECID_GSM_NetworkData */
static int hf_lppe_ecid_gsm_Error = -1;           /* OMA_LPPe_ECID_GSM_Error */
static int hf_lppe_plmn_Identity_01 = -1;         /* T_plmn_Identity_01 */
static int hf_lppe_mcc_01 = -1;                   /* T_mcc_01 */
static int hf_lppe_mnc_01 = -1;                   /* T_mnc_01 */
static int hf_lppe_base_station_list = -1;        /* SEQUENCE_SIZE_1_maxGSMBaseStations_OF_OMA_LPPe_ECID_GSM_BaseStationData */
static int hf_lppe_base_station_list_item = -1;   /* OMA_LPPe_ECID_GSM_BaseStationData */
static int hf_lppe_ecid_gsm_CellData = -1;        /* SEQUENCE_SIZE_1_maxGSMCells_OF_OMA_LPPe_ECID_GSM_CellData */
static int hf_lppe_ecid_gsm_CellData_item = -1;   /* OMA_LPPe_ECID_GSM_CellData */
static int hf_lppe_cellNonUniqueIDGERAN = -1;     /* OMA_LPPe_CellNonUniqueIDGERAN */
static int hf_lppe_cellLocalIDGERAN = -1;         /* OMA_LPPe_CellLocalIdGERAN */
static int hf_lppe_transmit_power = -1;           /* INTEGER_M127_128 */
static int hf_lppe_requestedAD = -1;              /* T_requestedAD */
static int hf_lppe_ecid_GSM_CombinedLocationInformation = -1;  /* SEQUENCE_SIZE_1_maxGSMECIDSize_OF_OMA_LPPe_ECID_GSM_LocationInformationList */
static int hf_lppe_ecid_GSM_CombinedLocationInformation_item = -1;  /* OMA_LPPe_ECID_GSM_LocationInformationList */
static int hf_lppe_ecid_GSM_Error = -1;           /* OMA_LPPe_ECID_GSM_Error */
static int hf_lppe_ecid_GSM_LocationInformation = -1;  /* OMA_LPPe_ECID_GSM_LocationInformation */
static int hf_lppe_cellGlobalIdGERAN = -1;        /* CellGlobalIdGERAN */
static int hf_lppe_rxLevel = -1;                  /* INTEGER_0_63 */
static int hf_lppe_tA = -1;                       /* INTEGER_0_255 */
static int hf_lppe_nMR_GERAN = -1;                /* OMA_LPPe_NMR_GERAN */
static int hf_lppe_OMA_LPPe_NMR_GERAN_item = -1;  /* OMA_LPPe_NMR_GERAN_item */
static int hf_lppe_requestedMeasurements_01 = -1;  /* T_requestedMeasurements_01 */
static int hf_lppe_ecid_gsm_MeasSupported = -1;   /* T_ecid_gsm_MeasSupported */
static int hf_lppe_ecid_gsm_ADSupported = -1;     /* T_ecid_gsm_ADSupported */
static int hf_lppe_locationServerErrorCauses_04 = -1;  /* OMA_LPPe_ECID_GSM_LocationServerErrorCauses */
static int hf_lppe_targetDeviceErrorCauses_04 = -1;  /* OMA_LPPe_ECID_GSM_TargetDeviceErrorCauses */
static int hf_lppe_cause_08 = -1;                 /* T_cause_08 */
static int hf_lppe_mandatoryDataUnavailable = -1;  /* NULL */
static int hf_lppe_bsLocationsUnavailable = -1;   /* NULL */
static int hf_lppe_cellTransmitPowerUnavailable = -1;  /* NULL */
static int hf_lppe_callAntennaGainUnavailable = -1;  /* NULL */
static int hf_lppe_cellBeamWidthUnavailable = -1;  /* NULL */
static int hf_lppe_cellTransmitDirectionUnavailable = -1;  /* NULL */
static int hf_lppe_cellFrequencyAccuracyUnavailable = -1;  /* NULL */
static int hf_lppe_nonservingADUnavailable = -1;  /* NULL */
static int hf_lppe_cause_09 = -1;                 /* T_cause_09 */
static int hf_lppe_rxLevelMeasurementNotPossible = -1;  /* NULL */
static int hf_lppe_taMeasurementNotPossible = -1;  /* NULL */
static int hf_lppe_nMRMeasurementNotPossible = -1;  /* NULL */
static int hf_lppe_ecid_UTRA_NetworkData = -1;    /* SEQUENCE_SIZE_1_maxUTRANetworks_OF_OMA_LPPe_ECID_UTRA_NetworkData */
static int hf_lppe_ecid_UTRA_NetworkData_item = -1;  /* OMA_LPPe_ECID_UTRA_NetworkData */
static int hf_lppe_ecid_UTRA_Error = -1;          /* OMA_LPPe_ECID_UTRA_Error */
static int hf_lppe_plmn_Identity_02 = -1;         /* T_plmn_Identity_02 */
static int hf_lppe_mcc_02 = -1;                   /* T_mcc_02 */
static int hf_lppe_mnc_02 = -1;                   /* T_mnc_02 */
static int hf_lppe_ecid_utra_nodeB_list = -1;     /* SEQUENCE_SIZE_1_maxUTRAnodeBs_OF_OMA_LPPe_ECID_UTRA_NodeBData */
static int hf_lppe_ecid_utra_nodeB_list_item = -1;  /* OMA_LPPe_ECID_UTRA_NodeBData */
static int hf_lppe_ecid_utra_HNB_list = -1;       /* SEQUENCE_SIZE_1_maxUTRAHNBs_OF_OMA_LPPe_ECID_UTRA_HNBData */
static int hf_lppe_ecid_utra_HNB_list_item = -1;  /* OMA_LPPe_ECID_UTRA_HNBData */
static int hf_lppe_ecid_utra_nodeB_CellData = -1;  /* SEQUENCE_SIZE_1_maxUTRAMacroCells_OF_OMA_LPPe_ECID_UTRA_CellData */
static int hf_lppe_ecid_utra_nodeB_CellData_item = -1;  /* OMA_LPPe_ECID_UTRA_CellData */
static int hf_lppe_ecid_utra_HNB_CellData = -1;   /* OMA_LPPe_ECID_UTRA_CellData */
static int hf_lppe_cellIdentity_02 = -1;          /* BIT_STRING_SIZE_32 */
static int hf_lppe_modeSpecificInfo_04 = -1;      /* T_modeSpecificInfo_04 */
static int hf_lppe_fdd_05 = -1;                   /* T_fdd_05 */
static int hf_lppe_primaryCPICH_Scrambling_Code = -1;  /* OMA_LPPe_OTDOA_UTRA_PrimaryScramblingCode */
static int hf_lppe_primaryCPICH_Tx_Power = -1;    /* INTEGER_M127_128 */
static int hf_lppe_uarfcn_dl = -1;                /* ARFCN_ValueUTRA */
static int hf_lppe_tdd_05 = -1;                   /* T_tdd_05 */
static int hf_lppe_primaryCCPCH_Tx_Power = -1;    /* INTEGER_M127_128 */
static int hf_lppe_uarfcn_nt = -1;                /* ARFCN_ValueUTRA */
static int hf_lppe_nBrequestedAD = -1;            /* T_nBrequestedAD */
static int hf_lppe_hNBrequestedAD = -1;           /* T_hNBrequestedAD */
static int hf_lppe_ecid_UTRA_CombinedLocationInformation = -1;  /* SEQUENCE_SIZE_1_maxECIDUTRASize_OF_OMA_LPPe_ECID_UTRA_LocationInformationList */
static int hf_lppe_ecid_UTRA_CombinedLocationInformation_item = -1;  /* OMA_LPPe_ECID_UTRA_LocationInformationList */
static int hf_lppe_ecid_Error = -1;               /* OMA_LPPe_ECID_UTRA_Error */
static int hf_lppe_ecid_utra_LocationInformation = -1;  /* OMA_LPPe_ECID_UTRA_LocationInformation */
static int hf_lppe_cellGlobalIdUTRA = -1;         /* CellGlobalIdEUTRA_AndUTRA */
static int hf_lppe_measuredResultsList = -1;      /* OMA_LPPe_ECID_UTRA_MeasuredResultsList */
static int hf_lppe_utratimingAdvance = -1;        /* OMA_LPPe_ECID_UTRA_UTRATimingAdvance */
static int hf_lppe_tA_01 = -1;                    /* INTEGER_0_8191 */
static int hf_lppe_tAResolution = -1;             /* OMA_LPPe_ECID_UTRA_TAResolution */
static int hf_lppe_chipRate = -1;                 /* OMA_LPPe_ECID_UTRA_ChipRate */
static int hf_lppe_modeSpecificInfo_05 = -1;      /* OMA_LPPe_UTRA_ModeSpecificInfo */
static int hf_lppe_fdd_06 = -1;                   /* OMA_LPPe_UTRA_FrequencyInfoFDD */
static int hf_lppe_tdd_06 = -1;                   /* OMA_LPPe_UTRA_FrequencyInfoTDD */
static int hf_lppe_uarfcn_UL = -1;                /* ARFCN_ValueUTRA */
static int hf_lppe_uarfcn_DL = -1;                /* ARFCN_ValueUTRA */
static int hf_lppe_uarfcn_Nt = -1;                /* ARFCN_ValueUTRA */
static int hf_lppe_OMA_LPPe_ECID_UTRA_MeasuredResultsList_item = -1;  /* OMA_LPPe_ECID_UTRA_MeasuredResults */
static int hf_lppe_utra_CarrierRSSI = -1;         /* OMA_LPPe_ECID_UTRA_CarrierRSSI */
static int hf_lppe_cellMeasuredResultsList = -1;  /* OMA_LPPe_ECID_UTRA_CellMeasuredResultsList */
static int hf_lppe_OMA_LPPe_ECID_UTRA_CellMeasuredResultsList_item = -1;  /* OMA_LPPe_ECID_UTRA_CellMeasuredResults */
static int hf_lppe_modeSpecificInfo_06 = -1;      /* T_modeSpecificInfo_05 */
static int hf_lppe_fdd_07 = -1;                   /* T_fdd_06 */
static int hf_lppe_primaryCPICH_Info = -1;        /* OMA_LPPe_OTDOA_UTRA_PrimaryScramblingCode */
static int hf_lppe_cpich_Ec_N0 = -1;              /* OMA_LPPe_ECID_UTRA_CPICH_Ec_N0 */
static int hf_lppe_cpich_RSCP = -1;               /* OMA_LPPe_ECID_UTRA_CPICH_RSCP */
static int hf_lppe_pathloss = -1;                 /* OMA_LPPe_ECID_UTRA_Pathloss */
static int hf_lppe_tdd_07 = -1;                   /* T_tdd_06 */
static int hf_lppe_primaryCCPCH_RSCP = -1;        /* OMA_LPPe_ECID_UTRA_PrimaryCCPCH_RSCP */
static int hf_lppe_requestedMeasurements_02 = -1;  /* T_requestedMeasurements_02 */
static int hf_lppe_ecid_utra_MeasSupported = -1;  /* T_ecid_utra_MeasSupported */
static int hf_lppe_ecid_utra_nodeB_ADSupported = -1;  /* T_ecid_utra_nodeB_ADSupported */
static int hf_lppe_ecid_utra_HNB_ADSupported = -1;  /* T_ecid_utra_HNB_ADSupported */
static int hf_lppe_locationServerErrorCauses_05 = -1;  /* OMA_LPPe_ECID_UTRA_LocationServerErrorCauses */
static int hf_lppe_targetDeviceErrorCauses_05 = -1;  /* OMA_LPPe_ECID_UTRA_TargetDeviceErrorCauses */
static int hf_lppe_cause_10 = -1;                 /* T_cause_10 */
static int hf_lppe_nodeBMandatoryDataUnavailable = -1;  /* NULL */
static int hf_lppe_nodeBLocationUnavailable = -1;  /* NULL */
static int hf_lppe_nodeBcellTransmitPowerUnavailable = -1;  /* NULL */
static int hf_lppe_nodeBcallAntennaGainUnavailable = -1;  /* NULL */
static int hf_lppe_nodeBcellBeamWidthUnavailable = -1;  /* NULL */
static int hf_lppe_nodeBcellTransmitDirectionUnavailable = -1;  /* NULL */
static int hf_lppe_nodeBcellFrequencyAccuracyUnavailable = -1;  /* NULL */
static int hf_lppe_nodeBnonservingADUnavailable = -1;  /* NULL */
static int hf_lppe_hNBMandatoryDataUnavailable = -1;  /* NULL */
static int hf_lppe_hNBLocationUnavailable = -1;   /* NULL */
static int hf_lppe_hNBLocationReliabilityUnavailable = -1;  /* NULL */
static int hf_lppe_hNBcellTransmitPowerUnavailable = -1;  /* NULL */
static int hf_lppe_hNBcellFrequencyAccuracyUnavailable = -1;  /* NULL */
static int hf_lppe_hNBCoverageAreaUnavailable = -1;  /* NULL */
static int hf_lppe_hNBnonservingADUnavailable = -1;  /* NULL */
static int hf_lppe_cause_11 = -1;                 /* T_cause_11 */
static int hf_lppe_mRLMeasurementsNotPossible = -1;  /* NULL */
static int hf_lppe_tdd_timingAdvanceMeasurementNotPossible = -1;  /* NULL */
static int hf_lppe_mRL_utra_CarrierRSSIMeasurementNotPossible = -1;  /* NULL */
static int hf_lppe_mRL_FDD_cpich_Ec_N0MeasurementNotPossible = -1;  /* NULL */
static int hf_lppe_mRL_FDD_cpich_RSCPMeasurementNotPossible = -1;  /* NULL */
static int hf_lppe_mRL_FDD_pathlossMeasurementNotPossible = -1;  /* NULL */
static int hf_lppe_mRL_TDD_primaryCCPCH_RSCPMeasurementNotPossible = -1;  /* NULL */
static int hf_lppe_mRL_TDD_pathlossMeasurementNotPossible = -1;  /* NULL */
static int hf_lppe_wlan_DataSet = -1;             /* SEQUENCE_SIZE_1_maxWLANDataSets_OF_OMA_LPPe_WLAN_DataSet */
static int hf_lppe_wlan_DataSet_item = -1;        /* OMA_LPPe_WLAN_DataSet */
static int hf_lppe_wlan_AP_Error = -1;            /* OMA_LPPe_WLAN_AP_Error */
static int hf_lppe_plmn_Identity_03 = -1;         /* T_plmn_Identity_03 */
static int hf_lppe_mcc_03 = -1;                   /* T_mcc_03 */
static int hf_lppe_mnc_03 = -1;                   /* T_mnc_03 */
static int hf_lppe_supported_channels_11a = -1;   /* Supported_Channels_11a */
static int hf_lppe_supported_channels_11bg = -1;  /* Supported_Channels_11bg */
static int hf_lppe_wlan_ap_list = -1;             /* SEQUENCE_SIZE_1_maxWLANAPs_OF_OMA_LPPe_WLAN_AP_Data */
static int hf_lppe_wlan_ap_list_item = -1;        /* OMA_LPPe_WLAN_AP_Data */
static int hf_lppe_ch34 = -1;                     /* BOOLEAN */
static int hf_lppe_ch36 = -1;                     /* BOOLEAN */
static int hf_lppe_ch38 = -1;                     /* BOOLEAN */
static int hf_lppe_ch40 = -1;                     /* BOOLEAN */
static int hf_lppe_ch42 = -1;                     /* BOOLEAN */
static int hf_lppe_ch44 = -1;                     /* BOOLEAN */
static int hf_lppe_ch46 = -1;                     /* BOOLEAN */
static int hf_lppe_ch48 = -1;                     /* BOOLEAN */
static int hf_lppe_ch52 = -1;                     /* BOOLEAN */
static int hf_lppe_ch56 = -1;                     /* BOOLEAN */
static int hf_lppe_ch60 = -1;                     /* BOOLEAN */
static int hf_lppe_ch64 = -1;                     /* BOOLEAN */
static int hf_lppe_ch149 = -1;                    /* BOOLEAN */
static int hf_lppe_ch153 = -1;                    /* BOOLEAN */
static int hf_lppe_ch157 = -1;                    /* BOOLEAN */
static int hf_lppe_ch161 = -1;                    /* BOOLEAN */
static int hf_lppe_ch1 = -1;                      /* BOOLEAN */
static int hf_lppe_ch2 = -1;                      /* BOOLEAN */
static int hf_lppe_ch3 = -1;                      /* BOOLEAN */
static int hf_lppe_ch4 = -1;                      /* BOOLEAN */
static int hf_lppe_ch5 = -1;                      /* BOOLEAN */
static int hf_lppe_ch6 = -1;                      /* BOOLEAN */
static int hf_lppe_ch7 = -1;                      /* BOOLEAN */
static int hf_lppe_ch8 = -1;                      /* BOOLEAN */
static int hf_lppe_ch9 = -1;                      /* BOOLEAN */
static int hf_lppe_ch10 = -1;                     /* BOOLEAN */
static int hf_lppe_ch11 = -1;                     /* BOOLEAN */
static int hf_lppe_ch12 = -1;                     /* BOOLEAN */
static int hf_lppe_ch13 = -1;                     /* BOOLEAN */
static int hf_lppe_ch14 = -1;                     /* BOOLEAN */
static int hf_lppe_wlan_ap_id = -1;               /* OMA_LPPe_WLAN_AP_ID */
static int hf_lppe_wlan_ap_Type_Data = -1;        /* SEQUENCE_SIZE_1_maxWLANTypes_OF_OMA_LPPe_WLAN_AP_Type_Data */
static int hf_lppe_wlan_ap_Type_Data_item = -1;   /* OMA_LPPe_WLAN_AP_Type_Data */
static int hf_lppe_wlan_AP_Type = -1;             /* OMA_LPPe_WLAN_AP_Type */
static int hf_lppe_requestedAD_01 = -1;           /* T_requestedAD_01 */
static int hf_lppe_requestedAPTypes = -1;         /* OMA_LPPe_WLAN_AP_Type_List */
static int hf_lppe_wlan_AP_CombinedLocationInformation = -1;  /* SEQUENCE_SIZE_1_maxWLANAPSize_OF_OMA_LPPe_WLAN_AP_LocationInformationList */
static int hf_lppe_wlan_AP_CombinedLocationInformation_item = -1;  /* OMA_LPPe_WLAN_AP_LocationInformationList */
static int hf_lppe_wlan_AP_LocationInformation = -1;  /* OMA_LPPe_WLAN_AP_LocationInformation */
static int hf_lppe_apMACAddress = -1;             /* OMA_LPPe_WLAN_AP_ID */
static int hf_lppe_apSSID = -1;                   /* OCTET_STRING_SIZE_1_32 */
static int hf_lppe_apSignaltoNoise = -1;          /* INTEGER_M127_128 */
static int hf_lppe_apDeviceType = -1;             /* OMA_LPPe_WLAN_AP_Type */
static int hf_lppe_apPHYtype = -1;                /* OMA_LPPe_WLAN_AP_PHY_Type */
static int hf_lppe_apSignalStrength = -1;         /* INTEGER_M127_128 */
static int hf_lppe_apChannelFrequency = -1;       /* INTEGER_0_256 */
static int hf_lppe_apRoundTripDelay = -1;         /* OMA_LPPe_WLAN_RTD */
static int hf_lppe_ueTransmitPower = -1;          /* INTEGER_M127_128 */
static int hf_lppe_ueAntennaGain = -1;            /* INTEGER_M127_128 */
static int hf_lppe_apReportedLocation = -1;       /* OMA_LPPe_WLAN_ReportedLocation */
static int hf_lppe_apTransmitPower = -1;          /* INTEGER_M127_128 */
static int hf_lppe_apAntennaGain = -1;            /* INTEGER_M127_128 */
static int hf_lppe_ueSignaltoNoise = -1;          /* INTEGER_M127_128 */
static int hf_lppe_ueSignalStrength = -1;         /* INTEGER_M127_128 */
static int hf_lppe_apSignalStrengthDelta = -1;    /* INTEGER_0_1 */
static int hf_lppe_ueSignalStrengthDelta = -1;    /* INTEGER_0_1 */
static int hf_lppe_apSignaltoNoiseDelta = -1;     /* INTEGER_0_1 */
static int hf_lppe_ueSignaltoNoiseDelta = -1;     /* INTEGER_0_1 */
static int hf_lppe_operatingClass = -1;           /* INTEGER_0_255 */
static int hf_lppe_ueMacAddress = -1;             /* BIT_STRING_SIZE_48 */
static int hf_lppe_rTDValue = -1;                 /* INTEGER_0_16777215 */
static int hf_lppe_rTDUnits = -1;                 /* OMA_LPPe_WLAN_RTDUnits */
static int hf_lppe_rTDAccuracy = -1;              /* INTEGER_0_255 */
static int hf_lppe_locationDataLCI = -1;          /* OMA_LPPe_WLAN_LocationDataLCI */
static int hf_lppe_latitudeResolution = -1;       /* BIT_STRING_SIZE_6 */
static int hf_lppe_oma_LPPe_WLAN_LocationDataLCI_latitude = -1;  /* BIT_STRING_SIZE_34 */
static int hf_lppe_longitudeResolution = -1;      /* BIT_STRING_SIZE_6 */
static int hf_lppe_oma_LPPe_WLAN_LocationDataLCI_longitude = -1;  /* BIT_STRING_SIZE_34 */
static int hf_lppe_altitudeType = -1;             /* BIT_STRING_SIZE_4 */
static int hf_lppe_altitudeResolution = -1;       /* BIT_STRING_SIZE_6 */
static int hf_lppe_oma_LPPe_WLAN_LocationDataLCI_altitude = -1;  /* BIT_STRING_SIZE_30 */
static int hf_lppe_datum = -1;                    /* BIT_STRING_SIZE_8 */
static int hf_lppe_requestedMeasurements_03 = -1;  /* T_requestedMeasurements_03 */
static int hf_lppe_additionalRequestedMeasurements = -1;  /* T_additionalRequestedMeasurements */
static int hf_lppe_wlan_ecid_MeasSupported = -1;  /* T_wlan_ecid_MeasSupported */
static int hf_lppe_wlan_types_Supported = -1;     /* OMA_LPPe_WLAN_AP_Type_List */
static int hf_lppe_ap_Capability = -1;            /* OMA_LPPe_WLAN_AP_Capability */
static int hf_lppe_wlan_ap_ADSupported = -1;      /* T_wlan_ap_ADSupported */
static int hf_lppe_additional_wlan_ecid_MeasSupported = -1;  /* T_additional_wlan_ecid_MeasSupported */
static int hf_lppe_apTypes = -1;                  /* OMA_LPPe_WLAN_AP_Type_List */
static int hf_lppe_locationServerErrorCauses_06 = -1;  /* OMA_LPPe_WLAN_AP_LocationServerErrorCauses */
static int hf_lppe_targetDeviceErrorCauses_06 = -1;  /* OMA_LPPe_WLAN_AP_TargetDeviceErrorCauses */
static int hf_lppe_cause_12 = -1;                 /* T_cause_12 */
static int hf_lppe_apMandatoryDataUnavailable = -1;  /* NULL */
static int hf_lppe_apLocationsUnavailable = -1;   /* NULL */
static int hf_lppe_apLocationReliabilityUnavailable = -1;  /* NULL */
static int hf_lppe_apTransmitPowerUnavailable = -1;  /* NULL */
static int hf_lppe_apAntennaGainUnavailable = -1;  /* NULL */
static int hf_lppe_apCoverageAreaUnavailable = -1;  /* NULL */
static int hf_lppe_apTPNotAvailable = -1;         /* NULL */
static int hf_lppe_apAGNotAvailable = -1;         /* NULL */
static int hf_lppe_ueSNNotAvailable = -1;         /* NULL */
static int hf_lppe_ueRSSINotAvailable = -1;       /* NULL */
static int hf_lppe_ocNotAvailable = -1;           /* NULL */
static int hf_lppe_cause_13 = -1;                 /* T_cause_13 */
static int hf_lppe_apSSIDnotAvailable = -1;       /* NULL */
static int hf_lppe_apSNMeasurementNotPossible = -1;  /* NULL */
static int hf_lppe_apDevTypeNotAvailable = -1;    /* NULL */
static int hf_lppe_apPhyTypeNotAvailable = -1;    /* NULL */
static int hf_lppe_apRSSIMeasurementNotPossible = -1;  /* NULL */
static int hf_lppe_apChanFreqNotAvailable = -1;   /* NULL */
static int hf_lppe_apRTDMeasurementNotPossible = -1;  /* NULL */
static int hf_lppe_ueTPNotAvailable = -1;         /* NULL */
static int hf_lppe_ueAGNotAvailable = -1;         /* NULL */
static int hf_lppe_apRecLocNotAvailable = -1;     /* NULL */
static int hf_lppe_ueMACAddressNotAvailable = -1;  /* NULL */
static int hf_lppe_ecid_wimax_CombinedLocationInformation = -1;  /* SEQUENCE_SIZE_1_maxWiMaxECIDSize_OF_OMA_LPPe_ECID_WiMax_LocationInformationList */
static int hf_lppe_ecid_wimax_CombinedLocationInformation_item = -1;  /* OMA_LPPe_ECID_WiMax_LocationInformationList */
static int hf_lppe_ecid_wimax_Error = -1;         /* OMA_LPPe_ECID_WiMax_Error */
static int hf_lppe_ecid_wimax_LocationInformation = -1;  /* OMA_LPPe_ECID_WiMax_LocationInformation */
static int hf_lppe_wimaxBsID = -1;                /* OMA_LPPe_ECID_WiMax_WimaxBsID */
static int hf_lppe_wimaxRTD = -1;                 /* OMA_LPPe_ECID_WiMax_WimaxRTD */
static int hf_lppe_wimaxNMRList = -1;             /* OMA_LPPe_ECID_WiMax_WimaxNMRList */
static int hf_lppe_bsID_MSB = -1;                 /* BIT_STRING_SIZE_24 */
static int hf_lppe_bsID_LSB = -1;                 /* BIT_STRING_SIZE_24 */
static int hf_lppe_rTD = -1;                      /* INTEGER_0_65535 */
static int hf_lppe_rTDstd = -1;                   /* INTEGER_0_1023 */
static int hf_lppe_OMA_LPPe_ECID_WiMax_WimaxNMRList_item = -1;  /* OMA_LPPe_ECID_WiMax_WimaxNMR */
static int hf_lppe_relDelay = -1;                 /* INTEGER_M32768_32767 */
static int hf_lppe_relDelaystd = -1;              /* INTEGER_0_1023 */
static int hf_lppe_rSSI = -1;                     /* INTEGER_0_255 */
static int hf_lppe_rSSIstd = -1;                  /* INTEGER_0_63 */
static int hf_lppe_bSTxPower = -1;                /* INTEGER_0_255 */
static int hf_lppe_cINR = -1;                     /* INTEGER_0_255 */
static int hf_lppe_cINRstd = -1;                  /* INTEGER_0_63 */
static int hf_lppe_bSLocation = -1;               /* OMA_LPPe_WLAN_ReportedLocation */
static int hf_lppe_requestedMeasurements_04 = -1;  /* T_requestedMeasurements_04 */
static int hf_lppe_ecid_wimax_MeasSupported = -1;  /* T_ecid_wimax_MeasSupported */
static int hf_lppe_locationServerErrorCauses_07 = -1;  /* OMA_LPPe_ECID_WiMax_LocationServerErrorCauses */
static int hf_lppe_targetDeviceErrorCauses_07 = -1;  /* OMA_LPPe_ECID_WiMax_TargetDeviceErrorCauses */
static int hf_lppe_cause_14 = -1;                 /* T_cause_14 */
static int hf_lppe_cause_15 = -1;                 /* T_cause_15 */
static int hf_lppe_rTDMeasurementNotPossible = -1;  /* NULL */
static int hf_lppe_rTDstdMeasurementNotPossible = -1;  /* NULL */
static int hf_lppe_nMRrelDelayMeasurementNotPossible = -1;  /* NULL */
static int hf_lppe_nMRrelDelaystdMeasurementNotPossible = -1;  /* NULL */
static int hf_lppe_nMRrSSIMeasurementNotPossible = -1;  /* NULL */
static int hf_lppe_nMRrSSIstdMeasurementNotPossible = -1;  /* NULL */
static int hf_lppe_nMRbSTxPowerMeasurementNotPossible = -1;  /* NULL */
static int hf_lppe_nMRcINRMeasurementNotPossible = -1;  /* NULL */
static int hf_lppe_nMRcINRstdMeasurementNotPossible = -1;  /* NULL */
static int hf_lppe_nMRbSLocationNotAvailable = -1;  /* NULL */
static int hf_lppe_atmosphericPressureAD = -1;    /* OMA_LPPe_AtmosphericPressureAD */
static int hf_lppe_referencePressure = -1;        /* INTEGER_M20000_10000 */
static int hf_lppe_period = -1;                   /* T_period */
static int hf_lppe_pressureValidityPeriod = -1;   /* OMA_LPPe_ValidityPeriod */
static int hf_lppe_referencePressureRate = -1;    /* INTEGER_M128_127 */
static int hf_lppe_area_01 = -1;                  /* T_area */
static int hf_lppe_pressureValidityArea = -1;     /* OMA_LPPe_PressureValidityArea */
static int hf_lppe_centerPoint = -1;              /* Ellipsoid_Point */
static int hf_lppe_validityAreaWidth = -1;        /* INTEGER_1_128 */
static int hf_lppe_validityAreaHeight = -1;       /* INTEGER_1_128 */
static int hf_lppe_pressureSensorAD = -1;         /* OMA_LPPe_PressureSensorAD */
static int hf_lppe_motionStateList = -1;          /* OMA_LPPe_Sensor_MotionStateList */
static int hf_lppe_sensorError = -1;              /* OMA_LPPe_Sensor_Error */
static int hf_lppe_atmosphericPressure = -1;      /* OMA_LPPe_AtmosphericPressure */
static int hf_lppe_OMA_LPPe_Sensor_MotionStateList_item = -1;  /* OMA_LPPe_Sensor_MotionStateElement */
static int hf_lppe_primaryMotionState = -1;       /* T_primaryMotionState */
static int hf_lppe_secondaryMotionState = -1;     /* T_secondaryMotionState */
static int hf_lppe_pressureMeasurement = -1;      /* OMA_LPPe_PressureMeasurement */
static int hf_lppe_pressureStats = -1;            /* PressureStats */
static int hf_lppe_calibrationPoints = -1;        /* CalibrationPoints */
static int hf_lppe_sensorMeanPressure = -1;       /* INTEGER_30000_115000 */
static int hf_lppe_sensorStddevPressure = -1;     /* INTEGER_0_2000 */
static int hf_lppe_duration_04 = -1;              /* INTEGER_5_40 */
static int hf_lppe_CalibrationPoints_item = -1;   /* CalibrationPoints_item */
static int hf_lppe_pressure_01 = -1;              /* OMA_LPPe_PressureMeasurement */
static int hf_lppe_time = -1;                     /* UTCTime */
static int hf_lppe_location = -1;                 /* EllipsoidPointWithAltitudeAndUncertaintyEllipsoid */
static int hf_lppe_motionState = -1;              /* OMA_LPPe_Sensor_MotionStateList */
static int hf_lppe_velocity = -1;                 /* Velocity */
static int hf_lppe_sensorMeasurement = -1;        /* INTEGER_30000_115000 */
static int hf_lppe_adjustment = -1;               /* INTEGER_M5000_5000 */
static int hf_lppe_uncertainty_01 = -1;           /* T_uncertainty */
static int hf_lppe_range = -1;                    /* INTEGER_0_1000 */
static int hf_lppe_confidence_01 = -1;            /* INTEGER_1_100 */
static int hf_lppe_temperature_01 = -1;           /* INTEGER_M100_150 */
static int hf_lppe_motionStateReq = -1;           /* OMA_LPPe_Sensor_MotionStateRequest */
static int hf_lppe_atmosphericPressureReq = -1;   /* OMA_LPPe_AtmosphericPressureRequest */
static int hf_lppe_secondaryMotionStateRequest = -1;  /* NULL */
static int hf_lppe_motionStateSupport = -1;       /* NULL */
static int hf_lppe_secondarySupport = -1;         /* NULL */
static int hf_lppe_atmosphericPressureADSupport = -1;  /* NULL */
static int hf_lppe_atmosphericPressureSupport = -1;  /* NULL */
static int hf_lppe_targetError = -1;              /* OMA_LPPe_Sensor_TargetError */
static int hf_lppe_motionStateError = -1;         /* T_motionStateError */
static int hf_lppe_secondaryMotionStateError = -1;  /* T_secondaryMotionStateError */
static int hf_lppe_atmosphericPressureError = -1;  /* T_atmosphericPressureError */
static int hf_lppe_srnGroup = -1;                 /* T_srnGroup */
static int hf_lppe_srnGroupList = -1;             /* OMA_LPPe_SRN_SRNgroupList */
static int hf_lppe_srnGroupUpdateResponse = -1;   /* OMA_LPPe_SRN_SRNgroupUpdateResponse */
static int hf_lppe_antennaPattern = -1;           /* OMA_LPPe_SRN_AntennaPattern */
static int hf_lppe_srnError = -1;                 /* OMA_LPPe_SRN_Error */
static int hf_lppe_incompleteFlag = -1;           /* BOOLEAN */
static int hf_lppe_defaultReferencePoint = -1;    /* OMA_LPPe_ReferencePoint */
static int hf_lppe_groupList = -1;                /* SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_SRNgroup */
static int hf_lppe_groupList_item = -1;           /* OMA_LPPe_SRN_SRNgroup */
static int hf_lppe_srnGroupID = -1;               /* OMA_LPPe_SRN_SRNgroupUniqueID */
static int hf_lppe_defaultSRNtype = -1;           /* OMA_LPPe_SRN_SRNtype */
static int hf_lppe_referencePoint_01 = -1;        /* OMA_LPPe_ReferencePoint */
static int hf_lppe_globalOrientation = -1;        /* NULL */
static int hf_lppe_srnsInGroupList = -1;          /* SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNinfo */
static int hf_lppe_srnsInGroupList_item = -1;     /* OMA_LPPe_SRN_SRNinfo */
static int hf_lppe_srnID = -1;                    /* OMA_LPPe_SRN_SRNid */
static int hf_lppe_srnType = -1;                  /* OMA_LPPe_SRN_SRNtype */
static int hf_lppe_relativePosition = -1;         /* OMA_LPPe_RelativeLocation */
static int hf_lppe_orientation = -1;              /* OMA_LPPe_Orientation */
static int hf_lppe_OMA_LPPe_SRN_SRNgroupUpdateResponse_item = -1;  /* OMA_LPPe_SRN_SRNgroupUpdateResponseElement */
static int hf_lppe_targetDataValidity = -1;       /* T_targetDataValidity */
static int hf_lppe_updatedSRNgroup = -1;          /* OMA_LPPe_SRN_SRNgroup */
static int hf_lppe_OMA_LPPe_SRN_AntennaPattern_item = -1;  /* OMA_LPPe_SRN_AntennaPatternElement */
static int hf_lppe_identification = -1;           /* T_identification */
static int hf_lppe_vendorOrOperator = -1;         /* OMA_LPPe_VendorOrOperatorID */
static int hf_lppe_antennaPatternID = -1;         /* INTEGER_0_65535 */
static int hf_lppe_antennaData = -1;              /* T_antennaData */
static int hf_lppe_antennaPattern_01 = -1;        /* OMA_LPPe_SRN_AntennaPatternForChannels */
static int hf_lppe_antennaContainer = -1;         /* OCTET_STRING */
static int hf_lppe_evenGrid = -1;                 /* T_evenGrid */
static int hf_lppe_inAzimuth = -1;                /* INTEGER_1_200 */
static int hf_lppe_inElevation = -1;              /* INTEGER_1_150 */
static int hf_lppe_patternList = -1;              /* SEQUENCE_SIZE_1_maxChannels_OF_OMA_LPPe_SRN_ChannelResponse */
static int hf_lppe_patternList_item = -1;         /* OMA_LPPe_SRN_ChannelResponse */
static int hf_lppe_channelNumber = -1;            /* INTEGER_1_maxChannels */
static int hf_lppe_responseInElevation = -1;      /* SEQUENCE_SIZE_7_901_OF_OMA_LPPe_SRN_ResponseInElevation */
static int hf_lppe_responseInElevation_item = -1;  /* OMA_LPPe_SRN_ResponseInElevation */
static int hf_lppe_elevation_01 = -1;             /* INTEGER_0_900 */
static int hf_lppe_responseInAzimuth = -1;        /* SEQUENCE_SIZE_18_3601_OF_OMA_LPPe_SRN_ResponseInAzimuth */
static int hf_lppe_responseInAzimuth_item = -1;   /* OMA_LPPe_SRN_ResponseInAzimuth */
static int hf_lppe_azimuth_01 = -1;               /* INTEGER_0_3599 */
static int hf_lppe_response = -1;                 /* OMA_LPPe_ComplexNumber */
static int hf_lppe_amplitude = -1;                /* INTEGER_0_1000 */
static int hf_lppe_phase = -1;                    /* INTEGER_M1800_1799 */
static int hf_lppe_srnGroup_01 = -1;              /* T_srnGroup_01 */
static int hf_lppe_srnGroupRequest = -1;          /* OMA_LPPe_SRN_SRNgroupRequest */
static int hf_lppe_srnGroupUpdateRequest = -1;    /* OMA_LPPe_SRN_SRNgroupUpdateRequest */
static int hf_lppe_antennaPatternRequest = -1;    /* OMA_LPPe_SRN_AntennaPatternRequest */
static int hf_lppe_doNotProvideList = -1;         /* OMA_LPPe_SRN_SRNProvideList */
static int hf_lppe_doProvideList = -1;            /* OMA_LPPe_SRN_SRNProvideList */
static int hf_lppe_groupList_01 = -1;             /* SEQUENCE_SIZE_1_256_OF_OMA_LPPe_SRN_SRNgroupUniqueID */
static int hf_lppe_groupList_item_01 = -1;        /* OMA_LPPe_SRN_SRNgroupUniqueID */
static int hf_lppe_categoryList = -1;             /* SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_Category */
static int hf_lppe_categoryList_item = -1;        /* OMA_LPPe_SRN_Category */
static int hf_lppe_OMA_LPPe_SRN_SRNgroupUpdateRequest_item = -1;  /* OMA_LPPe_SRN_SRNgroupUpdateRequestElement */
static int hf_lppe_provideIndicationOnly = -1;    /* NULL */
static int hf_lppe_inTheGroup = -1;               /* SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNid */
static int hf_lppe_inTheGroup_item = -1;          /* OMA_LPPe_SRN_SRNid */
static int hf_lppe_OMA_LPPe_SRN_AntennaPatternRequest_item = -1;  /* OMA_LPPe_SRN_AntennaPatternRequestElement */
static int hf_lppe_antennaPatternID_01 = -1;      /* T_antennaPatternID */
static int hf_lppe_srnMeasurementList = -1;       /* SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_MeasurementElement */
static int hf_lppe_srnMeasurementList_item = -1;  /* OMA_LPPe_SRN_MeasurementElement */
static int hf_lppe_srnCategory = -1;              /* OMA_LPPe_SRN_Category */
static int hf_lppe_measurementList = -1;          /* SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_srnMeasurementElement */
static int hf_lppe_measurementList_item = -1;     /* OMA_LPPe_SRN_srnMeasurementElement */
static int hf_lppe_relativeTimeStamp_01 = -1;     /* INTEGER_0_1000 */
static int hf_lppe_rssi = -1;                     /* INTEGER_M128_127 */
static int hf_lppe_rtd = -1;                      /* OMA_LPPe_WLAN_RTD */
static int hf_lppe_requestInfo = -1;              /* SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ReqLocInfo_Category */
static int hf_lppe_requestInfo_item = -1;         /* OMA_LPPe_SRN_ReqLocInfo_Category */
static int hf_lppe_category = -1;                 /* OMA_LPPe_SRN_Category */
static int hf_lppe_multipleMeasurements = -1;     /* T_multipleMeasurements */
static int hf_lppe_allowedMeasurements = -1;      /* OMA_LPPe_SRN_MeasurementMask */
static int hf_lppe_historicMeasurementsRequested = -1;  /* NULL */
static int hf_lppe_capabilitiesPerSRNCategory = -1;  /* SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ProvideCapabilitiesElement */
static int hf_lppe_capabilitiesPerSRNCategory_item = -1;  /* OMA_LPPe_SRN_ProvideCapabilitiesElement */
static int hf_lppe_supportedMeasurements = -1;    /* OMA_LPPe_SRN_MeasurementMask */
static int hf_lppe_supportedAssistanceData = -1;  /* T_supportedAssistanceData */
static int hf_lppe_historicMeasurementsSupported = -1;  /* NULL */
static int hf_lppe_capabilitiesRequestedFor = -1;  /* SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_Category */
static int hf_lppe_capabilitiesRequestedFor_item = -1;  /* OMA_LPPe_SRN_Category */
static int hf_lppe_srnLocationServerErrorCauses = -1;  /* OMA_LPPe_SRN_LocationServerErrorCauses */
static int hf_lppe_srnTargetDeviceErrorCauses = -1;  /* OMA_LPPe_SRN_TargetDeviceErrorCauses */
static int hf_lppe_groupErrors = -1;              /* T_groupErrors */
static int hf_lppe_groupUpdateErrors = -1;        /* T_groupUpdateErrors */
static int hf_lppe_srnAntennaErrors = -1;         /* T_srnAntennaErrors */
static int hf_lppe_srnErrorsPerCategory = -1;     /* SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_TargetDeviceError */
static int hf_lppe_srnErrorsPerCategory_item = -1;  /* OMA_LPPe_SRN_TargetDeviceError */
static int hf_lppe_srnErrors = -1;                /* T_srnErrors */
static int hf_lppe_rssiNotAvailable = -1;         /* NULL */
static int hf_lppe_rtdNotAvailable = -1;          /* NULL */
static int hf_lppe_multipleSetsNotAvailable = -1;  /* NULL */
static int hf_lppe_srnDataVersion = -1;           /* INTEGER_0_4294967295 */
static int hf_lppe_srnERP = -1;                   /* INTEGER_M300_500 */
static int hf_lppe_srnAntennaInfo = -1;           /* T_srnAntennaInfo */
static int hf_lppe_switchingPatternID = -1;       /* INTEGER_0_65535 */
static int hf_lppe_srnTechnologyType = -1;        /* OMA_LPPe_SRN_Technologies */
static int hf_lppe_srnVendorInformation = -1;     /* T_srnVendorInformation */
static int hf_lppe_vendor = -1;                   /* OMA_LPPe_VendorOrOperatorID */
static int hf_lppe_vendorInfo = -1;               /* OCTET_STRING */
static int hf_lppe_srn_id = -1;                   /* T_srn_id */
static int hf_lppe_mac = -1;                      /* BIT_STRING_SIZE_48 */
static int hf_lppe_nfc = -1;                      /* T_nfc */
static int hf_lppe_manufacturer = -1;             /* BIT_STRING_SIZE_8 */
static int hf_lppe_uniqueNumber = -1;             /* BIT_STRING_SIZE_48 */
static int hf_lppe_mobileCode = -1;               /* T_mobileCode */
static int hf_lppe_registryID = -1;               /* BIT_STRING_SIZE_12 */
static int hf_lppe_remainingPart = -1;            /* OCTET_STRING_SIZE_1_16 */
static int hf_lppe_resolutionIdentifier = -1;     /* OCTET_STRING_SIZE_1_18 */
static int hf_lppe_other = -1;                    /* OCTET_STRING */
static int hf_lppe_srnTechnologies = -1;          /* T_srnTechnologies */
static int hf_lppe_srnMeasurements = -1;          /* T_srnMeasurements */
/* named bits */
static int hf_lppe_OMA_LPPe_FixedAccessTypes_cable = -1;
static int hf_lppe_OMA_LPPe_FixedAccessTypes_dsl = -1;
static int hf_lppe_OMA_LPPe_FixedAccessTypes_lan = -1;
static int hf_lppe_OMA_LPPe_FixedAccessTypes_pstn = -1;
static int hf_lppe_OMA_LPPe_FixedAccessTypes_other = -1;
static int hf_lppe_OMA_LPPe_WirelessAccessTypes_gsm = -1;
static int hf_lppe_OMA_LPPe_WirelessAccessTypes_utra = -1;
static int hf_lppe_OMA_LPPe_WirelessAccessTypes_lte = -1;
static int hf_lppe_OMA_LPPe_WirelessAccessTypes_wimax = -1;
static int hf_lppe_OMA_LPPe_WirelessAccessTypes_wifi = -1;
static int hf_lppe_OMA_LPPe_WirelessAccessTypes_other = -1;
static int hf_lppe_OMA_LPPe_WirelessAccessTypes_nr = -1;
static int hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11a = -1;
static int hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11b = -1;
static int hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11g = -1;
static int hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11n = -1;
static int hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11ac = -1;
static int hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11ad = -1;
static int hf_lppe_T_iP_Address_support_iPv4 = -1;
static int hf_lppe_T_iP_Address_support_iPv6 = -1;
static int hf_lppe_T_iP_Address_support_nat = -1;
static int hf_lppe_OMA_LPPe_HighAccuracyFormatCapabilities_hAposition = -1;
static int hf_lppe_OMA_LPPe_HighAccuracyFormatCapabilities_hAvelocity = -1;
static int hf_lppe_OMA_LPPe_HighAccuracyFormatCapabilities_pidf_lo = -1;
static int hf_lppe_T_relativeLocationReportingSupport_geo = -1;
static int hf_lppe_T_relativeLocationReportingSupport_civic = -1;
static int hf_lppe_T_relativeLocationReportingSupport_otherProviders = -1;
static int hf_lppe_T_ionoreq_klobucharModel = -1;
static int hf_lppe_T_ionoreq_ionoStormWarning = -1;
static int hf_lppe_T_troposphereModelReq_delay = -1;
static int hf_lppe_T_troposphereModelReq_surface = -1;
static int hf_lppe_T_ionosphereMeasurementsReq_tecPerSV = -1;
static int hf_lppe_T_ionosphereMeasurementsReq_zenithTEC = -1;
static int hf_lppe_T_ionosphereMeasurementSupport_tecPerSVsupport = -1;
static int hf_lppe_T_ionosphereMeasurementSupport_zenithTecSupport = -1;
static int hf_lppe_T_ionoModel_localKlobuchar = -1;
static int hf_lppe_T_ionoModel_ionoStormWarning = -1;
static int hf_lppe_T_ionoModel_wideAreaIonoSurface = -1;
static int hf_lppe_T_tropoModel_localTroposphereDelay = -1;
static int hf_lppe_T_tropoModel_surfaceParameters = -1;
static int hf_lppe_T_modeSupport_ueBased = -1;
static int hf_lppe_T_modeSupport_ueAssisted = -1;
static int hf_lppe_T_haGNSSantennaInformationSupport_antennaDescriptionSupported = -1;
static int hf_lppe_T_haGNSSantennaInformationSupport_antennaOrientationSupported = -1;
static int hf_lppe_T_requestedCells_eNBs = -1;
static int hf_lppe_T_requestedCells_heNBs = -1;
static int hf_lppe_T_eotdAssistanceReq_ueAssisted = -1;
static int hf_lppe_T_eotdAssistanceReq_ueBased = -1;
static int hf_lppe_T_eotdSupport_ueBased = -1;
static int hf_lppe_T_eotdSupport_ueAssisted = -1;
static int hf_lppe_T_otdoaUtraAssistanceReq_ueAssisted = -1;
static int hf_lppe_T_otdoaUtraAssistanceReq_ueBased = -1;
static int hf_lppe_T_eNBrequestedAD_bslist = -1;
static int hf_lppe_T_eNBrequestedAD_bslocation = -1;
static int hf_lppe_T_eNBrequestedAD_transmit_power = -1;
static int hf_lppe_T_eNBrequestedAD_antennaPortConfig = -1;
static int hf_lppe_T_eNBrequestedAD_antenna_gain = -1;
static int hf_lppe_T_eNBrequestedAD_beam_width = -1;
static int hf_lppe_T_eNBrequestedAD_transmit_direction = -1;
static int hf_lppe_T_eNBrequestedAD_frequency_accuracy = -1;
static int hf_lppe_T_eNBrequestedAD_non_serving = -1;
static int hf_lppe_T_heNBrequestedAD_bslist = -1;
static int hf_lppe_T_heNBrequestedAD_bslocation = -1;
static int hf_lppe_T_heNBrequestedAD_locationreliability = -1;
static int hf_lppe_T_heNBrequestedAD_transmit_power = -1;
static int hf_lppe_T_heNBrequestedAD_antennaPortConfig = -1;
static int hf_lppe_T_heNBrequestedAD_frequency_accuracy = -1;
static int hf_lppe_T_heNBrequestedAD_coveragearea = -1;
static int hf_lppe_T_heNBrequestedAD_non_serving = -1;
static int hf_lppe_T_requestedMeasurements_rsrp = -1;
static int hf_lppe_T_requestedMeasurements_rsrq = -1;
static int hf_lppe_T_requestedMeasurements_ueRxTx = -1;
static int hf_lppe_T_requestedMeasurements_non_serving = -1;
static int hf_lppe_T_requestedMeasurements_historic = -1;
static int hf_lppe_T_ecid_lte_MeasSupported_rsrp = -1;
static int hf_lppe_T_ecid_lte_MeasSupported_rsrq = -1;
static int hf_lppe_T_ecid_lte_MeasSupported_ueRxTx = -1;
static int hf_lppe_T_ecid_lte_MeasSupported_non_serving = -1;
static int hf_lppe_T_ecid_lte_MeasSupported_historic = -1;
static int hf_lppe_T_ecid_lte_eNodeB_ADSupported_bslist = -1;
static int hf_lppe_T_ecid_lte_eNodeB_ADSupported_bslocation = -1;
static int hf_lppe_T_ecid_lte_eNodeB_ADSupported_transmit_power = -1;
static int hf_lppe_T_ecid_lte_eNodeB_ADSupported_antennaPortConfig = -1;
static int hf_lppe_T_ecid_lte_eNodeB_ADSupported_antenna_gain = -1;
static int hf_lppe_T_ecid_lte_eNodeB_ADSupported_beam_width = -1;
static int hf_lppe_T_ecid_lte_eNodeB_ADSupported_transmit_direction = -1;
static int hf_lppe_T_ecid_lte_eNodeB_ADSupported_frequency_accuracy = -1;
static int hf_lppe_T_ecid_lte_eNodeB_ADSupported_non_serving = -1;
static int hf_lppe_T_ecid_utra_HeNB_ADSupported_bslist = -1;
static int hf_lppe_T_ecid_utra_HeNB_ADSupported_bslocation = -1;
static int hf_lppe_T_ecid_utra_HeNB_ADSupported_locationreliability = -1;
static int hf_lppe_T_ecid_utra_HeNB_ADSupported_transmit_power = -1;
static int hf_lppe_T_ecid_utra_HeNB_ADSupported_antennaPortConfig = -1;
static int hf_lppe_T_ecid_utra_HeNB_ADSupported_frequency_accuracy = -1;
static int hf_lppe_T_ecid_utra_HeNB_ADSupported_coveragearea = -1;
static int hf_lppe_T_ecid_utra_HeNB_ADSupported_non_serving = -1;
static int hf_lppe_T_requestedAD_bslist = -1;
static int hf_lppe_T_requestedAD_bslocation = -1;
static int hf_lppe_T_requestedAD_transmit_power = -1;
static int hf_lppe_T_requestedAD_antenna_gain = -1;
static int hf_lppe_T_requestedAD_beam_width = -1;
static int hf_lppe_T_requestedAD_transmit_direction = -1;
static int hf_lppe_T_requestedAD_frequency_accuracy = -1;
static int hf_lppe_T_requestedAD_non_serving = -1;
static int hf_lppe_T_requestedMeasurements_01_rxLevel = -1;
static int hf_lppe_T_requestedMeasurements_01_tA = -1;
static int hf_lppe_T_requestedMeasurements_01_nMR_GERAN = -1;
static int hf_lppe_T_requestedMeasurements_01_non_serving = -1;
static int hf_lppe_T_requestedMeasurements_01_historic = -1;
static int hf_lppe_T_ecid_gsm_MeasSupported_rxLevel = -1;
static int hf_lppe_T_ecid_gsm_MeasSupported_tA = -1;
static int hf_lppe_T_ecid_gsm_MeasSupported_nMR_GERAN = -1;
static int hf_lppe_T_ecid_gsm_MeasSupported_non_serving = -1;
static int hf_lppe_T_ecid_gsm_MeasSupported_historic = -1;
static int hf_lppe_T_ecid_gsm_ADSupported_bslist = -1;
static int hf_lppe_T_ecid_gsm_ADSupported_bslocation = -1;
static int hf_lppe_T_ecid_gsm_ADSupported_transmit_power = -1;
static int hf_lppe_T_ecid_gsm_ADSupported_antenna_gain = -1;
static int hf_lppe_T_ecid_gsm_ADSupported_beam_width = -1;
static int hf_lppe_T_ecid_gsm_ADSupported_transmit_direction = -1;
static int hf_lppe_T_ecid_gsm_ADSupported_frequency_accuracy = -1;
static int hf_lppe_T_ecid_gsm_ADSupported_non_serving = -1;
static int hf_lppe_T_nBrequestedAD_bslist = -1;
static int hf_lppe_T_nBrequestedAD_bslocation = -1;
static int hf_lppe_T_nBrequestedAD_transmit_power = -1;
static int hf_lppe_T_nBrequestedAD_antenna_gain = -1;
static int hf_lppe_T_nBrequestedAD_beam_width = -1;
static int hf_lppe_T_nBrequestedAD_transmit_direction = -1;
static int hf_lppe_T_nBrequestedAD_frequency_accuracy = -1;
static int hf_lppe_T_nBrequestedAD_non_serving = -1;
static int hf_lppe_T_hNBrequestedAD_bslist = -1;
static int hf_lppe_T_hNBrequestedAD_bslocation = -1;
static int hf_lppe_T_hNBrequestedAD_locationreliability = -1;
static int hf_lppe_T_hNBrequestedAD_transmit_power = -1;
static int hf_lppe_T_hNBrequestedAD_frequency_accuracy = -1;
static int hf_lppe_T_hNBrequestedAD_coveragearea = -1;
static int hf_lppe_T_hNBrequestedAD_non_serving = -1;
static int hf_lppe_T_requestedMeasurements_02_measuredResultsList = -1;
static int hf_lppe_T_requestedMeasurements_02_tdd_timingAdvance = -1;
static int hf_lppe_T_requestedMeasurements_02_mRL_utra_CarrierRSSI = -1;
static int hf_lppe_T_requestedMeasurements_02_mRL_FDD_cpich_Ec_N0 = -1;
static int hf_lppe_T_requestedMeasurements_02_mRL_FDD_cpich_RSCP = -1;
static int hf_lppe_T_requestedMeasurements_02_mRL_FDD_pathloss = -1;
static int hf_lppe_T_requestedMeasurements_02_mRL_TDD_primaryCCPCH_RSCP = -1;
static int hf_lppe_T_requestedMeasurements_02_mRL_TDD_pathloss = -1;
static int hf_lppe_T_requestedMeasurements_02_non_serving = -1;
static int hf_lppe_T_requestedMeasurements_02_historic = -1;
static int hf_lppe_T_ecid_utra_MeasSupported_measuredResultsList = -1;
static int hf_lppe_T_ecid_utra_MeasSupported_tdd_timingAdvance = -1;
static int hf_lppe_T_ecid_utra_MeasSupported_mRL_utra_CarrierRSSI = -1;
static int hf_lppe_T_ecid_utra_MeasSupported_mRL_FDD_cpich_Ec_N0 = -1;
static int hf_lppe_T_ecid_utra_MeasSupported_mRL_FDD_cpich_RSCP = -1;
static int hf_lppe_T_ecid_utra_MeasSupported_mRL_FDD_pathloss = -1;
static int hf_lppe_T_ecid_utra_MeasSupported_mRL_TDD_primaryCCPCH_RSCP = -1;
static int hf_lppe_T_ecid_utra_MeasSupported_mRL_TDD_pathloss = -1;
static int hf_lppe_T_ecid_utra_MeasSupported_non_serving = -1;
static int hf_lppe_T_ecid_utra_MeasSupported_historic = -1;
static int hf_lppe_T_ecid_utra_nodeB_ADSupported_bslist = -1;
static int hf_lppe_T_ecid_utra_nodeB_ADSupported_bslocation = -1;
static int hf_lppe_T_ecid_utra_nodeB_ADSupported_transmit_power = -1;
static int hf_lppe_T_ecid_utra_nodeB_ADSupported_antenna_gain = -1;
static int hf_lppe_T_ecid_utra_nodeB_ADSupported_beam_width = -1;
static int hf_lppe_T_ecid_utra_nodeB_ADSupported_transmit_direction = -1;
static int hf_lppe_T_ecid_utra_nodeB_ADSupported_frequency_accuracy = -1;
static int hf_lppe_T_ecid_utra_nodeB_ADSupported_non_serving = -1;
static int hf_lppe_T_ecid_utra_HNB_ADSupported_bslist = -1;
static int hf_lppe_T_ecid_utra_HNB_ADSupported_bslocation = -1;
static int hf_lppe_T_ecid_utra_HNB_ADSupported_locationreliability = -1;
static int hf_lppe_T_ecid_utra_HNB_ADSupported_transmit_power = -1;
static int hf_lppe_T_ecid_utra_HNB_ADSupported_frequency_accuracy = -1;
static int hf_lppe_T_ecid_utra_HNB_ADSupported_coveragearea = -1;
static int hf_lppe_T_ecid_utra_HNB_ADSupported_non_serving = -1;
static int hf_lppe_T_requestedAD_01_aplist = -1;
static int hf_lppe_T_requestedAD_01_aplocation = -1;
static int hf_lppe_T_requestedAD_01_locationreliability = -1;
static int hf_lppe_T_requestedAD_01_transmit_power = -1;
static int hf_lppe_T_requestedAD_01_antenna_gain = -1;
static int hf_lppe_T_requestedAD_01_coveragearea = -1;
static int hf_lppe_T_requestedAD_01_non_serving = -1;
static int hf_lppe_T_requestedMeasurements_03_apSSID = -1;
static int hf_lppe_T_requestedMeasurements_03_apSN = -1;
static int hf_lppe_T_requestedMeasurements_03_apDevType = -1;
static int hf_lppe_T_requestedMeasurements_03_apPhyType = -1;
static int hf_lppe_T_requestedMeasurements_03_apRSSI = -1;
static int hf_lppe_T_requestedMeasurements_03_apChanFreq = -1;
static int hf_lppe_T_requestedMeasurements_03_apRTD = -1;
static int hf_lppe_T_requestedMeasurements_03_ueTP = -1;
static int hf_lppe_T_requestedMeasurements_03_ueAG = -1;
static int hf_lppe_T_requestedMeasurements_03_apRepLoc = -1;
static int hf_lppe_T_requestedMeasurements_03_non_serving = -1;
static int hf_lppe_T_requestedMeasurements_03_historic = -1;
static int hf_lppe_T_requestedMeasurements_03_apTP = -1;
static int hf_lppe_T_requestedMeasurements_03_apAG = -1;
static int hf_lppe_T_requestedMeasurements_03_ueSN = -1;
static int hf_lppe_T_requestedMeasurements_03_ueRSSI = -1;
static int hf_lppe_T_additionalRequestedMeasurements_oc = -1;
static int hf_lppe_T_additionalRequestedMeasurements_ueMacAddr = -1;
static int hf_lppe_T_wlan_ecid_MeasSupported_apSSID = -1;
static int hf_lppe_T_wlan_ecid_MeasSupported_apSN = -1;
static int hf_lppe_T_wlan_ecid_MeasSupported_apDevType = -1;
static int hf_lppe_T_wlan_ecid_MeasSupported_apPhyType = -1;
static int hf_lppe_T_wlan_ecid_MeasSupported_apRSSI = -1;
static int hf_lppe_T_wlan_ecid_MeasSupported_apChanFreq = -1;
static int hf_lppe_T_wlan_ecid_MeasSupported_apRTD = -1;
static int hf_lppe_T_wlan_ecid_MeasSupported_ueTP = -1;
static int hf_lppe_T_wlan_ecid_MeasSupported_ueAG = -1;
static int hf_lppe_T_wlan_ecid_MeasSupported_apRepLoc = -1;
static int hf_lppe_T_wlan_ecid_MeasSupported_non_serving = -1;
static int hf_lppe_T_wlan_ecid_MeasSupported_historic = -1;
static int hf_lppe_T_wlan_ecid_MeasSupported_apTP = -1;
static int hf_lppe_T_wlan_ecid_MeasSupported_apAG = -1;
static int hf_lppe_T_wlan_ecid_MeasSupported_ueSN = -1;
static int hf_lppe_T_wlan_ecid_MeasSupported_ueRSSI = -1;
static int hf_lppe_T_wlan_ap_ADSupported_aplist = -1;
static int hf_lppe_T_wlan_ap_ADSupported_aplocation = -1;
static int hf_lppe_T_wlan_ap_ADSupported_locationreliability = -1;
static int hf_lppe_T_wlan_ap_ADSupported_transmit_power = -1;
static int hf_lppe_T_wlan_ap_ADSupported_antenna_gain = -1;
static int hf_lppe_T_wlan_ap_ADSupported_coveragearea = -1;
static int hf_lppe_T_wlan_ap_ADSupported_non_serving = -1;
static int hf_lppe_T_additional_wlan_ecid_MeasSupported_oc = -1;
static int hf_lppe_T_additional_wlan_ecid_MeasSupported_ueMacAddr = -1;
static int hf_lppe_T_requestedMeasurements_04_rTD = -1;
static int hf_lppe_T_requestedMeasurements_04_rTDstd = -1;
static int hf_lppe_T_requestedMeasurements_04_nMR = -1;
static int hf_lppe_T_requestedMeasurements_04_nMRrelDelay = -1;
static int hf_lppe_T_requestedMeasurements_04_nMRrelDelaystd = -1;
static int hf_lppe_T_requestedMeasurements_04_nMRrSSI = -1;
static int hf_lppe_T_requestedMeasurements_04_nMRrSSIstd = -1;
static int hf_lppe_T_requestedMeasurements_04_nMRbSTxPower = -1;
static int hf_lppe_T_requestedMeasurements_04_nMRcINR = -1;
static int hf_lppe_T_requestedMeasurements_04_nMRcINRstd = -1;
static int hf_lppe_T_requestedMeasurements_04_nMRbSLocation = -1;
static int hf_lppe_T_requestedMeasurements_04_non_serving = -1;
static int hf_lppe_T_requestedMeasurements_04_historic = -1;
static int hf_lppe_T_ecid_wimax_MeasSupported_rTD = -1;
static int hf_lppe_T_ecid_wimax_MeasSupported_rTDstd = -1;
static int hf_lppe_T_ecid_wimax_MeasSupported_nMR = -1;
static int hf_lppe_T_ecid_wimax_MeasSupported_nMRrelDelay = -1;
static int hf_lppe_T_ecid_wimax_MeasSupported_nMRrelDelaystd = -1;
static int hf_lppe_T_ecid_wimax_MeasSupported_nMRrSSI = -1;
static int hf_lppe_T_ecid_wimax_MeasSupported_nMRrSSIstd = -1;
static int hf_lppe_T_ecid_wimax_MeasSupported_nMRbSTxPower = -1;
static int hf_lppe_T_ecid_wimax_MeasSupported_nMRcINR = -1;
static int hf_lppe_T_ecid_wimax_MeasSupported_nMRcINRstd = -1;
static int hf_lppe_T_ecid_wimax_MeasSupported_nMRbSLocation = -1;
static int hf_lppe_T_ecid_wimax_MeasSupported_non_serving = -1;
static int hf_lppe_T_ecid_wimax_MeasSupported_historic = -1;
static int hf_lppe_T_secondaryMotionState_stationary = -1;
static int hf_lppe_T_secondaryMotionState_pedestrian = -1;
static int hf_lppe_T_secondaryMotionState_running = -1;
static int hf_lppe_T_secondaryMotionState_cycling = -1;
static int hf_lppe_T_secondaryMotionState_car = -1;
static int hf_lppe_T_secondaryMotionState_train = -1;
static int hf_lppe_T_secondaryMotionState_aeroplane = -1;
static int hf_lppe_T_secondaryMotionState_boat = -1;
static int hf_lppe_T_secondaryMotionState_fidgeting = -1;
static int hf_lppe_T_supportedAssistanceData_srnGroup = -1;
static int hf_lppe_T_supportedAssistanceData_antennaPattern = -1;
static int hf_lppe_T_srnMeasurements_rssi = -1;
static int hf_lppe_T_srnMeasurements_rtd = -1;

/* Initialize the subtree pointers */
static gint ett_lppe = -1;
static gint ett_lppe_civicLocation = -1;
static gint ett_lppe_OMA_LPPe_MessageExtension = -1;
static gint ett_lppe_OMA_LPPe_LPPeVersion = -1;
static gint ett_lppe_OMA_LPPe_MessageExtensionBody = -1;
static gint ett_lppe_OMA_LPPe_RequestCapabilities = -1;
static gint ett_lppe_OMA_LPPe_ProvideCapabilities = -1;
static gint ett_lppe_OMA_LPPe_RequestAssistanceData = -1;
static gint ett_lppe_OMA_LPPe_ProvideAssistanceData = -1;
static gint ett_lppe_OMA_LPPe_RequestLocationInformation = -1;
static gint ett_lppe_OMA_LPPe_ProvideLocationInformation = -1;
static gint ett_lppe_OMA_LPPe_Abort = -1;
static gint ett_lppe_OMA_LPPe_Error = -1;
static gint ett_lppe_OMA_LPPe_AssistanceContainer_DataSerialNumber = -1;
static gint ett_lppe_OMA_LPPe_AssistanceContainerID = -1;
static gint ett_lppe_OMA_LPPe_AssistanceContainerProvideList = -1;
static gint ett_lppe_OMA_LPPe_AssistanceContainerProvide = -1;
static gint ett_lppe_T_dataResult = -1;
static gint ett_lppe_OMA_LPPe_AssistanceContainerData = -1;
static gint ett_lppe_OMA_LPPe_AssistanceContainerProvideError = -1;
static gint ett_lppe_OMA_LPPe_AssistanceContainerRequestList = -1;
static gint ett_lppe_OMA_LPPe_AssistanceContainerRequest = -1;
static gint ett_lppe_OMA_LPPe_AssistanceContainerCheckOrUpdateReq = -1;
static gint ett_lppe_OMA_LPPe_CellLocalIdGERAN = -1;
static gint ett_lppe_OMA_LPPe_CellNonUniqueIDGERAN = -1;
static gint ett_lppe_OMA_LPPe_CivicLocation = -1;
static gint ett_lppe_OMA_LPPe_CivicAddressElementList = -1;
static gint ett_lppe_OMA_LPPe_CivicAddressElement = -1;
static gint ett_lppe_OMA_LPPe_CivicLocation_pidf_lo = -1;
static gint ett_lppe_OMA_LPPe_Duration = -1;
static gint ett_lppe_OMA_LPPe_FixedAccessTypes = -1;
static gint ett_lppe_OMA_LPPe_HighAccuracy3Dposition = -1;
static gint ett_lppe_OMA_LPPe_HighAccuracy3Dvelocity = -1;
static gint ett_lppe_OMA_LPPe_LocationInformationContainerID = -1;
static gint ett_lppe_OMA_LPPe_LocationInformationContainer = -1;
static gint ett_lppe_OMA_LPPe_LocationInformationContainerDataList = -1;
static gint ett_lppe_OMA_LPPe_LocationInformationContainerData = -1;
static gint ett_lppe_OMA_LPPe_LocationInformationContainerRequest = -1;
static gint ett_lppe_OMA_LPPe_LocationInformationContainerRequestList = -1;
static gint ett_lppe_OMA_LPPe_LocationInformationContainerRequestItem = -1;
static gint ett_lppe_OMA_LPPe_MapDataReference = -1;
static gint ett_lppe_OMA_LPPe_Orientation = -1;
static gint ett_lppe_T_eulerAngles = -1;
static gint ett_lppe_OMA_LPPe_ReferencePoint = -1;
static gint ett_lppe_T_referencePointGeographicLocation = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointRelationship = -1;
static gint ett_lppe_OMA_LPPe_MapDataInformation = -1;
static gint ett_lppe_OMA_LPPe_MapDataReferenceElement = -1;
static gint ett_lppe_T_mapDataUrl_choice = -1;
static gint ett_lppe_T_mapProvider = -1;
static gint ett_lppe_T_mapAssociation = -1;
static gint ett_lppe_OMA_LPPe_ReferencePointRelationship = -1;
static gint ett_lppe_OMA_LPPe_ReferencePointUniqueID = -1;
static gint ett_lppe_OMA_LPPe_RelativeLocation = -1;
static gint ett_lppe_OMA_LPPe_HorizontalUncertaintyAndConfidence = -1;
static gint ett_lppe_T_uncShape = -1;
static gint ett_lppe_T_ellipse = -1;
static gint ett_lppe_OMA_LPPe_RelativeAltitude = -1;
static gint ett_lppe_OMA_LPPe_GeodeticRelativeAltitude = -1;
static gint ett_lppe_OMA_LPPe_GeodeticUncertaintyAndConfidence = -1;
static gint ett_lppe_OMA_LPPe_CivicRelativeAltitude = -1;
static gint ett_lppe_OMA_LPPe_CivicUncertaintyAndConfidence = -1;
static gint ett_lppe_OMA_LPPe_Session_ID = -1;
static gint ett_lppe_OMA_LPPe_ValidityArea = -1;
static gint ett_lppe_OMA_LPPe_RleList = -1;
static gint ett_lppe_OMA_LPPe_ValidityPeriod = -1;
static gint ett_lppe_OMA_LPPe_VendorOrOperatorAssistanceDataIdentifier = -1;
static gint ett_lppe_OMA_LPPe_VendorOrOperatorID = -1;
static gint ett_lppe_OMA_LPPe_NonStandard_VendorOrOperatorID = -1;
static gint ett_lppe_OMA_LPPe_WirelessAccessTypes = -1;
static gint ett_lppe_OMA_LPPe_WLAN_AP_ID = -1;
static gint ett_lppe_OMA_LPPe_WLAN_AP_Type_List = -1;
static gint ett_lppe_OMA_LPPe_WLANFemtoCoverageArea = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_WLANFemtoCoverageAreaElement = -1;
static gint ett_lppe_OMA_LPPe_WLANFemtoCoverageAreaElement = -1;
static gint ett_lppe_T_refPointAndArea = -1;
static gint ett_lppe_OMA_LPPe_CommonIEsRequestCapabilities = -1;
static gint ett_lppe_OMA_LPPe_IP_Address_RequestCapabilities = -1;
static gint ett_lppe_OMA_LPPe_AssistanceContainerSupportReq = -1;
static gint ett_lppe_OMA_LPPe_LocationInformationContainerSupportReq = -1;
static gint ett_lppe_OMA_LPPe_VendorOrOperatorIDList = -1;
static gint ett_lppe_OMA_LPPe_RelativeLocationChange_RequestCapabilities = -1;
static gint ett_lppe_OMA_LPPe_HighAccuracyFormatCapabilitiesReq = -1;
static gint ett_lppe_OMA_LPPe_SegmentedAssistanceData_ReqCapabilities = -1;
static gint ett_lppe_OMA_LPPe_ReferencePointCapabilitiesReq = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_128_OF_OMA_LPPe_VendorOrOperatorID = -1;
static gint ett_lppe_OMA_LPPe_ScheduledLocation_RequestCapabilities = -1;
static gint ett_lppe_OMA_LPPe_AccessCapabilitiesReq = -1;
static gint ett_lppe_OMA_LPPe_SegmentedLocationInformation_ReqCapabilities = -1;
static gint ett_lppe_OMA_LPPe_CommonIEsProvideCapabilities = -1;
static gint ett_lppe_OMA_LPPe_IP_Address_Capabilities = -1;
static gint ett_lppe_T_iP_Address_support = -1;
static gint ett_lppe_OMA_LPPe_AssistanceContainerSupport = -1;
static gint ett_lppe_OMA_LPPe_VendorOrOperatorAssistanceContainerList = -1;
static gint ett_lppe_OMA_LPPe_AssistanceContainerList = -1;
static gint ett_lppe_OMA_LPPe_LocationInformationContainerSupport = -1;
static gint ett_lppe_OMA_LPPe_VendorOrOperatorLocationInformationContainerList = -1;
static gint ett_lppe_OMA_LPPe_LocationInformationContainerList = -1;
static gint ett_lppe_OMA_LPPe_RelativeLocationChange_Capabilities = -1;
static gint ett_lppe_OMA_LPPe_HighAccuracyFormatCapabilities = -1;
static gint ett_lppe_OMA_LPPe_SegmentedAssistanceData_ProvideCapabs = -1;
static gint ett_lppe_OMA_LPPe_ReferencePointCapabilities = -1;
static gint ett_lppe_T_relativeLocationReportingSupport = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_128_OF_OMA_LPPe_ReferencePointProviderSupportElement = -1;
static gint ett_lppe_OMA_LPPe_ReferencePointProviderSupportElement = -1;
static gint ett_lppe_T_mapDataSupport = -1;
static gint ett_lppe_OMA_LPPe_ScheduledLocation_Capabilities = -1;
static gint ett_lppe_OMA_LPPe_AccessCapabilities = -1;
static gint ett_lppe_OMA_LPPe_SegmentedLocationInformation_ProvideCapabs = -1;
static gint ett_lppe_OMA_LPPe_CommonIEsRequestAssistanceData = -1;
static gint ett_lppe_OMA_LPPe_RequestPeriodicADwithUpdate = -1;
static gint ett_lppe_OMA_LPPe_SegmentedADResume = -1;
static gint ett_lppe_OMA_LPPe_ReferencePointAssistanceReq = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_ReferencePointAssistanceReqElement = -1;
static gint ett_lppe_OMA_LPPe_ReferencePointAssistanceReqElement = -1;
static gint ett_lppe_OMA_LPPe_CommonIEsProvideAssistanceData = -1;
static gint ett_lppe_OMA_LPPe_ProvidePeriodicADwithUpdate = -1;
static gint ett_lppe_OMA_LPPe_SegmentedADTransfer = -1;
static gint ett_lppe_OMA_LPPe_CommonIEsRequestLocationInformation = -1;
static gint ett_lppe_OMA_LPPe_IP_Address_Request = -1;
static gint ett_lppe_OMA_LPPe_RequestPeriodicLocInfoWithUpdate = -1;
static gint ett_lppe_OMA_LPPe_RelativeLocationChange_Request = -1;
static gint ett_lppe_OMA_LPPe_LocalPositionRequest = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointUniqueID = -1;
static gint ett_lppe_OMA_LPPe_ScheduledLocation_Request = -1;
static gint ett_lppe_OMA_LPPe_AccessTypeRequest = -1;
static gint ett_lppe_OMA_LPPe_SegmentedLIResume = -1;
static gint ett_lppe_OMA_LPPe_CivicLocation_Request = -1;
static gint ett_lppe_OMA_LPPe_CommonIEsProvideLocationInformation = -1;
static gint ett_lppe_OMA_LPPe_LocalPosition = -1;
static gint ett_lppe_OMA_LPPe_IP_Address_List = -1;
static gint ett_lppe_OMA_LPPe_IP_Address = -1;
static gint ett_lppe_T_local_IP_Address = -1;
static gint ett_lppe_OMA_LPPe_ProvidePeriodicLocInfowithUpdate = -1;
static gint ett_lppe_OMA_LPPe_RelativeLocationChangeList = -1;
static gint ett_lppe_OMA_LPPe_RelativeLocationChange = -1;
static gint ett_lppe_OMA_LPPe_ScheduledLocation = -1;
static gint ett_lppe_T_actualWindow = -1;
static gint ett_lppe_OMA_LPPe_AccessTypes = -1;
static gint ett_lppe_OMA_LPPe_SegmentedLITransfer = -1;
static gint ett_lppe_OMA_LPPe_TimeStamp = -1;
static gint ett_lppe_OMA_LPPe_LocationSource = -1;
static gint ett_lppe_OMA_LPPe_CommonIEsAbort = -1;
static gint ett_lppe_OMA_LPPe_CommonIEsError = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_ProvideAssistanceData = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_CommonAssistData = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_GenericAssistData = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_GenericAssistDataElement = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_IonosphericModel = -1;
static gint ett_lppe_T_staticModels = -1;
static gint ett_lppe_T_waIono = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_LocalKlobucharModelList = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_LocalKlobucharModelElement = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalKlobucharModel = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_LocalKlobucharModel = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_IonoStormIndication = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_StormList = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_StormElement = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_RleListIono = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_RleIonoElement = -1;
static gint ett_lppe_T_ionoIndex = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersProvide = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfaceCommon = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVlist = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVelement = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_TroposphereModel = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayList = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayAreaElement = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersList = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersAreaElement = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_MappingFunctionParameters = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceList = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceAreaElement = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_PressureAssistanceElement = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_PressureAssistanceElement = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_SolarRadiation = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_MechanicsForAllSVs = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_MechanicsElement = -1;
static gint ett_lppe_T_svInfo = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_PCOelement = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_DCBsForAllSVs = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_DCBlistElement = -1;
static gint ett_lppe_T_reference = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_DCBlist = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_DCBelement = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelList = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelElement = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_ClockModelDegradationModel = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_OrbitModelDegradationModel = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_CCPassistCommonProvide = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_CCPprovideCommonParameters = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_CCPprovideControlParameters = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_CCPsupportArea = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPsignalSupport = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_CCPsignalSupport = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_CCPreferenceStationList = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_CCPreferenceStationElement = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_CCPassistGenericProvide = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_CCPassistGenericProvideElement = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPperSignalElement = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_CCPperSignalElement = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_CCPperSVelement = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_CCPperSVelement = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_CodePhaseError = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_NavModelList = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_NavModel_CoordinateBased = -1;
static gint ett_lppe_T_fixedInterval = -1;
static gint ett_lppe_T_bases = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_97_OF_OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_NavModel_PVTelement = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_NavModel_PVTelement = -1;
static gint ett_lppe_T_rateRecord = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_NavModel_BigNumber = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_NavModel_STDmatrix = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_RequestAssistanceData = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_CommonAssistanceDataReq = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataReq = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_GenericAssistDataReqElement = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_IonosphericModelReq = -1;
static gint ett_lppe_T_staticModels_01 = -1;
static gint ett_lppe_T_ionoreq = -1;
static gint ett_lppe_T_periodicModels = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersRequest = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_TroposphereModelReq = -1;
static gint ett_lppe_T_troposphereModelReq = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceReq = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_SolarRadiationReq = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_WaIonoSurfaceRequest = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelReq = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_DCBreq = -1;
static gint ett_lppe_T_reference_01 = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_MechanicsReq = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_CCPrequestControlParameters = -1;
static gint ett_lppe_T_ccpCommonRequest = -1;
static gint ett_lppe_T_refStation = -1;
static gint ett_lppe_T_posBasedReferenceStationRequest = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_ReferenceStationIDlist = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_CCPassistGenericReq = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_NavigationModelReq = -1;
static gint ett_lppe_T_navModelID_PrefList = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_ProvideLocationInformation = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_HAgnssProvide = -1;
static gint ett_lppe_T_controlParameters = -1;
static gint ett_lppe_T_measurements = -1;
static gint ett_lppe_T_localPressure = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssMeasurementElement = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_HAgnssMeasurementElement = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_HAgnssPerSignalElement = -1;
static gint ett_lppe_OMA_LPPe_HAgnssPerSignalElement = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_HAgnssPerSVelement = -1;
static gint ett_lppe_OMA_LPPe_HAgnssPerSVelement = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_IonosphereMeasurements = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_TECPerSV = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_TECPerSVElement = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_TECAtZenith = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_LocalSurfaceMeasurements = -1;
static gint ett_lppe_T_temperatureMeasurement = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_RequestLocationInformation = -1;
static gint ett_lppe_T_ionosphereMeasurementsReq = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_PositioningInstructions = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_LocalSurfaceMeasurementReq = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_HAgnssRequestControlParameters = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssSignalReqElement = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_HAgnssSignalReqElement = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_ProvideCapabilities = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_AssistanceDataSupportList = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_EnvironmentObservationSupportList = -1;
static gint ett_lppe_T_ionosphereMeasurementSupport = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_CommonAssistanceDataSupport = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_IonosphericModelSupport = -1;
static gint ett_lppe_T_ionoModel = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_TroposphereModelSupport = -1;
static gint ett_lppe_T_tropoModel = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceSupport = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_SolarRadiationSupport = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_CCPsupport = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataSupport = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_GenericAssistDataSupportElement = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_MechanicsSupport = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_DCBsupport = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_NavModelAccuracyModelDegradationSupport = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_NavModelSupport = -1;
static gint ett_lppe_T_navModelSupport = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_HAgnssSupport = -1;
static gint ett_lppe_T_modeSupport = -1;
static gint ett_lppe_T_haGNSSantennaInformationSupport = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_HAgnssPerGNSSsupport = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_HAgnssPerGNSSsupport = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_RequestCapabilities = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_Error = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_LocationServerErrorCauses = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_TargetDeviceErrorCauses = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_CCPreferenceStationID = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_AntennaDescription = -1;
static gint ett_lppe_T_antennaDescription = -1;
static gint ett_lppe_OMA_LPPe_AGNSS_Abort = -1;
static gint ett_lppe_T_targetDeviceAbortCauses = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_ProvideAssistanceData = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_ReferenceCellInfo = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_PositionCalculationInfoRef = -1;
static gint ett_lppe_T_cellLocation = -1;
static gint ett_lppe_T_femtoCellInfo = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoList = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_NeighbourFreqCellInfoList = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_OTDOA_CellData = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_CellData = -1;
static gint ett_lppe_T_rtdInfo = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_RTDquality = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_RequestAssistanceData = -1;
static gint ett_lppe_T_lteCell = -1;
static gint ett_lppe_T_requestedCells = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_ProvideLocationInformation = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_LocationInformation = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_RequestLocationInformation = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_ProvideCapabilities = -1;
static gint ett_lppe_T_eNodeB_AD_sup = -1;
static gint ett_lppe_T_home_eNodeB_AD_sup = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_RequestCapabilities = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_Error = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_LocationServerErrorCauses = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_TargetDeviceErrorCauses = -1;
static gint ett_lppe_OMA_LPPe_EOTD_ProvideAssistanceData = -1;
static gint ett_lppe_OMA_LPPe_EOTD_ReferenceBTSForAssistance = -1;
static gint ett_lppe_T_btsPosition = -1;
static gint ett_lppe_OMA_LPPe_EOTD_MsrAssistDataList = -1;
static gint ett_lppe_OMA_LPPe_EOTD_MsrAssistBTS = -1;
static gint ett_lppe_OMA_LPPe_EOTD_SystemInfoAssistDataList = -1;
static gint ett_lppe_OMA_LPPe_EOTD_SystemInfoAssistBTS = -1;
static gint ett_lppe_OMA_LPPe_EOTD_AssistBTSData = -1;
static gint ett_lppe_OMA_LPPe_EOTD_CalcAssistanceBTS = -1;
static gint ett_lppe_OMA_LPPe_EOTD_relativePos = -1;
static gint ett_lppe_OMA_LPPe_EOTD_RequestAssistanceData = -1;
static gint ett_lppe_T_eotdAssistanceReq = -1;
static gint ett_lppe_OMA_LPPe_EOTD_ProvideLocationInformation = -1;
static gint ett_lppe_OMA_LPPe_EOTD_MsrElement = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_15_OF_OMA_LPPe_EOTD_MeasurementWithID = -1;
static gint ett_lppe_OMA_LPPe_EOTD_TOA_MeasurementsOfRef = -1;
static gint ett_lppe_OMA_LPPe_EOTD_MeasurementWithID = -1;
static gint ett_lppe_OMA_LPPe_EOTD_NeighborIdentity = -1;
static gint ett_lppe_OMA_LPPe_EOTD_EOTDQuality = -1;
static gint ett_lppe_OMA_LPPe_EOTD_MultiFrameCarrier = -1;
static gint ett_lppe_OMA_LPPe_EOTD_RequestLocationInformation = -1;
static gint ett_lppe_OMA_LPPe_EOTD_ProvideCapabilities = -1;
static gint ett_lppe_T_eotdSupport = -1;
static gint ett_lppe_OMA_LPPe_EOTD_RequestCapabilities = -1;
static gint ett_lppe_OMA_LPPe_EOTD_Error = -1;
static gint ett_lppe_OMA_LPPe_EOTD_LocationServerErrorCauses = -1;
static gint ett_lppe_OMA_LPPe_EOTD_TargetDeviceErrorCauses = -1;
static gint ett_lppe_OMA_LPPe_EOTD_ExpectedOTD = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_ProvideAssistanceData = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_ReferenceCellInfo = -1;
static gint ett_lppe_T_modeSpecificInfo = -1;
static gint ett_lppe_T_fdd = -1;
static gint ett_lppe_T_tdd = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_RefPosAssist = -1;
static gint ett_lppe_T_cellPosition = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_NeighborCellList = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_NeighborCellInfo = -1;
static gint ett_lppe_T_modeSpecificInfo_01 = -1;
static gint ett_lppe_T_fdd_01 = -1;
static gint ett_lppe_T_tdd_01 = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_SFN_SFN_RelTimeDifference1 = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_PositioningAssistance = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_IPDL_Parameters = -1;
static gint ett_lppe_T_modeSpecificInfo_02 = -1;
static gint ett_lppe_T_fdd_02 = -1;
static gint ett_lppe_T_tdd_02 = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_BurstModeParameters = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_RequestAssistanceData = -1;
static gint ett_lppe_T_otdoaUtraAssistanceReq = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_ProvideLocationInformation = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_Measurement = -1;
static gint ett_lppe_T_modeSpecificInfoMeas = -1;
static gint ett_lppe_T_fdd_03 = -1;
static gint ett_lppe_T_tdd_03 = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_UE_RX_TX_TimeDifferenceType2Info = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_NeighborList = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_Neighbor = -1;
static gint ett_lppe_T_modeSpecificInfo_03 = -1;
static gint ett_lppe_T_fdd_04 = -1;
static gint ett_lppe_T_tdd_04 = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_NeighborQuality = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_Quality = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_TimeStampData = -1;
static gint ett_lppe_T_nonUniqueCellID = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_RequestLocationInformation = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_ProvideCapabilities = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_RequestCapabilities = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_Error = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_LocationServerErrorCauses = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_TargetDeviceErrorCauses = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info = -1;
static gint ett_lppe_OMA_LPPe_OTDOA_UTRA_CellAndChannelIdentity = -1;
static gint ett_lppe_OMA_LPPe_ECID_LTE_ProvideAssistanceData = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_maxLTENetworks_OF_OMA_LPPe_ECID_LTE_NetworkData = -1;
static gint ett_lppe_OMA_LPPe_ECID_LTE_NetworkData = -1;
static gint ett_lppe_T_plmn_Identity = -1;
static gint ett_lppe_T_mcc = -1;
static gint ett_lppe_T_mnc = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_ECID_LTE_eNodeBData = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_ECID_LTE_HeNBData = -1;
static gint ett_lppe_OMA_LPPe_ECID_LTE_eNodeBData = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_ECID_LTE_CellData = -1;
static gint ett_lppe_OMA_LPPe_ECID_LTE_HeNBData = -1;
static gint ett_lppe_OMA_LPPe_ECID_LTE_CellData = -1;
static gint ett_lppe_OMA_LPPe_ECID_LTE_RequestAssistanceData = -1;
static gint ett_lppe_T_eNBrequestedAD = -1;
static gint ett_lppe_T_heNBrequestedAD = -1;
static gint ett_lppe_OMA_LPPe_ECID_LTE_ProvideLocationInformation = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_maxLTEECIDSize_OF_OMA_LPPe_ECID_LTE_LocationInformationList = -1;
static gint ett_lppe_OMA_LPPe_ECID_LTE_LocationInformationList = -1;
static gint ett_lppe_OMA_LPPe_ECID_LTE_LocationInformation = -1;
static gint ett_lppe_OMA_LPPe_ECID_LTE_RequestLocationInformation = -1;
static gint ett_lppe_T_requestedMeasurements = -1;
static gint ett_lppe_OMA_LPPe_ECID_LTE_ProvideCapabilities = -1;
static gint ett_lppe_T_ecid_lte_MeasSupported = -1;
static gint ett_lppe_T_ecid_lte_eNodeB_ADSupported = -1;
static gint ett_lppe_T_ecid_utra_HeNB_ADSupported = -1;
static gint ett_lppe_OMA_LPPe_ECID_LTE_RequestCapabilities = -1;
static gint ett_lppe_OMA_LPPe_ECID_LTE_Error = -1;
static gint ett_lppe_OMA_LPPe_ECID_LTE_LocationServerErrorCauses = -1;
static gint ett_lppe_OMA_LPPe_ECID_LTE_TargetDeviceErrorCauses = -1;
static gint ett_lppe_OMA_LPPe_ECID_GSM_ProvideAssistanceData = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_maxGSMNetworks_OF_OMA_LPPe_ECID_GSM_NetworkData = -1;
static gint ett_lppe_OMA_LPPe_ECID_GSM_NetworkData = -1;
static gint ett_lppe_T_plmn_Identity_01 = -1;
static gint ett_lppe_T_mcc_01 = -1;
static gint ett_lppe_T_mnc_01 = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_maxGSMBaseStations_OF_OMA_LPPe_ECID_GSM_BaseStationData = -1;
static gint ett_lppe_OMA_LPPe_ECID_GSM_BaseStationData = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_maxGSMCells_OF_OMA_LPPe_ECID_GSM_CellData = -1;
static gint ett_lppe_OMA_LPPe_ECID_GSM_CellData = -1;
static gint ett_lppe_OMA_LPPe_ECID_GSM_RequestAssistanceData = -1;
static gint ett_lppe_T_requestedAD = -1;
static gint ett_lppe_OMA_LPPe_ECID_GSM_ProvideLocationInformation = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_maxGSMECIDSize_OF_OMA_LPPe_ECID_GSM_LocationInformationList = -1;
static gint ett_lppe_OMA_LPPe_ECID_GSM_LocationInformationList = -1;
static gint ett_lppe_OMA_LPPe_ECID_GSM_LocationInformation = -1;
static gint ett_lppe_OMA_LPPe_NMR_GERAN = -1;
static gint ett_lppe_OMA_LPPe_NMR_GERAN_item = -1;
static gint ett_lppe_OMA_LPPe_ECID_GSM_RequestLocationInformation = -1;
static gint ett_lppe_T_requestedMeasurements_01 = -1;
static gint ett_lppe_OMA_LPPe_ECID_GSM_ProvideCapabilities = -1;
static gint ett_lppe_T_ecid_gsm_MeasSupported = -1;
static gint ett_lppe_T_ecid_gsm_ADSupported = -1;
static gint ett_lppe_OMA_LPPe_ECID_GSM_RequestCapabilities = -1;
static gint ett_lppe_OMA_LPPe_ECID_GSM_Error = -1;
static gint ett_lppe_OMA_LPPe_ECID_GSM_LocationServerErrorCauses = -1;
static gint ett_lppe_OMA_LPPe_ECID_GSM_TargetDeviceErrorCauses = -1;
static gint ett_lppe_OMA_LPPe_ECID_UTRA_ProvideAssistanceData = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_maxUTRANetworks_OF_OMA_LPPe_ECID_UTRA_NetworkData = -1;
static gint ett_lppe_OMA_LPPe_ECID_UTRA_NetworkData = -1;
static gint ett_lppe_T_plmn_Identity_02 = -1;
static gint ett_lppe_T_mcc_02 = -1;
static gint ett_lppe_T_mnc_02 = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_maxUTRAnodeBs_OF_OMA_LPPe_ECID_UTRA_NodeBData = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_maxUTRAHNBs_OF_OMA_LPPe_ECID_UTRA_HNBData = -1;
static gint ett_lppe_OMA_LPPe_ECID_UTRA_NodeBData = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_maxUTRAMacroCells_OF_OMA_LPPe_ECID_UTRA_CellData = -1;
static gint ett_lppe_OMA_LPPe_ECID_UTRA_HNBData = -1;
static gint ett_lppe_OMA_LPPe_ECID_UTRA_CellData = -1;
static gint ett_lppe_T_modeSpecificInfo_04 = -1;
static gint ett_lppe_T_fdd_05 = -1;
static gint ett_lppe_T_tdd_05 = -1;
static gint ett_lppe_OMA_LPPe_ECID_UTRA_RequestAssistanceData = -1;
static gint ett_lppe_T_nBrequestedAD = -1;
static gint ett_lppe_T_hNBrequestedAD = -1;
static gint ett_lppe_OMA_LPPe_ECID_UTRA_ProvideLocationInformation = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_maxECIDUTRASize_OF_OMA_LPPe_ECID_UTRA_LocationInformationList = -1;
static gint ett_lppe_OMA_LPPe_ECID_UTRA_LocationInformationList = -1;
static gint ett_lppe_OMA_LPPe_ECID_UTRA_LocationInformation = -1;
static gint ett_lppe_OMA_LPPe_ECID_UTRA_UTRATimingAdvance = -1;
static gint ett_lppe_OMA_LPPe_UTRA_FrequencyInfo = -1;
static gint ett_lppe_OMA_LPPe_UTRA_ModeSpecificInfo = -1;
static gint ett_lppe_OMA_LPPe_UTRA_FrequencyInfoFDD = -1;
static gint ett_lppe_OMA_LPPe_UTRA_FrequencyInfoTDD = -1;
static gint ett_lppe_OMA_LPPe_ECID_UTRA_MeasuredResultsList = -1;
static gint ett_lppe_OMA_LPPe_ECID_UTRA_MeasuredResults = -1;
static gint ett_lppe_OMA_LPPe_ECID_UTRA_CellMeasuredResultsList = -1;
static gint ett_lppe_OMA_LPPe_ECID_UTRA_CellMeasuredResults = -1;
static gint ett_lppe_T_modeSpecificInfo_05 = -1;
static gint ett_lppe_T_fdd_06 = -1;
static gint ett_lppe_T_tdd_06 = -1;
static gint ett_lppe_OMA_LPPe_ECID_UTRA_RequestLocationInformation = -1;
static gint ett_lppe_T_requestedMeasurements_02 = -1;
static gint ett_lppe_OMA_LPPe_ECID_UTRA_ProvideCapabilities = -1;
static gint ett_lppe_T_ecid_utra_MeasSupported = -1;
static gint ett_lppe_T_ecid_utra_nodeB_ADSupported = -1;
static gint ett_lppe_T_ecid_utra_HNB_ADSupported = -1;
static gint ett_lppe_OMA_LPPe_ECID_UTRA_RequestCapabilities = -1;
static gint ett_lppe_OMA_LPPe_ECID_UTRA_Error = -1;
static gint ett_lppe_OMA_LPPe_ECID_UTRA_LocationServerErrorCauses = -1;
static gint ett_lppe_OMA_LPPe_ECID_UTRA_TargetDeviceErrorCauses = -1;
static gint ett_lppe_OMA_LPPe_WLAN_AP_ProvideAssistanceData = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_maxWLANDataSets_OF_OMA_LPPe_WLAN_DataSet = -1;
static gint ett_lppe_OMA_LPPe_WLAN_DataSet = -1;
static gint ett_lppe_T_plmn_Identity_03 = -1;
static gint ett_lppe_T_mcc_03 = -1;
static gint ett_lppe_T_mnc_03 = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_maxWLANAPs_OF_OMA_LPPe_WLAN_AP_Data = -1;
static gint ett_lppe_Supported_Channels_11a = -1;
static gint ett_lppe_Supported_Channels_11bg = -1;
static gint ett_lppe_OMA_LPPe_WLAN_AP_Data = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_maxWLANTypes_OF_OMA_LPPe_WLAN_AP_Type_Data = -1;
static gint ett_lppe_OMA_LPPe_WLAN_AP_Type_Data = -1;
static gint ett_lppe_OMA_LPPe_WLAN_AP_RequestAssistanceData = -1;
static gint ett_lppe_T_requestedAD_01 = -1;
static gint ett_lppe_OMA_LPPe_WLAN_AP_ProvideLocationInformation = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_maxWLANAPSize_OF_OMA_LPPe_WLAN_AP_LocationInformationList = -1;
static gint ett_lppe_OMA_LPPe_WLAN_AP_LocationInformationList = -1;
static gint ett_lppe_OMA_LPPe_WLAN_AP_LocationInformation = -1;
static gint ett_lppe_OMA_LPPe_WLAN_RTD = -1;
static gint ett_lppe_OMA_LPPe_WLAN_ReportedLocation = -1;
static gint ett_lppe_OMA_LPPe_WLAN_LocationDataLCI = -1;
static gint ett_lppe_OMA_LPPe_WLAN_AP_RequestLocationInformation = -1;
static gint ett_lppe_T_requestedMeasurements_03 = -1;
static gint ett_lppe_T_additionalRequestedMeasurements = -1;
static gint ett_lppe_OMA_LPPe_WLAN_AP_ProvideCapabilities = -1;
static gint ett_lppe_T_wlan_ecid_MeasSupported = -1;
static gint ett_lppe_T_wlan_ap_ADSupported = -1;
static gint ett_lppe_T_additional_wlan_ecid_MeasSupported = -1;
static gint ett_lppe_OMA_LPPe_WLAN_AP_Capability = -1;
static gint ett_lppe_OMA_LPPe_WLAN_AP_RequestCapabilities = -1;
static gint ett_lppe_OMA_LPPe_WLAN_AP_Error = -1;
static gint ett_lppe_OMA_LPPe_WLAN_AP_LocationServerErrorCauses = -1;
static gint ett_lppe_OMA_LPPe_WLAN_AP_TargetDeviceErrorCauses = -1;
static gint ett_lppe_OMA_LPPe_ECID_WiMax_ProvideLocationInformation = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_maxWiMaxECIDSize_OF_OMA_LPPe_ECID_WiMax_LocationInformationList = -1;
static gint ett_lppe_OMA_LPPe_ECID_WiMax_LocationInformationList = -1;
static gint ett_lppe_OMA_LPPe_ECID_WiMax_LocationInformation = -1;
static gint ett_lppe_OMA_LPPe_ECID_WiMax_WimaxBsID = -1;
static gint ett_lppe_OMA_LPPe_ECID_WiMax_WimaxRTD = -1;
static gint ett_lppe_OMA_LPPe_ECID_WiMax_WimaxNMRList = -1;
static gint ett_lppe_OMA_LPPe_ECID_WiMax_WimaxNMR = -1;
static gint ett_lppe_OMA_LPPe_ECID_WiMax_RequestLocationInformation = -1;
static gint ett_lppe_T_requestedMeasurements_04 = -1;
static gint ett_lppe_OMA_LPPe_ECID_WiMax_ProvideCapabilities = -1;
static gint ett_lppe_T_ecid_wimax_MeasSupported = -1;
static gint ett_lppe_OMA_LPPe_ECID_WiMax_RequestCapabilities = -1;
static gint ett_lppe_OMA_LPPe_ECID_WiMax_Error = -1;
static gint ett_lppe_OMA_LPPe_ECID_WiMax_LocationServerErrorCauses = -1;
static gint ett_lppe_OMA_LPPe_ECID_WiMax_TargetDeviceErrorCauses = -1;
static gint ett_lppe_OMA_LPPe_Sensor_ProvideAssistanceData = -1;
static gint ett_lppe_OMA_LPPe_AtmosphericPressureAD = -1;
static gint ett_lppe_T_period = -1;
static gint ett_lppe_T_area = -1;
static gint ett_lppe_OMA_LPPe_PressureValidityArea = -1;
static gint ett_lppe_OMA_LPPe_Sensor_RequestAssistanceData = -1;
static gint ett_lppe_OMA_LPPe_PressureSensorAD = -1;
static gint ett_lppe_OMA_LPPe_Sensor_ProvideLocationInformation = -1;
static gint ett_lppe_OMA_LPPe_Sensor_MotionStateList = -1;
static gint ett_lppe_OMA_LPPe_Sensor_MotionStateElement = -1;
static gint ett_lppe_T_secondaryMotionState = -1;
static gint ett_lppe_OMA_LPPe_AtmosphericPressure = -1;
static gint ett_lppe_PressureStats = -1;
static gint ett_lppe_CalibrationPoints = -1;
static gint ett_lppe_CalibrationPoints_item = -1;
static gint ett_lppe_OMA_LPPe_PressureMeasurement = -1;
static gint ett_lppe_T_uncertainty = -1;
static gint ett_lppe_OMA_LPPe_Sensor_RequestLocationInformation = -1;
static gint ett_lppe_OMA_LPPe_Sensor_MotionStateRequest = -1;
static gint ett_lppe_OMA_LPPe_AtmosphericPressureRequest = -1;
static gint ett_lppe_OMA_LPPe_Sensor_ProvideCapabilities = -1;
static gint ett_lppe_OMA_LPPe_Sensor_RequestCapabilities = -1;
static gint ett_lppe_OMA_LPPe_Sensor_Error = -1;
static gint ett_lppe_OMA_LPPe_Sensor_TargetError = -1;
static gint ett_lppe_OMA_LPPe_SRN_ProvideAssistanceData = -1;
static gint ett_lppe_T_srnGroup = -1;
static gint ett_lppe_OMA_LPPe_SRN_SRNgroupList = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_SRNgroup = -1;
static gint ett_lppe_OMA_LPPe_SRN_SRNgroup = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNinfo = -1;
static gint ett_lppe_OMA_LPPe_SRN_SRNinfo = -1;
static gint ett_lppe_OMA_LPPe_SRN_SRNgroupUpdateResponse = -1;
static gint ett_lppe_OMA_LPPe_SRN_SRNgroupUpdateResponseElement = -1;
static gint ett_lppe_OMA_LPPe_SRN_AntennaPattern = -1;
static gint ett_lppe_OMA_LPPe_SRN_AntennaPatternElement = -1;
static gint ett_lppe_T_identification = -1;
static gint ett_lppe_T_antennaData = -1;
static gint ett_lppe_OMA_LPPe_SRN_AntennaPatternForChannels = -1;
static gint ett_lppe_T_evenGrid = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_maxChannels_OF_OMA_LPPe_SRN_ChannelResponse = -1;
static gint ett_lppe_OMA_LPPe_SRN_ChannelResponse = -1;
static gint ett_lppe_SEQUENCE_SIZE_7_901_OF_OMA_LPPe_SRN_ResponseInElevation = -1;
static gint ett_lppe_OMA_LPPe_SRN_ResponseInElevation = -1;
static gint ett_lppe_SEQUENCE_SIZE_18_3601_OF_OMA_LPPe_SRN_ResponseInAzimuth = -1;
static gint ett_lppe_OMA_LPPe_SRN_ResponseInAzimuth = -1;
static gint ett_lppe_OMA_LPPe_ComplexNumber = -1;
static gint ett_lppe_OMA_LPPe_SRN_RequestAssistanceData = -1;
static gint ett_lppe_T_srnGroup_01 = -1;
static gint ett_lppe_OMA_LPPe_SRN_SRNgroupRequest = -1;
static gint ett_lppe_OMA_LPPe_SRN_SRNProvideList = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_256_OF_OMA_LPPe_SRN_SRNgroupUniqueID = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_Category = -1;
static gint ett_lppe_OMA_LPPe_SRN_SRNgroupUpdateRequest = -1;
static gint ett_lppe_OMA_LPPe_SRN_SRNgroupUpdateRequestElement = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNid = -1;
static gint ett_lppe_OMA_LPPe_SRN_AntennaPatternRequest = -1;
static gint ett_lppe_OMA_LPPe_SRN_AntennaPatternRequestElement = -1;
static gint ett_lppe_T_antennaPatternID = -1;
static gint ett_lppe_OMA_LPPe_SRN_ProvideLocationInformation = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_MeasurementElement = -1;
static gint ett_lppe_OMA_LPPe_SRN_MeasurementElement = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_srnMeasurementElement = -1;
static gint ett_lppe_OMA_LPPe_SRN_srnMeasurementElement = -1;
static gint ett_lppe_OMA_LPPe_SRN_RequestLocationInformation = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ReqLocInfo_Category = -1;
static gint ett_lppe_OMA_LPPe_SRN_ReqLocInfo_Category = -1;
static gint ett_lppe_OMA_LPPe_SRN_ProvideCapabilities = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ProvideCapabilitiesElement = -1;
static gint ett_lppe_OMA_LPPe_SRN_ProvideCapabilitiesElement = -1;
static gint ett_lppe_T_supportedAssistanceData = -1;
static gint ett_lppe_OMA_LPPe_SRN_RequestCapabilities = -1;
static gint ett_lppe_OMA_LPPe_SRN_Error = -1;
static gint ett_lppe_OMA_LPPe_SRN_LocationServerErrorCauses = -1;
static gint ett_lppe_OMA_LPPe_SRN_TargetDeviceErrorCauses = -1;
static gint ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_TargetDeviceError = -1;
static gint ett_lppe_OMA_LPPe_SRN_TargetDeviceError = -1;
static gint ett_lppe_OMA_LPPe_SRN_SRNgroupUniqueID = -1;
static gint ett_lppe_OMA_LPPe_SRN_SRNtype = -1;
static gint ett_lppe_T_srnAntennaInfo = -1;
static gint ett_lppe_OMA_LPPe_SRN_Category = -1;
static gint ett_lppe_T_srnVendorInformation = -1;
static gint ett_lppe_OMA_LPPe_SRN_SRNid = -1;
static gint ett_lppe_T_srn_id = -1;
static gint ett_lppe_T_nfc = -1;
static gint ett_lppe_T_mobileCode = -1;
static gint ett_lppe_OMA_LPPe_SRN_Technologies = -1;
static gint ett_lppe_OMA_LPPe_SRN_MeasurementMask = -1;
static gint ett_lppe_T_srnMeasurements = -1;

/* Include constants */
#define maxAssistanceContainerList     16
#define maxLocationInformationContainerDataList 10
#define maxVendorOrOperatorIDList      32
#define maxLocationInformationContainerList 64
#define maxIPAddress                   5
#define maxRelativeLocation            5
#define maxReferenceStations           8
#define maxFreqLayers                  3
#define utra_maxCellMeas               32
#define maxLTENetworks                 8
#define maxLTEeNBs                     32
#define maxLTEHeNBs                    128
#define maxLTEMacroCells               8
#define maxLTEECIDSize                 64
#define maxGSMNetworks                 8
#define maxGSMBaseStations             32
#define maxGSMCells                    8
#define maxGSMECIDSize                 64
#define maxUTRANetworks                8
#define maxUTRAnodeBs                  32
#define maxUTRAHNBs                    128
#define maxUTRAMacroCells              8
#define maxECIDUTRASize                64
#define maxFreq                        8
#define maxWLANDataSets                8
#define maxWLANAPs                     128
#define maxWLANTypes                   5
#define maxWLANAPSize                  64
#define maxWiMaxECIDSize               1264
#define maxWimaxBSMeas                 32
#define maxChannels                    512




static int
dissect_lppe_OMA_LPPe_LPPeCompatibilityLevel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 15U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_0_255(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 255U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_LPPeVersion_sequence[] = {
  { &hf_lppe_majorVersion   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_255 },
  { &hf_lppe_minorVersion   , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_255 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_LPPeVersion(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_LPPeVersion, OMA_LPPe_LPPeVersion_sequence);

  return offset;
}


static const value_string lppe_OMA_LPPe_LPPeMode_vals[] = {
  {   0, "normal" },
  {   1, "reversed" },
  { 0, NULL }
};


static int
dissect_lppe_OMA_LPPe_LPPeMode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     2, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_IP_Address_RequestCapabilities_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_IP_Address_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_IP_Address_RequestCapabilities, OMA_LPPe_IP_Address_RequestCapabilities_sequence);

  return offset;
}



static int
dissect_lppe_INTEGER_1_1024(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            1U, 1024U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_0_65535(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 65535U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_OMA_LPPe_CharArray(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_restricted_character_string(tvb, offset, actx, tree, hf_index,
                                                      1, 31, FALSE, "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.-", 64,
                                                      NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_NonStandard_VendorOrOperatorID_sequence[] = {
  { &hf_lppe_encodedID      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_65535 },
  { &hf_lppe_visibleIdentification, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_CharArray },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_NonStandard_VendorOrOperatorID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_NonStandard_VendorOrOperatorID, OMA_LPPe_NonStandard_VendorOrOperatorID_sequence);

  return offset;
}


static const value_string lppe_OMA_LPPe_VendorOrOperatorID_vals[] = {
  {   0, "standard-VendorOrOperatorID" },
  {   1, "nonStandard-VendorOrOperatorID" },
  { 0, NULL }
};

static const per_choice_t OMA_LPPe_VendorOrOperatorID_choice[] = {
  {   0, &hf_lppe_standard_VendorOrOperatorID, ASN1_EXTENSION_ROOT    , dissect_lppe_INTEGER_1_1024 },
  {   1, &hf_lppe_nonStandard_VendorOrOperatorID, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_NonStandard_VendorOrOperatorID },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_VendorOrOperatorID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_OMA_LPPe_VendorOrOperatorID, OMA_LPPe_VendorOrOperatorID_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_VendorOrOperatorIDList_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_VendorOrOperatorIDList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorID },
};

static int
dissect_lppe_OMA_LPPe_VendorOrOperatorIDList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_VendorOrOperatorIDList, OMA_LPPe_VendorOrOperatorIDList_sequence_of,
                                                  1, maxVendorOrOperatorIDList, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AssistanceContainerSupportReq_sequence[] = {
  { &hf_lppe_vendorOrOperatorIDList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_VendorOrOperatorIDList },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AssistanceContainerSupportReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AssistanceContainerSupportReq, OMA_LPPe_AssistanceContainerSupportReq_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_LocationInformationContainerSupportReq_sequence[] = {
  { &hf_lppe_vendorOrOperatorIDList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_VendorOrOperatorIDList },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_LocationInformationContainerSupportReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_LocationInformationContainerSupportReq, OMA_LPPe_LocationInformationContainerSupportReq_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_RelativeLocationChange_RequestCapabilities_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_RelativeLocationChange_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_RelativeLocationChange_RequestCapabilities, OMA_LPPe_RelativeLocationChange_RequestCapabilities_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_HighAccuracyFormatCapabilitiesReq_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_HighAccuracyFormatCapabilitiesReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_HighAccuracyFormatCapabilitiesReq, OMA_LPPe_HighAccuracyFormatCapabilitiesReq_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_SegmentedAssistanceData_ReqCapabilities_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SegmentedAssistanceData_ReqCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SegmentedAssistanceData_ReqCapabilities, OMA_LPPe_SegmentedAssistanceData_ReqCapabilities_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_128_OF_OMA_LPPe_VendorOrOperatorID_sequence_of[1] = {
  { &hf_lppe_referencePointProviderSupportListReq_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorID },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_128_OF_OMA_LPPe_VendorOrOperatorID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_128_OF_OMA_LPPe_VendorOrOperatorID, SEQUENCE_SIZE_1_128_OF_OMA_LPPe_VendorOrOperatorID_sequence_of,
                                                  1, 128, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_ReferencePointCapabilitiesReq_sequence[] = {
  { &hf_lppe_referencePointProviderSupportListReq, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_SEQUENCE_SIZE_1_128_OF_OMA_LPPe_VendorOrOperatorID },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ReferencePointCapabilitiesReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ReferencePointCapabilitiesReq, OMA_LPPe_ReferencePointCapabilitiesReq_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_ScheduledLocation_RequestCapabilities_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ScheduledLocation_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ScheduledLocation_RequestCapabilities, OMA_LPPe_ScheduledLocation_RequestCapabilities_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AccessCapabilitiesReq_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AccessCapabilitiesReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AccessCapabilitiesReq, OMA_LPPe_AccessCapabilitiesReq_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_SegmentedLocationInformation_ReqCapabilities_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SegmentedLocationInformation_ReqCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SegmentedLocationInformation_ReqCapabilities, OMA_LPPe_SegmentedLocationInformation_ReqCapabilities_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_CommonIEsRequestCapabilities_sequence[] = {
  { &hf_lppe_iP_Address_RequestCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_IP_Address_RequestCapabilities },
  { &hf_lppe_assistanceContainerSupportReq, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AssistanceContainerSupportReq },
  { &hf_lppe_locationInformationContainerSupportReq, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_LocationInformationContainerSupportReq },
  { &hf_lppe_relativeLocationChange_RequestCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_RelativeLocationChange_RequestCapabilities },
  { &hf_lppe_highAccuracyFormatCapabilitiesReq, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_HighAccuracyFormatCapabilitiesReq },
  { &hf_lppe_segmentedAssistanceData_ReqCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_SegmentedAssistanceData_ReqCapabilities },
  { &hf_lppe_referencePointCapabilitiesReq, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ReferencePointCapabilitiesReq },
  { &hf_lppe_scheduledLocation_RequestCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ScheduledLocation_RequestCapabilities },
  { &hf_lppe_accessCapabilitiesReq, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AccessCapabilitiesReq },
  { &hf_lppe_segmentedLocationInformation_ReqCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_SegmentedLocationInformation_ReqCapabilities },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_CommonIEsRequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_CommonIEsRequestCapabilities, OMA_LPPe_CommonIEsRequestCapabilities_sequence);

  return offset;
}



static int
dissect_lppe_NULL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_null(tvb, offset, actx, tree, hf_index);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_RequestCapabilities_sequence[] = {
  { &hf_lppe_assistanceDataSupportListReq, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_environmentObservationSupportListReq, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_haGNSSsupportReq, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_RequestCapabilities, OMA_LPPe_AGNSS_RequestCapabilities_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_RequestCapabilities_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_RequestCapabilities, OMA_LPPe_OTDOA_RequestCapabilities_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_EOTD_RequestCapabilities_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_EOTD_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_EOTD_RequestCapabilities, OMA_LPPe_EOTD_RequestCapabilities_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_UTRA_RequestCapabilities_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_UTRA_RequestCapabilities, OMA_LPPe_OTDOA_UTRA_RequestCapabilities_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_LTE_RequestCapabilities_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_LTE_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_LTE_RequestCapabilities, OMA_LPPe_ECID_LTE_RequestCapabilities_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_GSM_RequestCapabilities_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_GSM_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_GSM_RequestCapabilities, OMA_LPPe_ECID_GSM_RequestCapabilities_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_UTRA_RequestCapabilities_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_UTRA_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_UTRA_RequestCapabilities, OMA_LPPe_ECID_UTRA_RequestCapabilities_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_WLAN_AP_RequestCapabilities_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_WLAN_AP_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_WLAN_AP_RequestCapabilities, OMA_LPPe_WLAN_AP_RequestCapabilities_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_WiMax_RequestCapabilities_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_WiMax_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_WiMax_RequestCapabilities, OMA_LPPe_ECID_WiMax_RequestCapabilities_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_Sensor_RequestCapabilities_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_Sensor_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_Sensor_RequestCapabilities, OMA_LPPe_Sensor_RequestCapabilities_sequence);

  return offset;
}


static const value_string lppe_T_srnTechnologies_vals[] = {
  {   0, "bt" },
  {   1, "btle" },
  {   2, "nfc" },
  {   3, "mobileCode" },
  {   4, "other" },
  { 0, NULL }
};


static int
dissect_lppe_T_srnTechnologies(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     5, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_Technologies_sequence[] = {
  { &hf_lppe_srnTechnologies, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_srnTechnologies },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_Technologies(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_Technologies, OMA_LPPe_SRN_Technologies_sequence);

  return offset;
}



static int
dissect_lppe_OCTET_STRING(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
                                       NO_BOUND, NO_BOUND, FALSE, NULL);

  return offset;
}


static const per_sequence_t T_srnVendorInformation_sequence[] = {
  { &hf_lppe_vendor         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorID },
  { &hf_lppe_vendorInfo     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OCTET_STRING },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_srnVendorInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_srnVendorInformation, T_srnVendorInformation_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_Category_sequence[] = {
  { &hf_lppe_srnTechnologyType, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_Technologies },
  { &hf_lppe_srnVendorInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_srnVendorInformation },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_Category(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_Category, OMA_LPPe_SRN_Category_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_Category_sequence_of[1] = {
  { &hf_lppe_categoryList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_Category },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_Category(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_Category, SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_Category_sequence_of,
                                                  1, 16, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_RequestCapabilities_sequence[] = {
  { &hf_lppe_capabilitiesRequestedFor, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_Category },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_RequestCapabilities, OMA_LPPe_SRN_RequestCapabilities_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_RequestCapabilities_sequence[] = {
  { &hf_lppe_commonIEsRequestCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_CommonIEsRequestCapabilities },
  { &hf_lppe_agnss_RequestCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_RequestCapabilities },
  { &hf_lppe_otdoa_RequestCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_RequestCapabilities },
  { &hf_lppe_eotd_RequestCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_EOTD_RequestCapabilities },
  { &hf_lppe_otdoa_utra_RequestCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_UTRA_RequestCapabilities },
  { &hf_lppe_ecid_lte_RequestCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_LTE_RequestCapabilities },
  { &hf_lppe_ecid_gsm_RequestCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_GSM_RequestCapabilities },
  { &hf_lppe_ecid_utra_RequestCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_UTRA_RequestCapabilities },
  { &hf_lppe_wlan_ap_RequestCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_WLAN_AP_RequestCapabilities },
  { &hf_lppe_ecid_wimax_RequestCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_WiMax_RequestCapabilities },
  { &hf_lppe_sensor_RequestCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_Sensor_RequestCapabilities },
  { &hf_lppe_srn_RequestCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_SRN_RequestCapabilities },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_RequestCapabilities, OMA_LPPe_RequestCapabilities_sequence);

  return offset;
}


static int * const T_iP_Address_support_bits[] = {
  &hf_lppe_T_iP_Address_support_iPv4,
  &hf_lppe_T_iP_Address_support_iPv6,
  &hf_lppe_T_iP_Address_support_nat,
  NULL
};

static int
dissect_lppe_T_iP_Address_support(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 8, FALSE, T_iP_Address_support_bits, 3, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_IP_Address_Capabilities_sequence[] = {
  { &hf_lppe_iP_Address_support, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_iP_Address_support },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_IP_Address_Capabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_IP_Address_Capabilities, OMA_LPPe_IP_Address_Capabilities_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AssistanceContainerID_sequence[] = {
  { &hf_lppe_containerID    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_65535 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AssistanceContainerID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AssistanceContainerID, OMA_LPPe_AssistanceContainerID_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AssistanceContainerList_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_AssistanceContainerList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AssistanceContainerID },
};

static int
dissect_lppe_OMA_LPPe_AssistanceContainerList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_AssistanceContainerList, OMA_LPPe_AssistanceContainerList_sequence_of,
                                                  1, maxAssistanceContainerList, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_VendorOrOperatorAssistanceContainerList_sequence[] = {
  { &hf_lppe_vendorOrOperatorID, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorID },
  { &hf_lppe_assistanceContainerList, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AssistanceContainerList },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_VendorOrOperatorAssistanceContainerList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_VendorOrOperatorAssistanceContainerList, OMA_LPPe_VendorOrOperatorAssistanceContainerList_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AssistanceContainerSupport_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_AssistanceContainerSupport_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorAssistanceContainerList },
};

static int
dissect_lppe_OMA_LPPe_AssistanceContainerSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_AssistanceContainerSupport, OMA_LPPe_AssistanceContainerSupport_sequence_of,
                                                  1, maxVendorOrOperatorIDList, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_LocationInformationContainerID_sequence[] = {
  { &hf_lppe_containerID    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_65535 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_LocationInformationContainerID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_LocationInformationContainerID, OMA_LPPe_LocationInformationContainerID_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_LocationInformationContainerList_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_LocationInformationContainerList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_LocationInformationContainerID },
};

static int
dissect_lppe_OMA_LPPe_LocationInformationContainerList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_LocationInformationContainerList, OMA_LPPe_LocationInformationContainerList_sequence_of,
                                                  1, maxLocationInformationContainerList, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_VendorOrOperatorLocationInformationContainerList_sequence[] = {
  { &hf_lppe_vendorOrOperatorID, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorID },
  { &hf_lppe_locationInformationContainerList, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_LocationInformationContainerList },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_VendorOrOperatorLocationInformationContainerList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_VendorOrOperatorLocationInformationContainerList, OMA_LPPe_VendorOrOperatorLocationInformationContainerList_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_LocationInformationContainerSupport_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_LocationInformationContainerSupport_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorLocationInformationContainerList },
};

static int
dissect_lppe_OMA_LPPe_LocationInformationContainerSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_LocationInformationContainerSupport, OMA_LPPe_LocationInformationContainerSupport_sequence_of,
                                                  1, maxVendorOrOperatorIDList, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_1_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            1U, 5U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_RelativeLocationChange_Capabilities_sequence[] = {
  { &hf_lppe_numberOfChanges, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_1_5 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_RelativeLocationChange_Capabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_RelativeLocationChange_Capabilities, OMA_LPPe_RelativeLocationChange_Capabilities_sequence);

  return offset;
}


static int * const OMA_LPPe_HighAccuracyFormatCapabilities_bits[] = {
  &hf_lppe_OMA_LPPe_HighAccuracyFormatCapabilities_hAposition,
  &hf_lppe_OMA_LPPe_HighAccuracyFormatCapabilities_hAvelocity,
  &hf_lppe_OMA_LPPe_HighAccuracyFormatCapabilities_pidf_lo,
  NULL
};

static int
dissect_lppe_OMA_LPPe_HighAccuracyFormatCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 8, FALSE, OMA_LPPe_HighAccuracyFormatCapabilities_bits, 3, NULL, NULL);

  return offset;
}



static int
dissect_lppe_INTEGER_2_4096(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            2U, 4096U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_1_5000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            1U, 5000U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_SegmentedAssistanceData_ProvideCapabs_sequence[] = {
  { &hf_lppe_maxSegments    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_2_4096 },
  { &hf_lppe_maxSize        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_1_5000 },
  { &hf_lppe_minSize        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_1_5000 },
  { &hf_lppe_resume         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SegmentedAssistanceData_ProvideCapabs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SegmentedAssistanceData_ProvideCapabs, OMA_LPPe_SegmentedAssistanceData_ProvideCapabs_sequence);

  return offset;
}


static int * const T_relativeLocationReportingSupport_bits[] = {
  &hf_lppe_T_relativeLocationReportingSupport_geo,
  &hf_lppe_T_relativeLocationReportingSupport_civic,
  &hf_lppe_T_relativeLocationReportingSupport_otherProviders,
  NULL
};

static int
dissect_lppe_T_relativeLocationReportingSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 8, FALSE, T_relativeLocationReportingSupport_bits, 3, NULL, NULL);

  return offset;
}


static const per_sequence_t T_mapDataSupport_sequence[] = {
  { &hf_lppe_mapDataFormat  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OCTET_STRING },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_mapDataSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_mapDataSupport, T_mapDataSupport_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_ReferencePointProviderSupportElement_sequence[] = {
  { &hf_lppe_referencePointProvider, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorID },
  { &hf_lppe_mapDataSupport , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_mapDataSupport },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ReferencePointProviderSupportElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ReferencePointProviderSupportElement, OMA_LPPe_ReferencePointProviderSupportElement_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_128_OF_OMA_LPPe_ReferencePointProviderSupportElement_sequence_of[1] = {
  { &hf_lppe_referencePointProviderSupportList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ReferencePointProviderSupportElement },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_128_OF_OMA_LPPe_ReferencePointProviderSupportElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_128_OF_OMA_LPPe_ReferencePointProviderSupportElement, SEQUENCE_SIZE_1_128_OF_OMA_LPPe_ReferencePointProviderSupportElement_sequence_of,
                                                  1, 128, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_ReferencePointCapabilities_sequence[] = {
  { &hf_lppe_relativeLocationReportingSupport, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_relativeLocationReportingSupport },
  { &hf_lppe_referencePointProviderSupportList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_SEQUENCE_SIZE_1_128_OF_OMA_LPPe_ReferencePointProviderSupportElement },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ReferencePointCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ReferencePointCapabilities, OMA_LPPe_ReferencePointCapabilities_sequence);

  return offset;
}


static const value_string lppe_T_networkTimeReference_vals[] = {
  {   0, "serving" },
  {   1, "servingOrNonServing" },
  { 0, NULL }
};


static int
dissect_lppe_T_networkTimeReference(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     2, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_ScheduledLocation_Capabilities_sequence[] = {
  { &hf_lppe_minimumWindow  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_1_1024 },
  { &hf_lppe_gnssTimeReference, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lpp_GNSS_ID_Bitmap },
  { &hf_lppe_networkTimeReference, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_networkTimeReference },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ScheduledLocation_Capabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ScheduledLocation_Capabilities, OMA_LPPe_ScheduledLocation_Capabilities_sequence);

  return offset;
}


static int * const OMA_LPPe_FixedAccessTypes_bits[] = {
  &hf_lppe_OMA_LPPe_FixedAccessTypes_cable,
  &hf_lppe_OMA_LPPe_FixedAccessTypes_dsl,
  &hf_lppe_OMA_LPPe_FixedAccessTypes_lan,
  &hf_lppe_OMA_LPPe_FixedAccessTypes_pstn,
  &hf_lppe_OMA_LPPe_FixedAccessTypes_other,
  NULL
};

static int
dissect_lppe_OMA_LPPe_FixedAccessTypes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 16, FALSE, OMA_LPPe_FixedAccessTypes_bits, 5, NULL, NULL);

  return offset;
}


static int * const OMA_LPPe_WirelessAccessTypes_bits[] = {
  &hf_lppe_OMA_LPPe_WirelessAccessTypes_gsm,
  &hf_lppe_OMA_LPPe_WirelessAccessTypes_utra,
  &hf_lppe_OMA_LPPe_WirelessAccessTypes_lte,
  &hf_lppe_OMA_LPPe_WirelessAccessTypes_wimax,
  &hf_lppe_OMA_LPPe_WirelessAccessTypes_wifi,
  &hf_lppe_OMA_LPPe_WirelessAccessTypes_other,
  &hf_lppe_OMA_LPPe_WirelessAccessTypes_nr,
  NULL
};

static int
dissect_lppe_OMA_LPPe_WirelessAccessTypes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 16, FALSE, OMA_LPPe_WirelessAccessTypes_bits, 7, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_AccessCapabilities_sequence[] = {
  { &hf_lppe_accessTypeUnknown, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_fixedAccessTypes, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_FixedAccessTypes },
  { &hf_lppe_wirelessAccessTypes, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_WirelessAccessTypes },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AccessCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AccessCapabilities, OMA_LPPe_AccessCapabilities_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_SegmentedLocationInformation_ProvideCapabs_sequence[] = {
  { &hf_lppe_maxSegments    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_2_4096 },
  { &hf_lppe_maxSize        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_1_5000 },
  { &hf_lppe_minSize        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_1_5000 },
  { &hf_lppe_resume         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SegmentedLocationInformation_ProvideCapabs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SegmentedLocationInformation_ProvideCapabs, OMA_LPPe_SegmentedLocationInformation_ProvideCapabs_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_CommonIEsProvideCapabilities_sequence[] = {
  { &hf_lppe_iP_Address_Capabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_IP_Address_Capabilities },
  { &hf_lppe_assistanceContainerSupport, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AssistanceContainerSupport },
  { &hf_lppe_locationInformationContainerSupport, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_LocationInformationContainerSupport },
  { &hf_lppe_relativeLocationChange_Capabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_RelativeLocationChange_Capabilities },
  { &hf_lppe_highAccuracyFormatCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_HighAccuracyFormatCapabilities },
  { &hf_lppe_segmentedAssistanceData_ProvideCapabs, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_SegmentedAssistanceData_ProvideCapabs },
  { &hf_lppe_referencePointCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ReferencePointCapabilities },
  { &hf_lppe_scheduledLocation_Capabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ScheduledLocation_Capabilities },
  { &hf_lppe_accessCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AccessCapabilities },
  { &hf_lppe_segmentedLocationInformation_ProvideCapabs, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_SegmentedLocationInformation_ProvideCapabs },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_CommonIEsProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_CommonIEsProvideCapabilities, OMA_LPPe_CommonIEsProvideCapabilities_sequence);

  return offset;
}


static int * const T_ionoModel_bits[] = {
  &hf_lppe_T_ionoModel_localKlobuchar,
  &hf_lppe_T_ionoModel_ionoStormWarning,
  &hf_lppe_T_ionoModel_wideAreaIonoSurface,
  NULL
};

static int
dissect_lppe_T_ionoModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 8, FALSE, T_ionoModel_bits, 3, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_IonosphericModelSupport_sequence[] = {
  { &hf_lppe_ionoModel      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_ionoModel },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_IonosphericModelSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_IonosphericModelSupport, OMA_LPPe_AGNSS_IonosphericModelSupport_sequence);

  return offset;
}


static int * const T_tropoModel_bits[] = {
  &hf_lppe_T_tropoModel_localTroposphereDelay,
  &hf_lppe_T_tropoModel_surfaceParameters,
  NULL
};

static int
dissect_lppe_T_tropoModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 8, FALSE, T_tropoModel_bits, 2, NULL, NULL);

  return offset;
}



static int
dissect_lppe_BOOLEAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_boolean(tvb, offset, actx, tree, hf_index, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_TroposphereModelSupport_sequence[] = {
  { &hf_lppe_tropoModel     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_tropoModel },
  { &hf_lppe_supportForMultipleGridPoints, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_TroposphereModelSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_TroposphereModelSupport, OMA_LPPe_AGNSS_TroposphereModelSupport_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_AltitudeAssistanceSupport_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceSupport, OMA_LPPe_AGNSS_AltitudeAssistanceSupport_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_SolarRadiationSupport_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_SolarRadiationSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_SolarRadiationSupport, OMA_LPPe_AGNSS_SolarRadiationSupport_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_CCPsupport_sequence[] = {
  { &hf_lppe_supportAreaAssistanceSupported, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_multiReferenceStationSupported, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_CCPsupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_CCPsupport, OMA_LPPe_AGNSS_CCPsupport_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_CommonAssistanceDataSupport_sequence[] = {
  { &hf_lppe_ionosphericModelSupport, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_IonosphericModelSupport },
  { &hf_lppe_troposphereModelSupport, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_TroposphereModelSupport },
  { &hf_lppe_altitudeAssistanceSupport, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceSupport },
  { &hf_lppe_solarRadiationSupport, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_SolarRadiationSupport },
  { &hf_lppe_ccpSupport     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_CCPsupport },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_CommonAssistanceDataSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_CommonAssistanceDataSupport, OMA_LPPe_AGNSS_CommonAssistanceDataSupport_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_MechanicsSupport_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_MechanicsSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_MechanicsSupport, OMA_LPPe_AGNSS_MechanicsSupport_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_DCBsupport_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_DCBsupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_DCBsupport, OMA_LPPe_AGNSS_DCBsupport_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_NavModelAccuracyModelDegradationSupport_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_NavModelAccuracyModelDegradationSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_NavModelAccuracyModelDegradationSupport, OMA_LPPe_AGNSS_NavModelAccuracyModelDegradationSupport_sequence);

  return offset;
}



static int
dissect_lppe_INTEGER_1_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            1U, 8U, NULL, FALSE);

  return offset;
}


static const per_sequence_t T_navModelSupport_sequence_of[1] = {
  { &hf_lppe_navModelSupport_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_8 },
};

static int
dissect_lppe_T_navModelSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_T_navModelSupport, T_navModelSupport_sequence_of,
                                                  1, 8, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_NavModelSupport_sequence[] = {
  { &hf_lppe_navModelSupport_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_navModelSupport },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_NavModelSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_NavModelSupport, OMA_LPPe_AGNSS_NavModelSupport_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_GenericAssistDataSupportElement_sequence[] = {
  { &hf_lppe_gnss_ID        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_ID },
  { &hf_lppe_mechnanicsSupport, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_MechanicsSupport },
  { &hf_lppe_dcbSupport     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_DCBsupport },
  { &hf_lppe_navModelAccuracyModelDegradationSupport, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_NavModelAccuracyModelDegradationSupport },
  { &hf_lppe_ccpAssistanceSuppport, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lpp_GNSS_SignalIDs },
  { &hf_lppe_navModelSupport, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_NavModelSupport },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_GenericAssistDataSupportElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_GenericAssistDataSupportElement, OMA_LPPe_AGNSS_GenericAssistDataSupportElement_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_GenericAssistanceDataSupport_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataSupport_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_GenericAssistDataSupportElement },
};

static int
dissect_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataSupport, OMA_LPPe_AGNSS_GenericAssistanceDataSupport_sequence_of,
                                                  1, 16, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_AssistanceDataSupportList_sequence[] = {
  { &hf_lppe_commonAssistanceDataSupport, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_CommonAssistanceDataSupport },
  { &hf_lppe_genericAssistanceDataSupport, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataSupport },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_AssistanceDataSupportList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_AssistanceDataSupportList, OMA_LPPe_AGNSS_AssistanceDataSupportList_sequence);

  return offset;
}


static int * const T_ionosphereMeasurementSupport_bits[] = {
  &hf_lppe_T_ionosphereMeasurementSupport_tecPerSVsupport,
  &hf_lppe_T_ionosphereMeasurementSupport_zenithTecSupport,
  NULL
};

static int
dissect_lppe_T_ionosphereMeasurementSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 8, FALSE, T_ionosphereMeasurementSupport_bits, 2, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_EnvironmentObservationSupportList_sequence[] = {
  { &hf_lppe_ionosphereMeasurementSupport, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_ionosphereMeasurementSupport },
  { &hf_lppe_pressureMeasurementSupported, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_temperatureMeasurementSupported, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_EnvironmentObservationSupportList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_EnvironmentObservationSupportList, OMA_LPPe_AGNSS_EnvironmentObservationSupportList_sequence);

  return offset;
}


static int * const T_modeSupport_bits[] = {
  &hf_lppe_T_modeSupport_ueBased,
  &hf_lppe_T_modeSupport_ueAssisted,
  NULL
};

static int
dissect_lppe_T_modeSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     2, 2, FALSE, T_modeSupport_bits, 2, NULL, NULL);

  return offset;
}


static int * const T_haGNSSantennaInformationSupport_bits[] = {
  &hf_lppe_T_haGNSSantennaInformationSupport_antennaDescriptionSupported,
  &hf_lppe_T_haGNSSantennaInformationSupport_antennaOrientationSupported,
  NULL
};

static int
dissect_lppe_T_haGNSSantennaInformationSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     8, 8, FALSE, T_haGNSSantennaInformationSupport_bits, 2, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_HAgnssPerGNSSsupport_sequence[] = {
  { &hf_lppe_gnss_ID        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_ID },
  { &hf_lppe_haGNSSsignalSupport, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SignalIDs },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_HAgnssPerGNSSsupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_HAgnssPerGNSSsupport, OMA_LPPe_AGNSS_HAgnssPerGNSSsupport_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_HAgnssPerGNSSsupport_sequence_of[1] = {
  { &hf_lppe_haGNSSperGNSSsupport_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_HAgnssPerGNSSsupport },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_HAgnssPerGNSSsupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_HAgnssPerGNSSsupport, SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_HAgnssPerGNSSsupport_sequence_of,
                                                  1, 8, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_HAgnssSupport_sequence[] = {
  { &hf_lppe_modeSupport    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_modeSupport },
  { &hf_lppe_haGNSSpressureInformationSupport, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_haGNSSantennaInformationSupport, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_haGNSSantennaInformationSupport },
  { &hf_lppe_haGNSSperGNSSsupport, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_HAgnssPerGNSSsupport },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_HAgnssSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_HAgnssSupport, OMA_LPPe_AGNSS_HAgnssSupport_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_ProvideCapabilities_sequence[] = {
  { &hf_lppe_assistanceDataSupportList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_AssistanceDataSupportList },
  { &hf_lppe_environmentObservationSupportList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_EnvironmentObservationSupportList },
  { &hf_lppe_haGNSSsupport  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_HAgnssSupport },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_ProvideCapabilities, OMA_LPPe_AGNSS_ProvideCapabilities_sequence);

  return offset;
}


static const per_sequence_t T_eNodeB_AD_sup_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_T_eNodeB_AD_sup(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_eNodeB_AD_sup, T_eNodeB_AD_sup_sequence);

  return offset;
}


static const per_sequence_t T_home_eNodeB_AD_sup_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_T_home_eNodeB_AD_sup(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_home_eNodeB_AD_sup, T_home_eNodeB_AD_sup_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_ProvideCapabilities_sequence[] = {
  { &hf_lppe_eNodeB_AD_sup  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_eNodeB_AD_sup },
  { &hf_lppe_home_eNodeB_AD_sup, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_home_eNodeB_AD_sup },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_ProvideCapabilities, OMA_LPPe_OTDOA_ProvideCapabilities_sequence);

  return offset;
}


static int * const T_eotdSupport_bits[] = {
  &hf_lppe_T_eotdSupport_ueBased,
  &hf_lppe_T_eotdSupport_ueAssisted,
  NULL
};

static int
dissect_lppe_T_eotdSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     NO_BOUND, NO_BOUND, FALSE, T_eotdSupport_bits, 2, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_EOTD_ProvideCapabilities_sequence[] = {
  { &hf_lppe_eotdSupport    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_eotdSupport },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_EOTD_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_EOTD_ProvideCapabilities, OMA_LPPe_EOTD_ProvideCapabilities_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_UTRA_ProvideCapabilities_sequence[] = {
  { &hf_lppe_ueBasedSupported, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_ueAssistedSupported, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_ipdlSupported  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_UTRA_ProvideCapabilities, OMA_LPPe_OTDOA_UTRA_ProvideCapabilities_sequence);

  return offset;
}


static int * const T_ecid_lte_MeasSupported_bits[] = {
  &hf_lppe_T_ecid_lte_MeasSupported_rsrp,
  &hf_lppe_T_ecid_lte_MeasSupported_rsrq,
  &hf_lppe_T_ecid_lte_MeasSupported_ueRxTx,
  &hf_lppe_T_ecid_lte_MeasSupported_non_serving,
  &hf_lppe_T_ecid_lte_MeasSupported_historic,
  NULL
};

static int
dissect_lppe_T_ecid_lte_MeasSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 8, FALSE, T_ecid_lte_MeasSupported_bits, 5, NULL, NULL);

  return offset;
}


static int * const T_ecid_lte_eNodeB_ADSupported_bits[] = {
  &hf_lppe_T_ecid_lte_eNodeB_ADSupported_bslist,
  &hf_lppe_T_ecid_lte_eNodeB_ADSupported_bslocation,
  &hf_lppe_T_ecid_lte_eNodeB_ADSupported_transmit_power,
  &hf_lppe_T_ecid_lte_eNodeB_ADSupported_antennaPortConfig,
  &hf_lppe_T_ecid_lte_eNodeB_ADSupported_antenna_gain,
  &hf_lppe_T_ecid_lte_eNodeB_ADSupported_beam_width,
  &hf_lppe_T_ecid_lte_eNodeB_ADSupported_transmit_direction,
  &hf_lppe_T_ecid_lte_eNodeB_ADSupported_frequency_accuracy,
  &hf_lppe_T_ecid_lte_eNodeB_ADSupported_non_serving,
  NULL
};

static int
dissect_lppe_T_ecid_lte_eNodeB_ADSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 16, FALSE, T_ecid_lte_eNodeB_ADSupported_bits, 9, NULL, NULL);

  return offset;
}


static int * const T_ecid_utra_HeNB_ADSupported_bits[] = {
  &hf_lppe_T_ecid_utra_HeNB_ADSupported_bslist,
  &hf_lppe_T_ecid_utra_HeNB_ADSupported_bslocation,
  &hf_lppe_T_ecid_utra_HeNB_ADSupported_locationreliability,
  &hf_lppe_T_ecid_utra_HeNB_ADSupported_transmit_power,
  &hf_lppe_T_ecid_utra_HeNB_ADSupported_antennaPortConfig,
  &hf_lppe_T_ecid_utra_HeNB_ADSupported_frequency_accuracy,
  &hf_lppe_T_ecid_utra_HeNB_ADSupported_coveragearea,
  &hf_lppe_T_ecid_utra_HeNB_ADSupported_non_serving,
  NULL
};

static int
dissect_lppe_T_ecid_utra_HeNB_ADSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 16, FALSE, T_ecid_utra_HeNB_ADSupported_bits, 8, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_LTE_ProvideCapabilities_sequence[] = {
  { &hf_lppe_ecid_lte_MeasSupported, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_ecid_lte_MeasSupported },
  { &hf_lppe_ecid_lte_eNodeB_ADSupported, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_ecid_lte_eNodeB_ADSupported },
  { &hf_lppe_ecid_utra_HeNB_ADSupported, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_ecid_utra_HeNB_ADSupported },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_LTE_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_LTE_ProvideCapabilities, OMA_LPPe_ECID_LTE_ProvideCapabilities_sequence);

  return offset;
}


static int * const T_ecid_gsm_MeasSupported_bits[] = {
  &hf_lppe_T_ecid_gsm_MeasSupported_rxLevel,
  &hf_lppe_T_ecid_gsm_MeasSupported_tA,
  &hf_lppe_T_ecid_gsm_MeasSupported_nMR_GERAN,
  &hf_lppe_T_ecid_gsm_MeasSupported_non_serving,
  &hf_lppe_T_ecid_gsm_MeasSupported_historic,
  NULL
};

static int
dissect_lppe_T_ecid_gsm_MeasSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 8, FALSE, T_ecid_gsm_MeasSupported_bits, 5, NULL, NULL);

  return offset;
}


static int * const T_ecid_gsm_ADSupported_bits[] = {
  &hf_lppe_T_ecid_gsm_ADSupported_bslist,
  &hf_lppe_T_ecid_gsm_ADSupported_bslocation,
  &hf_lppe_T_ecid_gsm_ADSupported_transmit_power,
  &hf_lppe_T_ecid_gsm_ADSupported_antenna_gain,
  &hf_lppe_T_ecid_gsm_ADSupported_beam_width,
  &hf_lppe_T_ecid_gsm_ADSupported_transmit_direction,
  &hf_lppe_T_ecid_gsm_ADSupported_frequency_accuracy,
  &hf_lppe_T_ecid_gsm_ADSupported_non_serving,
  NULL
};

static int
dissect_lppe_T_ecid_gsm_ADSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 16, FALSE, T_ecid_gsm_ADSupported_bits, 8, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_GSM_ProvideCapabilities_sequence[] = {
  { &hf_lppe_ecid_gsm_MeasSupported, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_ecid_gsm_MeasSupported },
  { &hf_lppe_ecid_gsm_ADSupported, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_ecid_gsm_ADSupported },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_GSM_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_GSM_ProvideCapabilities, OMA_LPPe_ECID_GSM_ProvideCapabilities_sequence);

  return offset;
}


static int * const T_ecid_utra_MeasSupported_bits[] = {
  &hf_lppe_T_ecid_utra_MeasSupported_measuredResultsList,
  &hf_lppe_T_ecid_utra_MeasSupported_tdd_timingAdvance,
  &hf_lppe_T_ecid_utra_MeasSupported_mRL_utra_CarrierRSSI,
  &hf_lppe_T_ecid_utra_MeasSupported_mRL_FDD_cpich_Ec_N0,
  &hf_lppe_T_ecid_utra_MeasSupported_mRL_FDD_cpich_RSCP,
  &hf_lppe_T_ecid_utra_MeasSupported_mRL_FDD_pathloss,
  &hf_lppe_T_ecid_utra_MeasSupported_mRL_TDD_primaryCCPCH_RSCP,
  &hf_lppe_T_ecid_utra_MeasSupported_mRL_TDD_pathloss,
  &hf_lppe_T_ecid_utra_MeasSupported_non_serving,
  &hf_lppe_T_ecid_utra_MeasSupported_historic,
  NULL
};

static int
dissect_lppe_T_ecid_utra_MeasSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 16, FALSE, T_ecid_utra_MeasSupported_bits, 10, NULL, NULL);

  return offset;
}


static int * const T_ecid_utra_nodeB_ADSupported_bits[] = {
  &hf_lppe_T_ecid_utra_nodeB_ADSupported_bslist,
  &hf_lppe_T_ecid_utra_nodeB_ADSupported_bslocation,
  &hf_lppe_T_ecid_utra_nodeB_ADSupported_transmit_power,
  &hf_lppe_T_ecid_utra_nodeB_ADSupported_antenna_gain,
  &hf_lppe_T_ecid_utra_nodeB_ADSupported_beam_width,
  &hf_lppe_T_ecid_utra_nodeB_ADSupported_transmit_direction,
  &hf_lppe_T_ecid_utra_nodeB_ADSupported_frequency_accuracy,
  &hf_lppe_T_ecid_utra_nodeB_ADSupported_non_serving,
  NULL
};

static int
dissect_lppe_T_ecid_utra_nodeB_ADSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 16, FALSE, T_ecid_utra_nodeB_ADSupported_bits, 8, NULL, NULL);

  return offset;
}


static int * const T_ecid_utra_HNB_ADSupported_bits[] = {
  &hf_lppe_T_ecid_utra_HNB_ADSupported_bslist,
  &hf_lppe_T_ecid_utra_HNB_ADSupported_bslocation,
  &hf_lppe_T_ecid_utra_HNB_ADSupported_locationreliability,
  &hf_lppe_T_ecid_utra_HNB_ADSupported_transmit_power,
  &hf_lppe_T_ecid_utra_HNB_ADSupported_frequency_accuracy,
  &hf_lppe_T_ecid_utra_HNB_ADSupported_coveragearea,
  &hf_lppe_T_ecid_utra_HNB_ADSupported_non_serving,
  NULL
};

static int
dissect_lppe_T_ecid_utra_HNB_ADSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 16, FALSE, T_ecid_utra_HNB_ADSupported_bits, 7, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_UTRA_ProvideCapabilities_sequence[] = {
  { &hf_lppe_ecid_utra_MeasSupported, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_ecid_utra_MeasSupported },
  { &hf_lppe_ecid_utra_nodeB_ADSupported, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_ecid_utra_nodeB_ADSupported },
  { &hf_lppe_ecid_utra_HNB_ADSupported, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_ecid_utra_HNB_ADSupported },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_UTRA_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_UTRA_ProvideCapabilities, OMA_LPPe_ECID_UTRA_ProvideCapabilities_sequence);

  return offset;
}


static int * const T_wlan_ecid_MeasSupported_bits[] = {
  &hf_lppe_T_wlan_ecid_MeasSupported_apSSID,
  &hf_lppe_T_wlan_ecid_MeasSupported_apSN,
  &hf_lppe_T_wlan_ecid_MeasSupported_apDevType,
  &hf_lppe_T_wlan_ecid_MeasSupported_apPhyType,
  &hf_lppe_T_wlan_ecid_MeasSupported_apRSSI,
  &hf_lppe_T_wlan_ecid_MeasSupported_apChanFreq,
  &hf_lppe_T_wlan_ecid_MeasSupported_apRTD,
  &hf_lppe_T_wlan_ecid_MeasSupported_ueTP,
  &hf_lppe_T_wlan_ecid_MeasSupported_ueAG,
  &hf_lppe_T_wlan_ecid_MeasSupported_apRepLoc,
  &hf_lppe_T_wlan_ecid_MeasSupported_non_serving,
  &hf_lppe_T_wlan_ecid_MeasSupported_historic,
  &hf_lppe_T_wlan_ecid_MeasSupported_apTP,
  &hf_lppe_T_wlan_ecid_MeasSupported_apAG,
  &hf_lppe_T_wlan_ecid_MeasSupported_ueSN,
  &hf_lppe_T_wlan_ecid_MeasSupported_ueRSSI,
  NULL
};

static int
dissect_lppe_T_wlan_ecid_MeasSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 16, FALSE, T_wlan_ecid_MeasSupported_bits, 16, NULL, NULL);

  return offset;
}


static int * const OMA_LPPe_WLAN_AP_Type_List_bits[] = {
  &hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11a,
  &hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11b,
  &hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11g,
  &hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11n,
  &hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11ac,
  &hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11ad,
  NULL
};

static int
dissect_lppe_OMA_LPPe_WLAN_AP_Type_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 16, FALSE, OMA_LPPe_WLAN_AP_Type_List_bits, 6, NULL, NULL);

  return offset;
}



static int
dissect_lppe_BIT_STRING_SIZE_48(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     48, 48, FALSE, NULL, 0, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_WLAN_AP_ID_sequence[] = {
  { &hf_lppe_apMacAddress   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_48 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_WLAN_AP_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_WLAN_AP_ID, OMA_LPPe_WLAN_AP_ID_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_WLAN_AP_Capability_sequence[] = {
  { &hf_lppe_apMACAddress   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_WLAN_AP_ID },
  { &hf_lppe_apTypes        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_WLAN_AP_Type_List },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_WLAN_AP_Capability(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_WLAN_AP_Capability, OMA_LPPe_WLAN_AP_Capability_sequence);

  return offset;
}


static int * const T_wlan_ap_ADSupported_bits[] = {
  &hf_lppe_T_wlan_ap_ADSupported_aplist,
  &hf_lppe_T_wlan_ap_ADSupported_aplocation,
  &hf_lppe_T_wlan_ap_ADSupported_locationreliability,
  &hf_lppe_T_wlan_ap_ADSupported_transmit_power,
  &hf_lppe_T_wlan_ap_ADSupported_antenna_gain,
  &hf_lppe_T_wlan_ap_ADSupported_coveragearea,
  &hf_lppe_T_wlan_ap_ADSupported_non_serving,
  NULL
};

static int
dissect_lppe_T_wlan_ap_ADSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 16, FALSE, T_wlan_ap_ADSupported_bits, 7, NULL, NULL);

  return offset;
}


static int * const T_additional_wlan_ecid_MeasSupported_bits[] = {
  &hf_lppe_T_additional_wlan_ecid_MeasSupported_oc,
  &hf_lppe_T_additional_wlan_ecid_MeasSupported_ueMacAddr,
  NULL
};

static int
dissect_lppe_T_additional_wlan_ecid_MeasSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 16, FALSE, T_additional_wlan_ecid_MeasSupported_bits, 2, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_WLAN_AP_ProvideCapabilities_sequence[] = {
  { &hf_lppe_wlan_ecid_MeasSupported, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_wlan_ecid_MeasSupported },
  { &hf_lppe_wlan_types_Supported, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_WLAN_AP_Type_List },
  { &hf_lppe_ap_Capability  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_WLAN_AP_Capability },
  { &hf_lppe_wlan_ap_ADSupported, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_wlan_ap_ADSupported },
  { &hf_lppe_additional_wlan_ecid_MeasSupported, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_T_additional_wlan_ecid_MeasSupported },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_WLAN_AP_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_WLAN_AP_ProvideCapabilities, OMA_LPPe_WLAN_AP_ProvideCapabilities_sequence);

  return offset;
}


static int * const T_ecid_wimax_MeasSupported_bits[] = {
  &hf_lppe_T_ecid_wimax_MeasSupported_rTD,
  &hf_lppe_T_ecid_wimax_MeasSupported_rTDstd,
  &hf_lppe_T_ecid_wimax_MeasSupported_nMR,
  &hf_lppe_T_ecid_wimax_MeasSupported_nMRrelDelay,
  &hf_lppe_T_ecid_wimax_MeasSupported_nMRrelDelaystd,
  &hf_lppe_T_ecid_wimax_MeasSupported_nMRrSSI,
  &hf_lppe_T_ecid_wimax_MeasSupported_nMRrSSIstd,
  &hf_lppe_T_ecid_wimax_MeasSupported_nMRbSTxPower,
  &hf_lppe_T_ecid_wimax_MeasSupported_nMRcINR,
  &hf_lppe_T_ecid_wimax_MeasSupported_nMRcINRstd,
  &hf_lppe_T_ecid_wimax_MeasSupported_nMRbSLocation,
  &hf_lppe_T_ecid_wimax_MeasSupported_non_serving,
  &hf_lppe_T_ecid_wimax_MeasSupported_historic,
  NULL
};

static int
dissect_lppe_T_ecid_wimax_MeasSupported(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 16, FALSE, T_ecid_wimax_MeasSupported_bits, 13, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_WiMax_ProvideCapabilities_sequence[] = {
  { &hf_lppe_ecid_wimax_MeasSupported, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_ecid_wimax_MeasSupported },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_WiMax_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_WiMax_ProvideCapabilities, OMA_LPPe_ECID_WiMax_ProvideCapabilities_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_Sensor_ProvideCapabilities_sequence[] = {
  { &hf_lppe_motionStateSupport, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_secondarySupport, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_atmosphericPressureADSupport, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_atmosphericPressureSupport, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_NULL },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_Sensor_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_Sensor_ProvideCapabilities, OMA_LPPe_Sensor_ProvideCapabilities_sequence);

  return offset;
}


static int * const T_srnMeasurements_bits[] = {
  &hf_lppe_T_srnMeasurements_rssi,
  &hf_lppe_T_srnMeasurements_rtd,
  NULL
};

static int
dissect_lppe_T_srnMeasurements(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 16, FALSE, T_srnMeasurements_bits, 2, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_MeasurementMask_sequence[] = {
  { &hf_lppe_srnMeasurements, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_srnMeasurements },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_MeasurementMask(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_MeasurementMask, OMA_LPPe_SRN_MeasurementMask_sequence);

  return offset;
}


static int * const T_supportedAssistanceData_bits[] = {
  &hf_lppe_T_supportedAssistanceData_srnGroup,
  &hf_lppe_T_supportedAssistanceData_antennaPattern,
  NULL
};

static int
dissect_lppe_T_supportedAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 16, FALSE, T_supportedAssistanceData_bits, 2, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_ProvideCapabilitiesElement_sequence[] = {
  { &hf_lppe_srnCategory    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_Category },
  { &hf_lppe_supportedMeasurements, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_SRN_MeasurementMask },
  { &hf_lppe_supportedAssistanceData, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_supportedAssistanceData },
  { &hf_lppe_historicMeasurementsSupported, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_ProvideCapabilitiesElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_ProvideCapabilitiesElement, OMA_LPPe_SRN_ProvideCapabilitiesElement_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ProvideCapabilitiesElement_sequence_of[1] = {
  { &hf_lppe_capabilitiesPerSRNCategory_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_ProvideCapabilitiesElement },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ProvideCapabilitiesElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ProvideCapabilitiesElement, SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ProvideCapabilitiesElement_sequence_of,
                                                  1, 16, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_ProvideCapabilities_sequence[] = {
  { &hf_lppe_capabilitiesPerSRNCategory, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ProvideCapabilitiesElement },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_ProvideCapabilities, OMA_LPPe_SRN_ProvideCapabilities_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_ProvideCapabilities_sequence[] = {
  { &hf_lppe_commonIEsProvideCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_CommonIEsProvideCapabilities },
  { &hf_lppe_agnss_ProvideCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_ProvideCapabilities },
  { &hf_lppe_otdoa_ProvideCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_ProvideCapabilities },
  { &hf_lppe_eotd_ProvideCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_EOTD_ProvideCapabilities },
  { &hf_lppe_otdoa_utra_ProvideCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_UTRA_ProvideCapabilities },
  { &hf_lppe_ecid_lte_ProvideCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_LTE_ProvideCapabilities },
  { &hf_lppe_ecid_gsm_ProvideCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_GSM_ProvideCapabilities },
  { &hf_lppe_ecid_utra_ProvideCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_UTRA_ProvideCapabilities },
  { &hf_lppe_wlan_ap_ProvideCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_WLAN_AP_ProvideCapabilities },
  { &hf_lppe_ecid_wimax_ProvideCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_WiMax_ProvideCapabilities },
  { &hf_lppe_sensor_ProvideCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_Sensor_ProvideCapabilities },
  { &hf_lppe_srn_ProvideCapabilities, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_SRN_ProvideCapabilities },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ProvideCapabilities, OMA_LPPe_ProvideCapabilities_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_VendorOrOperatorAssistanceDataIdentifier_sequence[] = {
  { &hf_lppe_vendorOrOperatorID, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorID },
  { &hf_lppe_assistanceDataID, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AssistanceContainerID },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_VendorOrOperatorAssistanceDataIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_VendorOrOperatorAssistanceDataIdentifier, OMA_LPPe_VendorOrOperatorAssistanceDataIdentifier_sequence);

  return offset;
}



static int
dissect_lppe_INTEGER_0_4294967295(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 4294967295U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AssistanceContainer_DataSerialNumber_sequence[] = {
  { &hf_lppe_dataSerialNumber, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_4294967295 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AssistanceContainer_DataSerialNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AssistanceContainer_DataSerialNumber, OMA_LPPe_AssistanceContainer_DataSerialNumber_sequence);

  return offset;
}


static const value_string lppe_T_checkLatest_vals[] = {
  {   0, "returnLatestIfCurrentNotLatest" },
  {   1, "returnUpdateOnlyIfCurrentInvalid" },
  { 0, NULL }
};


static int
dissect_lppe_T_checkLatest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     2, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_AssistanceContainerCheckOrUpdateReq_sequence[] = {
  { &hf_lppe_dataSerialNumber_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AssistanceContainer_DataSerialNumber },
  { &hf_lppe_checkLatest    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_checkLatest },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AssistanceContainerCheckOrUpdateReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AssistanceContainerCheckOrUpdateReq, OMA_LPPe_AssistanceContainerCheckOrUpdateReq_sequence);

  return offset;
}



static int
dissect_lppe_INTEGER_0_2881(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 2881U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_1_2881(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            1U, 2881U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_ValidityPeriod_sequence[] = {
  { &hf_lppe_beginTime      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SystemTime },
  { &hf_lppe_beginTimeAlt   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_2881 },
  { &hf_lppe_duration_01    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_2881 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ValidityPeriod(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ValidityPeriod, OMA_LPPe_ValidityPeriod_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AssistanceContainerRequest_sequence[] = {
  { &hf_lppe_dataIdentifier , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorAssistanceDataIdentifier },
  { &hf_lppe_simulatedReq   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_checkOrUpdateReq, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AssistanceContainerCheckOrUpdateReq },
  { &hf_lppe_validityTimeRequest, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ValidityPeriod },
  { &hf_lppe_proprietaryRequestParameters, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OCTET_STRING },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AssistanceContainerRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AssistanceContainerRequest, OMA_LPPe_AssistanceContainerRequest_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AssistanceContainerRequestList_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_AssistanceContainerRequestList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AssistanceContainerRequest },
};

static int
dissect_lppe_OMA_LPPe_AssistanceContainerRequestList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_AssistanceContainerRequestList, OMA_LPPe_AssistanceContainerRequestList_sequence_of,
                                                  1, maxAssistanceContainerList, FALSE);

  return offset;
}



static int
dissect_lppe_OCTET_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
                                       4, 4, FALSE, NULL);

  return offset;
}


static const value_string lppe_TypeOfADRequest_vals[] = {
  {   0, "initialRequest" },
  {   1, "updateAndContinueIfUpdateFails" },
  {   2, "updateAndAbortIfUpdateFails" },
  { 0, NULL }
};


static int
dissect_lppe_TypeOfADRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_RequestPeriodicADwithUpdate_sequence[] = {
  { &hf_lppe_periodicAD_session_ID, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OCTET_STRING_SIZE_4 },
  { &hf_lppe_typeOfADRequest, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_TypeOfADRequest },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_RequestPeriodicADwithUpdate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_RequestPeriodicADwithUpdate, OMA_LPPe_RequestPeriodicADwithUpdate_sequence);

  return offset;
}


static const value_string lppe_T_segmentedADpreference_vals[] = {
  {   0, "useBasic" },
  {   1, "useResume" },
  { 0, NULL }
};


static int
dissect_lppe_T_segmentedADpreference(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     2, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_Session_ID_sequence[] = {
  { &hf_lppe_provider_ID    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorID },
  { &hf_lppe_server_ID      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OCTET_STRING_SIZE_4 },
  { &hf_lppe_session_ID     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OCTET_STRING_SIZE_4 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_Session_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_Session_ID, OMA_LPPe_Session_ID_sequence);

  return offset;
}



static int
dissect_lppe_INTEGER_1_4096(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            1U, 4096U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_SegmentedADResume_sequence[] = {
  { &hf_lppe_segmentedAD_session_ID, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_Session_ID },
  { &hf_lppe_next_segment_number, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_4096 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SegmentedADResume(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SegmentedADResume, OMA_LPPe_SegmentedADResume_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_ReferencePointAssistanceReqElement_sequence[] = {
  { &hf_lppe_referencePointProvider, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorID },
  { &hf_lppe_mapDataReq     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OCTET_STRING },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ReferencePointAssistanceReqElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ReferencePointAssistanceReqElement, OMA_LPPe_ReferencePointAssistanceReqElement_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_16_OF_OMA_LPPe_ReferencePointAssistanceReqElement_sequence_of[1] = {
  { &hf_lppe_referencePointReq_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ReferencePointAssistanceReqElement },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_ReferencePointAssistanceReqElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_ReferencePointAssistanceReqElement, SEQUENCE_SIZE_1_16_OF_OMA_LPPe_ReferencePointAssistanceReqElement_sequence_of,
                                                  1, 16, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_ReferencePointAssistanceReq_sequence[] = {
  { &hf_lppe_referencePointReq, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_ReferencePointAssistanceReqElement },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ReferencePointAssistanceReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ReferencePointAssistanceReq, OMA_LPPe_ReferencePointAssistanceReq_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_CommonIEsRequestAssistanceData_sequence[] = {
  { &hf_lppe_approximate_location, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lpp_EllipsoidPointWithAltitudeAndUncertaintyEllipsoid },
  { &hf_lppe_assistanceContainerRequestList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AssistanceContainerRequestList },
  { &hf_lppe_requestPeriodicADwithUpdate, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_RequestPeriodicADwithUpdate },
  { &hf_lppe_segmentedADpreference, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_segmentedADpreference },
  { &hf_lppe_segmentedADResume, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_SegmentedADResume },
  { &hf_lppe_referencePointAssistanceReq, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ReferencePointAssistanceReq },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_CommonIEsRequestAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_CommonIEsRequestAssistanceData, OMA_LPPe_CommonIEsRequestAssistanceData_sequence);

  return offset;
}


static int * const T_ionoreq_bits[] = {
  &hf_lppe_T_ionoreq_klobucharModel,
  &hf_lppe_T_ionoreq_ionoStormWarning,
  NULL
};

static int
dissect_lppe_T_ionoreq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 8, FALSE, T_ionoreq_bits, 2, NULL, NULL);

  return offset;
}



static int
dissect_lppe_INTEGER_1_63(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            1U, 63U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_1_89(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            1U, 89U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_Duration_sequence[] = {
  { &hf_lppe_duration       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_63 },
  { &hf_lppe_durationLSB    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_1_89 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_Duration(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_Duration, OMA_LPPe_Duration_sequence);

  return offset;
}


static const per_sequence_t T_staticModels_01_sequence[] = {
  { &hf_lppe_ionoreq        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_ionoreq },
  { &hf_lppe_requestBeginTime, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lpp_GNSS_SystemTime },
  { &hf_lppe_duration_03    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_Duration },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_staticModels_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_staticModels_01, T_staticModels_01_sequence);

  return offset;
}



static int
dissect_lppe_INTEGER_1_64(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            1U, 64U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersRequest_sequence[] = {
  { &hf_lppe_duration_03    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_Duration },
  { &hf_lppe_rate           , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_1_64 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersRequest, OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersRequest_sequence);

  return offset;
}


static const per_sequence_t T_periodicModels_sequence[] = {
  { &hf_lppe_waIonoSurface  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersRequest },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_periodicModels(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_periodicModels, T_periodicModels_sequence);

  return offset;
}


static const value_string lppe_OMA_LPPe_AGNSS_IonosphericModelReq_vals[] = {
  {   0, "staticModels" },
  {   1, "periodicModels" },
  { 0, NULL }
};

static const per_choice_t OMA_LPPe_AGNSS_IonosphericModelReq_choice[] = {
  {   0, &hf_lppe_staticModels_01, ASN1_EXTENSION_ROOT    , dissect_lppe_T_staticModels_01 },
  {   1, &hf_lppe_periodicModels , ASN1_EXTENSION_ROOT    , dissect_lppe_T_periodicModels },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_IonosphericModelReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_OMA_LPPe_AGNSS_IonosphericModelReq, OMA_LPPe_AGNSS_IonosphericModelReq_choice,
                                 NULL);

  return offset;
}


static int * const T_troposphereModelReq_bits[] = {
  &hf_lppe_T_troposphereModelReq_delay,
  &hf_lppe_T_troposphereModelReq_surface,
  NULL
};

static int
dissect_lppe_T_troposphereModelReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 8, FALSE, T_troposphereModelReq_bits, 2, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_TroposphereModelReq_sequence[] = {
  { &hf_lppe_troposphereModelReq_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_troposphereModelReq },
  { &hf_lppe_supportForMultipleGridPoints, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_requestBeginTime, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lpp_GNSS_SystemTime },
  { &hf_lppe_duration_03    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_Duration },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_TroposphereModelReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_TroposphereModelReq, OMA_LPPe_AGNSS_TroposphereModelReq_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_AltitudeAssistanceReq_sequence[] = {
  { &hf_lppe_requestBeginTime, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lpp_GNSS_SystemTime },
  { &hf_lppe_duration_03    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_Duration },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceReq, OMA_LPPe_AGNSS_AltitudeAssistanceReq_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_SolarRadiationReq_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_SolarRadiationReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_SolarRadiationReq, OMA_LPPe_AGNSS_SolarRadiationReq_sequence);

  return offset;
}



static int
dissect_lppe_INTEGER_M2147483648_2147483647(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            G_MININT32, 2147483647U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_0_179(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 179U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_0_99(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 99U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_M64000_1280000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            -64000, 1280000U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_HighAccuracy3Dposition_sequence[] = {
  { &hf_lppe_latitude       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M2147483648_2147483647 },
  { &hf_lppe_longitude      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M2147483648_2147483647 },
  { &hf_lppe_cep            , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_255 },
  { &hf_lppe_uncertainty_semimajor, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_255 },
  { &hf_lppe_uncertainty_semiminor, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_255 },
  { &hf_lppe_offset_angle   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_179 },
  { &hf_lppe_confidenceHorizontal, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_99 },
  { &hf_lppe_altitude       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M64000_1280000 },
  { &hf_lppe_uncertainty_altitude, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_255 },
  { &hf_lppe_confidenceVertical, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_99 },
  { &hf_lppe_extUncertRange , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_BOOLEAN },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_HighAccuracy3Dposition(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_HighAccuracy3Dposition, OMA_LPPe_HighAccuracy3Dposition_sequence);

  return offset;
}


static const value_string lppe_OMA_LPPe_AGNSS_QoR_vals[] = {
  {   0, "m10" },
  {   1, "km1" },
  {   2, "km10" },
  {   3, "km100" },
  { 0, NULL }
};


static int
dissect_lppe_OMA_LPPe_AGNSS_QoR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     4, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t T_posBasedReferenceStationRequest_sequence[] = {
  { &hf_lppe_requestedReferenceStationLocation, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_HighAccuracy3Dposition },
  { &hf_lppe_qor            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_QoR },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_posBasedReferenceStationRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_posBasedReferenceStationRequest, T_posBasedReferenceStationRequest_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_CCPreferenceStationID_sequence[] = {
  { &hf_lppe_stationID      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_65535 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_CCPreferenceStationID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_CCPreferenceStationID, OMA_LPPe_AGNSS_CCPreferenceStationID_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_ReferenceStationIDlist_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_AGNSS_ReferenceStationIDlist_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_CCPreferenceStationID },
};

static int
dissect_lppe_OMA_LPPe_AGNSS_ReferenceStationIDlist(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_AGNSS_ReferenceStationIDlist, OMA_LPPe_AGNSS_ReferenceStationIDlist_sequence_of,
                                                  1, maxReferenceStations, FALSE);

  return offset;
}


static const value_string lppe_T_refStation_vals[] = {
  {   0, "posBasedReferenceStationRequest" },
  {   1, "idBasedReferenceStationRequest" },
  {   2, "referenceStationKillList" },
  { 0, NULL }
};

static const per_choice_t T_refStation_choice[] = {
  {   0, &hf_lppe_posBasedReferenceStationRequest, ASN1_EXTENSION_ROOT    , dissect_lppe_T_posBasedReferenceStationRequest },
  {   1, &hf_lppe_idBasedReferenceStationRequest, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_AGNSS_ReferenceStationIDlist },
  {   2, &hf_lppe_referenceStationKillList, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_AGNSS_ReferenceStationIDlist },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_T_refStation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_T_refStation, T_refStation_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t T_ccpCommonRequest_sequence[] = {
  { &hf_lppe_duration_03    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_Duration },
  { &hf_lppe_rate           , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_1_64 },
  { &hf_lppe_refStation     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_refStation },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_ccpCommonRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_ccpCommonRequest, T_ccpCommonRequest_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_CCPrequestControlParameters_sequence[] = {
  { &hf_lppe_ccpSupportAreaRequest, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_ccpNeighborListRequest, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_ccpCommonRequest, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_ccpCommonRequest },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_CCPrequestControlParameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_CCPrequestControlParameters, OMA_LPPe_AGNSS_CCPrequestControlParameters_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_CommonAssistanceDataReq_sequence[] = {
  { &hf_lppe_ionosphericModelReq, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_IonosphericModelReq },
  { &hf_lppe_troposphereModelReq, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_TroposphereModelReq },
  { &hf_lppe_altitudeAssistanceReq, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceReq },
  { &hf_lppe_solarRadiationRequest, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_SolarRadiationReq },
  { &hf_lppe_ccpRequestControlParameters, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_CCPrequestControlParameters },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_CommonAssistanceDataReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_CommonAssistanceDataReq, OMA_LPPe_AGNSS_CommonAssistanceDataReq_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_WaIonoSurfaceRequest_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_WaIonoSurfaceRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_WaIonoSurfaceRequest, OMA_LPPe_AGNSS_WaIonoSurfaceRequest_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_MechanicsReq_sequence[] = {
  { &hf_lppe_massRequest    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_effectiveReflectivityAreaRequest, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_pcoRequest     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_svInfoRequest  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_MechanicsReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_MechanicsReq, OMA_LPPe_AGNSS_MechanicsReq_sequence);

  return offset;
}


static const value_string lppe_T_pd_02_vals[] = {
  {   0, "pilot" },
  {   1, "data" },
  {   2, "notapplicable" },
  { 0, NULL }
};


static int
dissect_lppe_T_pd_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t T_reference_01_sequence[] = {
  { &hf_lppe_signal         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SignalID },
  { &hf_lppe_pd_02          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_pd_02 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_reference_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_reference_01, T_reference_01_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_DCBreq_sequence[] = {
  { &hf_lppe_reference_01   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_reference_01 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_DCBreq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_DCBreq, OMA_LPPe_AGNSS_DCBreq_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_NavModelDegradationModelReq_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelReq, OMA_LPPe_AGNSS_NavModelDegradationModelReq_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_CCPassistGenericReq_sequence[] = {
  { &hf_lppe_ccpAssist_SignalsReq, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SignalIDs },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_CCPassistGenericReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_CCPassistGenericReq, OMA_LPPe_AGNSS_CCPassistGenericReq_sequence);

  return offset;
}


static const per_sequence_t T_navModelID_PrefList_sequence_of[1] = {
  { &hf_lppe_navModelID_PrefList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_8 },
};

static int
dissect_lppe_T_navModelID_PrefList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_T_navModelID_PrefList, T_navModelID_PrefList_sequence_of,
                                                  1, 8, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_NavigationModelReq_sequence[] = {
  { &hf_lppe_navModelID_PrefList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_navModelID_PrefList },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_NavigationModelReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_NavigationModelReq, OMA_LPPe_AGNSS_NavigationModelReq_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_GenericAssistDataReqElement_sequence[] = {
  { &hf_lppe_gnss_ID        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_ID },
  { &hf_lppe_waIonoSurfaceReq, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_WaIonoSurfaceRequest },
  { &hf_lppe_mechanicsReq   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_MechanicsReq },
  { &hf_lppe_dcbReq         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_DCBreq },
  { &hf_lppe_navModelDegradationModelReq, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelReq },
  { &hf_lppe_ccpAssistGenericReq, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_CCPassistGenericReq },
  { &hf_lppe_navigationModelReq, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_NavigationModelReq },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_GenericAssistDataReqElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_GenericAssistDataReqElement, OMA_LPPe_AGNSS_GenericAssistDataReqElement_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_GenericAssistanceDataReq_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataReq_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_GenericAssistDataReqElement },
};

static int
dissect_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataReq, OMA_LPPe_AGNSS_GenericAssistanceDataReq_sequence_of,
                                                  1, 16, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_RequestAssistanceData_sequence[] = {
  { &hf_lppe_commonAssistDataReq, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_CommonAssistanceDataReq },
  { &hf_lppe_genericAssistDataReq, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataReq },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_RequestAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_RequestAssistanceData, OMA_LPPe_AGNSS_RequestAssistanceData_sequence);

  return offset;
}



static int
dissect_lppe_INTEGER_0_503(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 503U, NULL, FALSE);

  return offset;
}


static const per_sequence_t T_lteCell_sequence[] = {
  { &hf_lppe_physCellId     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_503 },
  { &hf_lppe_eARFCN         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_ARFCN_ValueEUTRA },
  { &hf_lppe_ecgi           , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lpp_CellGlobalIdEUTRA_AndUTRA },
  { &hf_lppe_eARFCN_ext     , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lpp_ARFCN_ValueEUTRA_v9a0 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_lteCell(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_lteCell, T_lteCell_sequence);

  return offset;
}


static int * const T_requestedCells_bits[] = {
  &hf_lppe_T_requestedCells_eNBs,
  &hf_lppe_T_requestedCells_heNBs,
  NULL
};

static int
dissect_lppe_T_requestedCells(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 8, FALSE, T_requestedCells_bits, 2, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_RequestAssistanceData_sequence[] = {
  { &hf_lppe_lteCell        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_lteCell },
  { &hf_lppe_requestedCells , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_requestedCells },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_RequestAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_RequestAssistanceData, OMA_LPPe_OTDOA_RequestAssistanceData_sequence);

  return offset;
}


static int * const T_eotdAssistanceReq_bits[] = {
  &hf_lppe_T_eotdAssistanceReq_ueAssisted,
  &hf_lppe_T_eotdAssistanceReq_ueBased,
  NULL
};

static int
dissect_lppe_T_eotdAssistanceReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     NO_BOUND, NO_BOUND, FALSE, T_eotdAssistanceReq_bits, 2, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_EOTD_RequestAssistanceData_sequence[] = {
  { &hf_lppe_eotdAssistanceReq, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_eotdAssistanceReq },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_EOTD_RequestAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_EOTD_RequestAssistanceData, OMA_LPPe_EOTD_RequestAssistanceData_sequence);

  return offset;
}


static int * const T_otdoaUtraAssistanceReq_bits[] = {
  &hf_lppe_T_otdoaUtraAssistanceReq_ueAssisted,
  &hf_lppe_T_otdoaUtraAssistanceReq_ueBased,
  NULL
};

static int
dissect_lppe_T_otdoaUtraAssistanceReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 8, FALSE, T_otdoaUtraAssistanceReq_bits, 2, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_UTRA_RequestAssistanceData_sequence[] = {
  { &hf_lppe_otdoaUtraAssistanceReq, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_otdoaUtraAssistanceReq },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_RequestAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_UTRA_RequestAssistanceData, OMA_LPPe_OTDOA_UTRA_RequestAssistanceData_sequence);

  return offset;
}


static int * const T_eNBrequestedAD_bits[] = {
  &hf_lppe_T_eNBrequestedAD_bslist,
  &hf_lppe_T_eNBrequestedAD_bslocation,
  &hf_lppe_T_eNBrequestedAD_transmit_power,
  &hf_lppe_T_eNBrequestedAD_antennaPortConfig,
  &hf_lppe_T_eNBrequestedAD_antenna_gain,
  &hf_lppe_T_eNBrequestedAD_beam_width,
  &hf_lppe_T_eNBrequestedAD_transmit_direction,
  &hf_lppe_T_eNBrequestedAD_frequency_accuracy,
  &hf_lppe_T_eNBrequestedAD_non_serving,
  NULL
};

static int
dissect_lppe_T_eNBrequestedAD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 16, FALSE, T_eNBrequestedAD_bits, 9, NULL, NULL);

  return offset;
}


static int * const T_heNBrequestedAD_bits[] = {
  &hf_lppe_T_heNBrequestedAD_bslist,
  &hf_lppe_T_heNBrequestedAD_bslocation,
  &hf_lppe_T_heNBrequestedAD_locationreliability,
  &hf_lppe_T_heNBrequestedAD_transmit_power,
  &hf_lppe_T_heNBrequestedAD_antennaPortConfig,
  &hf_lppe_T_heNBrequestedAD_frequency_accuracy,
  &hf_lppe_T_heNBrequestedAD_coveragearea,
  &hf_lppe_T_heNBrequestedAD_non_serving,
  NULL
};

static int
dissect_lppe_T_heNBrequestedAD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 16, FALSE, T_heNBrequestedAD_bits, 8, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_LTE_RequestAssistanceData_sequence[] = {
  { &hf_lppe_eNBrequestedAD , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_eNBrequestedAD },
  { &hf_lppe_heNBrequestedAD, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_heNBrequestedAD },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_LTE_RequestAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_LTE_RequestAssistanceData, OMA_LPPe_ECID_LTE_RequestAssistanceData_sequence);

  return offset;
}


static int * const T_requestedAD_bits[] = {
  &hf_lppe_T_requestedAD_bslist,
  &hf_lppe_T_requestedAD_bslocation,
  &hf_lppe_T_requestedAD_transmit_power,
  &hf_lppe_T_requestedAD_antenna_gain,
  &hf_lppe_T_requestedAD_beam_width,
  &hf_lppe_T_requestedAD_transmit_direction,
  &hf_lppe_T_requestedAD_frequency_accuracy,
  &hf_lppe_T_requestedAD_non_serving,
  NULL
};

static int
dissect_lppe_T_requestedAD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 16, FALSE, T_requestedAD_bits, 8, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_GSM_RequestAssistanceData_sequence[] = {
  { &hf_lppe_requestedAD    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_requestedAD },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_GSM_RequestAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_GSM_RequestAssistanceData, OMA_LPPe_ECID_GSM_RequestAssistanceData_sequence);

  return offset;
}


static int * const T_nBrequestedAD_bits[] = {
  &hf_lppe_T_nBrequestedAD_bslist,
  &hf_lppe_T_nBrequestedAD_bslocation,
  &hf_lppe_T_nBrequestedAD_transmit_power,
  &hf_lppe_T_nBrequestedAD_antenna_gain,
  &hf_lppe_T_nBrequestedAD_beam_width,
  &hf_lppe_T_nBrequestedAD_transmit_direction,
  &hf_lppe_T_nBrequestedAD_frequency_accuracy,
  &hf_lppe_T_nBrequestedAD_non_serving,
  NULL
};

static int
dissect_lppe_T_nBrequestedAD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 16, FALSE, T_nBrequestedAD_bits, 8, NULL, NULL);

  return offset;
}


static int * const T_hNBrequestedAD_bits[] = {
  &hf_lppe_T_hNBrequestedAD_bslist,
  &hf_lppe_T_hNBrequestedAD_bslocation,
  &hf_lppe_T_hNBrequestedAD_locationreliability,
  &hf_lppe_T_hNBrequestedAD_transmit_power,
  &hf_lppe_T_hNBrequestedAD_frequency_accuracy,
  &hf_lppe_T_hNBrequestedAD_coveragearea,
  &hf_lppe_T_hNBrequestedAD_non_serving,
  NULL
};

static int
dissect_lppe_T_hNBrequestedAD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 16, FALSE, T_hNBrequestedAD_bits, 7, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_UTRA_RequestAssistanceData_sequence[] = {
  { &hf_lppe_nBrequestedAD  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_nBrequestedAD },
  { &hf_lppe_hNBrequestedAD , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_hNBrequestedAD },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_UTRA_RequestAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_UTRA_RequestAssistanceData, OMA_LPPe_ECID_UTRA_RequestAssistanceData_sequence);

  return offset;
}


static int * const T_requestedAD_01_bits[] = {
  &hf_lppe_T_requestedAD_01_aplist,
  &hf_lppe_T_requestedAD_01_aplocation,
  &hf_lppe_T_requestedAD_01_locationreliability,
  &hf_lppe_T_requestedAD_01_transmit_power,
  &hf_lppe_T_requestedAD_01_antenna_gain,
  &hf_lppe_T_requestedAD_01_coveragearea,
  &hf_lppe_T_requestedAD_01_non_serving,
  NULL
};

static int
dissect_lppe_T_requestedAD_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 16, FALSE, T_requestedAD_01_bits, 7, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_WLAN_AP_RequestAssistanceData_sequence[] = {
  { &hf_lppe_requestedAD_01 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_requestedAD_01 },
  { &hf_lppe_requestedAPTypes, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_WLAN_AP_Type_List },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_WLAN_AP_RequestAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_WLAN_AP_RequestAssistanceData, OMA_LPPe_WLAN_AP_RequestAssistanceData_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_PressureSensorAD_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_PressureSensorAD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_PressureSensorAD, OMA_LPPe_PressureSensorAD_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_Sensor_RequestAssistanceData_sequence[] = {
  { &hf_lppe_pressureSensorAD, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_PressureSensorAD },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_Sensor_RequestAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_Sensor_RequestAssistanceData, OMA_LPPe_Sensor_RequestAssistanceData_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_SRNgroupUniqueID_sequence[] = {
  { &hf_lppe_providerID     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorID },
  { &hf_lppe_providerAssignedID, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OCTET_STRING },
  { &hf_lppe_srnDataVersion , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_4294967295 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_SRNgroupUniqueID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_SRNgroupUniqueID, OMA_LPPe_SRN_SRNgroupUniqueID_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_256_OF_OMA_LPPe_SRN_SRNgroupUniqueID_sequence_of[1] = {
  { &hf_lppe_groupList_item_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_SRNgroupUniqueID },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_256_OF_OMA_LPPe_SRN_SRNgroupUniqueID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_256_OF_OMA_LPPe_SRN_SRNgroupUniqueID, SEQUENCE_SIZE_1_256_OF_OMA_LPPe_SRN_SRNgroupUniqueID_sequence_of,
                                                  1, 256, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_SRNProvideList_sequence[] = {
  { &hf_lppe_groupList_01   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_SEQUENCE_SIZE_1_256_OF_OMA_LPPe_SRN_SRNgroupUniqueID },
  { &hf_lppe_categoryList   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_Category },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_SRNProvideList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_SRNProvideList, OMA_LPPe_SRN_SRNProvideList_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_SRNgroupRequest_sequence[] = {
  { &hf_lppe_doNotProvideList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_SRN_SRNProvideList },
  { &hf_lppe_doProvideList  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_SRN_SRNProvideList },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_SRNgroupRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_SRNgroupRequest, OMA_LPPe_SRN_SRNgroupRequest_sequence);

  return offset;
}



static int
dissect_lppe_BIT_STRING_SIZE_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     8, 8, FALSE, NULL, 0, NULL, NULL);

  return offset;
}


static const per_sequence_t T_nfc_sequence[] = {
  { &hf_lppe_manufacturer   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_8 },
  { &hf_lppe_uniqueNumber   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_48 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_nfc(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_nfc, T_nfc_sequence);

  return offset;
}



static int
dissect_lppe_BIT_STRING_SIZE_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     12, 12, FALSE, NULL, 0, NULL, NULL);

  return offset;
}



static int
dissect_lppe_OCTET_STRING_SIZE_1_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
                                       1, 16, FALSE, NULL);

  return offset;
}



static int
dissect_lppe_OCTET_STRING_SIZE_1_18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
                                       1, 18, FALSE, NULL);

  return offset;
}


static const per_sequence_t T_mobileCode_sequence[] = {
  { &hf_lppe_registryID     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_12 },
  { &hf_lppe_remainingPart  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OCTET_STRING_SIZE_1_16 },
  { &hf_lppe_resolutionIdentifier, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OCTET_STRING_SIZE_1_18 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_mobileCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_mobileCode, T_mobileCode_sequence);

  return offset;
}


static const value_string lppe_T_srn_id_vals[] = {
  {   0, "mac" },
  {   1, "nfc" },
  {   2, "mobileCode" },
  {   3, "other" },
  { 0, NULL }
};

static const per_choice_t T_srn_id_choice[] = {
  {   0, &hf_lppe_mac            , ASN1_EXTENSION_ROOT    , dissect_lppe_BIT_STRING_SIZE_48 },
  {   1, &hf_lppe_nfc            , ASN1_EXTENSION_ROOT    , dissect_lppe_T_nfc },
  {   2, &hf_lppe_mobileCode     , ASN1_EXTENSION_ROOT    , dissect_lppe_T_mobileCode },
  {   3, &hf_lppe_other          , ASN1_EXTENSION_ROOT    , dissect_lppe_OCTET_STRING },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_T_srn_id(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_T_srn_id, T_srn_id_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_SRNid_sequence[] = {
  { &hf_lppe_srn_id         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_srn_id },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_SRNid(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_SRNid, OMA_LPPe_SRN_SRNid_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNid_sequence_of[1] = {
  { &hf_lppe_inTheGroup_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_SRNid },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNid(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNid, SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNid_sequence_of,
                                                  1, 1024, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_SRNgroupUpdateRequestElement_sequence[] = {
  { &hf_lppe_srnGroupID     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_SRNgroupUniqueID },
  { &hf_lppe_provideIndicationOnly, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_inTheGroup     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNid },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_SRNgroupUpdateRequestElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_SRNgroupUpdateRequestElement, OMA_LPPe_SRN_SRNgroupUpdateRequestElement_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_SRNgroupUpdateRequest_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_SRN_SRNgroupUpdateRequest_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_SRNgroupUpdateRequestElement },
};

static int
dissect_lppe_OMA_LPPe_SRN_SRNgroupUpdateRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_SRN_SRNgroupUpdateRequest, OMA_LPPe_SRN_SRNgroupUpdateRequest_sequence_of,
                                                  1, 64, FALSE);

  return offset;
}


static const value_string lppe_T_srnGroup_01_vals[] = {
  {   0, "srnGroupRequest" },
  {   1, "srnGroupUpdateRequest" },
  { 0, NULL }
};

static const per_choice_t T_srnGroup_01_choice[] = {
  {   0, &hf_lppe_srnGroupRequest, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_SRN_SRNgroupRequest },
  {   1, &hf_lppe_srnGroupUpdateRequest, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_SRN_SRNgroupUpdateRequest },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_T_srnGroup_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_T_srnGroup_01, T_srnGroup_01_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t T_antennaPatternID_sequence[] = {
  { &hf_lppe_vendorOrOperator, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorID },
  { &hf_lppe_antennaPatternID, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_65535 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_antennaPatternID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_antennaPatternID, T_antennaPatternID_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_AntennaPatternRequestElement_sequence[] = {
  { &hf_lppe_antennaPatternID_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_antennaPatternID },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_AntennaPatternRequestElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_AntennaPatternRequestElement, OMA_LPPe_SRN_AntennaPatternRequestElement_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_AntennaPatternRequest_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_SRN_AntennaPatternRequest_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_AntennaPatternRequestElement },
};

static int
dissect_lppe_OMA_LPPe_SRN_AntennaPatternRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_SRN_AntennaPatternRequest, OMA_LPPe_SRN_AntennaPatternRequest_sequence_of,
                                                  1, 8, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_RequestAssistanceData_sequence[] = {
  { &hf_lppe_srnGroup_01    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_srnGroup_01 },
  { &hf_lppe_antennaPatternRequest, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_SRN_AntennaPatternRequest },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_RequestAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_RequestAssistanceData, OMA_LPPe_SRN_RequestAssistanceData_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_RequestAssistanceData_sequence[] = {
  { &hf_lppe_commonIEsRequestAssistanceData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_CommonIEsRequestAssistanceData },
  { &hf_lppe_agnss_RequestAssistanceData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_RequestAssistanceData },
  { &hf_lppe_otdoa_RequestAssistanceData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_RequestAssistanceData },
  { &hf_lppe_eotd_RequestAssistanceData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_EOTD_RequestAssistanceData },
  { &hf_lppe_otdoa_utra_RequestAssistanceData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_UTRA_RequestAssistanceData },
  { &hf_lppe_ecid_lte_RequestAssistanceData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_LTE_RequestAssistanceData },
  { &hf_lppe_ecid_gsm_RequestAssistanceData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_GSM_RequestAssistanceData },
  { &hf_lppe_ecid_utra_RequestAssistanceData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_UTRA_RequestAssistanceData },
  { &hf_lppe_wlan_ap_RequestAssistanceData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_WLAN_AP_RequestAssistanceData },
  { &hf_lppe_sensor_RequestAssistanceData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_Sensor_RequestAssistanceData },
  { &hf_lppe_srn_RequestAssistanceData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_SRN_RequestAssistanceData },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_RequestAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_RequestAssistanceData, OMA_LPPe_RequestAssistanceData_sequence);

  return offset;
}


static const value_string lppe_T_checkOrUpdateOrError_vals[] = {
  {   0, "targetHasLatestData" },
  {   1, "targetDataNotLatest" },
  {   2, "targetDataNotLatestButServerCannotProvideLatestData" },
  {   3, "targetHasValidData" },
  {   4, "targetDataInvalidButServerCannotProvideValidData" },
  {   5, "serverHasRequestedDataButUnableToProvideTemporarily" },
  {   6, "serverDoesNotHaveRequestedData" },
  {   7, "serverDoesNotRecognizeRequestedData" },
  {   8, "undefined" },
  { 0, NULL }
};


static int
dissect_lppe_T_checkOrUpdateOrError(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     9, NULL, TRUE, 0, NULL);

  return offset;
}



static int
dissect_lppe_INTEGER_0_5000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 5000U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_1_255(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            1U, 255U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_2_9180(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            2U, 9180U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_0_4589(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 4589U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_0_9179(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 9179U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_RleList_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_RleList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_255 },
};

static int
dissect_lppe_OMA_LPPe_RleList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_RleList, OMA_LPPe_RleList_sequence_of,
                                                  1, 65535, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_ValidityArea_sequence[] = {
  { &hf_lppe_regionSizeInv  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_255 },
  { &hf_lppe_areaWidth      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_2_9180 },
  { &hf_lppe_codedLatOfNWCorner, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_4589 },
  { &hf_lppe_codedLonOfNWCorner, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_9179 },
  { &hf_lppe_rleList        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_RleList },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ValidityArea(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ValidityArea, OMA_LPPe_ValidityArea_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AssistanceContainerData_sequence[] = {
  { &hf_lppe_dataSerialNumber_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AssistanceContainer_DataSerialNumber },
  { &hf_lppe_data_01        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OCTET_STRING },
  { &hf_lppe_validityPeriod , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ValidityPeriod },
  { &hf_lppe_validityArea   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ValidityArea },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AssistanceContainerData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AssistanceContainerData, OMA_LPPe_AssistanceContainerData_sequence);

  return offset;
}


static const value_string lppe_T_dataResult_vals[] = {
  {   0, "simulationResult" },
  {   1, "data" },
  { 0, NULL }
};

static const per_choice_t T_dataResult_choice[] = {
  {   0, &hf_lppe_simulationResult, ASN1_EXTENSION_ROOT    , dissect_lppe_INTEGER_0_5000 },
  {   1, &hf_lppe_data           , ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_AssistanceContainerData },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_T_dataResult(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_T_dataResult, T_dataResult_choice,
                                 NULL);

  return offset;
}


static const value_string lppe_T_serverError_vals[] = {
  {   0, "assistanceContainerUnknownDataIdentifier" },
  {   1, "assistanceContainerUnknownDataSerialNumber" },
  {   2, "assistanceContainerDataTemporarilyUnavailable" },
  {   3, "assistanceContainerDataNoLongerSupported" },
  {   4, "assistanceContainerVendorOrOperatorNotSupported" },
  { 0, NULL }
};


static int
dissect_lppe_T_serverError(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     5, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_AssistanceContainerProvideError_sequence[] = {
  { &hf_lppe_serverError    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_serverError },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AssistanceContainerProvideError(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AssistanceContainerProvideError, OMA_LPPe_AssistanceContainerProvideError_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AssistanceContainerProvide_sequence[] = {
  { &hf_lppe_dataIdentifier , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorAssistanceDataIdentifier },
  { &hf_lppe_checkOrUpdateOrError, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_checkOrUpdateOrError },
  { &hf_lppe_dataResult     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_dataResult },
  { &hf_lppe_errorCode      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AssistanceContainerProvideError },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AssistanceContainerProvide(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AssistanceContainerProvide, OMA_LPPe_AssistanceContainerProvide_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AssistanceContainerProvideList_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_AssistanceContainerProvideList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AssistanceContainerProvide },
};

static int
dissect_lppe_OMA_LPPe_AssistanceContainerProvideList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_AssistanceContainerProvideList, OMA_LPPe_AssistanceContainerProvideList_sequence_of,
                                                  1, maxAssistanceContainerList, FALSE);

  return offset;
}


static const value_string lppe_OMA_LPPe_TypeOfADProvide_vals[] = {
  {   0, "responseToInitialRequest" },
  {   1, "providePeriodicAD" },
  {   2, "responseToTargetUpdateRequest" },
  {   3, "serverUpdate" },
  { 0, NULL }
};


static int
dissect_lppe_OMA_LPPe_TypeOfADProvide(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     4, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_ProvidePeriodicADwithUpdate_sequence[] = {
  { &hf_lppe_periodicAD_session_ID, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OCTET_STRING_SIZE_4 },
  { &hf_lppe_typeOfADProvide, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_TypeOfADProvide },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ProvidePeriodicADwithUpdate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ProvidePeriodicADwithUpdate, OMA_LPPe_ProvidePeriodicADwithUpdate_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_SegmentedADTransfer_sequence[] = {
  { &hf_lppe_segmentedAD_session_ID, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_Session_ID },
  { &hf_lppe_segment_number , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_4096 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SegmentedADTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SegmentedADTransfer, OMA_LPPe_SegmentedADTransfer_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_ReferencePointUniqueID_sequence[] = {
  { &hf_lppe_providerID     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorID },
  { &hf_lppe_providerAssignedID, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OCTET_STRING },
  { &hf_lppe_version        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_64 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ReferencePointUniqueID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ReferencePointUniqueID, OMA_LPPe_ReferencePointUniqueID_sequence);

  return offset;
}


static const value_string lppe_T_referencePointGeographicLocation_vals[] = {
  {   0, "location3D" },
  {   1, "location3DwithUncertainty" },
  {   2, "locationwithhighaccuracy" },
  { 0, NULL }
};

static const per_choice_t T_referencePointGeographicLocation_choice[] = {
  {   0, &hf_lppe_location3D     , ASN1_EXTENSION_ROOT    , dissect_lpp_EllipsoidPointWithAltitude },
  {   1, &hf_lppe_location3DwithUncertainty, ASN1_EXTENSION_ROOT    , dissect_lpp_EllipsoidPointWithAltitudeAndUncertaintyEllipsoid },
  {   2, &hf_lppe_locationwithhighaccuracy, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_HighAccuracy3Dposition },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_T_referencePointGeographicLocation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_T_referencePointGeographicLocation, T_referencePointGeographicLocation_choice,
                                 NULL);

  return offset;
}



static int
dissect_lppe_OCTET_STRING_SIZE_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
                                       2, 2, FALSE, NULL);

  return offset;
}



static int
dissect_lppe_INTEGER_0_511(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 511U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_OCTET_STRING_SIZE_1_256(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
                                       1, 256, FALSE, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_CivicAddressElement_sequence[] = {
  { &hf_lppe_caType         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_511 },
  { &hf_lppe_caValue        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OCTET_STRING_SIZE_1_256 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_CivicAddressElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_CivicAddressElement, OMA_LPPe_CivicAddressElement_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_CivicAddressElementList_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_CivicAddressElementList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_CivicAddressElement },
};

static int
dissect_lppe_OMA_LPPe_CivicAddressElementList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_CivicAddressElementList, OMA_LPPe_CivicAddressElementList_sequence_of,
                                                  1, 128, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_CivicLocation_sequence[] = {
  { &hf_lppe_countryCode    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OCTET_STRING_SIZE_2 },
  { &hf_lppe_civicAddressElementList, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_CivicAddressElementList },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_CivicLocation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_CivicLocation, OMA_LPPe_CivicLocation_sequence);

  return offset;
}



static int
dissect_lppe_INTEGER_M20_235(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            -20, 235U, NULL, FALSE);

  return offset;
}


static const value_string lppe_T_units_vals[] = {
  {   0, "cm" },
  {   1, "dm" },
  {   2, "m10" },
  { 0, NULL }
};


static int
dissect_lppe_T_units(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}


static const value_string lppe_T_arc_second_units_vals[] = {
  {   0, "as0-0003" },
  {   1, "as0-003" },
  {   2, "as0-03" },
  {   3, "as0-3" },
  { 0, NULL }
};


static int
dissect_lppe_T_arc_second_units(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     4, NULL, TRUE, 0, NULL);

  return offset;
}



static int
dissect_lppe_INTEGER_M524288_524287(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            -524288, 524287U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_M32768_32767(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            -32768, 32767U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_0_127(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 127U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_GeodeticUncertaintyAndConfidence_sequence[] = {
  { &hf_lppe_uncertainty    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_127 },
  { &hf_lppe_confidence     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_99 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_GeodeticUncertaintyAndConfidence(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_GeodeticUncertaintyAndConfidence, OMA_LPPe_GeodeticUncertaintyAndConfidence_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_GeodeticRelativeAltitude_sequence[] = {
  { &hf_lppe_geodetic_height_depth, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M32768_32767 },
  { &hf_lppe_geodetic_uncertainty_and_confidence, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_GeodeticUncertaintyAndConfidence },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_GeodeticRelativeAltitude(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_GeodeticRelativeAltitude, OMA_LPPe_GeodeticRelativeAltitude_sequence);

  return offset;
}



static int
dissect_lppe_INTEGER_M255_256(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            -255, 256U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_CivicUncertaintyAndConfidence_sequence[] = {
  { &hf_lppe_uncertainty    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_127 },
  { &hf_lppe_confidence     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_99 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_CivicUncertaintyAndConfidence(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_CivicUncertaintyAndConfidence, OMA_LPPe_CivicUncertaintyAndConfidence_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_CivicRelativeAltitude_sequence[] = {
  { &hf_lppe_civic_floors   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M255_256 },
  { &hf_lppe_civic_uncertainty_and_confidence, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_CivicUncertaintyAndConfidence },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_CivicRelativeAltitude(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_CivicRelativeAltitude, OMA_LPPe_CivicRelativeAltitude_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_RelativeAltitude_sequence[] = {
  { &hf_lppe_geodeticRelativeAltitude, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_GeodeticRelativeAltitude },
  { &hf_lppe_civicRelativeAltitude, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_CivicRelativeAltitude },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_RelativeAltitude(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_RelativeAltitude, OMA_LPPe_RelativeAltitude_sequence);

  return offset;
}


static const per_sequence_t T_ellipse_sequence[] = {
  { &hf_lppe_semimajor      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_127 },
  { &hf_lppe_semiminor      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_127 },
  { &hf_lppe_offsetAngle    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_179 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_ellipse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_ellipse, T_ellipse_sequence);

  return offset;
}


static const value_string lppe_T_uncShape_vals[] = {
  {   0, "circle" },
  {   1, "ellipse" },
  { 0, NULL }
};

static const per_choice_t T_uncShape_choice[] = {
  {   0, &hf_lppe_circle         , ASN1_EXTENSION_ROOT    , dissect_lppe_INTEGER_0_127 },
  {   1, &hf_lppe_ellipse        , ASN1_EXTENSION_ROOT    , dissect_lppe_T_ellipse },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_T_uncShape(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_T_uncShape, T_uncShape_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_HorizontalUncertaintyAndConfidence_sequence[] = {
  { &hf_lppe_uncShape       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_uncShape },
  { &hf_lppe_confidence     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_99 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_HorizontalUncertaintyAndConfidence(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_HorizontalUncertaintyAndConfidence, OMA_LPPe_HorizontalUncertaintyAndConfidence_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_RelativeLocation_sequence[] = {
  { &hf_lppe_units          , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_units },
  { &hf_lppe_arc_second_units, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_arc_second_units },
  { &hf_lppe_relativeNorth  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M524288_524287 },
  { &hf_lppe_relativeEast   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M524288_524287 },
  { &hf_lppe_relativeAltitude, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_RelativeAltitude },
  { &hf_lppe_horizontalUncertainty, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_HorizontalUncertaintyAndConfidence },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_RelativeLocation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_RelativeLocation, OMA_LPPe_RelativeLocation_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_ReferencePointRelationship_sequence[] = {
  { &hf_lppe_referencePointUniqueID, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ReferencePointUniqueID },
  { &hf_lppe_relativeLocation, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_RelativeLocation },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ReferencePointRelationship(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ReferencePointRelationship, OMA_LPPe_ReferencePointRelationship_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointRelationship_sequence_of[1] = {
  { &hf_lppe_relatedReferencePoints_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ReferencePointRelationship },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointRelationship(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointRelationship, SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointRelationship_sequence_of,
                                                  1, 8, FALSE);

  return offset;
}



static int
dissect_lppe_OMA_LPPe_Uri(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_restricted_character_string(tvb, offset, actx, tree, hf_index,
                                                      NO_BOUND, NO_BOUND, FALSE, "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789:/?#[]@!$&'()*+,;=-._~%", 85,
                                                      NULL);


  return offset;
}



static int
dissect_lppe_OCTET_STRING_SIZE_1_64(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
                                       1, 64, FALSE, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_MapDataReference_sequence[] = {
  { &hf_lppe_dataID         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AssistanceContainerID },
  { &hf_lppe_mapReference   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OCTET_STRING_SIZE_1_64 },
  { &hf_lppe_mapSize        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_1_5000 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_MapDataReference(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_MapDataReference, OMA_LPPe_MapDataReference_sequence);

  return offset;
}


static const value_string lppe_T_mapDataUrl_choice_vals[] = {
  {   0, "mapDataUrl" },
  {   1, "mapDataRef" },
  { 0, NULL }
};

static const per_choice_t T_mapDataUrl_choice_choice[] = {
  {   0, &hf_lppe_mapDataUrl     , ASN1_NO_EXTENSIONS     , dissect_lppe_OMA_LPPe_Uri },
  {   1, &hf_lppe_mapDataRef     , ASN1_NO_EXTENSIONS     , dissect_lppe_OMA_LPPe_MapDataReference },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_T_mapDataUrl_choice(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_T_mapDataUrl_choice, T_mapDataUrl_choice_choice,
                                 NULL);

  return offset;
}


static const value_string lppe_T_mapProvider_vals[] = {
  {   0, "sameAsRefPointProvider" },
  {   1, "notSameAsRefPointProvider" },
  { 0, NULL }
};

static const per_choice_t T_mapProvider_choice[] = {
  {   0, &hf_lppe_sameAsRefPointProvider, ASN1_EXTENSION_ROOT    , dissect_lppe_NULL },
  {   1, &hf_lppe_notSameAsRefPointProvider, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_VendorOrOperatorID },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_T_mapProvider(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_T_mapProvider, T_mapProvider_choice,
                                 NULL);

  return offset;
}



static int
dissect_lppe_VisibleString_SIZE_1_64(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_VisibleString(tvb, offset, actx, tree, hf_index,
                                          1, 64, FALSE,
                                          NULL);

  return offset;
}


static const value_string lppe_T_mapAssociation_vals[] = {
  {   0, "referencePointUniqueID" },
  {   1, "otherID" },
  {   2, "mapOffset" },
  {   3, "origin" },
  { 0, NULL }
};

static const per_choice_t T_mapAssociation_choice[] = {
  {   0, &hf_lppe_referencePointUniqueID_01, ASN1_EXTENSION_ROOT    , dissect_lppe_NULL },
  {   1, &hf_lppe_otherID        , ASN1_EXTENSION_ROOT    , dissect_lppe_VisibleString_SIZE_1_64 },
  {   2, &hf_lppe_mapOffset      , ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_RelativeLocation },
  {   3, &hf_lppe_origin         , ASN1_EXTENSION_ROOT    , dissect_lppe_NULL },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_T_mapAssociation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_T_mapAssociation, T_mapAssociation_choice,
                                 NULL);

  return offset;
}



static int
dissect_lppe_INTEGER_0_359(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 359U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_MapDataReferenceElement_sequence[] = {
  { &hf_lppe_mapDataUrl_choice, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_mapDataUrl_choice },
  { &hf_lppe_mapProvider    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_mapProvider },
  { &hf_lppe_mapAssociation , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_mapAssociation },
  { &hf_lppe_mapHorizontalOrientation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_359 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_MapDataReferenceElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_MapDataReferenceElement, OMA_LPPe_MapDataReferenceElement_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_MapDataInformation_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_MapDataInformation_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_MapDataReferenceElement },
};

static int
dissect_lppe_OMA_LPPe_MapDataInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_MapDataInformation, OMA_LPPe_MapDataInformation_sequence_of,
                                                  1, 16, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_ReferencePoint_sequence[] = {
  { &hf_lppe_referencePointUniqueID, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ReferencePointUniqueID },
  { &hf_lppe_referencePointGeographicLocation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_referencePointGeographicLocation },
  { &hf_lppe_referencePointCivicLocation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_CivicLocation },
  { &hf_lppe_referencePointFloorLevel, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M20_235 },
  { &hf_lppe_relatedReferencePoints, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointRelationship },
  { &hf_lppe_mapDataInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_MapDataInformation },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ReferencePoint(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ReferencePoint, OMA_LPPe_ReferencePoint_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_CommonIEsProvideAssistanceData_sequence[] = {
  { &hf_lppe_assistanceContainerList_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AssistanceContainerProvideList },
  { &hf_lppe_providePeriodicADwithUpdate, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ProvidePeriodicADwithUpdate },
  { &hf_lppe_segmentedADTransfer, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_SegmentedADTransfer },
  { &hf_lppe_default_reference_point, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ReferencePoint },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_CommonIEsProvideAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_CommonIEsProvideAssistanceData, OMA_LPPe_CommonIEsProvideAssistanceData_sequence);

  return offset;
}



static int
dissect_lppe_INTEGER_M128_127(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            -128, 127U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_LocalKlobucharModel_sequence[] = {
  { &hf_lppe_validityPeriod , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ValidityPeriod },
  { &hf_lppe_alfa0          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M128_127 },
  { &hf_lppe_alfa1          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M128_127 },
  { &hf_lppe_alfa2          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M128_127 },
  { &hf_lppe_alfa3          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M128_127 },
  { &hf_lppe_beta0          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M128_127 },
  { &hf_lppe_beta1          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M128_127 },
  { &hf_lppe_beta2          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M128_127 },
  { &hf_lppe_beta3          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M128_127 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_LocalKlobucharModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_LocalKlobucharModel, OMA_LPPe_AGNSS_LocalKlobucharModel_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalKlobucharModel_sequence_of[1] = {
  { &hf_lppe_klobucharModel_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_LocalKlobucharModel },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalKlobucharModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalKlobucharModel, SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalKlobucharModel_sequence_of,
                                                  1, 8, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_LocalKlobucharModelElement_sequence[] = {
  { &hf_lppe_validityArea   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ValidityArea },
  { &hf_lppe_klobucharModel , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalKlobucharModel },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_LocalKlobucharModelElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_LocalKlobucharModelElement, OMA_LPPe_AGNSS_LocalKlobucharModelElement_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_LocalKlobucharModelList_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_AGNSS_LocalKlobucharModelList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_LocalKlobucharModelElement },
};

static int
dissect_lppe_OMA_LPPe_AGNSS_LocalKlobucharModelList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_AGNSS_LocalKlobucharModelList, OMA_LPPe_AGNSS_LocalKlobucharModelList_sequence_of,
                                                  1, 16, FALSE);

  return offset;
}


static const value_string lppe_OMA_LPPe_AGNSS_NoaaScales_vals[] = {
  {   0, "g1" },
  {   1, "g2" },
  {   2, "g3" },
  {   3, "g4" },
  {   4, "g5" },
  {   5, "unknown" },
  {   6, "none" },
  { 0, NULL }
};


static int
dissect_lppe_OMA_LPPe_AGNSS_NoaaScales(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     7, NULL, TRUE, 0, NULL);

  return offset;
}


static const value_string lppe_T_ionoIndex_vals[] = {
  {   0, "noaaScales" },
  { 0, NULL }
};

static const per_choice_t T_ionoIndex_choice[] = {
  {   0, &hf_lppe_noaaScales     , ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_AGNSS_NoaaScales },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_T_ionoIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_T_ionoIndex, T_ionoIndex_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_RleIonoElement_sequence[] = {
  { &hf_lppe_regionCount    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_255 },
  { &hf_lppe_ionoIndex      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_ionoIndex },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_RleIonoElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_RleIonoElement, OMA_LPPe_AGNSS_RleIonoElement_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_RleListIono_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_AGNSS_RleListIono_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_RleIonoElement },
};

static int
dissect_lppe_OMA_LPPe_AGNSS_RleListIono(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_AGNSS_RleListIono, OMA_LPPe_AGNSS_RleListIono_sequence_of,
                                                  1, 65535, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_StormElement_sequence[] = {
  { &hf_lppe_validityPeriod , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ValidityPeriod },
  { &hf_lppe_rleListIono    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_RleListIono },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_StormElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_StormElement, OMA_LPPe_AGNSS_StormElement_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_StormList_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_AGNSS_StormList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_StormElement },
};

static int
dissect_lppe_OMA_LPPe_AGNSS_StormList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_AGNSS_StormList, OMA_LPPe_AGNSS_StormList_sequence_of,
                                                  1, 16, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_IonoStormIndication_sequence[] = {
  { &hf_lppe_area           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ValidityArea },
  { &hf_lppe_stormList      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_StormList },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_IonoStormIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_IonoStormIndication, OMA_LPPe_AGNSS_IonoStormIndication_sequence);

  return offset;
}


static const per_sequence_t T_staticModels_sequence[] = {
  { &hf_lppe_localKlobucharModelList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_LocalKlobucharModelList },
  { &hf_lppe_ionoStormIndication, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_IonoStormIndication },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_staticModels(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_staticModels, T_staticModels_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersProvide_sequence[] = {
  { &hf_lppe_duration_03    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_Duration },
  { &hf_lppe_rate           , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_1_64 },
  { &hf_lppe_referencePosition, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lpp_Ellipsoid_Point },
  { &hf_lppe_validityArea   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ValidityArea },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersProvide(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersProvide, OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersProvide_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_WideAreaIonoSurfaceCommon_sequence[] = {
  { &hf_lppe_validityPeriod , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ValidityPeriod },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfaceCommon(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfaceCommon, OMA_LPPe_AGNSS_WideAreaIonoSurfaceCommon_sequence);

  return offset;
}


static const value_string lppe_T_waIono_vals[] = {
  {   0, "controlParameters" },
  {   1, "commonProvide" },
  { 0, NULL }
};

static const per_choice_t T_waIono_choice[] = {
  {   0, &hf_lppe_controlParameters, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersProvide },
  {   1, &hf_lppe_commonProvide  , ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfaceCommon },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_T_waIono(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_T_waIono, T_waIono_choice,
                                 NULL);

  return offset;
}


static const value_string lppe_OMA_LPPe_AGNSS_IonosphericModel_vals[] = {
  {   0, "staticModels" },
  {   1, "waIono" },
  { 0, NULL }
};

static const per_choice_t OMA_LPPe_AGNSS_IonosphericModel_choice[] = {
  {   0, &hf_lppe_staticModels   , ASN1_EXTENSION_ROOT    , dissect_lppe_T_staticModels },
  {   1, &hf_lppe_waIono         , ASN1_EXTENSION_ROOT    , dissect_lppe_T_waIono },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_IonosphericModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_OMA_LPPe_AGNSS_IonosphericModel, OMA_LPPe_AGNSS_IonosphericModel_choice,
                                 NULL);

  return offset;
}



static int
dissect_lppe_INTEGER_M1000_8192(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            -1000, 8192U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_0_4095(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 4095U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_M8192_8191(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            -8192, 8191U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_0_16383(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 16383U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_MappingFunctionParameters_sequence[] = {
  { &hf_lppe_ah             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_16383 },
  { &hf_lppe_bh             , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_16383 },
  { &hf_lppe_ch             , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_16383 },
  { &hf_lppe_aw             , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_16383 },
  { &hf_lppe_bw             , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_16383 },
  { &hf_lppe_cw             , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_16383 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_MappingFunctionParameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_MappingFunctionParameters, OMA_LPPe_AGNSS_MappingFunctionParameters_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement_sequence[] = {
  { &hf_lppe_validityPeriod , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ValidityPeriod },
  { &hf_lppe_zh0            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_4095 },
  { &hf_lppe_eh             , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_4095 },
  { &hf_lppe_zw0            , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_4095 },
  { &hf_lppe_ew             , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_4095 },
  { &hf_lppe_gN             , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M8192_8191 },
  { &hf_lppe_gE             , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M8192_8191 },
  { &hf_lppe_mappingFunctionParameters, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_MappingFunctionParameters },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement, OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement_sequence_of[1] = {
  { &hf_lppe_delayList_item , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement, SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement_sequence_of,
                                                  1, 8, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_LocalTroposphereDelayAreaElement_sequence[] = {
  { &hf_lppe_validityArea   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ValidityArea },
  { &hf_lppe_refAltitude    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M1000_8192 },
  { &hf_lppe_gradientReferencePosition, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lpp_Ellipsoid_Point },
  { &hf_lppe_delayList      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayAreaElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayAreaElement, OMA_LPPe_AGNSS_LocalTroposphereDelayAreaElement_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_LocalTroposphereDelayList_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayAreaElement },
};

static int
dissect_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayList, OMA_LPPe_AGNSS_LocalTroposphereDelayList_sequence_of,
                                                  1, 8, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_M1024_1023(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            -1024, 1023U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_M64_63(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            -64, 63U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_M16_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            -16, 16U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_M8_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            -8, 7U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement_sequence[] = {
  { &hf_lppe_validityPeriod , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ValidityPeriod },
  { &hf_lppe_pressure       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M1024_1023 },
  { &hf_lppe_pressureRate   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M128_127 },
  { &hf_lppe_gN_pressure    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M128_127 },
  { &hf_lppe_gE_pressure    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M128_127 },
  { &hf_lppe_temperature    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M64_63 },
  { &hf_lppe_temperatureRate, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M16_16 },
  { &hf_lppe_gN_temperature , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M8_7 },
  { &hf_lppe_gE_temperature , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M8_7 },
  { &hf_lppe_mappingFunctionParameters, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_MappingFunctionParameters },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement, OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement_sequence_of[1] = {
  { &hf_lppe_parameterList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement, SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement_sequence_of,
                                                  1, 8, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_LocalSurfaceParametersAreaElement_sequence[] = {
  { &hf_lppe_validityArea   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ValidityArea },
  { &hf_lppe_refAltitude    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M1000_8192 },
  { &hf_lppe_gradientReferencePosition, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lpp_Ellipsoid_Point },
  { &hf_lppe_parameterList  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersAreaElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersAreaElement, OMA_LPPe_AGNSS_LocalSurfaceParametersAreaElement_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_LocalSurfaceParametersList_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersAreaElement },
};

static int
dissect_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersList, OMA_LPPe_AGNSS_LocalSurfaceParametersList_sequence_of,
                                                  1, 8, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_TroposphereModel_sequence[] = {
  { &hf_lppe_troposphereDelayList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayList },
  { &hf_lppe_surfaceParametersList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersList },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_TroposphereModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_TroposphereModel, OMA_LPPe_AGNSS_TroposphereModel_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_PressureAssistanceElement_sequence[] = {
  { &hf_lppe_validityPeriod , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ValidityPeriod },
  { &hf_lppe_pressure       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M1024_1023 },
  { &hf_lppe_pressureRate   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M128_127 },
  { &hf_lppe_gN_01          , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M128_127 },
  { &hf_lppe_gE_01          , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M128_127 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_PressureAssistanceElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_PressureAssistanceElement, OMA_LPPe_AGNSS_PressureAssistanceElement_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_PressureAssistanceElement_sequence_of[1] = {
  { &hf_lppe_pressureAssistanceList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_PressureAssistanceElement },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_PressureAssistanceElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_PressureAssistanceElement, SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_PressureAssistanceElement_sequence_of,
                                                  1, 16, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_AltitudeAssistanceAreaElement_sequence[] = {
  { &hf_lppe_validityArea   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ValidityArea },
  { &hf_lppe_gradientReferencePosition_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lpp_EllipsoidPointWithAltitudeAndUncertaintyEllipsoid },
  { &hf_lppe_refAltitude    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M1000_8192 },
  { &hf_lppe_pressureAssistanceList, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_PressureAssistanceElement },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceAreaElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceAreaElement, OMA_LPPe_AGNSS_AltitudeAssistanceAreaElement_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_AltitudeAssistanceList_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceAreaElement },
};

static int
dissect_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceList, OMA_LPPe_AGNSS_AltitudeAssistanceList_sequence_of,
                                                  1, 8, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_1000_2000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            1000U, 2000U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_SolarRadiation_sequence[] = {
  { &hf_lppe_solarRadiation_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1000_2000 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_SolarRadiation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_SolarRadiation, OMA_LPPe_AGNSS_SolarRadiation_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_CCPprovideCommonParameters_sequence[] = {
  { &hf_lppe_ccpReferenceTime, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SystemTime },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_CCPprovideCommonParameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_CCPprovideCommonParameters, OMA_LPPe_AGNSS_CCPprovideCommonParameters_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_CCPsignalSupport_sequence[] = {
  { &hf_lppe_gnss           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_ID },
  { &hf_lppe_signals        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SignalIDs },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_CCPsignalSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_CCPsignalSupport, OMA_LPPe_AGNSS_CCPsignalSupport_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPsignalSupport_sequence_of[1] = {
  { &hf_lppe_signalSupport_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_CCPsignalSupport },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPsignalSupport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPsignalSupport, SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPsignalSupport_sequence_of,
                                                  1, 8, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_CCPsupportArea_sequence[] = {
  { &hf_lppe_areaDescription, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ValidityArea },
  { &hf_lppe_signalSupport  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPsignalSupport },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_CCPsupportArea(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_CCPsupportArea, OMA_LPPe_AGNSS_CCPsupportArea_sequence);

  return offset;
}


static const value_string lppe_T_antennaDescription_vals[] = {
  {   0, "igsAntennaName" },
  {   1, "proprietaryName" },
  { 0, NULL }
};

static const per_choice_t T_antennaDescription_choice[] = {
  {   0, &hf_lppe_igsAntennaName , ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_CharArray },
  {   1, &hf_lppe_proprietaryName, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_CharArray },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_T_antennaDescription(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_T_antennaDescription, T_antennaDescription_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_AntennaDescription_sequence[] = {
  { &hf_lppe_antennaDescription_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_antennaDescription },
  { &hf_lppe_antennaSetupID , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_255 },
  { &hf_lppe_antennaSerialNumber, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_CharArray },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_AntennaDescription(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_AntennaDescription, OMA_LPPe_AGNSS_AntennaDescription_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_CCPreferenceStationElement_sequence[] = {
  { &hf_lppe_referenceStationID, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_CCPreferenceStationID },
  { &hf_lppe_referenceStationLocation, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_HighAccuracy3Dposition },
  { &hf_lppe_antennaDescription, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_AntennaDescription },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_CCPreferenceStationElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_CCPreferenceStationElement, OMA_LPPe_AGNSS_CCPreferenceStationElement_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_CCPreferenceStationList_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_AGNSS_CCPreferenceStationList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_CCPreferenceStationElement },
};

static int
dissect_lppe_OMA_LPPe_AGNSS_CCPreferenceStationList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_AGNSS_CCPreferenceStationList, OMA_LPPe_AGNSS_CCPreferenceStationList_sequence_of,
                                                  0, maxReferenceStations, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_CCPprovideControlParameters_sequence[] = {
  { &hf_lppe_ccpSupportArea , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_CCPsupportArea },
  { &hf_lppe_ccpNeighborList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_CCPreferenceStationList },
  { &hf_lppe_duration_03    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_Duration },
  { &hf_lppe_rate           , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_1_64 },
  { &hf_lppe_ccpReferenceStationList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_CCPreferenceStationList },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_CCPprovideControlParameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_CCPprovideControlParameters, OMA_LPPe_AGNSS_CCPprovideControlParameters_sequence);

  return offset;
}


static const value_string lppe_OMA_LPPe_AGNSS_CCPassistCommonProvide_vals[] = {
  {   0, "ccpProvideCommonParameters" },
  {   1, "ccpProvideControlParameters" },
  { 0, NULL }
};

static const per_choice_t OMA_LPPe_AGNSS_CCPassistCommonProvide_choice[] = {
  {   0, &hf_lppe_ccpProvideCommonParameters, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_AGNSS_CCPprovideCommonParameters },
  {   1, &hf_lppe_ccpProvideControlParameters, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_AGNSS_CCPprovideControlParameters },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_CCPassistCommonProvide(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_OMA_LPPe_AGNSS_CCPassistCommonProvide, OMA_LPPe_AGNSS_CCPassistCommonProvide_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_CommonAssistData_sequence[] = {
  { &hf_lppe_ionosphericModel, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_IonosphericModel },
  { &hf_lppe_troposphereModel, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_TroposphereModel },
  { &hf_lppe_altitudeAssistance, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceList },
  { &hf_lppe_solarRadiation , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_SolarRadiation },
  { &hf_lppe_ccpAssistCommonProvide, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_CCPassistCommonProvide },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_CommonAssistData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_CommonAssistData, OMA_LPPe_AGNSS_CommonAssistData_sequence);

  return offset;
}



static int
dissect_lppe_INTEGER_0_8191(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 8191U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_M4096_4095(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            -4096, 4095U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVelement_sequence[] = {
  { &hf_lppe_svID           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_SV_ID },
  { &hf_lppe_a0             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_8191 },
  { &hf_lppe_e1             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M4096_4095 },
  { &hf_lppe_n1             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M4096_4095 },
  { &hf_lppe_e2             , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M4096_4095 },
  { &hf_lppe_n2             , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M4096_4095 },
  { &hf_lppe_en             , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M4096_4095 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVelement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVelement, OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVelement_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVlist_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVlist_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVelement },
};

static int
dissect_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVlist(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVlist, OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVlist_sequence_of,
                                                  1, 64, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_1_4095(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            1U, 4095U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_1_511(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            1U, 511U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_M30000_30000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            -30000, 30000U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_PCOelement_sequence[] = {
  { &hf_lppe_xOffsetSBF     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M30000_30000 },
  { &hf_lppe_yOffsetSBF     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M30000_30000 },
  { &hf_lppe_zOffsetSBF     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M30000_30000 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_PCOelement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_PCOelement, OMA_LPPe_AGNSS_PCOelement_sequence);

  return offset;
}


static const value_string lppe_OMA_LPPe_AGNSS_SVtype_vals[] = {
  {   0, "gpsIIR" },
  {   1, "gpsIIRM" },
  {   2, "gpsIIF" },
  {   3, "gpsIII" },
  {   4, "glonassM" },
  {   5, "glonassK1" },
  {   6, "glonassK2" },
  {   7, "glonassKM" },
  {   8, "unknown" },
  { 0, NULL }
};


static int
dissect_lppe_OMA_LPPe_AGNSS_SVtype(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     9, NULL, TRUE, 0, NULL);

  return offset;
}



static int
dissect_lppe_INTEGER_0_1000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 1000U, NULL, FALSE);

  return offset;
}


static const per_sequence_t T_svInfo_sequence[] = {
  { &hf_lppe_svType         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_SVtype },
  { &hf_lppe_svNumber       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_1000 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_svInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_svInfo, T_svInfo_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_MechanicsElement_sequence[] = {
  { &hf_lppe_svid           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_SV_ID },
  { &hf_lppe_mass           , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_1_4095 },
  { &hf_lppe_effectiveReflectivityArea, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_1_511 },
  { &hf_lppe_pco            , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_PCOelement },
  { &hf_lppe_svInfo         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_svInfo },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_MechanicsElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_MechanicsElement, OMA_LPPe_AGNSS_MechanicsElement_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_MechanicsForAllSVs_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_AGNSS_MechanicsForAllSVs_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_MechanicsElement },
};

static int
dissect_lppe_OMA_LPPe_AGNSS_MechanicsForAllSVs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_AGNSS_MechanicsForAllSVs, OMA_LPPe_AGNSS_MechanicsForAllSVs_sequence_of,
                                                  1, 64, FALSE);

  return offset;
}


static const value_string lppe_T_pd_vals[] = {
  {   0, "pilot" },
  {   1, "data" },
  {   2, "notapplicable" },
  { 0, NULL }
};


static int
dissect_lppe_T_pd(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t T_reference_sequence[] = {
  { &hf_lppe_signal         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SignalID },
  { &hf_lppe_pd             , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_pd },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_reference(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_reference, T_reference_sequence);

  return offset;
}


static const value_string lppe_T_pd_01_vals[] = {
  {   0, "pilot" },
  {   1, "data" },
  {   2, "notapplicable" },
  { 0, NULL }
};


static int
dissect_lppe_T_pd_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_DCBelement_sequence[] = {
  { &hf_lppe_signal         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SignalID },
  { &hf_lppe_pd_01          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_pd_01 },
  { &hf_lppe_dcb            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M4096_4095 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_DCBelement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_DCBelement, OMA_LPPe_AGNSS_DCBelement_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_DCBlist_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_AGNSS_DCBlist_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_DCBelement },
};

static int
dissect_lppe_OMA_LPPe_AGNSS_DCBlist(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_AGNSS_DCBlist, OMA_LPPe_AGNSS_DCBlist_sequence_of,
                                                  1, 16, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_DCBlistElement_sequence[] = {
  { &hf_lppe_svid           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_SV_ID },
  { &hf_lppe_reference      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_reference },
  { &hf_lppe_dcbList        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_DCBlist },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_DCBlistElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_DCBlistElement, OMA_LPPe_AGNSS_DCBlistElement_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_DCBsForAllSVs_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_AGNSS_DCBsForAllSVs_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_DCBlistElement },
};

static int
dissect_lppe_OMA_LPPe_AGNSS_DCBsForAllSVs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_AGNSS_DCBsForAllSVs, OMA_LPPe_AGNSS_DCBsForAllSVs_sequence_of,
                                                  1, 64, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_0_31(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 31U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_0_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 7U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_ClockModelDegradationModel_sequence[] = {
  { &hf_lppe_clockRMS0      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_31 },
  { &hf_lppe_clockRMS1      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_7 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_ClockModelDegradationModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_ClockModelDegradationModel, OMA_LPPe_AGNSS_ClockModelDegradationModel_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_OrbitModelDegradationModel_sequence[] = {
  { &hf_lppe_orbitRMS0      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_31 },
  { &hf_lppe_orbitRMS1      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_7 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_OrbitModelDegradationModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_OrbitModelDegradationModel, OMA_LPPe_AGNSS_OrbitModelDegradationModel_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_NavModelDegradationModelElement_sequence[] = {
  { &hf_lppe_svid           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_SV_ID },
  { &hf_lppe_clockDegradationModel, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_ClockModelDegradationModel },
  { &hf_lppe_orbitDegradationModel, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_OrbitModelDegradationModel },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelElement, OMA_LPPe_AGNSS_NavModelDegradationModelElement_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_NavModelDegradationModelList_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelElement },
};

static int
dissect_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelList, OMA_LPPe_AGNSS_NavModelDegradationModelList_sequence_of,
                                                  1, 64, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_0_14989622(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 14989622U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_0_63(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 63U, NULL, FALSE);

  return offset;
}


static const value_string lppe_OMA_LPPe_AGNSS_CodePhaseError_vals[] = {
  {   0, "codePhaseRMSError" },
  {   1, "cnr" },
  { 0, NULL }
};

static const per_choice_t OMA_LPPe_AGNSS_CodePhaseError_choice[] = {
  {   0, &hf_lppe_codePhaseRMSError, ASN1_EXTENSION_ROOT    , dissect_lppe_INTEGER_0_63 },
  {   1, &hf_lppe_cnr            , ASN1_EXTENSION_ROOT    , dissect_lppe_INTEGER_0_255 },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_CodePhaseError(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_OMA_LPPe_AGNSS_CodePhaseError, OMA_LPPe_AGNSS_CodePhaseError_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_CCPperSVelement_sequence[] = {
  { &hf_lppe_svID           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_SV_ID },
  { &hf_lppe_integerCodePhase, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_255 },
  { &hf_lppe_codePhase      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_14989622 },
  { &hf_lppe_codePhaseError , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_CodePhaseError },
  { &hf_lppe_phaseRangeDelta, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M524288_524287 },
  { &hf_lppe_phaseRangeRMSerror, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_127 },
  { &hf_lppe_lockIndicator  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_CCPperSVelement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_CCPperSVelement, OMA_LPPe_AGNSS_CCPperSVelement_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_CCPperSVelement_sequence_of[1] = {
  { &hf_lppe_ccpPerSVlist_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_CCPperSVelement },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_CCPperSVelement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_CCPperSVelement, SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_CCPperSVelement_sequence_of,
                                                  1, 64, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_CCPperSignalElement_sequence[] = {
  { &hf_lppe_signal_ID      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SignalID },
  { &hf_lppe_ccpPerSVlist   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_CCPperSVelement },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_CCPperSignalElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_CCPperSignalElement, OMA_LPPe_AGNSS_CCPperSignalElement_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPperSignalElement_sequence_of[1] = {
  { &hf_lppe_ccpPerSignalList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_CCPperSignalElement },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPperSignalElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPperSignalElement, SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPperSignalElement_sequence_of,
                                                  1, 8, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_CCPassistGenericProvideElement_sequence[] = {
  { &hf_lppe_referenceStationID, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_CCPreferenceStationID },
  { &hf_lppe_ccpPerSignalList, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPperSignalElement },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_CCPassistGenericProvideElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_CCPassistGenericProvideElement, OMA_LPPe_AGNSS_CCPassistGenericProvideElement_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_CCPassistGenericProvide_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_AGNSS_CCPassistGenericProvide_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_CCPassistGenericProvideElement },
};

static int
dissect_lppe_OMA_LPPe_AGNSS_CCPassistGenericProvide(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_AGNSS_CCPassistGenericProvide, OMA_LPPe_AGNSS_CCPassistGenericProvide_sequence_of,
                                                  1, maxReferenceStations, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_1_30(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            1U, 30U, NULL, FALSE);

  return offset;
}


static const per_sequence_t T_fixedInterval_sequence[] = {
  { &hf_lppe_beginTime      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SystemTime },
  { &hf_lppe_interval       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_30 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_fixedInterval(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_fixedInterval, T_fixedInterval_sequence);

  return offset;
}



static int
dissect_lppe_INTEGER_M100000000_100000000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            -100000000, 100000000U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_M1000000000_1000000000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            -1000000000, 1000000000U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_1_100(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            1U, 100U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_NavModel_BigNumber_sequence[] = {
  { &hf_lppe_msb            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M1000000000_1000000000 },
  { &hf_lppe_lsb            , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_1_100 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_NavModel_BigNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_NavModel_BigNumber, OMA_LPPe_AGNSS_NavModel_BigNumber_sequence);

  return offset;
}


static const per_sequence_t T_bases_sequence[] = {
  { &hf_lppe_baseForPosVel  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M100000000_100000000 },
  { &hf_lppe_baseForCcRate  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_NavModel_BigNumber },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_bases(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_bases, T_bases_sequence);

  return offset;
}


static const value_string lppe_T_referencedTo_vals[] = {
  {   0, "centerOfMass" },
  {   1, "antennaPhaseCenter" },
  { 0, NULL }
};


static int
dissect_lppe_T_referencedTo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     2, NULL, TRUE, 0, NULL);

  return offset;
}



static int
dissect_lppe_INTEGER_0_1000000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 1000000U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_0_10000000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 10000000U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_NavModel_STDmatrix_sequence[] = {
  { &hf_lppe_e11            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_1000 },
  { &hf_lppe_e22            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_1000 },
  { &hf_lppe_e33            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_1000 },
  { &hf_lppe_e44            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_1000000 },
  { &hf_lppe_e12            , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_10000000 },
  { &hf_lppe_e13            , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_10000000 },
  { &hf_lppe_e14            , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_10000000 },
  { &hf_lppe_e23            , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_10000000 },
  { &hf_lppe_e24            , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_10000000 },
  { &hf_lppe_e34            , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_10000000 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_NavModel_STDmatrix(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_NavModel_STDmatrix, OMA_LPPe_AGNSS_NavModel_STDmatrix_sequence);

  return offset;
}


static const per_sequence_t T_rateRecord_sequence[] = {
  { &hf_lppe_svClockRate    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_NavModel_BigNumber },
  { &hf_lppe_ecefVelocityX  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_NavModel_BigNumber },
  { &hf_lppe_ecefVelocityY  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_NavModel_BigNumber },
  { &hf_lppe_ecefVelocityZ  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_NavModel_BigNumber },
  { &hf_lppe_clockRateVelSTD, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_NavModel_STDmatrix },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_rateRecord(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_rateRecord, T_rateRecord_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_NavModel_PVTelement_sequence[] = {
  { &hf_lppe_svID           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_SV_ID },
  { &hf_lppe_svClockOffset  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_NavModel_BigNumber },
  { &hf_lppe_ecefPositionX  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_NavModel_BigNumber },
  { &hf_lppe_ecefPositionY  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_NavModel_BigNumber },
  { &hf_lppe_ecefPositionZ  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_NavModel_BigNumber },
  { &hf_lppe_clockPosSTD    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_NavModel_STDmatrix },
  { &hf_lppe_rateRecord     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_rateRecord },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_NavModel_PVTelement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_NavModel_PVTelement, OMA_LPPe_AGNSS_NavModel_PVTelement_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_NavModel_PVTelement_sequence_of[1] = {
  { &hf_lppe_svIdList_item  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_NavModel_PVTelement },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_NavModel_PVTelement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_NavModel_PVTelement, SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_NavModel_PVTelement_sequence_of,
                                                  1, 64, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement_sequence[] = {
  { &hf_lppe_time_of_record , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lpp_GNSS_SystemTime },
  { &hf_lppe_svIdList       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_NavModel_PVTelement },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement, OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_97_OF_OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement_sequence_of[1] = {
  { &hf_lppe_pointList_item , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_97_OF_OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_97_OF_OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement, SEQUENCE_SIZE_1_97_OF_OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement_sequence_of,
                                                  1, 97, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_NavModel_CoordinateBased_sequence[] = {
  { &hf_lppe_fixedInterval  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_fixedInterval },
  { &hf_lppe_bases          , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_bases },
  { &hf_lppe_referencedTo   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_referencedTo },
  { &hf_lppe_pointList      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_97_OF_OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_NavModel_CoordinateBased(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_NavModel_CoordinateBased, OMA_LPPe_AGNSS_NavModel_CoordinateBased_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_NavModelList_sequence[] = {
  { &hf_lppe_coordinateBased, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_NavModel_CoordinateBased },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_NavModelList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_NavModelList, OMA_LPPe_AGNSS_NavModelList_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_GenericAssistDataElement_sequence[] = {
  { &hf_lppe_gnss_ID        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_ID },
  { &hf_lppe_wideAreaIonoSurfacePerSVlist, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVlist },
  { &hf_lppe_mechanicsForAllSVs, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_MechanicsForAllSVs },
  { &hf_lppe_dcbsForAllSVs  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_DCBsForAllSVs },
  { &hf_lppe_navModelDegradationModel, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelList },
  { &hf_lppe_ccpAssistProvide, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_CCPassistGenericProvide },
  { &hf_lppe_navModelList   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_NavModelList },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_GenericAssistDataElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_GenericAssistDataElement, OMA_LPPe_AGNSS_GenericAssistDataElement_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_GenericAssistData_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_AGNSS_GenericAssistData_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_GenericAssistDataElement },
};

static int
dissect_lppe_OMA_LPPe_AGNSS_GenericAssistData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_AGNSS_GenericAssistData, OMA_LPPe_AGNSS_GenericAssistData_sequence_of,
                                                  1, 16, FALSE);

  return offset;
}


static const value_string lppe_T_waIonoErrorCauses_vals[] = {
  {   0, "undefined" },
  {   1, "waIonoNotSupportedByServer" },
  {   2, "waIonoNotSupportedInTargetArea" },
  {   3, "waIonoNotSupportedForAnyRequestedGNSS" },
  { 0, NULL }
};


static int
dissect_lppe_T_waIonoErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     4, NULL, TRUE, 0, NULL);

  return offset;
}


static const value_string lppe_T_ccpErrorCauses_vals[] = {
  {   0, "undefined" },
  {   1, "ccpNotSupportedByServer" },
  {   2, "ccpNotSupportedInTargetArea" },
  {   3, "ccpNotSupportedForAnyRequestedSignal" },
  {   4, "ccpQorCannotBeMet" },
  {   5, "ccpUnableToModifyControlParameters" },
  {   6, "ccpMultiReferenceStationNotSupported" },
  {   7, "ccpNeighborListNotSupported" },
  {   8, "ccpSupportAreaAssistanceNotSupported" },
  { 0, NULL }
};


static int
dissect_lppe_T_ccpErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     9, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_LocationServerErrorCauses_sequence[] = {
  { &hf_lppe_waIonoErrorCauses, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_waIonoErrorCauses },
  { &hf_lppe_ccpErrorCauses , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_ccpErrorCauses },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_LocationServerErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_LocationServerErrorCauses, OMA_LPPe_AGNSS_LocationServerErrorCauses_sequence);

  return offset;
}


static const value_string lppe_T_highAccuracyErrorCauses_vals[] = {
  {   0, "undefined" },
  {   1, "highAccuracyMethodNotSupported" },
  { 0, NULL }
};


static int
dissect_lppe_T_highAccuracyErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     2, NULL, TRUE, 0, NULL);

  return offset;
}


static const value_string lppe_T_ionosphereMeasurementErrorCauses_vals[] = {
  {   0, "undefined" },
  {   1, "ionosphereMeasurementsNotSupported" },
  {   2, "ionosphereMeasurementsNotAvailable" },
  { 0, NULL }
};


static int
dissect_lppe_T_ionosphereMeasurementErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}


static const value_string lppe_T_environmentObservationErrorCauses_vals[] = {
  {   0, "undefined" },
  {   1, "surfaceMeasurementsNotSupported" },
  {   2, "surfaceMeasurementsNotAvailable" },
  { 0, NULL }
};


static int
dissect_lppe_T_environmentObservationErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}


static const value_string lppe_T_haGNSSerrorCauses_vals[] = {
  {   0, "undefined" },
  {   1, "haGNSSnotSupportedByTarget" },
  {   2, "haGNSSunavailableForAllRequestedSignals" },
  {   3, "haGNSSantennaInformationNotSupported" },
  {   4, "haGNSSantennaInformationNotAvailable" },
  {   5, "haGNSSpressureInformationNotSupported" },
  {   6, "haGNSSpressureInformationNotAvailable" },
  {   7, "haGNSSunableToModifyControlParameters" },
  { 0, NULL }
};


static int
dissect_lppe_T_haGNSSerrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     8, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_TargetDeviceErrorCauses_sequence[] = {
  { &hf_lppe_highAccuracyErrorCauses, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_highAccuracyErrorCauses },
  { &hf_lppe_ionosphereMeasurementErrorCauses, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_ionosphereMeasurementErrorCauses },
  { &hf_lppe_environmentObservationErrorCauses, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_environmentObservationErrorCauses },
  { &hf_lppe_haGNSSerrorCauses, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_haGNSSerrorCauses },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_TargetDeviceErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_TargetDeviceErrorCauses, OMA_LPPe_AGNSS_TargetDeviceErrorCauses_sequence);

  return offset;
}


static const value_string lppe_OMA_LPPe_AGNSS_Error_vals[] = {
  {   0, "agnss-locationServerErrorCauses" },
  {   1, "agnss-targetDeviceErrorCauses" },
  { 0, NULL }
};

static const per_choice_t OMA_LPPe_AGNSS_Error_choice[] = {
  {   0, &hf_lppe_agnss_locationServerErrorCauses, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_AGNSS_LocationServerErrorCauses },
  {   1, &hf_lppe_agnss_targetDeviceErrorCauses, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_AGNSS_TargetDeviceErrorCauses },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_Error(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_OMA_LPPe_AGNSS_Error, OMA_LPPe_AGNSS_Error_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_ProvideAssistanceData_sequence[] = {
  { &hf_lppe_commonAssistData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_CommonAssistData },
  { &hf_lppe_genericAssistData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_GenericAssistData },
  { &hf_lppe_error_01       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_Error },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_ProvideAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_ProvideAssistanceData, OMA_LPPe_AGNSS_ProvideAssistanceData_sequence);

  return offset;
}



static int
dissect_lppe_BIT_STRING_SIZE_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     10, 10, FALSE, NULL, 0, NULL, NULL);

  return offset;
}


static const value_string lppe_T_resolution_vals[] = {
  {   0, "ns-5" },
  {   1, "ns-10" },
  {   2, "ns-50" },
  {   3, "ns-100" },
  { 0, NULL }
};


static int
dissect_lppe_T_resolution(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     4, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_RTDquality_sequence[] = {
  { &hf_lppe_resolution     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_resolution },
  { &hf_lppe_quality        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_127 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_RTDquality(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_RTDquality, OMA_LPPe_OTDOA_RTDquality_sequence);

  return offset;
}


static const per_sequence_t T_cellLocation_sequence[] = {
  { &hf_lppe_reference_point, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ReferencePoint },
  { &hf_lppe_relative_location, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_RelativeLocation },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_cellLocation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_cellLocation, T_cellLocation_sequence);

  return offset;
}


static const per_sequence_t T_femtoCellInfo_sequence[] = {
  { &hf_lppe_location_reliability, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_1_100 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_femtoCellInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_femtoCellInfo, T_femtoCellInfo_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_PositionCalculationInfoRef_sequence[] = {
  { &hf_lppe_systemFrameNumber, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_BIT_STRING_SIZE_10 },
  { &hf_lppe_rtdReferenceStd, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_RTDquality },
  { &hf_lppe_cellLocation   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_cellLocation },
  { &hf_lppe_femtoCellInfo  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_femtoCellInfo },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_PositionCalculationInfoRef(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_PositionCalculationInfoRef, OMA_LPPe_OTDOA_PositionCalculationInfoRef_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_ReferenceCellInfo_sequence[] = {
  { &hf_lppe_referenceCellInfo, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_OTDOA_ReferenceCellInfo },
  { &hf_lppe_positionCalculationInfoRef, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_PositionCalculationInfoRef },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_ReferenceCellInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_ReferenceCellInfo, OMA_LPPe_OTDOA_ReferenceCellInfo_sequence);

  return offset;
}



static int
dissect_lppe_INTEGER_0_10229(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 10229U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_0_99999(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 99999U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_M100_100(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            -100, 100U, NULL, FALSE);

  return offset;
}


static const per_sequence_t T_rtdInfo_sequence[] = {
  { &hf_lppe_subframeOffset , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_10229 },
  { &hf_lppe_fineRTD        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_99999 },
  { &hf_lppe_fineRTDstd     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_RTDquality },
  { &hf_lppe_fineRTDdriftRate, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M100_100 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_rtdInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_rtdInfo, T_rtdInfo_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_CellData_sequence[] = {
  { &hf_lppe_otdoa_NeighbourCellInfoElement, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_OTDOA_NeighbourCellInfoElement },
  { &hf_lppe_rtdInfo        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_rtdInfo },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_CellData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_CellData, OMA_LPPe_OTDOA_CellData_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_OTDOA_CellData_sequence_of[1] = {
  { &hf_lppe_otdoa_eNB_CellDataList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_CellData },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_OTDOA_CellData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_OTDOA_CellData, SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_OTDOA_CellData_sequence_of,
                                                  1, maxLTEMacroCells, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB_sequence[] = {
  { &hf_lppe_relative_Location, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_RelativeLocation },
  { &hf_lppe_otdoa_eNB_CellDataList, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_OTDOA_CellData },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB, OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB_sequence_of[1] = {
  { &hf_lppe_neighbourCellInfoList_eNB_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB, SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB_sequence_of,
                                                  1, maxLTEeNBs, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB_sequence[] = {
  { &hf_lppe_relative_Location, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_RelativeLocation },
  { &hf_lppe_location_reliability, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_1_100 },
  { &hf_lppe_otdoa_HeNB_CellDataList, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_CellData },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB, OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB_sequence_of[1] = {
  { &hf_lppe_neighbourCellInfoList_HeNB_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB, SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB_sequence_of,
                                                  1, maxLTEHeNBs, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_NeighbourFreqCellInfoList_sequence[] = {
  { &hf_lppe_neighbourCellInfoList_eNB, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB },
  { &hf_lppe_neighbourCellInfoList_HeNB, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_NeighbourFreqCellInfoList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_NeighbourFreqCellInfoList, OMA_LPPe_OTDOA_NeighbourFreqCellInfoList_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_NeighbourCellInfoList_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_NeighbourFreqCellInfoList },
};

static int
dissect_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoList, OMA_LPPe_OTDOA_NeighbourCellInfoList_sequence_of,
                                                  1, maxFreqLayers, FALSE);

  return offset;
}


static const value_string lppe_T_cause_vals[] = {
  {   0, "undefined" },
  {   1, "locationCalculationAssistanceDataNotSupported" },
  {   2, "locationCalculationAssistanceDataSupportedButCurrentlyNotAvailable" },
  { 0, NULL }
};


static int
dissect_lppe_T_cause(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_LocationServerErrorCauses_sequence[] = {
  { &hf_lppe_cause          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_LocationServerErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_LocationServerErrorCauses, OMA_LPPe_OTDOA_LocationServerErrorCauses_sequence);

  return offset;
}


static const value_string lppe_T_cause_01_vals[] = {
  {   0, "undefined" },
  {   1, "there-were-not-enough-signals-received-for-ueBased-otdoa" },
  {   2, "location-calculation-assistance-data-missing" },
  { 0, NULL }
};


static int
dissect_lppe_T_cause_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_TargetDeviceErrorCauses_sequence[] = {
  { &hf_lppe_cause_01       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause_01 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_TargetDeviceErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_TargetDeviceErrorCauses, OMA_LPPe_OTDOA_TargetDeviceErrorCauses_sequence);

  return offset;
}


static const value_string lppe_OMA_LPPe_OTDOA_Error_vals[] = {
  {   0, "locationServerErrorCauses" },
  {   1, "targetDeviceErrorCauses" },
  { 0, NULL }
};

static const per_choice_t OMA_LPPe_OTDOA_Error_choice[] = {
  {   0, &hf_lppe_locationServerErrorCauses, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_OTDOA_LocationServerErrorCauses },
  {   1, &hf_lppe_targetDeviceErrorCauses, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_OTDOA_TargetDeviceErrorCauses },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_Error(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_OMA_LPPe_OTDOA_Error, OMA_LPPe_OTDOA_Error_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_ProvideAssistanceData_sequence[] = {
  { &hf_lppe_otdoa_ReferenceCellInfo, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_ReferenceCellInfo },
  { &hf_lppe_otdoa_NeighbourCellInfo, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoList },
  { &hf_lppe_otdoa_Error    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_Error },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_ProvideAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_ProvideAssistanceData, OMA_LPPe_OTDOA_ProvideAssistanceData_sequence);

  return offset;
}



static int
dissect_lppe_INTEGER_0_1023(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 1023U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_CellNonUniqueIDGERAN_sequence[] = {
  { &hf_lppe_bsic           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_63 },
  { &hf_lppe_bcch           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_1023 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_CellNonUniqueIDGERAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_CellNonUniqueIDGERAN, OMA_LPPe_CellNonUniqueIDGERAN_sequence);

  return offset;
}


static const value_string lppe_OMA_LPPe_EOTD_TimeSlotScheme_vals[] = {
  {   0, "equalLength" },
  {   1, "variousLength" },
  { 0, NULL }
};


static int
dissect_lppe_OMA_LPPe_EOTD_TimeSlotScheme(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     2, NULL, FALSE, 0, NULL);

  return offset;
}


static const value_string lppe_T_btsPosition_vals[] = {
  {   0, "ellipsoidPoint" },
  {   1, "ellipsoidPointWithAltitudeAndUncertaintyEllipsoid" },
  { 0, NULL }
};

static const per_choice_t T_btsPosition_choice[] = {
  {   0, &hf_lppe_ellipsoidPoint , ASN1_EXTENSION_ROOT    , dissect_lpp_Ellipsoid_Point },
  {   1, &hf_lppe_ellipsoidPointWithAltitudeAndUncertaintyEllipsoid, ASN1_EXTENSION_ROOT    , dissect_lpp_EllipsoidPointWithAltitudeAndUncertaintyEllipsoid },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_T_btsPosition(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_T_btsPosition, T_btsPosition_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_EOTD_ReferenceBTSForAssistance_sequence[] = {
  { &hf_lppe_bsicAndCarrier , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_CellNonUniqueIDGERAN },
  { &hf_lppe_timeSlotScheme , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_TimeSlotScheme },
  { &hf_lppe_btsPosition    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_btsPosition },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_EOTD_ReferenceBTSForAssistance(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_EOTD_ReferenceBTSForAssistance, OMA_LPPe_EOTD_ReferenceBTSForAssistance_sequence);

  return offset;
}



static int
dissect_lppe_OMA_LPPe_EOTD_MultiFrameOffset(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 51U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_OMA_LPPe_EOTD_RoughRTD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 1250U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_0_1250(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 1250U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_EOTD_ExpectedOTD_sequence[] = {
  { &hf_lppe_expectedOTD_01 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_1250 },
  { &hf_lppe_expOTDUncertainty, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_7 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_EOTD_ExpectedOTD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_EOTD_ExpectedOTD, OMA_LPPe_EOTD_ExpectedOTD_sequence);

  return offset;
}



static int
dissect_lppe_OMA_LPPe_EOTD_FineRTD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 255U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_OMA_LPPe_EOTD_RelDistance(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            -200000, 200000U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_OMA_LPPe_EOTD_RelativeAlt(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            -4000, 4000U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_EOTD_relativePos_sequence[] = {
  { &hf_lppe_relativeNorth_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_RelDistance },
  { &hf_lppe_relativeEast_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_RelDistance },
  { &hf_lppe_relativeAlt    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_EOTD_RelativeAlt },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_EOTD_relativePos(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_EOTD_relativePos, OMA_LPPe_EOTD_relativePos_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_EOTD_CalcAssistanceBTS_sequence[] = {
  { &hf_lppe_fineRTD_01     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_FineRTD },
  { &hf_lppe_relativePos    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_relativePos },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_EOTD_CalcAssistanceBTS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_EOTD_CalcAssistanceBTS, OMA_LPPe_EOTD_CalcAssistanceBTS_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_EOTD_MsrAssistBTS_sequence[] = {
  { &hf_lppe_bsicAndCarrier , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_CellNonUniqueIDGERAN },
  { &hf_lppe_multiFrameOffset, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_MultiFrameOffset },
  { &hf_lppe_timeSlotScheme , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_TimeSlotScheme },
  { &hf_lppe_roughRTD       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_RoughRTD },
  { &hf_lppe_expectedOTD    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_ExpectedOTD },
  { &hf_lppe_calcAssistanceBTS, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_EOTD_CalcAssistanceBTS },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_EOTD_MsrAssistBTS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_EOTD_MsrAssistBTS, OMA_LPPe_EOTD_MsrAssistBTS_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_EOTD_MsrAssistDataList_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_EOTD_MsrAssistDataList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_MsrAssistBTS },
};

static int
dissect_lppe_OMA_LPPe_EOTD_MsrAssistDataList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_EOTD_MsrAssistDataList, OMA_LPPe_EOTD_MsrAssistDataList_sequence_of,
                                                  1, 15, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_EOTD_AssistBTSData_sequence[] = {
  { &hf_lppe_bsic           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_63 },
  { &hf_lppe_multiFrameOffset, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_MultiFrameOffset },
  { &hf_lppe_timeSlotScheme , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_TimeSlotScheme },
  { &hf_lppe_roughRTD       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_RoughRTD },
  { &hf_lppe_expectedOTD    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_EOTD_ExpectedOTD },
  { &hf_lppe_calcAssistanceBTS, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_EOTD_CalcAssistanceBTS },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_EOTD_AssistBTSData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_EOTD_AssistBTSData, OMA_LPPe_EOTD_AssistBTSData_sequence);

  return offset;
}


static const value_string lppe_OMA_LPPe_EOTD_SystemInfoAssistBTS_vals[] = {
  {   0, "notPresent" },
  {   1, "present" },
  { 0, NULL }
};

static const per_choice_t OMA_LPPe_EOTD_SystemInfoAssistBTS_choice[] = {
  {   0, &hf_lppe_notPresent     , ASN1_NO_EXTENSIONS     , dissect_lppe_NULL },
  {   1, &hf_lppe_present        , ASN1_NO_EXTENSIONS     , dissect_lppe_OMA_LPPe_EOTD_AssistBTSData },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_EOTD_SystemInfoAssistBTS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_OMA_LPPe_EOTD_SystemInfoAssistBTS, OMA_LPPe_EOTD_SystemInfoAssistBTS_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_EOTD_SystemInfoAssistDataList_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_EOTD_SystemInfoAssistDataList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_SystemInfoAssistBTS },
};

static int
dissect_lppe_OMA_LPPe_EOTD_SystemInfoAssistDataList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_EOTD_SystemInfoAssistDataList, OMA_LPPe_EOTD_SystemInfoAssistDataList_sequence_of,
                                                  1, 32, FALSE);

  return offset;
}


static const value_string lppe_T_cause_02_vals[] = {
  {   0, "undefined" },
  {   1, "assistanceDataForUEbasedEOTDnotAvailable" },
  {   2, "assistanceDataForUEassistedEOTDnotAvailable" },
  { 0, NULL }
};


static int
dissect_lppe_T_cause_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_EOTD_LocationServerErrorCauses_sequence[] = {
  { &hf_lppe_cause_02       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause_02 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_EOTD_LocationServerErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_EOTD_LocationServerErrorCauses, OMA_LPPe_EOTD_LocationServerErrorCauses_sequence);

  return offset;
}


static const value_string lppe_T_cause_03_vals[] = {
  {   0, "undefinedError" },
  {   1, "notEnoughBTsforEOTD" },
  {   2, "assistanceDataMissing" },
  {   3, "referenceCellNotServingCell" },
  {   4, "eotdMeasurementsNotSupported" },
  {   5, "eotdMeasurementsNotAvailable" },
  {   6, "uebasedEOTDnotSupported" },
  { 0, NULL }
};


static int
dissect_lppe_T_cause_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     7, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_EOTD_TargetDeviceErrorCauses_sequence[] = {
  { &hf_lppe_cause_03       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause_03 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_EOTD_TargetDeviceErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_EOTD_TargetDeviceErrorCauses, OMA_LPPe_EOTD_TargetDeviceErrorCauses_sequence);

  return offset;
}


static const value_string lppe_OMA_LPPe_EOTD_Error_vals[] = {
  {   0, "locationServerErrorCauses" },
  {   1, "targetDeviceErrorCauses" },
  { 0, NULL }
};

static const per_choice_t OMA_LPPe_EOTD_Error_choice[] = {
  {   0, &hf_lppe_locationServerErrorCauses_01, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_EOTD_LocationServerErrorCauses },
  {   1, &hf_lppe_targetDeviceErrorCauses_01, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_EOTD_TargetDeviceErrorCauses },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_EOTD_Error(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_OMA_LPPe_EOTD_Error, OMA_LPPe_EOTD_Error_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_EOTD_ProvideAssistanceData_sequence[] = {
  { &hf_lppe_referenceBTS   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_EOTD_ReferenceBTSForAssistance },
  { &hf_lppe_msrAssistDataList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_EOTD_MsrAssistDataList },
  { &hf_lppe_systemInfoAssistDataList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_EOTD_SystemInfoAssistDataList },
  { &hf_lppe_eotdError      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_EOTD_Error },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_EOTD_ProvideAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_EOTD_ProvideAssistanceData, OMA_LPPe_EOTD_ProvideAssistanceData_sequence);

  return offset;
}



static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_PrimaryScramblingCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 511U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info_sequence[] = {
  { &hf_lppe_primaryScramblingCode, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_PrimaryScramblingCode },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info, OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info_sequence);

  return offset;
}


static const per_sequence_t T_fdd_sequence[] = {
  { &hf_lppe_primaryCPICH_info, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_fdd(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_fdd, T_fdd_sequence);

  return offset;
}


static const value_string lppe_OMA_LPPe_OTDOA_UTRA_BurstType_vals[] = {
  {   0, "type1" },
  {   1, "type2" },
  { 0, NULL }
};


static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_BurstType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     2, NULL, FALSE, 0, NULL);

  return offset;
}



static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_MidambleShiftLong(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 15U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_TimeSlotNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 14U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_CellParametersID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 127U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_UTRA_CellAndChannelIdentity_sequence[] = {
  { &hf_lppe_burstType      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_BurstType },
  { &hf_lppe_midambleShift  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_MidambleShiftLong },
  { &hf_lppe_timeslot       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_TimeSlotNumber },
  { &hf_lppe_cellParametersID, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_CellParametersID },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_CellAndChannelIdentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_UTRA_CellAndChannelIdentity, OMA_LPPe_OTDOA_UTRA_CellAndChannelIdentity_sequence);

  return offset;
}


static const per_sequence_t T_tdd_sequence[] = {
  { &hf_lppe_cellAndChannelIdentity, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_CellAndChannelIdentity },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_tdd(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_tdd, T_tdd_sequence);

  return offset;
}


static const value_string lppe_T_modeSpecificInfo_vals[] = {
  {   0, "fdd" },
  {   1, "tdd" },
  { 0, NULL }
};

static const per_choice_t T_modeSpecificInfo_choice[] = {
  {   0, &hf_lppe_fdd            , ASN1_NO_EXTENSIONS     , dissect_lppe_T_fdd },
  {   1, &hf_lppe_tdd            , ASN1_NO_EXTENSIONS     , dissect_lppe_T_tdd },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_T_modeSpecificInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_T_modeSpecificInfo, T_modeSpecificInfo_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_UTRA_FrequencyInfoFDD_sequence[] = {
  { &hf_lppe_uarfcn_UL      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lpp_ARFCN_ValueUTRA },
  { &hf_lppe_uarfcn_DL      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_ARFCN_ValueUTRA },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_UTRA_FrequencyInfoFDD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_UTRA_FrequencyInfoFDD, OMA_LPPe_UTRA_FrequencyInfoFDD_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_UTRA_FrequencyInfoTDD_sequence[] = {
  { &hf_lppe_uarfcn_Nt      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_ARFCN_ValueUTRA },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_UTRA_FrequencyInfoTDD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_UTRA_FrequencyInfoTDD, OMA_LPPe_UTRA_FrequencyInfoTDD_sequence);

  return offset;
}


static const value_string lppe_OMA_LPPe_UTRA_ModeSpecificInfo_vals[] = {
  {   0, "fdd" },
  {   1, "tdd" },
  { 0, NULL }
};

static const per_choice_t OMA_LPPe_UTRA_ModeSpecificInfo_choice[] = {
  {   0, &hf_lppe_fdd_06         , ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_UTRA_FrequencyInfoFDD },
  {   1, &hf_lppe_tdd_06         , ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_UTRA_FrequencyInfoTDD },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_UTRA_ModeSpecificInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_OMA_LPPe_UTRA_ModeSpecificInfo, OMA_LPPe_UTRA_ModeSpecificInfo_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_UTRA_FrequencyInfo_sequence[] = {
  { &hf_lppe_modeSpecificInfo_05, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_UTRA_ModeSpecificInfo },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_UTRA_FrequencyInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_UTRA_FrequencyInfo, OMA_LPPe_UTRA_FrequencyInfo_sequence);

  return offset;
}


static const value_string lppe_T_cellPosition_vals[] = {
  {   0, "ellipsoidPoint" },
  {   1, "ellipsoidPointWithAltitude" },
  { 0, NULL }
};

static const per_choice_t T_cellPosition_choice[] = {
  {   0, &hf_lppe_ellipsoidPoint , ASN1_EXTENSION_ROOT    , dissect_lpp_Ellipsoid_Point },
  {   1, &hf_lppe_ellipsoidPointWithAltitude, ASN1_EXTENSION_ROOT    , dissect_lpp_EllipsoidPointWithAltitude },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_T_cellPosition(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_T_cellPosition, T_cellPosition_choice,
                                 NULL);

  return offset;
}



static int
dissect_lppe_INTEGER_0_32766(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 32766U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_0_70274(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 70274U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_UTRA_RefPosAssist_sequence[] = {
  { &hf_lppe_cellPosition   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_cellPosition },
  { &hf_lppe_roundTripTime  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_32766 },
  { &hf_lppe_roundTripTimeExtension, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_70274 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_RefPosAssist(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_UTRA_RefPosAssist, OMA_LPPe_OTDOA_UTRA_RefPosAssist_sequence);

  return offset;
}


static const value_string lppe_OMA_LPPe_OTDOA_UTRA_IP_Spacing_vals[] = {
  {   0, "e5" },
  {   1, "e7" },
  {   2, "e10" },
  {   3, "e15" },
  {   4, "e20" },
  {   5, "e30" },
  {   6, "e40" },
  {   7, "e50" },
  { 0, NULL }
};


static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_IP_Spacing(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     8, NULL, FALSE, 0, NULL);

  return offset;
}


static const value_string lppe_OMA_LPPe_OTDOA_UTRA_IP_Length_vals[] = {
  {   0, "ipl5" },
  {   1, "ipl10" },
  { 0, NULL }
};


static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_IP_Length(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     2, NULL, FALSE, 0, NULL);

  return offset;
}



static int
dissect_lppe_INTEGER_0_9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 9U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_0_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 15U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_10_25(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            10U, 25U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_1_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            1U, 16U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_UTRA_BurstModeParameters_sequence[] = {
  { &hf_lppe_burstStart     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_15 },
  { &hf_lppe_burstLength    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_10_25 },
  { &hf_lppe_burstFreq      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_16 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_BurstModeParameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_UTRA_BurstModeParameters, OMA_LPPe_OTDOA_UTRA_BurstModeParameters_sequence);

  return offset;
}


static const per_sequence_t T_fdd_02_sequence[] = {
  { &hf_lppe_ip_spacing     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_IP_Spacing },
  { &hf_lppe_ip_length      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_IP_Length },
  { &hf_lppe_ip_Offset      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_9 },
  { &hf_lppe_seed           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_63 },
  { &hf_lppe_burstModeParameters, ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_UTRA_BurstModeParameters },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_fdd_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_fdd_02, T_fdd_02_sequence);

  return offset;
}


static const value_string lppe_OMA_LPPe_OTDOA_UTRA_IP_Spacing_TDD_vals[] = {
  {   0, "e30" },
  {   1, "e40" },
  {   2, "e50" },
  {   3, "e70" },
  {   4, "e100" },
  { 0, NULL }
};


static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_IP_Spacing_TDD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     5, NULL, FALSE, 0, NULL);

  return offset;
}



static int
dissect_lppe_INTEGER_0_14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 14U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_IP_PCCPCH(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_boolean(tvb, offset, actx, tree, hf_index, NULL);

  return offset;
}


static const per_sequence_t T_tdd_02_sequence[] = {
  { &hf_lppe_ip_spacing_tdd , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_IP_Spacing_TDD },
  { &hf_lppe_ip_slot        , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_14 },
  { &hf_lppe_ip_start       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_4095 },
  { &hf_lppe_ip_PCCPCH      , ASN1_NO_EXTENSIONS     , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_UTRA_IP_PCCPCH },
  { &hf_lppe_burstModeParameters, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_BurstModeParameters },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_tdd_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_tdd_02, T_tdd_02_sequence);

  return offset;
}


static const value_string lppe_T_modeSpecificInfo_02_vals[] = {
  {   0, "fdd" },
  {   1, "tdd" },
  { 0, NULL }
};

static const per_choice_t T_modeSpecificInfo_02_choice[] = {
  {   0, &hf_lppe_fdd_02         , ASN1_NO_EXTENSIONS     , dissect_lppe_T_fdd_02 },
  {   1, &hf_lppe_tdd_02         , ASN1_NO_EXTENSIONS     , dissect_lppe_T_tdd_02 },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_T_modeSpecificInfo_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_T_modeSpecificInfo_02, T_modeSpecificInfo_02_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_UTRA_IPDL_Parameters_sequence[] = {
  { &hf_lppe_modeSpecificInfo_02, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_T_modeSpecificInfo_02 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_IPDL_Parameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_UTRA_IPDL_Parameters, OMA_LPPe_OTDOA_UTRA_IPDL_Parameters_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_UTRA_ReferenceCellInfo_sequence[] = {
  { &hf_lppe_sfn            , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_4095 },
  { &hf_lppe_modeSpecificInfo, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_modeSpecificInfo },
  { &hf_lppe_frequencyInfo  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_UTRA_FrequencyInfo },
  { &hf_lppe_refPosAssist   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_UTRA_RefPosAssist },
  { &hf_lppe_ipdl_parameters, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_UTRA_IPDL_Parameters },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_ReferenceCellInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_UTRA_ReferenceCellInfo, OMA_LPPe_OTDOA_UTRA_ReferenceCellInfo_sequence);

  return offset;
}


static const per_sequence_t T_fdd_01_sequence[] = {
  { &hf_lppe_primaryCPICH_info, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_fdd_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_fdd_01, T_fdd_01_sequence);

  return offset;
}


static const per_sequence_t T_tdd_01_sequence[] = {
  { &hf_lppe_cellAndChannelIdentity, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_CellAndChannelIdentity },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_tdd_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_tdd_01, T_tdd_01_sequence);

  return offset;
}


static const value_string lppe_T_modeSpecificInfo_01_vals[] = {
  {   0, "fdd" },
  {   1, "tdd" },
  { 0, NULL }
};

static const per_choice_t T_modeSpecificInfo_01_choice[] = {
  {   0, &hf_lppe_fdd_01         , ASN1_NO_EXTENSIONS     , dissect_lppe_T_fdd_01 },
  {   1, &hf_lppe_tdd_01         , ASN1_NO_EXTENSIONS     , dissect_lppe_T_tdd_01 },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_T_modeSpecificInfo_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_T_modeSpecificInfo_01, T_modeSpecificInfo_01_choice,
                                 NULL);

  return offset;
}



static int
dissect_lppe_INTEGER_0_38399(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 38399U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_UTRA_SFN_SFN_RelTimeDifference1_sequence[] = {
  { &hf_lppe_sfn_offset     , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_4095 },
  { &hf_lppe_sfn_sfn_relTimeDifference, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_38399 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_SFN_SFN_RelTimeDifference1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_UTRA_SFN_SFN_RelTimeDifference1, OMA_LPPe_OTDOA_UTRA_SFN_SFN_RelTimeDifference1_sequence);

  return offset;
}


static const value_string lppe_OMA_LPPe_OTDOA_UTRA_SFN_OffsetValidity_vals[] = {
  {   0, "false" },
  { 0, NULL }
};


static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_SFN_OffsetValidity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     1, NULL, FALSE, 0, NULL);

  return offset;
}


static const value_string lppe_OMA_LPPe_OTDOA_UTRA_SFN_SFN_Drift_vals[] = {
  {   0, "sfnsfndrift0" },
  {   1, "sfnsfndrift1" },
  {   2, "sfnsfndrift2" },
  {   3, "sfnsfndrift3" },
  {   4, "sfnsfndrift4" },
  {   5, "sfnsfndrift5" },
  {   6, "sfnsfndrift8" },
  {   7, "sfnsfndrift10" },
  {   8, "sfnsfndrift15" },
  {   9, "sfnsfndrift25" },
  {  10, "sfnsfndrift35" },
  {  11, "sfnsfndrift50" },
  {  12, "sfnsfndrift65" },
  {  13, "sfnsfndrift80" },
  {  14, "sfnsfndrift100" },
  {  15, "sfnsfndrift-1" },
  {  16, "sfnsfndrift-2" },
  {  17, "sfnsfndrift-3" },
  {  18, "sfnsfndrift-4" },
  {  19, "sfnsfndrift-5" },
  {  20, "sfnsfndrift-8" },
  {  21, "sfnsfndrift-10" },
  {  22, "sfnsfndrift-15" },
  {  23, "sfnsfndrift-25" },
  {  24, "sfnsfndrift-35" },
  {  25, "sfnsfndrift-50" },
  {  26, "sfnsfndrift-65" },
  {  27, "sfnsfndrift-80" },
  {  28, "sfnsfndrift-100" },
  { 0, NULL }
};


static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_SFN_SFN_Drift(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     29, NULL, TRUE, 0, NULL);

  return offset;
}


static const value_string lppe_OMA_LPPe_OTDOA_UTRA_SearchWindowSize_vals[] = {
  {   0, "c20" },
  {   1, "c40" },
  {   2, "c80" },
  {   3, "c160" },
  {   4, "c320" },
  {   5, "c640" },
  {   6, "c1280" },
  {   7, "moreThan1280" },
  { 0, NULL }
};


static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_SearchWindowSize(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     8, NULL, TRUE, 0, NULL);

  return offset;
}



static int
dissect_lppe_INTEGER_M20000_20000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            -20000, 20000U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_M4000_4000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            -4000, 4000U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_fineSFN_SFN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 15U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_UTRA_PositioningAssistance_sequence[] = {
  { &hf_lppe_relativeNorth_02, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M20000_20000 },
  { &hf_lppe_relativeEast_02, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M20000_20000 },
  { &hf_lppe_relativeAltitude_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M4000_4000 },
  { &hf_lppe_fineSFN_SFN    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_fineSFN_SFN },
  { &hf_lppe_roundTripTime  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_32766 },
  { &hf_lppe_roundTripTimeExtension, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_70274 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_PositioningAssistance(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_UTRA_PositioningAssistance, OMA_LPPe_OTDOA_UTRA_PositioningAssistance_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_UTRA_NeighborCellInfo_sequence[] = {
  { &hf_lppe_modeSpecificInfo_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_modeSpecificInfo_01 },
  { &hf_lppe_frequencyInfo  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_UTRA_FrequencyInfo },
  { &hf_lppe_ipdl_parameters, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_UTRA_IPDL_Parameters },
  { &hf_lppe_sfn_SFN_relTimeDifference, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_SFN_SFN_RelTimeDifference1 },
  { &hf_lppe_sfn_offsetValidity, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_UTRA_SFN_OffsetValidity },
  { &hf_lppe_sfn_SFN_drift  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_UTRA_SFN_SFN_Drift },
  { &hf_lppe_searchWindowSize, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_SearchWindowSize },
  { &hf_lppe_positioningAssistance, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_UTRA_PositioningAssistance },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_NeighborCellInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_UTRA_NeighborCellInfo, OMA_LPPe_OTDOA_UTRA_NeighborCellInfo_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_UTRA_NeighborCellList_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_OTDOA_UTRA_NeighborCellList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_NeighborCellInfo },
};

static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_NeighborCellList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_OTDOA_UTRA_NeighborCellList, OMA_LPPe_OTDOA_UTRA_NeighborCellList_sequence_of,
                                                  1, utra_maxCellMeas, FALSE);

  return offset;
}


static const value_string lppe_T_cause_04_vals[] = {
  {   0, "undefinedError" },
  {   1, "assistanceDataForUEbasedOTDOAnotAvailable" },
  {   2, "assistanceDataForUEassistedOTDOAnotAvailable" },
  { 0, NULL }
};


static int
dissect_lppe_T_cause_04(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_UTRA_LocationServerErrorCauses_sequence[] = {
  { &hf_lppe_cause_04       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause_04 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_LocationServerErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_UTRA_LocationServerErrorCauses, OMA_LPPe_OTDOA_UTRA_LocationServerErrorCauses_sequence);

  return offset;
}


static const value_string lppe_T_cause_05_vals[] = {
  {   0, "undefinedError" },
  {   1, "notEnoughOTDOA-cells" },
  {   2, "assistanceDataMissing" },
  {   3, "referenceCellNotServingCell" },
  {   4, "otdoaMeasurementsNotSupported" },
  {   5, "otdoaMeasurementsNotAvailable" },
  {   6, "uebasedOTDOAnotSupported" },
  { 0, NULL }
};


static int
dissect_lppe_T_cause_05(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     7, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_UTRA_TargetDeviceErrorCauses_sequence[] = {
  { &hf_lppe_cause_05       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause_05 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_TargetDeviceErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_UTRA_TargetDeviceErrorCauses, OMA_LPPe_OTDOA_UTRA_TargetDeviceErrorCauses_sequence);

  return offset;
}


static const value_string lppe_OMA_LPPe_OTDOA_UTRA_Error_vals[] = {
  {   0, "locationServerErrorCauses" },
  {   1, "targetDeviceErrorCauses" },
  { 0, NULL }
};

static const per_choice_t OMA_LPPe_OTDOA_UTRA_Error_choice[] = {
  {   0, &hf_lppe_locationServerErrorCauses_02, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_OTDOA_UTRA_LocationServerErrorCauses },
  {   1, &hf_lppe_targetDeviceErrorCauses_02, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_OTDOA_UTRA_TargetDeviceErrorCauses },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_Error(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_OMA_LPPe_OTDOA_UTRA_Error, OMA_LPPe_OTDOA_UTRA_Error_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_UTRA_ProvideAssistanceData_sequence[] = {
  { &hf_lppe_referenceCellInfo_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_UTRA_ReferenceCellInfo },
  { &hf_lppe_neigborCellList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_UTRA_NeighborCellList },
  { &hf_lppe_otdoaUtraError , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_UTRA_Error },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_ProvideAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_UTRA_ProvideAssistanceData, OMA_LPPe_OTDOA_UTRA_ProvideAssistanceData_sequence);

  return offset;
}


static const per_sequence_t T_mcc_sequence_of[1] = {
  { &hf_lppe_mcc_item       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_9 },
};

static int
dissect_lppe_T_mcc(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_T_mcc, T_mcc_sequence_of,
                                                  3, 3, FALSE);

  return offset;
}


static const per_sequence_t T_mnc_sequence_of[1] = {
  { &hf_lppe_mnc_item       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_9 },
};

static int
dissect_lppe_T_mnc(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_T_mnc, T_mnc_sequence_of,
                                                  2, 3, FALSE);

  return offset;
}


static const per_sequence_t T_plmn_Identity_sequence[] = {
  { &hf_lppe_mcc            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_mcc },
  { &hf_lppe_mnc            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_mnc },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_plmn_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_plmn_Identity, T_plmn_Identity_sequence);

  return offset;
}



static int
dissect_lppe_BIT_STRING_SIZE_28(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     28, 28, FALSE, NULL, 0, NULL, NULL);

  return offset;
}



static int
dissect_lppe_INTEGER_M127_128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            -127, 128U, NULL, FALSE);

  return offset;
}


static const value_string lppe_T_antennaPortConfig_vals[] = {
  {   0, "port1" },
  {   1, "ports2" },
  {   2, "ports4" },
  { 0, NULL }
};


static int
dissect_lppe_T_antennaPortConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}



static int
dissect_lppe_INTEGER_1_360(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            1U, 360U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_0_360(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 360U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_0_100(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 100U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_LTE_CellData_sequence[] = {
  { &hf_lppe_physCellId     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_503 },
  { &hf_lppe_cellIdentity_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_BIT_STRING_SIZE_28 },
  { &hf_lppe_dl_CarrierFreq , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_ARFCN_ValueEUTRA },
  { &hf_lppe_rs_transmit_power, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M127_128 },
  { &hf_lppe_antennaPortConfig, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_antennaPortConfig },
  { &hf_lppe_antenna_gain   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M127_128 },
  { &hf_lppe_beam_width     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_1_360 },
  { &hf_lppe_transmit_direction, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_360 },
  { &hf_lppe_frequency_accuracy, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_100 },
  { &hf_lppe_dl_CarrierFreq_ext, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lpp_ARFCN_ValueEUTRA_v9a0 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_LTE_CellData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_LTE_CellData, OMA_LPPe_ECID_LTE_CellData_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_ECID_LTE_CellData_sequence_of[1] = {
  { &hf_lppe_ecid_lte_eNodeB_CellData_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_LTE_CellData },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_ECID_LTE_CellData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_ECID_LTE_CellData, SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_ECID_LTE_CellData_sequence_of,
                                                  1, maxLTEMacroCells, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_LTE_eNodeBData_sequence[] = {
  { &hf_lppe_relative_location, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_RelativeLocation },
  { &hf_lppe_ecid_lte_eNodeB_CellData, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_ECID_LTE_CellData },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_LTE_eNodeBData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_LTE_eNodeBData, OMA_LPPe_ECID_LTE_eNodeBData_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_ECID_LTE_eNodeBData_sequence_of[1] = {
  { &hf_lppe_ecid_lte_eNodeB_list_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_LTE_eNodeBData },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_ECID_LTE_eNodeBData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_ECID_LTE_eNodeBData, SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_ECID_LTE_eNodeBData_sequence_of,
                                                  1, maxLTEeNBs, FALSE);

  return offset;
}


static const value_string lppe_T_areaType_vals[] = {
  {   0, "gaussian" },
  {   1, "binaryDistribution" },
  { 0, NULL }
};


static int
dissect_lppe_T_areaType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     2, NULL, TRUE, 0, NULL);

  return offset;
}


static const value_string lppe_T_referenceLocation_vals[] = {
  {   0, "antenna" },
  {   1, "referencePoint" },
  { 0, NULL }
};


static int
dissect_lppe_T_referenceLocation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     2, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t T_refPointAndArea_sequence[] = {
  { &hf_lppe_referenceLocation, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_referenceLocation },
  { &hf_lppe_referencePoint , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ReferencePointUniqueID },
  { &hf_lppe_locationAndArea, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_RelativeLocation },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_refPointAndArea(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_refPointAndArea, T_refPointAndArea_sequence);

  return offset;
}


static const value_string lppe_T_type_vals[] = {
  {   0, "indoor" },
  {   1, "outdoor" },
  {   2, "mixed" },
  { 0, NULL }
};


static int
dissect_lppe_T_type(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_WLANFemtoCoverageAreaElement_sequence[] = {
  { &hf_lppe_refPointAndArea, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_refPointAndArea },
  { &hf_lppe_type           , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_type },
  { &hf_lppe_weight         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_100 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_WLANFemtoCoverageAreaElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_WLANFemtoCoverageAreaElement, OMA_LPPe_WLANFemtoCoverageAreaElement_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_16_OF_OMA_LPPe_WLANFemtoCoverageAreaElement_sequence_of[1] = {
  { &hf_lppe_componentList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_WLANFemtoCoverageAreaElement },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_WLANFemtoCoverageAreaElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_WLANFemtoCoverageAreaElement, SEQUENCE_SIZE_1_16_OF_OMA_LPPe_WLANFemtoCoverageAreaElement_sequence_of,
                                                  1, 16, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_WLANFemtoCoverageArea_sequence[] = {
  { &hf_lppe_truncation     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M127_128 },
  { &hf_lppe_areaType       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_areaType },
  { &hf_lppe_confidence     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_99 },
  { &hf_lppe_componentList  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_WLANFemtoCoverageAreaElement },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_WLANFemtoCoverageArea(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_WLANFemtoCoverageArea, OMA_LPPe_WLANFemtoCoverageArea_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_LTE_HeNBData_sequence[] = {
  { &hf_lppe_relative_location, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_RelativeLocation },
  { &hf_lppe_location_reliability, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_1_100 },
  { &hf_lppe_coverageArea   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_WLANFemtoCoverageArea },
  { &hf_lppe_ecid_lte_HeNB_CellData, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_LTE_CellData },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_LTE_HeNBData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_LTE_HeNBData, OMA_LPPe_ECID_LTE_HeNBData_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_ECID_LTE_HeNBData_sequence_of[1] = {
  { &hf_lppe_ecid_lte_HeNB_list_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_LTE_HeNBData },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_ECID_LTE_HeNBData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_ECID_LTE_HeNBData, SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_ECID_LTE_HeNBData_sequence_of,
                                                  1, maxLTEHeNBs, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_LTE_NetworkData_sequence[] = {
  { &hf_lppe_plmn_Identity  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_plmn_Identity },
  { &hf_lppe_multiple_PLMNs , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_reference_location, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ReferencePoint },
  { &hf_lppe_ecid_lte_eNodeB_list, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_ECID_LTE_eNodeBData },
  { &hf_lppe_ecid_lte_HeNB_list, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_ECID_LTE_HeNBData },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_LTE_NetworkData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_LTE_NetworkData, OMA_LPPe_ECID_LTE_NetworkData_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_maxLTENetworks_OF_OMA_LPPe_ECID_LTE_NetworkData_sequence_of[1] = {
  { &hf_lppe_ecid_LTE_NetworkData_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_LTE_NetworkData },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_maxLTENetworks_OF_OMA_LPPe_ECID_LTE_NetworkData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_maxLTENetworks_OF_OMA_LPPe_ECID_LTE_NetworkData, SEQUENCE_SIZE_1_maxLTENetworks_OF_OMA_LPPe_ECID_LTE_NetworkData_sequence_of,
                                                  1, maxLTENetworks, FALSE);

  return offset;
}


static const value_string lppe_T_cause_06_vals[] = {
  {   0, "undefined" },
  {   1, "requestedADNotAvailable" },
  {   2, "notAllrequestedADAvailable" },
  { 0, NULL }
};


static int
dissect_lppe_T_cause_06(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_LTE_LocationServerErrorCauses_sequence[] = {
  { &hf_lppe_cause_06       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause_06 },
  { &hf_lppe_eNodeBMandatoryDataUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_eNodeBLocationsUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_eNodeBcellTransmitPowerUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_eNodeBcellAntennaPortConfigUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_eNodeBcallAntennaGainUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_eNodeBcellBeamWidthUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_eNodeBcellTransmitDirectionUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_eNodeBcellFrequencyAccuracyUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_eNodeBnonservingADUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_heNBMandatoryDataUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_heNBLocationUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_heNBLocationReliabilityUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_heNBcellTransmitPowerUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_heNBcellAntennaPortConfigUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_heNBcellFrequencyAccuracyUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_heNBCoverageAreaUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_heNBnonservingADUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_LTE_LocationServerErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_LTE_LocationServerErrorCauses, OMA_LPPe_ECID_LTE_LocationServerErrorCauses_sequence);

  return offset;
}


static const value_string lppe_T_cause_07_vals[] = {
  {   0, "undefined" },
  {   1, "requestedMeasurementsNotAvailable" },
  {   2, "notAllrequestedMeasurementsPossible" },
  { 0, NULL }
};


static int
dissect_lppe_T_cause_07(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_LTE_TargetDeviceErrorCauses_sequence[] = {
  { &hf_lppe_cause_07       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause_07 },
  { &hf_lppe_rsrpMeasurementNotPossible, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_rsrqMeasurementNotPossible, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_ueRxTxMeasurementNotPossible, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_non_servingMeasurementsNotAvailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_historicMeasurementsNotAvailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_LTE_TargetDeviceErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_LTE_TargetDeviceErrorCauses, OMA_LPPe_ECID_LTE_TargetDeviceErrorCauses_sequence);

  return offset;
}


static const value_string lppe_OMA_LPPe_ECID_LTE_Error_vals[] = {
  {   0, "locationServerErrorCauses" },
  {   1, "targetDeviceErrorCauses" },
  { 0, NULL }
};

static const per_choice_t OMA_LPPe_ECID_LTE_Error_choice[] = {
  {   0, &hf_lppe_locationServerErrorCauses_03, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_ECID_LTE_LocationServerErrorCauses },
  {   1, &hf_lppe_targetDeviceErrorCauses_03, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_ECID_LTE_TargetDeviceErrorCauses },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_LTE_Error(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_OMA_LPPe_ECID_LTE_Error, OMA_LPPe_ECID_LTE_Error_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_LTE_ProvideAssistanceData_sequence[] = {
  { &hf_lppe_ecid_LTE_NetworkData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_SEQUENCE_SIZE_1_maxLTENetworks_OF_OMA_LPPe_ECID_LTE_NetworkData },
  { &hf_lppe_ecid_LTE_Error , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_LTE_Error },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_LTE_ProvideAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_LTE_ProvideAssistanceData, OMA_LPPe_ECID_LTE_ProvideAssistanceData_sequence);

  return offset;
}


static const per_sequence_t T_mcc_01_sequence_of[1] = {
  { &hf_lppe_mcc_item       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_9 },
};

static int
dissect_lppe_T_mcc_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_T_mcc_01, T_mcc_01_sequence_of,
                                                  3, 3, FALSE);

  return offset;
}


static const per_sequence_t T_mnc_01_sequence_of[1] = {
  { &hf_lppe_mnc_item       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_9 },
};

static int
dissect_lppe_T_mnc_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_T_mnc_01, T_mnc_01_sequence_of,
                                                  2, 3, FALSE);

  return offset;
}


static const per_sequence_t T_plmn_Identity_01_sequence[] = {
  { &hf_lppe_mcc_01         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_T_mcc_01 },
  { &hf_lppe_mnc_01         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_T_mnc_01 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_plmn_Identity_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_plmn_Identity_01, T_plmn_Identity_01_sequence);

  return offset;
}



static int
dissect_lppe_BIT_STRING_SIZE_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     16, 16, FALSE, NULL, 0, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_CellLocalIdGERAN_sequence[] = {
  { &hf_lppe_locationAreaCode, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_16 },
  { &hf_lppe_cellIdentity   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_16 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_CellLocalIdGERAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_CellLocalIdGERAN, OMA_LPPe_CellLocalIdGERAN_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_GSM_CellData_sequence[] = {
  { &hf_lppe_cellNonUniqueIDGERAN, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_CellNonUniqueIDGERAN },
  { &hf_lppe_cellLocalIDGERAN, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_CellLocalIdGERAN },
  { &hf_lppe_transmit_power , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M127_128 },
  { &hf_lppe_antenna_gain   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M127_128 },
  { &hf_lppe_beam_width     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_1_360 },
  { &hf_lppe_transmit_direction, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_360 },
  { &hf_lppe_frequency_accuracy, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_100 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_GSM_CellData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_GSM_CellData, OMA_LPPe_ECID_GSM_CellData_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_maxGSMCells_OF_OMA_LPPe_ECID_GSM_CellData_sequence_of[1] = {
  { &hf_lppe_ecid_gsm_CellData_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_GSM_CellData },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_maxGSMCells_OF_OMA_LPPe_ECID_GSM_CellData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_maxGSMCells_OF_OMA_LPPe_ECID_GSM_CellData, SEQUENCE_SIZE_1_maxGSMCells_OF_OMA_LPPe_ECID_GSM_CellData_sequence_of,
                                                  1, maxGSMCells, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_GSM_BaseStationData_sequence[] = {
  { &hf_lppe_relative_location, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_RelativeLocation },
  { &hf_lppe_ecid_gsm_CellData, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_maxGSMCells_OF_OMA_LPPe_ECID_GSM_CellData },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_GSM_BaseStationData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_GSM_BaseStationData, OMA_LPPe_ECID_GSM_BaseStationData_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_maxGSMBaseStations_OF_OMA_LPPe_ECID_GSM_BaseStationData_sequence_of[1] = {
  { &hf_lppe_base_station_list_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_GSM_BaseStationData },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_maxGSMBaseStations_OF_OMA_LPPe_ECID_GSM_BaseStationData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_maxGSMBaseStations_OF_OMA_LPPe_ECID_GSM_BaseStationData, SEQUENCE_SIZE_1_maxGSMBaseStations_OF_OMA_LPPe_ECID_GSM_BaseStationData_sequence_of,
                                                  1, maxGSMBaseStations, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_GSM_NetworkData_sequence[] = {
  { &hf_lppe_plmn_Identity_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_plmn_Identity_01 },
  { &hf_lppe_reference_location, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ReferencePoint },
  { &hf_lppe_base_station_list, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_maxGSMBaseStations_OF_OMA_LPPe_ECID_GSM_BaseStationData },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_GSM_NetworkData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_GSM_NetworkData, OMA_LPPe_ECID_GSM_NetworkData_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_maxGSMNetworks_OF_OMA_LPPe_ECID_GSM_NetworkData_sequence_of[1] = {
  { &hf_lppe_ecid_gsm_NetworkData_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_GSM_NetworkData },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_maxGSMNetworks_OF_OMA_LPPe_ECID_GSM_NetworkData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_maxGSMNetworks_OF_OMA_LPPe_ECID_GSM_NetworkData, SEQUENCE_SIZE_1_maxGSMNetworks_OF_OMA_LPPe_ECID_GSM_NetworkData_sequence_of,
                                                  1, maxGSMNetworks, FALSE);

  return offset;
}


static const value_string lppe_T_cause_08_vals[] = {
  {   0, "undefined" },
  {   1, "requestedADNotAvailable" },
  {   2, "notAllrequestedADAvailable" },
  { 0, NULL }
};


static int
dissect_lppe_T_cause_08(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_GSM_LocationServerErrorCauses_sequence[] = {
  { &hf_lppe_cause_08       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause_08 },
  { &hf_lppe_mandatoryDataUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_bsLocationsUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_cellTransmitPowerUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_callAntennaGainUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_cellBeamWidthUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_cellTransmitDirectionUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_cellFrequencyAccuracyUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_nonservingADUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_GSM_LocationServerErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_GSM_LocationServerErrorCauses, OMA_LPPe_ECID_GSM_LocationServerErrorCauses_sequence);

  return offset;
}


static const value_string lppe_T_cause_09_vals[] = {
  {   0, "undefined" },
  {   1, "requestedMeasurementsNotAvailable" },
  {   2, "notAllrequestedMeasurementsPossible" },
  { 0, NULL }
};


static int
dissect_lppe_T_cause_09(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_GSM_TargetDeviceErrorCauses_sequence[] = {
  { &hf_lppe_cause_09       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause_09 },
  { &hf_lppe_rxLevelMeasurementNotPossible, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_taMeasurementNotPossible, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_nMRMeasurementNotPossible, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_non_servingMeasurementsNotAvailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_historicMeasurementsNotAvailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_GSM_TargetDeviceErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_GSM_TargetDeviceErrorCauses, OMA_LPPe_ECID_GSM_TargetDeviceErrorCauses_sequence);

  return offset;
}


static const value_string lppe_OMA_LPPe_ECID_GSM_Error_vals[] = {
  {   0, "locationServerErrorCauses" },
  {   1, "targetDeviceErrorCauses" },
  { 0, NULL }
};

static const per_choice_t OMA_LPPe_ECID_GSM_Error_choice[] = {
  {   0, &hf_lppe_locationServerErrorCauses_04, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_ECID_GSM_LocationServerErrorCauses },
  {   1, &hf_lppe_targetDeviceErrorCauses_04, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_ECID_GSM_TargetDeviceErrorCauses },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_GSM_Error(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_OMA_LPPe_ECID_GSM_Error, OMA_LPPe_ECID_GSM_Error_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_GSM_ProvideAssistanceData_sequence[] = {
  { &hf_lppe_ecid_gsm_NetworkData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_SEQUENCE_SIZE_1_maxGSMNetworks_OF_OMA_LPPe_ECID_GSM_NetworkData },
  { &hf_lppe_ecid_gsm_Error , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_GSM_Error },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_GSM_ProvideAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_GSM_ProvideAssistanceData, OMA_LPPe_ECID_GSM_ProvideAssistanceData_sequence);

  return offset;
}


static const per_sequence_t T_mcc_02_sequence_of[1] = {
  { &hf_lppe_mcc_item       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_9 },
};

static int
dissect_lppe_T_mcc_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_T_mcc_02, T_mcc_02_sequence_of,
                                                  3, 3, FALSE);

  return offset;
}


static const per_sequence_t T_mnc_02_sequence_of[1] = {
  { &hf_lppe_mnc_item       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_9 },
};

static int
dissect_lppe_T_mnc_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_T_mnc_02, T_mnc_02_sequence_of,
                                                  2, 3, FALSE);

  return offset;
}


static const per_sequence_t T_plmn_Identity_02_sequence[] = {
  { &hf_lppe_mcc_02         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_T_mcc_02 },
  { &hf_lppe_mnc_02         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_T_mnc_02 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_plmn_Identity_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_plmn_Identity_02, T_plmn_Identity_02_sequence);

  return offset;
}



static int
dissect_lppe_BIT_STRING_SIZE_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     32, 32, FALSE, NULL, 0, NULL, NULL);

  return offset;
}


static const per_sequence_t T_fdd_05_sequence[] = {
  { &hf_lppe_primaryCPICH_Scrambling_Code, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_PrimaryScramblingCode },
  { &hf_lppe_primaryCPICH_Tx_Power, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M127_128 },
  { &hf_lppe_uarfcn_dl      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_ARFCN_ValueUTRA },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_fdd_05(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_fdd_05, T_fdd_05_sequence);

  return offset;
}


static const per_sequence_t T_tdd_05_sequence[] = {
  { &hf_lppe_cellParametersID, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_CellParametersID },
  { &hf_lppe_primaryCCPCH_Tx_Power, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M127_128 },
  { &hf_lppe_uarfcn_nt      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_ARFCN_ValueUTRA },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_tdd_05(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_tdd_05, T_tdd_05_sequence);

  return offset;
}


static const value_string lppe_T_modeSpecificInfo_04_vals[] = {
  {   0, "fdd" },
  {   1, "tdd" },
  { 0, NULL }
};

static const per_choice_t T_modeSpecificInfo_04_choice[] = {
  {   0, &hf_lppe_fdd_05         , ASN1_NO_EXTENSIONS     , dissect_lppe_T_fdd_05 },
  {   1, &hf_lppe_tdd_05         , ASN1_NO_EXTENSIONS     , dissect_lppe_T_tdd_05 },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_T_modeSpecificInfo_04(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_T_modeSpecificInfo_04, T_modeSpecificInfo_04_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_UTRA_CellData_sequence[] = {
  { &hf_lppe_cellIdentity_02, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_BIT_STRING_SIZE_32 },
  { &hf_lppe_modeSpecificInfo_04, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_modeSpecificInfo_04 },
  { &hf_lppe_antenna_gain   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M127_128 },
  { &hf_lppe_beam_width     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_1_360 },
  { &hf_lppe_transmit_direction, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_360 },
  { &hf_lppe_frequency_accuracy, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_100 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_UTRA_CellData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_UTRA_CellData, OMA_LPPe_ECID_UTRA_CellData_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_maxUTRAMacroCells_OF_OMA_LPPe_ECID_UTRA_CellData_sequence_of[1] = {
  { &hf_lppe_ecid_utra_nodeB_CellData_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_UTRA_CellData },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_maxUTRAMacroCells_OF_OMA_LPPe_ECID_UTRA_CellData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_maxUTRAMacroCells_OF_OMA_LPPe_ECID_UTRA_CellData, SEQUENCE_SIZE_1_maxUTRAMacroCells_OF_OMA_LPPe_ECID_UTRA_CellData_sequence_of,
                                                  1, maxUTRAMacroCells, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_UTRA_NodeBData_sequence[] = {
  { &hf_lppe_relative_location, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_RelativeLocation },
  { &hf_lppe_ecid_utra_nodeB_CellData, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_maxUTRAMacroCells_OF_OMA_LPPe_ECID_UTRA_CellData },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_UTRA_NodeBData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_UTRA_NodeBData, OMA_LPPe_ECID_UTRA_NodeBData_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_maxUTRAnodeBs_OF_OMA_LPPe_ECID_UTRA_NodeBData_sequence_of[1] = {
  { &hf_lppe_ecid_utra_nodeB_list_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_UTRA_NodeBData },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_maxUTRAnodeBs_OF_OMA_LPPe_ECID_UTRA_NodeBData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_maxUTRAnodeBs_OF_OMA_LPPe_ECID_UTRA_NodeBData, SEQUENCE_SIZE_1_maxUTRAnodeBs_OF_OMA_LPPe_ECID_UTRA_NodeBData_sequence_of,
                                                  1, maxUTRAnodeBs, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_UTRA_HNBData_sequence[] = {
  { &hf_lppe_relative_location, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_RelativeLocation },
  { &hf_lppe_location_reliability, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_1_100 },
  { &hf_lppe_coverageArea   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_WLANFemtoCoverageArea },
  { &hf_lppe_ecid_utra_HNB_CellData, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_UTRA_CellData },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_UTRA_HNBData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_UTRA_HNBData, OMA_LPPe_ECID_UTRA_HNBData_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_maxUTRAHNBs_OF_OMA_LPPe_ECID_UTRA_HNBData_sequence_of[1] = {
  { &hf_lppe_ecid_utra_HNB_list_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_UTRA_HNBData },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_maxUTRAHNBs_OF_OMA_LPPe_ECID_UTRA_HNBData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_maxUTRAHNBs_OF_OMA_LPPe_ECID_UTRA_HNBData, SEQUENCE_SIZE_1_maxUTRAHNBs_OF_OMA_LPPe_ECID_UTRA_HNBData_sequence_of,
                                                  1, maxUTRAHNBs, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_UTRA_NetworkData_sequence[] = {
  { &hf_lppe_plmn_Identity_02, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_plmn_Identity_02 },
  { &hf_lppe_multiple_PLMNs , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_reference_location, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ReferencePoint },
  { &hf_lppe_ecid_utra_nodeB_list, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_SEQUENCE_SIZE_1_maxUTRAnodeBs_OF_OMA_LPPe_ECID_UTRA_NodeBData },
  { &hf_lppe_ecid_utra_HNB_list, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_SEQUENCE_SIZE_1_maxUTRAHNBs_OF_OMA_LPPe_ECID_UTRA_HNBData },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_UTRA_NetworkData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_UTRA_NetworkData, OMA_LPPe_ECID_UTRA_NetworkData_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_maxUTRANetworks_OF_OMA_LPPe_ECID_UTRA_NetworkData_sequence_of[1] = {
  { &hf_lppe_ecid_UTRA_NetworkData_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_UTRA_NetworkData },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_maxUTRANetworks_OF_OMA_LPPe_ECID_UTRA_NetworkData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_maxUTRANetworks_OF_OMA_LPPe_ECID_UTRA_NetworkData, SEQUENCE_SIZE_1_maxUTRANetworks_OF_OMA_LPPe_ECID_UTRA_NetworkData_sequence_of,
                                                  1, maxUTRANetworks, FALSE);

  return offset;
}


static const value_string lppe_T_cause_10_vals[] = {
  {   0, "undefined" },
  {   1, "requestedADNotAvailable" },
  {   2, "notAllrequestedADAvailable" },
  { 0, NULL }
};


static int
dissect_lppe_T_cause_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_UTRA_LocationServerErrorCauses_sequence[] = {
  { &hf_lppe_cause_10       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause_10 },
  { &hf_lppe_nodeBMandatoryDataUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_nodeBLocationUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_nodeBcellTransmitPowerUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_nodeBcallAntennaGainUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_nodeBcellBeamWidthUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_nodeBcellTransmitDirectionUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_nodeBcellFrequencyAccuracyUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_nodeBnonservingADUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_hNBMandatoryDataUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_hNBLocationUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_hNBLocationReliabilityUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_hNBcellTransmitPowerUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_hNBcellFrequencyAccuracyUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_hNBCoverageAreaUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_hNBnonservingADUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_UTRA_LocationServerErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_UTRA_LocationServerErrorCauses, OMA_LPPe_ECID_UTRA_LocationServerErrorCauses_sequence);

  return offset;
}


static const value_string lppe_T_cause_11_vals[] = {
  {   0, "undefined" },
  {   1, "requestedMeasurementsNotAvailable" },
  {   2, "notAllrequestedMeasurementsPossible" },
  { 0, NULL }
};


static int
dissect_lppe_T_cause_11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_UTRA_TargetDeviceErrorCauses_sequence[] = {
  { &hf_lppe_cause_11       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause_11 },
  { &hf_lppe_mRLMeasurementsNotPossible, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_tdd_timingAdvanceMeasurementNotPossible, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_mRL_utra_CarrierRSSIMeasurementNotPossible, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_mRL_FDD_cpich_Ec_N0MeasurementNotPossible, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_mRL_FDD_cpich_RSCPMeasurementNotPossible, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_mRL_FDD_pathlossMeasurementNotPossible, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_mRL_TDD_primaryCCPCH_RSCPMeasurementNotPossible, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_mRL_TDD_pathlossMeasurementNotPossible, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_non_servingMeasurementsNotAvailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_historicMeasurementsNotAvailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_UTRA_TargetDeviceErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_UTRA_TargetDeviceErrorCauses, OMA_LPPe_ECID_UTRA_TargetDeviceErrorCauses_sequence);

  return offset;
}


static const value_string lppe_OMA_LPPe_ECID_UTRA_Error_vals[] = {
  {   0, "locationServerErrorCauses" },
  {   1, "targetDeviceErrorCauses" },
  { 0, NULL }
};

static const per_choice_t OMA_LPPe_ECID_UTRA_Error_choice[] = {
  {   0, &hf_lppe_locationServerErrorCauses_05, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_ECID_UTRA_LocationServerErrorCauses },
  {   1, &hf_lppe_targetDeviceErrorCauses_05, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_ECID_UTRA_TargetDeviceErrorCauses },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_UTRA_Error(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_OMA_LPPe_ECID_UTRA_Error, OMA_LPPe_ECID_UTRA_Error_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_UTRA_ProvideAssistanceData_sequence[] = {
  { &hf_lppe_ecid_UTRA_NetworkData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_SEQUENCE_SIZE_1_maxUTRANetworks_OF_OMA_LPPe_ECID_UTRA_NetworkData },
  { &hf_lppe_ecid_UTRA_Error, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_UTRA_Error },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_UTRA_ProvideAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_UTRA_ProvideAssistanceData, OMA_LPPe_ECID_UTRA_ProvideAssistanceData_sequence);

  return offset;
}


static const per_sequence_t T_mcc_03_sequence_of[1] = {
  { &hf_lppe_mcc_item       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_9 },
};

static int
dissect_lppe_T_mcc_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_T_mcc_03, T_mcc_03_sequence_of,
                                                  3, 3, FALSE);

  return offset;
}


static const per_sequence_t T_mnc_03_sequence_of[1] = {
  { &hf_lppe_mnc_item       , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_9 },
};

static int
dissect_lppe_T_mnc_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_T_mnc_03, T_mnc_03_sequence_of,
                                                  2, 3, FALSE);

  return offset;
}


static const per_sequence_t T_plmn_Identity_03_sequence[] = {
  { &hf_lppe_mcc_03         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_T_mcc_03 },
  { &hf_lppe_mnc_03         , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_T_mnc_03 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_plmn_Identity_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_plmn_Identity_03, T_plmn_Identity_03_sequence);

  return offset;
}


static const per_sequence_t Supported_Channels_11a_sequence[] = {
  { &hf_lppe_ch34           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_ch36           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_ch38           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_ch40           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_ch42           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_ch44           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_ch46           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_ch48           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_ch52           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_ch56           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_ch60           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_ch64           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_ch149          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_ch153          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_ch157          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_ch161          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_Supported_Channels_11a(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_Supported_Channels_11a, Supported_Channels_11a_sequence);

  return offset;
}


static const per_sequence_t Supported_Channels_11bg_sequence[] = {
  { &hf_lppe_ch1            , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_ch2            , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_ch3            , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_ch4            , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_ch5            , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_ch6            , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_ch7            , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_ch8            , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_ch9            , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_ch10           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_ch11           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_ch12           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_ch13           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_ch14           , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_Supported_Channels_11bg(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_Supported_Channels_11bg, Supported_Channels_11bg_sequence);

  return offset;
}


static const value_string lppe_OMA_LPPe_WLAN_AP_Type_vals[] = {
  {   0, "ieee802-11a" },
  {   1, "ieee802-11b" },
  {   2, "ieee802-11g" },
  {   3, "ieee802-11n" },
  {   4, "ieee802-11ac" },
  {   5, "ieee802-11ad" },
  { 0, NULL }
};


static int
dissect_lppe_OMA_LPPe_WLAN_AP_Type(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     4, NULL, TRUE, 2, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_WLAN_AP_Type_Data_sequence[] = {
  { &hf_lppe_wlan_AP_Type   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_WLAN_AP_Type },
  { &hf_lppe_transmit_power , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M127_128 },
  { &hf_lppe_antenna_gain   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M127_128 },
  { &hf_lppe_coverageArea   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_WLANFemtoCoverageArea },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_WLAN_AP_Type_Data(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_WLAN_AP_Type_Data, OMA_LPPe_WLAN_AP_Type_Data_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_maxWLANTypes_OF_OMA_LPPe_WLAN_AP_Type_Data_sequence_of[1] = {
  { &hf_lppe_wlan_ap_Type_Data_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_WLAN_AP_Type_Data },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_maxWLANTypes_OF_OMA_LPPe_WLAN_AP_Type_Data(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_maxWLANTypes_OF_OMA_LPPe_WLAN_AP_Type_Data, SEQUENCE_SIZE_1_maxWLANTypes_OF_OMA_LPPe_WLAN_AP_Type_Data_sequence_of,
                                                  1, maxWLANTypes, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_WLAN_AP_Data_sequence[] = {
  { &hf_lppe_wlan_ap_id     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_WLAN_AP_ID },
  { &hf_lppe_relative_location, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_RelativeLocation },
  { &hf_lppe_location_reliability, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_1_100 },
  { &hf_lppe_wlan_ap_Type_Data, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_maxWLANTypes_OF_OMA_LPPe_WLAN_AP_Type_Data },
  { &hf_lppe_coverageArea   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_WLANFemtoCoverageArea },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_WLAN_AP_Data(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_WLAN_AP_Data, OMA_LPPe_WLAN_AP_Data_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_maxWLANAPs_OF_OMA_LPPe_WLAN_AP_Data_sequence_of[1] = {
  { &hf_lppe_wlan_ap_list_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_WLAN_AP_Data },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_maxWLANAPs_OF_OMA_LPPe_WLAN_AP_Data(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_maxWLANAPs_OF_OMA_LPPe_WLAN_AP_Data, SEQUENCE_SIZE_1_maxWLANAPs_OF_OMA_LPPe_WLAN_AP_Data_sequence_of,
                                                  1, maxWLANAPs, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_WLAN_DataSet_sequence[] = {
  { &hf_lppe_plmn_Identity_03, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_plmn_Identity_03 },
  { &hf_lppe_reference_point, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ReferencePoint },
  { &hf_lppe_supported_channels_11a, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_Supported_Channels_11a },
  { &hf_lppe_supported_channels_11bg, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_Supported_Channels_11bg },
  { &hf_lppe_wlan_ap_list   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_maxWLANAPs_OF_OMA_LPPe_WLAN_AP_Data },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_WLAN_DataSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_WLAN_DataSet, OMA_LPPe_WLAN_DataSet_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_maxWLANDataSets_OF_OMA_LPPe_WLAN_DataSet_sequence_of[1] = {
  { &hf_lppe_wlan_DataSet_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_WLAN_DataSet },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_maxWLANDataSets_OF_OMA_LPPe_WLAN_DataSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_maxWLANDataSets_OF_OMA_LPPe_WLAN_DataSet, SEQUENCE_SIZE_1_maxWLANDataSets_OF_OMA_LPPe_WLAN_DataSet_sequence_of,
                                                  1, maxWLANDataSets, FALSE);

  return offset;
}


static const value_string lppe_T_cause_12_vals[] = {
  {   0, "undefined" },
  {   1, "requestedADNotAvailable" },
  {   2, "notAllrequestedADAvailable" },
  { 0, NULL }
};


static int
dissect_lppe_T_cause_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_WLAN_AP_LocationServerErrorCauses_sequence[] = {
  { &hf_lppe_cause_12       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause_12 },
  { &hf_lppe_apMandatoryDataUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_apLocationsUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_apLocationReliabilityUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_apTransmitPowerUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_apAntennaGainUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_apCoverageAreaUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_nonservingADUnavailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_apTPNotAvailable, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_apAGNotAvailable, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_ueSNNotAvailable, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_ueRSSINotAvailable, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_ocNotAvailable , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_NULL },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_WLAN_AP_LocationServerErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_WLAN_AP_LocationServerErrorCauses, OMA_LPPe_WLAN_AP_LocationServerErrorCauses_sequence);

  return offset;
}


static const value_string lppe_T_cause_13_vals[] = {
  {   0, "undefined" },
  {   1, "requestedMeasurementsNotAvailable" },
  {   2, "notAllrequestedMeasurementsPossible" },
  { 0, NULL }
};


static int
dissect_lppe_T_cause_13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_WLAN_AP_TargetDeviceErrorCauses_sequence[] = {
  { &hf_lppe_cause_13       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause_13 },
  { &hf_lppe_apSSIDnotAvailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_apSNMeasurementNotPossible, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_apDevTypeNotAvailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_apPhyTypeNotAvailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_apRSSIMeasurementNotPossible, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_apChanFreqNotAvailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_apRTDMeasurementNotPossible, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_ueTPNotAvailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_ueAGNotAvailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_apRecLocNotAvailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_non_servingMeasurementsNotAvailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_historicMeasurementsNotAvailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_apTPNotAvailable, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_apAGNotAvailable, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_ueSNNotAvailable, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_ueRSSINotAvailable, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_ocNotAvailable , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_ueMACAddressNotAvailable, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_NULL },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_WLAN_AP_TargetDeviceErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_WLAN_AP_TargetDeviceErrorCauses, OMA_LPPe_WLAN_AP_TargetDeviceErrorCauses_sequence);

  return offset;
}


static const value_string lppe_OMA_LPPe_WLAN_AP_Error_vals[] = {
  {   0, "locationServerErrorCauses" },
  {   1, "targetDeviceErrorCauses" },
  { 0, NULL }
};

static const per_choice_t OMA_LPPe_WLAN_AP_Error_choice[] = {
  {   0, &hf_lppe_locationServerErrorCauses_06, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_WLAN_AP_LocationServerErrorCauses },
  {   1, &hf_lppe_targetDeviceErrorCauses_06, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_WLAN_AP_TargetDeviceErrorCauses },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_WLAN_AP_Error(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_OMA_LPPe_WLAN_AP_Error, OMA_LPPe_WLAN_AP_Error_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_WLAN_AP_ProvideAssistanceData_sequence[] = {
  { &hf_lppe_wlan_DataSet   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_SEQUENCE_SIZE_1_maxWLANDataSets_OF_OMA_LPPe_WLAN_DataSet },
  { &hf_lppe_wlan_AP_Error  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_WLAN_AP_Error },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_WLAN_AP_ProvideAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_WLAN_AP_ProvideAssistanceData, OMA_LPPe_WLAN_AP_ProvideAssistanceData_sequence);

  return offset;
}



static int
dissect_lppe_INTEGER_M20000_10000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            -20000, 10000U, NULL, FALSE);

  return offset;
}


static const per_sequence_t T_period_sequence[] = {
  { &hf_lppe_pressureValidityPeriod, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ValidityPeriod },
  { &hf_lppe_referencePressureRate, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M128_127 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_period(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_period, T_period_sequence);

  return offset;
}



static int
dissect_lppe_INTEGER_1_128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            1U, 128U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_PressureValidityArea_sequence[] = {
  { &hf_lppe_centerPoint    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_Ellipsoid_Point },
  { &hf_lppe_validityAreaWidth, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_128 },
  { &hf_lppe_validityAreaHeight, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_128 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_PressureValidityArea(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_PressureValidityArea, OMA_LPPe_PressureValidityArea_sequence);

  return offset;
}


static const per_sequence_t T_area_sequence[] = {
  { &hf_lppe_pressureValidityArea, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_PressureValidityArea },
  { &hf_lppe_gN_pressure    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M128_127 },
  { &hf_lppe_gE_pressure    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M128_127 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_area(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_area, T_area_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AtmosphericPressureAD_sequence[] = {
  { &hf_lppe_referencePressure, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M20000_10000 },
  { &hf_lppe_period         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_period },
  { &hf_lppe_area_01        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_area },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AtmosphericPressureAD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AtmosphericPressureAD, OMA_LPPe_AtmosphericPressureAD_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_Sensor_ProvideAssistanceData_sequence[] = {
  { &hf_lppe_atmosphericPressureAD, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AtmosphericPressureAD },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_Sensor_ProvideAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_Sensor_ProvideAssistanceData, OMA_LPPe_Sensor_ProvideAssistanceData_sequence);

  return offset;
}



static int
dissect_lppe_INTEGER_M300_500(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            -300, 500U, NULL, FALSE);

  return offset;
}


static const per_sequence_t T_srnAntennaInfo_sequence[] = {
  { &hf_lppe_antennaPatternID, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_65535 },
  { &hf_lppe_switchingPatternID, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_65535 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_srnAntennaInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_srnAntennaInfo, T_srnAntennaInfo_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_SRNtype_sequence[] = {
  { &hf_lppe_srnCategory    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_Category },
  { &hf_lppe_srnERP         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M300_500 },
  { &hf_lppe_srnAntennaInfo , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_srnAntennaInfo },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_SRNtype(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_SRNtype, OMA_LPPe_SRN_SRNtype_sequence);

  return offset;
}



static int
dissect_lppe_INTEGER_0_180(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 180U, NULL, FALSE);

  return offset;
}


static const per_sequence_t T_eulerAngles_sequence[] = {
  { &hf_lppe_alpha          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_359 },
  { &hf_lppe_beta           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_180 },
  { &hf_lppe_gamma          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_359 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_eulerAngles(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_eulerAngles, T_eulerAngles_sequence);

  return offset;
}


static const value_string lppe_OMA_LPPe_Orientation_vals[] = {
  {   0, "eulerAngles" },
  { 0, NULL }
};

static const per_choice_t OMA_LPPe_Orientation_choice[] = {
  {   0, &hf_lppe_eulerAngles    , ASN1_EXTENSION_ROOT    , dissect_lppe_T_eulerAngles },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_Orientation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_OMA_LPPe_Orientation, OMA_LPPe_Orientation_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_SRNinfo_sequence[] = {
  { &hf_lppe_srnID          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_SRNid },
  { &hf_lppe_srnType        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_SRN_SRNtype },
  { &hf_lppe_relativePosition, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_RelativeLocation },
  { &hf_lppe_orientation    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_Orientation },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_SRNinfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_SRNinfo, OMA_LPPe_SRN_SRNinfo_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNinfo_sequence_of[1] = {
  { &hf_lppe_srnsInGroupList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_SRNinfo },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNinfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNinfo, SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNinfo_sequence_of,
                                                  1, 1024, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_SRNgroup_sequence[] = {
  { &hf_lppe_srnGroupID     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_SRN_SRNgroupUniqueID },
  { &hf_lppe_defaultSRNtype , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_SRN_SRNtype },
  { &hf_lppe_referencePoint_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ReferencePoint },
  { &hf_lppe_globalOrientation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_srnsInGroupList, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNinfo },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_SRNgroup(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_SRNgroup, OMA_LPPe_SRN_SRNgroup_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_SRNgroup_sequence_of[1] = {
  { &hf_lppe_groupList_item , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_SRNgroup },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_SRNgroup(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_SRNgroup, SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_SRNgroup_sequence_of,
                                                  1, 64, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_SRNgroupList_sequence[] = {
  { &hf_lppe_incompleteFlag , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_defaultReferencePoint, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ReferencePoint },
  { &hf_lppe_groupList      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_SRNgroup },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_SRNgroupList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_SRNgroupList, OMA_LPPe_SRN_SRNgroupList_sequence);

  return offset;
}


static const value_string lppe_T_targetDataValidity_vals[] = {
  {   0, "targetDataValid" },
  {   1, "targetDataInValidAndUpdatedDataWillBeProvided" },
  {   2, "targetDataInValidButServerWillNotProvideNewData" },
  { 0, NULL }
};


static int
dissect_lppe_T_targetDataValidity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_SRNgroupUpdateResponseElement_sequence[] = {
  { &hf_lppe_srnGroupID     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_SRN_SRNgroupUniqueID },
  { &hf_lppe_targetDataValidity, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_targetDataValidity },
  { &hf_lppe_updatedSRNgroup, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_SRN_SRNgroup },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_SRNgroupUpdateResponseElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_SRNgroupUpdateResponseElement, OMA_LPPe_SRN_SRNgroupUpdateResponseElement_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_SRNgroupUpdateResponse_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_SRN_SRNgroupUpdateResponse_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_SRNgroupUpdateResponseElement },
};

static int
dissect_lppe_OMA_LPPe_SRN_SRNgroupUpdateResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_SRN_SRNgroupUpdateResponse, OMA_LPPe_SRN_SRNgroupUpdateResponse_sequence_of,
                                                  1, 8, FALSE);

  return offset;
}


static const value_string lppe_T_srnGroup_vals[] = {
  {   0, "srnGroupList" },
  {   1, "srnGroupUpdateResponse" },
  { 0, NULL }
};

static const per_choice_t T_srnGroup_choice[] = {
  {   0, &hf_lppe_srnGroupList   , ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_SRN_SRNgroupList },
  {   1, &hf_lppe_srnGroupUpdateResponse, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_SRN_SRNgroupUpdateResponse },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_T_srnGroup(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_T_srnGroup, T_srnGroup_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t T_identification_sequence[] = {
  { &hf_lppe_vendorOrOperator, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorID },
  { &hf_lppe_antennaPatternID, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_65535 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_identification(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_identification, T_identification_sequence);

  return offset;
}



static int
dissect_lppe_INTEGER_1_200(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            1U, 200U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_1_150(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            1U, 150U, NULL, FALSE);

  return offset;
}


static const per_sequence_t T_evenGrid_sequence[] = {
  { &hf_lppe_inAzimuth      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_200 },
  { &hf_lppe_inElevation    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_150 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_evenGrid(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_evenGrid, T_evenGrid_sequence);

  return offset;
}



static int
dissect_lppe_INTEGER_1_maxChannels(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            1U, maxChannels, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_0_900(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 900U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_0_3599(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 3599U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_M1800_1799(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            -1800, 1799U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_ComplexNumber_sequence[] = {
  { &hf_lppe_amplitude      , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_1000 },
  { &hf_lppe_phase          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M1800_1799 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ComplexNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ComplexNumber, OMA_LPPe_ComplexNumber_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_ResponseInAzimuth_sequence[] = {
  { &hf_lppe_azimuth_01     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_3599 },
  { &hf_lppe_response       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ComplexNumber },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_ResponseInAzimuth(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_ResponseInAzimuth, OMA_LPPe_SRN_ResponseInAzimuth_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_18_3601_OF_OMA_LPPe_SRN_ResponseInAzimuth_sequence_of[1] = {
  { &hf_lppe_responseInAzimuth_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_ResponseInAzimuth },
};

static int
dissect_lppe_SEQUENCE_SIZE_18_3601_OF_OMA_LPPe_SRN_ResponseInAzimuth(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_18_3601_OF_OMA_LPPe_SRN_ResponseInAzimuth, SEQUENCE_SIZE_18_3601_OF_OMA_LPPe_SRN_ResponseInAzimuth_sequence_of,
                                                  18, 3601, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_ResponseInElevation_sequence[] = {
  { &hf_lppe_elevation_01   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_900 },
  { &hf_lppe_responseInAzimuth, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_18_3601_OF_OMA_LPPe_SRN_ResponseInAzimuth },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_ResponseInElevation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_ResponseInElevation, OMA_LPPe_SRN_ResponseInElevation_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_7_901_OF_OMA_LPPe_SRN_ResponseInElevation_sequence_of[1] = {
  { &hf_lppe_responseInElevation_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_ResponseInElevation },
};

static int
dissect_lppe_SEQUENCE_SIZE_7_901_OF_OMA_LPPe_SRN_ResponseInElevation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_7_901_OF_OMA_LPPe_SRN_ResponseInElevation, SEQUENCE_SIZE_7_901_OF_OMA_LPPe_SRN_ResponseInElevation_sequence_of,
                                                  7, 901, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_ChannelResponse_sequence[] = {
  { &hf_lppe_channelNumber  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_maxChannels },
  { &hf_lppe_responseInElevation, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_7_901_OF_OMA_LPPe_SRN_ResponseInElevation },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_ChannelResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_ChannelResponse, OMA_LPPe_SRN_ChannelResponse_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_maxChannels_OF_OMA_LPPe_SRN_ChannelResponse_sequence_of[1] = {
  { &hf_lppe_patternList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_ChannelResponse },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_maxChannels_OF_OMA_LPPe_SRN_ChannelResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_maxChannels_OF_OMA_LPPe_SRN_ChannelResponse, SEQUENCE_SIZE_1_maxChannels_OF_OMA_LPPe_SRN_ChannelResponse_sequence_of,
                                                  1, maxChannels, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_AntennaPatternForChannels_sequence[] = {
  { &hf_lppe_evenGrid       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_evenGrid },
  { &hf_lppe_patternList    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_maxChannels_OF_OMA_LPPe_SRN_ChannelResponse },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_AntennaPatternForChannels(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_AntennaPatternForChannels, OMA_LPPe_SRN_AntennaPatternForChannels_sequence);

  return offset;
}


static const value_string lppe_T_antennaData_vals[] = {
  {   0, "antennaPattern" },
  {   1, "antennaContainer" },
  { 0, NULL }
};

static const per_choice_t T_antennaData_choice[] = {
  {   0, &hf_lppe_antennaPattern_01, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_SRN_AntennaPatternForChannels },
  {   1, &hf_lppe_antennaContainer, ASN1_EXTENSION_ROOT    , dissect_lppe_OCTET_STRING },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_T_antennaData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_T_antennaData, T_antennaData_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_AntennaPatternElement_sequence[] = {
  { &hf_lppe_identification , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_identification },
  { &hf_lppe_antennaData    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_antennaData },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_AntennaPatternElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_AntennaPatternElement, OMA_LPPe_SRN_AntennaPatternElement_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_AntennaPattern_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_SRN_AntennaPattern_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_AntennaPatternElement },
};

static int
dissect_lppe_OMA_LPPe_SRN_AntennaPattern(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_SRN_AntennaPattern, OMA_LPPe_SRN_AntennaPattern_sequence_of,
                                                  1, 8, FALSE);

  return offset;
}


static const value_string lppe_T_groupErrors_vals[] = {
  {   0, "undefined" },
  {   1, "someGroupOrCategoryOrSRNidUnknownOrUnsupported" },
  {   2, "allGroupAndCategoryOrSRNidUnknownOrUnsupported" },
  {   3, "noSRNgroupsNearby" },
  { 0, NULL }
};


static int
dissect_lppe_T_groupErrors(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     4, NULL, TRUE, 0, NULL);

  return offset;
}


static const value_string lppe_T_groupUpdateErrors_vals[] = {
  {   0, "undefined" },
  {   1, "allSRNgroupIDsUnknown" },
  {   2, "allSRNgroupIDsknownButSomeSRNgroupVersionsUnknown" },
  {   3, "allSRNgroupIDsknownAndAllSRNgroupVersionsUnknown" },
  {   4, "someSRNgroupIDsUnknown" },
  {   5, "someSRNgroupVersionsUnknownAndAllSRNGroupVersionsUnknown" },
  {   6, "someSRNgroupIDsAndSomeSRNgroupVersionsUnknown" },
  {   7, "inTheGroupInformationDoesNotMatchWithGroupID" },
  { 0, NULL }
};


static int
dissect_lppe_T_groupUpdateErrors(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     8, NULL, TRUE, 0, NULL);

  return offset;
}


static const value_string lppe_T_srnAntennaErrors_vals[] = {
  {   0, "undefined" },
  {   1, "someAntennaPatternIDsUnknown" },
  {   2, "allAntennaPatternIDsUnknown" },
  { 0, NULL }
};


static int
dissect_lppe_T_srnAntennaErrors(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_LocationServerErrorCauses_sequence[] = {
  { &hf_lppe_groupErrors    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_groupErrors },
  { &hf_lppe_groupUpdateErrors, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_groupUpdateErrors },
  { &hf_lppe_srnAntennaErrors, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_srnAntennaErrors },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_LocationServerErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_LocationServerErrorCauses, OMA_LPPe_SRN_LocationServerErrorCauses_sequence);

  return offset;
}


static const value_string lppe_T_srnErrors_vals[] = {
  {   0, "undefined" },
  {   1, "requestedMeasurementsNotAvailable" },
  {   2, "notAllrequestedMeasurementsPossible" },
  {   3, "categoryNotSupported" },
  { 0, NULL }
};


static int
dissect_lppe_T_srnErrors(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     4, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_TargetDeviceError_sequence[] = {
  { &hf_lppe_category       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_Category },
  { &hf_lppe_srnErrors      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_srnErrors },
  { &hf_lppe_rssiNotAvailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_rtdNotAvailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_multipleSetsNotAvailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_historicMeasurementsNotAvailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_TargetDeviceError(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_TargetDeviceError, OMA_LPPe_SRN_TargetDeviceError_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_TargetDeviceError_sequence_of[1] = {
  { &hf_lppe_srnErrorsPerCategory_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_TargetDeviceError },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_TargetDeviceError(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_TargetDeviceError, SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_TargetDeviceError_sequence_of,
                                                  1, 16, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_TargetDeviceErrorCauses_sequence[] = {
  { &hf_lppe_srnErrorsPerCategory, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_TargetDeviceError },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_TargetDeviceErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_TargetDeviceErrorCauses, OMA_LPPe_SRN_TargetDeviceErrorCauses_sequence);

  return offset;
}


static const value_string lppe_OMA_LPPe_SRN_Error_vals[] = {
  {   0, "srnLocationServerErrorCauses" },
  {   1, "srnTargetDeviceErrorCauses" },
  { 0, NULL }
};

static const per_choice_t OMA_LPPe_SRN_Error_choice[] = {
  {   0, &hf_lppe_srnLocationServerErrorCauses, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_SRN_LocationServerErrorCauses },
  {   1, &hf_lppe_srnTargetDeviceErrorCauses, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_SRN_TargetDeviceErrorCauses },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_Error(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_OMA_LPPe_SRN_Error, OMA_LPPe_SRN_Error_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_ProvideAssistanceData_sequence[] = {
  { &hf_lppe_srnGroup       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_srnGroup },
  { &hf_lppe_antennaPattern , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_SRN_AntennaPattern },
  { &hf_lppe_srnError       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_SRN_Error },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_ProvideAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_ProvideAssistanceData, OMA_LPPe_SRN_ProvideAssistanceData_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_ProvideAssistanceData_sequence[] = {
  { &hf_lppe_commonIEsProvideAssistanceData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_CommonIEsProvideAssistanceData },
  { &hf_lppe_agnss_ProvideAssistanceData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_ProvideAssistanceData },
  { &hf_lppe_otdoa_ProvideAssistanceData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_ProvideAssistanceData },
  { &hf_lppe_eotd_ProvideAssistanceData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_EOTD_ProvideAssistanceData },
  { &hf_lppe_otdoa_utra_ProvideAssistanceData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_UTRA_ProvideAssistanceData },
  { &hf_lppe_ecid_lte_ProvideAssistanceData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_LTE_ProvideAssistanceData },
  { &hf_lppe_ecid_gsm_ProvideAssistanceData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_GSM_ProvideAssistanceData },
  { &hf_lppe_ecid_utra_ProvideAssistanceData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_UTRA_ProvideAssistanceData },
  { &hf_lppe_wlan_ap_ProvideAssistanceData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_WLAN_AP_ProvideAssistanceData },
  { &hf_lppe_sensor_ProvideAssistanceData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_Sensor_ProvideAssistanceData },
  { &hf_lppe_srn_ProvideAssistanceData, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_SRN_ProvideAssistanceData },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ProvideAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ProvideAssistanceData, OMA_LPPe_ProvideAssistanceData_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_IP_Address_Request_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_IP_Address_Request(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_IP_Address_Request, OMA_LPPe_IP_Address_Request_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_LocationInformationContainerRequestItem_sequence[] = {
  { &hf_lppe_containerID_01 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_LocationInformationContainerID },
  { &hf_lppe_additionalInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OCTET_STRING },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_LocationInformationContainerRequestItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_LocationInformationContainerRequestItem, OMA_LPPe_LocationInformationContainerRequestItem_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_LocationInformationContainerRequestList_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_LocationInformationContainerRequestList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_LocationInformationContainerRequestItem },
};

static int
dissect_lppe_OMA_LPPe_LocationInformationContainerRequestList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_LocationInformationContainerRequestList, OMA_LPPe_LocationInformationContainerRequestList_sequence_of,
                                                  1, maxLocationInformationContainerDataList, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_LocationInformationContainerRequest_sequence[] = {
  { &hf_lppe_vendorOrOperatorID, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorID },
  { &hf_lppe_locationInformationContainerRequestList, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_LocationInformationContainerRequestList },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_LocationInformationContainerRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_LocationInformationContainerRequest, OMA_LPPe_LocationInformationContainerRequest_sequence);

  return offset;
}


static const value_string lppe_OMA_LPPe_TypeOfLocInfoRequest_vals[] = {
  {   0, "initialRequest" },
  {   1, "updateAndContinueIfUpdateFails" },
  {   2, "updateAndAbortIfUpdateFails" },
  { 0, NULL }
};


static int
dissect_lppe_OMA_LPPe_TypeOfLocInfoRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_RequestPeriodicLocInfoWithUpdate_sequence[] = {
  { &hf_lppe_session_ID     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OCTET_STRING_SIZE_4 },
  { &hf_lppe_typeOfLocInfoRequest, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_TypeOfLocInfoRequest },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_RequestPeriodicLocInfoWithUpdate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_RequestPeriodicLocInfoWithUpdate, OMA_LPPe_RequestPeriodicLocInfoWithUpdate_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_RelativeLocationChange_Request_sequence[] = {
  { &hf_lppe_numberOfChanges, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_1_5 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_RelativeLocationChange_Request(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_RelativeLocationChange_Request, OMA_LPPe_RelativeLocationChange_Request_sequence);

  return offset;
}


static const value_string lppe_T_typeOfRequest_vals[] = {
  {   0, "localOptional" },
  {   1, "localMandatory" },
  {   2, "localOnly" },
  { 0, NULL }
};


static int
dissect_lppe_T_typeOfRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointUniqueID_sequence_of[1] = {
  { &hf_lppe_referencePointReq_item_01, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ReferencePointUniqueID },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointUniqueID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointUniqueID, SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointUniqueID_sequence_of,
                                                  1, 8, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_LocalPositionRequest_sequence[] = {
  { &hf_lppe_typeOfRequest  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_typeOfRequest },
  { &hf_lppe_referencePointReq_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointUniqueID },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_LocalPositionRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_LocalPositionRequest, OMA_LPPe_LocalPositionRequest_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_ScheduledLocation_Request_sequence[] = {
  { &hf_lppe_gnssTime       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lpp_GNSS_SystemTime },
  { &hf_lppe_networkTime    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lpp_NetworkTime },
  { &hf_lppe_relativeTime   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_1_1024 },
  { &hf_lppe_windowSize     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_1_1024 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ScheduledLocation_Request(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ScheduledLocation_Request, OMA_LPPe_ScheduledLocation_Request_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AccessTypeRequest_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AccessTypeRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AccessTypeRequest, OMA_LPPe_AccessTypeRequest_sequence);

  return offset;
}


static const value_string lppe_T_segmentedLIpreference_vals[] = {
  {   0, "useBasic" },
  {   1, "useResume" },
  { 0, NULL }
};


static int
dissect_lppe_T_segmentedLIpreference(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     2, NULL, TRUE, 0, NULL);

  return offset;
}



static int
dissect_lppe_INTEGER_1_256(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            1U, 256U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_SegmentedLIResume_sequence[] = {
  { &hf_lppe_segmentedLI_session_ID, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_256 },
  { &hf_lppe_next_segment_number, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_4096 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SegmentedLIResume(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SegmentedLIResume, OMA_LPPe_SegmentedLIResume_sequence);

  return offset;
}


static const value_string lppe_T_format_vals[] = {
  {   0, "pidf-lo" },
  { 0, NULL }
};


static int
dissect_lppe_T_format(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     1, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_CivicLocation_Request_sequence[] = {
  { &hf_lppe_format         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_format },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_CivicLocation_Request(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_CivicLocation_Request, OMA_LPPe_CivicLocation_Request_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_CommonIEsRequestLocationInformation_sequence[] = {
  { &hf_lppe_iP_Address_Request, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_IP_Address_Request },
  { &hf_lppe_locationInformationContainerRequest, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_LocationInformationContainerRequest },
  { &hf_lppe_requestPeriodicLocInfoWithUpdate, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_RequestPeriodicLocInfoWithUpdate },
  { &hf_lppe_relativeLocationChange_Request, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_RelativeLocationChange_Request },
  { &hf_lppe_localPositionRequest, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_LocalPositionRequest },
  { &hf_lppe_scheduledLocation_Request, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ScheduledLocation_Request },
  { &hf_lppe_accessTypeRequest, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AccessTypeRequest },
  { &hf_lppe_segmentedLIpreference, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_segmentedLIpreference },
  { &hf_lppe_segmentedLIResume, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_SegmentedLIResume },
  { &hf_lppe_civicLocation_Request, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_CivicLocation_Request },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_CommonIEsRequestLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_CommonIEsRequestLocationInformation, OMA_LPPe_CommonIEsRequestLocationInformation_sequence);

  return offset;
}


static const value_string lppe_T_antennaInformationReq_vals[] = {
  {   0, "antennaDescriptionOnly" },
  {   1, "antennaDescriptionAndOrientation" },
  { 0, NULL }
};


static int
dissect_lppe_T_antennaInformationReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     2, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_HAgnssSignalReqElement_sequence[] = {
  { &hf_lppe_gnssID         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_ID },
  { &hf_lppe_signals        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SignalIDs },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_HAgnssSignalReqElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_HAgnssSignalReqElement, OMA_LPPe_AGNSS_HAgnssSignalReqElement_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssSignalReqElement_sequence_of[1] = {
  { &hf_lppe_signalReqList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_HAgnssSignalReqElement },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssSignalReqElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssSignalReqElement, SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssSignalReqElement_sequence_of,
                                                  1, 16, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_HAgnssRequestControlParameters_sequence[] = {
  { &hf_lppe_duration_03    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_Duration },
  { &hf_lppe_rate_01        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_1_63 },
  { &hf_lppe_antennaInformationReq, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_antennaInformationReq },
  { &hf_lppe_pressureInformationReq, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_signalReqList  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssSignalReqElement },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_HAgnssRequestControlParameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_HAgnssRequestControlParameters, OMA_LPPe_AGNSS_HAgnssRequestControlParameters_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_PositioningInstructions_sequence[] = {
  { &hf_lppe_highAccuracyMethodRequested, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { &hf_lppe_haGNSSreq      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_HAgnssRequestControlParameters },
  { &hf_lppe_extUncertRange , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_BOOLEAN },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_PositioningInstructions(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_PositioningInstructions, OMA_LPPe_AGNSS_PositioningInstructions_sequence);

  return offset;
}


static int * const T_ionosphereMeasurementsReq_bits[] = {
  &hf_lppe_T_ionosphereMeasurementsReq_tecPerSV,
  &hf_lppe_T_ionosphereMeasurementsReq_zenithTEC,
  NULL
};

static int
dissect_lppe_T_ionosphereMeasurementsReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 8, FALSE, T_ionosphereMeasurementsReq_bits, 2, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_LocalSurfaceMeasurementReq_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_LocalSurfaceMeasurementReq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_LocalSurfaceMeasurementReq, OMA_LPPe_AGNSS_LocalSurfaceMeasurementReq_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_RequestLocationInformation_sequence[] = {
  { &hf_lppe_positioningInstructions, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_PositioningInstructions },
  { &hf_lppe_ionosphereMeasurementsReq, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_ionosphereMeasurementsReq },
  { &hf_lppe_localSurfaceMeasurementReq, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_LocalSurfaceMeasurementReq },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_RequestLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_RequestLocationInformation, OMA_LPPe_AGNSS_RequestLocationInformation_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_RequestLocationInformation_sequence[] = {
  { &hf_lppe_assistanceAvailability, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_RequestLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_RequestLocationInformation, OMA_LPPe_OTDOA_RequestLocationInformation_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_EOTD_RequestLocationInformation_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_EOTD_RequestLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_EOTD_RequestLocationInformation, OMA_LPPe_EOTD_RequestLocationInformation_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_UTRA_RequestLocationInformation_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_RequestLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_UTRA_RequestLocationInformation, OMA_LPPe_OTDOA_UTRA_RequestLocationInformation_sequence);

  return offset;
}


static int * const T_requestedMeasurements_bits[] = {
  &hf_lppe_T_requestedMeasurements_rsrp,
  &hf_lppe_T_requestedMeasurements_rsrq,
  &hf_lppe_T_requestedMeasurements_ueRxTx,
  &hf_lppe_T_requestedMeasurements_non_serving,
  &hf_lppe_T_requestedMeasurements_historic,
  NULL
};

static int
dissect_lppe_T_requestedMeasurements(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 8, FALSE, T_requestedMeasurements_bits, 5, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_LTE_RequestLocationInformation_sequence[] = {
  { &hf_lppe_requestedMeasurements, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_requestedMeasurements },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_LTE_RequestLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_LTE_RequestLocationInformation, OMA_LPPe_ECID_LTE_RequestLocationInformation_sequence);

  return offset;
}


static int * const T_requestedMeasurements_01_bits[] = {
  &hf_lppe_T_requestedMeasurements_01_rxLevel,
  &hf_lppe_T_requestedMeasurements_01_tA,
  &hf_lppe_T_requestedMeasurements_01_nMR_GERAN,
  &hf_lppe_T_requestedMeasurements_01_non_serving,
  &hf_lppe_T_requestedMeasurements_01_historic,
  NULL
};

static int
dissect_lppe_T_requestedMeasurements_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 8, FALSE, T_requestedMeasurements_01_bits, 5, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_GSM_RequestLocationInformation_sequence[] = {
  { &hf_lppe_requestedMeasurements_01, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_requestedMeasurements_01 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_GSM_RequestLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_GSM_RequestLocationInformation, OMA_LPPe_ECID_GSM_RequestLocationInformation_sequence);

  return offset;
}


static int * const T_requestedMeasurements_02_bits[] = {
  &hf_lppe_T_requestedMeasurements_02_measuredResultsList,
  &hf_lppe_T_requestedMeasurements_02_tdd_timingAdvance,
  &hf_lppe_T_requestedMeasurements_02_mRL_utra_CarrierRSSI,
  &hf_lppe_T_requestedMeasurements_02_mRL_FDD_cpich_Ec_N0,
  &hf_lppe_T_requestedMeasurements_02_mRL_FDD_cpich_RSCP,
  &hf_lppe_T_requestedMeasurements_02_mRL_FDD_pathloss,
  &hf_lppe_T_requestedMeasurements_02_mRL_TDD_primaryCCPCH_RSCP,
  &hf_lppe_T_requestedMeasurements_02_mRL_TDD_pathloss,
  &hf_lppe_T_requestedMeasurements_02_non_serving,
  &hf_lppe_T_requestedMeasurements_02_historic,
  NULL
};

static int
dissect_lppe_T_requestedMeasurements_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 16, FALSE, T_requestedMeasurements_02_bits, 10, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_UTRA_RequestLocationInformation_sequence[] = {
  { &hf_lppe_requestedMeasurements_02, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_requestedMeasurements_02 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_UTRA_RequestLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_UTRA_RequestLocationInformation, OMA_LPPe_ECID_UTRA_RequestLocationInformation_sequence);

  return offset;
}


static int * const T_requestedMeasurements_03_bits[] = {
  &hf_lppe_T_requestedMeasurements_03_apSSID,
  &hf_lppe_T_requestedMeasurements_03_apSN,
  &hf_lppe_T_requestedMeasurements_03_apDevType,
  &hf_lppe_T_requestedMeasurements_03_apPhyType,
  &hf_lppe_T_requestedMeasurements_03_apRSSI,
  &hf_lppe_T_requestedMeasurements_03_apChanFreq,
  &hf_lppe_T_requestedMeasurements_03_apRTD,
  &hf_lppe_T_requestedMeasurements_03_ueTP,
  &hf_lppe_T_requestedMeasurements_03_ueAG,
  &hf_lppe_T_requestedMeasurements_03_apRepLoc,
  &hf_lppe_T_requestedMeasurements_03_non_serving,
  &hf_lppe_T_requestedMeasurements_03_historic,
  &hf_lppe_T_requestedMeasurements_03_apTP,
  &hf_lppe_T_requestedMeasurements_03_apAG,
  &hf_lppe_T_requestedMeasurements_03_ueSN,
  &hf_lppe_T_requestedMeasurements_03_ueRSSI,
  NULL
};

static int
dissect_lppe_T_requestedMeasurements_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 16, FALSE, T_requestedMeasurements_03_bits, 16, NULL, NULL);

  return offset;
}


static int * const T_additionalRequestedMeasurements_bits[] = {
  &hf_lppe_T_additionalRequestedMeasurements_oc,
  &hf_lppe_T_additionalRequestedMeasurements_ueMacAddr,
  NULL
};

static int
dissect_lppe_T_additionalRequestedMeasurements(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 16, FALSE, T_additionalRequestedMeasurements_bits, 2, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_WLAN_AP_RequestLocationInformation_sequence[] = {
  { &hf_lppe_requestedMeasurements_03, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_requestedMeasurements_03 },
  { &hf_lppe_additionalRequestedMeasurements, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_T_additionalRequestedMeasurements },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_WLAN_AP_RequestLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_WLAN_AP_RequestLocationInformation, OMA_LPPe_WLAN_AP_RequestLocationInformation_sequence);

  return offset;
}


static int * const T_requestedMeasurements_04_bits[] = {
  &hf_lppe_T_requestedMeasurements_04_rTD,
  &hf_lppe_T_requestedMeasurements_04_rTDstd,
  &hf_lppe_T_requestedMeasurements_04_nMR,
  &hf_lppe_T_requestedMeasurements_04_nMRrelDelay,
  &hf_lppe_T_requestedMeasurements_04_nMRrelDelaystd,
  &hf_lppe_T_requestedMeasurements_04_nMRrSSI,
  &hf_lppe_T_requestedMeasurements_04_nMRrSSIstd,
  &hf_lppe_T_requestedMeasurements_04_nMRbSTxPower,
  &hf_lppe_T_requestedMeasurements_04_nMRcINR,
  &hf_lppe_T_requestedMeasurements_04_nMRcINRstd,
  &hf_lppe_T_requestedMeasurements_04_nMRbSLocation,
  &hf_lppe_T_requestedMeasurements_04_non_serving,
  &hf_lppe_T_requestedMeasurements_04_historic,
  NULL
};

static int
dissect_lppe_T_requestedMeasurements_04(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 16, FALSE, T_requestedMeasurements_04_bits, 13, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_WiMax_RequestLocationInformation_sequence[] = {
  { &hf_lppe_requestedMeasurements_04, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_requestedMeasurements_04 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_WiMax_RequestLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_WiMax_RequestLocationInformation, OMA_LPPe_ECID_WiMax_RequestLocationInformation_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_Sensor_MotionStateRequest_sequence[] = {
  { &hf_lppe_secondaryMotionStateRequest, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_Sensor_MotionStateRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_Sensor_MotionStateRequest, OMA_LPPe_Sensor_MotionStateRequest_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AtmosphericPressureRequest_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AtmosphericPressureRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AtmosphericPressureRequest, OMA_LPPe_AtmosphericPressureRequest_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_Sensor_RequestLocationInformation_sequence[] = {
  { &hf_lppe_motionStateReq , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_Sensor_MotionStateRequest },
  { &hf_lppe_atmosphericPressureReq, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AtmosphericPressureRequest },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_Sensor_RequestLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_Sensor_RequestLocationInformation, OMA_LPPe_Sensor_RequestLocationInformation_sequence);

  return offset;
}


static const value_string lppe_T_multipleMeasurements_vals[] = {
  {   0, "forbidden" },
  {   1, "allowed" },
  {   2, "requested" },
  { 0, NULL }
};


static int
dissect_lppe_T_multipleMeasurements(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_ReqLocInfo_Category_sequence[] = {
  { &hf_lppe_category       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_Category },
  { &hf_lppe_multipleMeasurements, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_multipleMeasurements },
  { &hf_lppe_allowedMeasurements, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_SRN_MeasurementMask },
  { &hf_lppe_historicMeasurementsRequested, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_ReqLocInfo_Category(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_ReqLocInfo_Category, OMA_LPPe_SRN_ReqLocInfo_Category_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ReqLocInfo_Category_sequence_of[1] = {
  { &hf_lppe_requestInfo_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_ReqLocInfo_Category },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ReqLocInfo_Category(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ReqLocInfo_Category, SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ReqLocInfo_Category_sequence_of,
                                                  1, 16, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_RequestLocationInformation_sequence[] = {
  { &hf_lppe_requestInfo    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ReqLocInfo_Category },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_RequestLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_RequestLocationInformation, OMA_LPPe_SRN_RequestLocationInformation_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_RequestLocationInformation_sequence[] = {
  { &hf_lppe_commonIEsRequestLocationInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_CommonIEsRequestLocationInformation },
  { &hf_lppe_agnss_RequestLocationInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_RequestLocationInformation },
  { &hf_lppe_otdoa_RequestLocationInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_RequestLocationInformation },
  { &hf_lppe_eotd_RequestLocationInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_EOTD_RequestLocationInformation },
  { &hf_lppe_otdoa_utra_RequestLocationInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_UTRA_RequestLocationInformation },
  { &hf_lppe_ecid_lte_RequestLocationInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_LTE_RequestLocationInformation },
  { &hf_lppe_ecid_gsm_RequestLocationInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_GSM_RequestLocationInformation },
  { &hf_lppe_ecid_utra_RequestLocationInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_UTRA_RequestLocationInformation },
  { &hf_lppe_wlan_ap_RequestLocationInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_WLAN_AP_RequestLocationInformation },
  { &hf_lppe_ecid_wimax_RequestLocationInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_WiMax_RequestLocationInformation },
  { &hf_lppe_sensor_RequestLocationInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_Sensor_RequestLocationInformation },
  { &hf_lppe_srn_RequestLocationInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_SRN_RequestLocationInformation },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_RequestLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_RequestLocationInformation, OMA_LPPe_RequestLocationInformation_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_LocalPosition_sequence[] = {
  { &hf_lppe_referencePoint , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ReferencePointUniqueID },
  { &hf_lppe_subjectLocation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_RelativeLocation },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_LocalPosition(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_LocalPosition, OMA_LPPe_LocalPosition_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_HighAccuracy3Dvelocity_sequence[] = {
  { &hf_lppe_enu_origin     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_HighAccuracy3Dposition },
  { &hf_lppe_east_component , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_511 },
  { &hf_lppe_negative_sign_east, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_north_component, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_511 },
  { &hf_lppe_negative_sign_north, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_up_component   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_511 },
  { &hf_lppe_negative_sign_up, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_cep            , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_255 },
  { &hf_lppe_uncertainty_semimajor, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_255 },
  { &hf_lppe_uncertainty_semiminor, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_255 },
  { &hf_lppe_offset_angle   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_179 },
  { &hf_lppe_confidenceHorizontal, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_99 },
  { &hf_lppe_uncertainty_up_component, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_255 },
  { &hf_lppe_confidenceUp   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_99 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_HighAccuracy3Dvelocity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_HighAccuracy3Dvelocity, OMA_LPPe_HighAccuracy3Dvelocity_sequence);

  return offset;
}



static int
dissect_lppe_BIT_STRING_SIZE_128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     128, 128, FALSE, NULL, 0, NULL, NULL);

  return offset;
}


static const value_string lppe_T_local_IP_Address_vals[] = {
  {   0, "iPv4" },
  {   1, "iPv6" },
  { 0, NULL }
};

static const per_choice_t T_local_IP_Address_choice[] = {
  {   0, &hf_lppe_iPv4           , ASN1_EXTENSION_ROOT    , dissect_lppe_BIT_STRING_SIZE_32 },
  {   1, &hf_lppe_iPv6           , ASN1_EXTENSION_ROOT    , dissect_lppe_BIT_STRING_SIZE_128 },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_T_local_IP_Address(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_T_local_IP_Address, T_local_IP_Address_choice,
                                 NULL);

  return offset;
}


static const value_string lppe_OMA_LPPe_Bearer_vals[] = {
  {   0, "unknown" },
  {   1, "gsm" },
  {   2, "utran" },
  {   3, "lte" },
  {   4, "wlan" },
  {   5, "wimax" },
  {   6, "dsl" },
  {   7, "pktcable" },
  {   8, "other" },
  {   9, "nr" },
  { 0, NULL }
};


static int
dissect_lppe_OMA_LPPe_Bearer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     9, NULL, TRUE, 1, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_IP_Address_sequence[] = {
  { &hf_lppe_local_IP_Address, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_local_IP_Address },
  { &hf_lppe_bearer         , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_Bearer },
  { &hf_lppe_nat            , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_BOOLEAN },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_IP_Address(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_IP_Address, OMA_LPPe_IP_Address_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_IP_Address_List_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_IP_Address_List_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_IP_Address },
};

static int
dissect_lppe_OMA_LPPe_IP_Address_List(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_IP_Address_List, OMA_LPPe_IP_Address_List_sequence_of,
                                                  1, maxIPAddress, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_LocationInformationContainerData_sequence[] = {
  { &hf_lppe_containerID_01 , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_LocationInformationContainerID },
  { &hf_lppe_containerData  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OCTET_STRING },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_LocationInformationContainerData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_LocationInformationContainerData, OMA_LPPe_LocationInformationContainerData_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_LocationInformationContainerDataList_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_LocationInformationContainerDataList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_LocationInformationContainerData },
};

static int
dissect_lppe_OMA_LPPe_LocationInformationContainerDataList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_LocationInformationContainerDataList, OMA_LPPe_LocationInformationContainerDataList_sequence_of,
                                                  1, maxLocationInformationContainerDataList, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_LocationInformationContainer_sequence[] = {
  { &hf_lppe_vendorOrOperatorID, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_VendorOrOperatorID },
  { &hf_lppe_locationInformationContainerDataList, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_LocationInformationContainerDataList },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_LocationInformationContainer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_LocationInformationContainer, OMA_LPPe_LocationInformationContainer_sequence);

  return offset;
}


static const value_string lppe_OMA_LPPe_TypeOfLocInfoProvide_vals[] = {
  {   0, "responseToInitialRequest" },
  {   1, "providePeriodicLocInfo" },
  {   2, "responseToServerUpdateRequest" },
  {   3, "targetUpdate" },
  { 0, NULL }
};


static int
dissect_lppe_OMA_LPPe_TypeOfLocInfoProvide(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     4, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_ProvidePeriodicLocInfowithUpdate_sequence[] = {
  { &hf_lppe_session_ID     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OCTET_STRING_SIZE_4 },
  { &hf_lppe_typeOfLocInfoProvide, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_TypeOfLocInfoProvide },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ProvidePeriodicLocInfowithUpdate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ProvidePeriodicLocInfowithUpdate, OMA_LPPe_ProvidePeriodicLocInfowithUpdate_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_RelativeLocationChange_sequence[] = {
  { &hf_lppe_relativeTime_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_65535 },
  { &hf_lppe_transactionID  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_255 },
  { &hf_lppe_relativeLocation, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_RelativeLocation },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_RelativeLocationChange(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_RelativeLocationChange, OMA_LPPe_RelativeLocationChange_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_RelativeLocationChangeList_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_RelativeLocationChangeList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_RelativeLocationChange },
};

static int
dissect_lppe_OMA_LPPe_RelativeLocationChangeList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_RelativeLocationChangeList, OMA_LPPe_RelativeLocationChangeList_sequence_of,
                                                  1, maxRelativeLocation, FALSE);

  return offset;
}


static const value_string lppe_T_disposition_vals[] = {
  {   0, "withinWindow" },
  {   1, "outsideWindowOrNoWindow" },
  {   2, "notSupportedDueToNoCapability" },
  {   3, "notSupportedDueToNoTimeReference" },
  {   4, "notSupportedDueToConflictWithAnotherRequest" },
  {   5, "notSupportedForOtherReasons" },
  { 0, NULL }
};


static int
dissect_lppe_T_disposition(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     6, NULL, TRUE, 0, NULL);

  return offset;
}



static int
dissect_lppe_INTEGER_M512_511(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            -512, 511U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_0_2047(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 2047U, NULL, FALSE);

  return offset;
}


static const per_sequence_t T_actualWindow_sequence[] = {
  { &hf_lppe_start          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M512_511 },
  { &hf_lppe_duration_02    , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_2047 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_actualWindow(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_actualWindow, T_actualWindow_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_ScheduledLocation_sequence[] = {
  { &hf_lppe_disposition    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_disposition },
  { &hf_lppe_actualWindow   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_actualWindow },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ScheduledLocation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ScheduledLocation, OMA_LPPe_ScheduledLocation_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AccessTypes_sequence[] = {
  { &hf_lppe_accessTypeUnknown, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_fixedAccessTypes, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_FixedAccessTypes },
  { &hf_lppe_wirelessAccessTypes, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_WirelessAccessTypes },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AccessTypes(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AccessTypes, OMA_LPPe_AccessTypes_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_SegmentedLITransfer_sequence[] = {
  { &hf_lppe_segmentedLI_session_ID, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_256 },
  { &hf_lppe_segment_number , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_4096 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SegmentedLITransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SegmentedLITransfer, OMA_LPPe_SegmentedLITransfer_sequence);

  return offset;
}



static int
dissect_lppe_INTEGER_0_1024(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 1024U, NULL, FALSE);

  return offset;
}


static const value_string lppe_OMA_LPPe_TimeStamp_vals[] = {
  {   0, "gnssTime" },
  {   1, "networkTime" },
  {   2, "relativeTime" },
  { 0, NULL }
};

static const per_choice_t OMA_LPPe_TimeStamp_choice[] = {
  {   0, &hf_lppe_gnssTime       , ASN1_EXTENSION_ROOT    , dissect_lpp_GNSS_SystemTime },
  {   1, &hf_lppe_networkTime    , ASN1_EXTENSION_ROOT    , dissect_lpp_NetworkTime },
  {   2, &hf_lppe_relativeTime_02, ASN1_EXTENSION_ROOT    , dissect_lppe_INTEGER_0_1024 },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_TimeStamp(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_OMA_LPPe_TimeStamp, OMA_LPPe_TimeStamp_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_LocationSource_sequence[] = {
  { &hf_lppe_agnss          , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_otdoa          , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_eotd           , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_otdoaUTRA      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_ecidLTE        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_ecidGSM        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_ecidUTRA       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_wlanAP         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_srn            , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_sensors        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_nr_dl_tdoa     , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_nr_dl_aod      , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_ecidNR         , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_bt             , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_mbs            , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_baro_sensor    , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_motion_sensor  , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_NULL },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_LocationSource(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_LocationSource, OMA_LPPe_LocationSource_sequence);

  return offset;
}



static int
dissect_lppe_T_civicLocation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  tvbuff_t *xml_tvb = NULL;
  offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
                                       NO_BOUND, NO_BOUND, FALSE, &xml_tvb);

  if (xml_tvb && xml_handle) {
    proto_tree *xml_tree = proto_item_add_subtree(actx->created_item, ett_lppe_civicLocation);
    call_dissector(xml_handle, xml_tvb, actx->pinfo, xml_tree);
  }

  return offset;
}


static const per_sequence_t OMA_LPPe_CivicLocation_pidf_lo_sequence[] = {
  { &hf_lppe_civicLocation  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_civicLocation },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_CivicLocation_pidf_lo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_CivicLocation_pidf_lo, OMA_LPPe_CivicLocation_pidf_lo_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_CommonIEsProvideLocationInformation_sequence[] = {
  { &hf_lppe_highAccuracy3Dposition, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_HighAccuracy3Dposition },
  { &hf_lppe_localPosition  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_LocalPosition },
  { &hf_lppe_highAccuracy3Dvelocity, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_HighAccuracy3Dvelocity },
  { &hf_lppe_iP_Address_List, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_IP_Address_List },
  { &hf_lppe_locationInformationContainer, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_LocationInformationContainer },
  { &hf_lppe_providePeriodicLocInfoWithUpdate, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ProvidePeriodicLocInfowithUpdate },
  { &hf_lppe_relativeLocationChangeList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_RelativeLocationChangeList },
  { &hf_lppe_scheduledLocation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ScheduledLocation },
  { &hf_lppe_accessTypes    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AccessTypes },
  { &hf_lppe_segmentedLITransfer, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_SegmentedLITransfer },
  { &hf_lppe_locationInformationTimeStamp, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_TimeStamp },
  { &hf_lppe_locationSource , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_LocationSource },
  { &hf_lppe_civicLocation_pidf_lo, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_CivicLocation_pidf_lo },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_CommonIEsProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_CommonIEsProvideLocationInformation, OMA_LPPe_CommonIEsProvideLocationInformation_sequence);

  return offset;
}


static const per_sequence_t T_controlParameters_sequence[] = {
  { &hf_lppe_duration_03    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_Duration },
  { &hf_lppe_rate           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_64 },
  { &hf_lppe_antennaDescription, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_AntennaDescription },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_controlParameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_controlParameters, T_controlParameters_sequence);

  return offset;
}


static const per_sequence_t T_localPressure_sequence[] = {
  { &hf_lppe_pressure       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M1024_1023 },
  { &hf_lppe_pressureUncertainty, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_127 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_localPressure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_localPressure, T_localPressure_sequence);

  return offset;
}


static const value_string lppe_T_multipathDetection_vals[] = {
  {   0, "low" },
  {   1, "moderate" },
  {   2, "high" },
  {   3, "notMeasured" },
  { 0, NULL }
};


static int
dissect_lppe_T_multipathDetection(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     4, NULL, TRUE, 0, NULL);

  return offset;
}



static int
dissect_lppe_INTEGER_0_536870911(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 536870911U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_HAgnssPerSVelement_sequence[] = {
  { &hf_lppe_svID           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_SV_ID },
  { &hf_lppe_integerCodePhase, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_255 },
  { &hf_lppe_codePhase      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_14989622 },
  { &hf_lppe_codePhaseRMSError, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_63 },
  { &hf_lppe_multipathDetection, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_multipathDetection },
  { &hf_lppe_cnr            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_255 },
  { &hf_lppe_adr            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_536870911 },
  { &hf_lppe_adrRMSerror    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_127 },
  { &hf_lppe_lockIndicator  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_HAgnssPerSVelement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_HAgnssPerSVelement, OMA_LPPe_HAgnssPerSVelement_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_64_OF_OMA_LPPe_HAgnssPerSVelement_sequence_of[1] = {
  { &hf_lppe_haGNSSperSVlist_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_HAgnssPerSVelement },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_HAgnssPerSVelement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_HAgnssPerSVelement, SEQUENCE_SIZE_1_64_OF_OMA_LPPe_HAgnssPerSVelement_sequence_of,
                                                  1, 64, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_HAgnssPerSignalElement_sequence[] = {
  { &hf_lppe_signal_ID      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SignalID },
  { &hf_lppe_haGNSSperSVlist, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_HAgnssPerSVelement },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_HAgnssPerSignalElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_HAgnssPerSignalElement, OMA_LPPe_HAgnssPerSignalElement_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_8_OF_OMA_LPPe_HAgnssPerSignalElement_sequence_of[1] = {
  { &hf_lppe_haGNSSperSignalList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_HAgnssPerSignalElement },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_HAgnssPerSignalElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_HAgnssPerSignalElement, SEQUENCE_SIZE_1_8_OF_OMA_LPPe_HAgnssPerSignalElement_sequence_of,
                                                  1, 8, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_HAgnssMeasurementElement_sequence[] = {
  { &hf_lppe_gnss_ID        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_ID },
  { &hf_lppe_haGNSSperSignalList, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_HAgnssPerSignalElement },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_HAgnssMeasurementElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_HAgnssMeasurementElement, OMA_LPPe_AGNSS_HAgnssMeasurementElement_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssMeasurementElement_sequence_of[1] = {
  { &hf_lppe_signalMeasurements_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_HAgnssMeasurementElement },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssMeasurementElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssMeasurementElement, SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssMeasurementElement_sequence_of,
                                                  1, 16, FALSE);

  return offset;
}


static const per_sequence_t T_measurements_sequence[] = {
  { &hf_lppe_position       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lpp_EllipsoidPointWithAltitudeAndUncertaintyEllipsoid },
  { &hf_lppe_referenceTime  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SystemTime },
  { &hf_lppe_localPressure  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_localPressure },
  { &hf_lppe_antennaOrientation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_Orientation },
  { &hf_lppe_signalMeasurements, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssMeasurementElement },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_measurements(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_measurements, T_measurements_sequence);

  return offset;
}


static const value_string lppe_OMA_LPPe_AGNSS_HAgnssProvide_vals[] = {
  {   0, "controlParameters" },
  {   1, "measurements" },
  { 0, NULL }
};

static const per_choice_t OMA_LPPe_AGNSS_HAgnssProvide_choice[] = {
  {   0, &hf_lppe_controlParameters_01, ASN1_EXTENSION_ROOT    , dissect_lppe_T_controlParameters },
  {   1, &hf_lppe_measurements   , ASN1_EXTENSION_ROOT    , dissect_lppe_T_measurements },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_HAgnssProvide(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_OMA_LPPe_AGNSS_HAgnssProvide, OMA_LPPe_AGNSS_HAgnssProvide_choice,
                                 NULL);

  return offset;
}



static int
dissect_lppe_INTEGER_0_90(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 90U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_TECPerSVElement_sequence[] = {
  { &hf_lppe_azimuth        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_359 },
  { &hf_lppe_elevation      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_90 },
  { &hf_lppe_tecValue       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_511 },
  { &hf_lppe_tecUncertainty , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_63 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_TECPerSVElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_TECPerSVElement, OMA_LPPe_AGNSS_TECPerSVElement_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_TECPerSV_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_AGNSS_TECPerSV_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_AGNSS_TECPerSVElement },
};

static int
dissect_lppe_OMA_LPPe_AGNSS_TECPerSV(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_AGNSS_TECPerSV, OMA_LPPe_AGNSS_TECPerSV_sequence_of,
                                                  1, 64, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_TECAtZenith_sequence[] = {
  { &hf_lppe_tecValueAtZenith, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_511 },
  { &hf_lppe_tecUncertaintyAtZenith, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_63 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_TECAtZenith(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_TECAtZenith, OMA_LPPe_AGNSS_TECAtZenith_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_IonosphereMeasurements_sequence[] = {
  { &hf_lppe_gnssTime       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SystemTime },
  { &hf_lppe_position       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_EllipsoidPointWithAltitudeAndUncertaintyEllipsoid },
  { &hf_lppe_tecPerSV       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_TECPerSV },
  { &hf_lppe_tecAtZenith    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_TECAtZenith },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_IonosphereMeasurements(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_IonosphereMeasurements, OMA_LPPe_AGNSS_IonosphereMeasurements_sequence);

  return offset;
}


static const per_sequence_t T_temperatureMeasurement_sequence[] = {
  { &hf_lppe_temperature    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M64_63 },
  { &hf_lppe_temperatureUncertainty, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_7 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_temperatureMeasurement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_temperatureMeasurement, T_temperatureMeasurement_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_LocalSurfaceMeasurements_sequence[] = {
  { &hf_lppe_gnssTime       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SystemTime },
  { &hf_lppe_position       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_EllipsoidPointWithAltitudeAndUncertaintyEllipsoid },
  { &hf_lppe_pressure       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_M1024_1023 },
  { &hf_lppe_pressureUncertainty, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_127 },
  { &hf_lppe_temperatureMeasurement, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_temperatureMeasurement },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_LocalSurfaceMeasurements(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_LocalSurfaceMeasurements, OMA_LPPe_AGNSS_LocalSurfaceMeasurements_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_ProvideLocationInformation_sequence[] = {
  { &hf_lppe_highAccuracyReferenceTime, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lpp_GNSS_SystemTime },
  { &hf_lppe_highAccuracyMeasurements, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_HAgnssProvide },
  { &hf_lppe_ionosphereMeasurements, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_IonosphereMeasurements },
  { &hf_lppe_localSurfaceMeasurements, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_LocalSurfaceMeasurements },
  { &hf_lppe_error_01       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_Error },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_ProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_ProvideLocationInformation, OMA_LPPe_AGNSS_ProvideLocationInformation_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_LocationInformation_sequence[] = {
  { &hf_lppe_systemFrameNumber, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_10 },
  { &hf_lppe_physCellId     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_503 },
  { &hf_lppe_cellGlobalId   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lpp_CellGlobalIdEUTRA_AndUTRA },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_LocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_LocationInformation, OMA_LPPe_OTDOA_LocationInformation_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_ProvideLocationInformation_sequence[] = {
  { &hf_lppe_otdoaLocationInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_LocationInformation },
  { &hf_lppe_otdoaError     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_Error },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_ProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_ProvideLocationInformation, OMA_LPPe_OTDOA_ProvideLocationInformation_sequence);

  return offset;
}



static int
dissect_lppe_INTEGER_0_42431(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 42431U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_OMA_LPPe_EOTD_ModuloTimeSlot(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 3U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_BIT_STRING_SIZE_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     5, 5, FALSE, NULL, 0, NULL, NULL);

  return offset;
}



static int
dissect_lppe_BIT_STRING_SIZE_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     3, 3, FALSE, NULL, 0, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_EOTD_TOA_MeasurementsOfRef_sequence[] = {
  { &hf_lppe_refQuality     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_5 },
  { &hf_lppe_numOfMeasurements, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_3 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_EOTD_TOA_MeasurementsOfRef(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_EOTD_TOA_MeasurementsOfRef, OMA_LPPe_EOTD_TOA_MeasurementsOfRef_sequence);

  return offset;
}



static int
dissect_lppe_BIT_STRING_SIZE_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     2, 2, FALSE, NULL, 0, NULL, NULL);

  return offset;
}



static int
dissect_lppe_INTEGER_0_960(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 960U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_OMA_LPPe_EOTD_CellID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 65535U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_OMA_LPPe_EOTD_BCCHCarrier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 1023U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_EOTD_MultiFrameCarrier_sequence[] = {
  { &hf_lppe_bcchCarrier    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_BCCHCarrier },
  { &hf_lppe_multiFrameOffset, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_MultiFrameOffset },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_EOTD_MultiFrameCarrier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_EOTD_MultiFrameCarrier, OMA_LPPe_EOTD_MultiFrameCarrier_sequence);

  return offset;
}



static int
dissect_lppe_OMA_LPPe_EOTD_RequestIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            1U, 16U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_OMA_LPPe_EOTD_SystemInfoIndex(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            1U, 32U, NULL, FALSE);

  return offset;
}


static const value_string lppe_OMA_LPPe_EOTD_NeighborIdentity_vals[] = {
  {   0, "bsicAndCarrier" },
  {   1, "ci" },
  {   2, "multiFrameCarrier" },
  {   3, "requestIndex" },
  {   4, "systemInfoIndex" },
  {   5, "ciAndLac" },
  { 0, NULL }
};

static const per_choice_t OMA_LPPe_EOTD_NeighborIdentity_choice[] = {
  {   0, &hf_lppe_bsicAndCarrier , ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_CellNonUniqueIDGERAN },
  {   1, &hf_lppe_ci             , ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_EOTD_CellID },
  {   2, &hf_lppe_multiFrameCarrier, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_EOTD_MultiFrameCarrier },
  {   3, &hf_lppe_requestIndex   , ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_EOTD_RequestIndex },
  {   4, &hf_lppe_systemInfoIndex, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_EOTD_SystemInfoIndex },
  {   5, &hf_lppe_ciAndLac       , ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_CellLocalIdGERAN },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_EOTD_NeighborIdentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_OMA_LPPe_EOTD_NeighborIdentity, OMA_LPPe_EOTD_NeighborIdentity_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_EOTD_EOTDQuality_sequence[] = {
  { &hf_lppe_nbrOfMeasurements, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_3 },
  { &hf_lppe_stdOfEOTD      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_5 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_EOTD_EOTDQuality(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_EOTD_EOTDQuality, OMA_LPPe_EOTD_EOTDQuality_sequence);

  return offset;
}



static int
dissect_lppe_OMA_LPPe_EOTD_OTDValue(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 39999U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_EOTD_MeasurementWithID_sequence[] = {
  { &hf_lppe_neighborIdentity, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_NeighborIdentity },
  { &hf_lppe_nborTimeSlot   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_ModuloTimeSlot },
  { &hf_lppe_eotdQuality    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_EOTDQuality },
  { &hf_lppe_otdValue       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_OTDValue },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_EOTD_MeasurementWithID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_EOTD_MeasurementWithID, OMA_LPPe_EOTD_MeasurementWithID_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_15_OF_OMA_LPPe_EOTD_MeasurementWithID_sequence_of[1] = {
  { &hf_lppe_otd_FirstSetMsrs_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_MeasurementWithID },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_15_OF_OMA_LPPe_EOTD_MeasurementWithID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_15_OF_OMA_LPPe_EOTD_MeasurementWithID, SEQUENCE_SIZE_1_15_OF_OMA_LPPe_EOTD_MeasurementWithID_sequence_of,
                                                  1, 15, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_EOTD_MsrElement_sequence[] = {
  { &hf_lppe_refFrameNumber , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_42431 },
  { &hf_lppe_referenceTimeSlot, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_EOTD_ModuloTimeSlot },
  { &hf_lppe_toaMeasurementsOfRef, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_EOTD_TOA_MeasurementsOfRef },
  { &hf_lppe_stdResolution  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_2 },
  { &hf_lppe_taCorrection   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_960 },
  { &hf_lppe_otd_FirstSetMsrs, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_SEQUENCE_SIZE_1_15_OF_OMA_LPPe_EOTD_MeasurementWithID },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_EOTD_MsrElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_EOTD_MsrElement, OMA_LPPe_EOTD_MsrElement_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_EOTD_ProvideLocationInformation_sequence[] = {
  { &hf_lppe_eotdMsrElement , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_EOTD_MsrElement },
  { &hf_lppe_eotdError      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_EOTD_Error },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_EOTD_ProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_EOTD_ProvideLocationInformation, OMA_LPPe_EOTD_ProvideLocationInformation_sequence);

  return offset;
}



static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_TimeDifferenceType2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 8191U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_UTRA_Quality_sequence[] = {
  { &hf_lppe_stdResolution  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_2 },
  { &hf_lppe_numberOfOTDOA_Measurements, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_3 },
  { &hf_lppe_stdOfOTDOA_Measurements, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_5 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_Quality(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_UTRA_Quality, OMA_LPPe_OTDOA_UTRA_Quality_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_UTRA_NeighborQuality_sequence[] = {
  { &hf_lppe_quality_01     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_Quality },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_NeighborQuality(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_UTRA_NeighborQuality, OMA_LPPe_OTDOA_UTRA_NeighborQuality_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_UTRA_UE_RX_TX_TimeDifferenceType2Info_sequence[] = {
  { &hf_lppe_ue_RX_TX_timeDifferenceType2, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_TimeDifferenceType2 },
  { &hf_lppe_neighborQuality, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_NeighborQuality },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_UE_RX_TX_TimeDifferenceType2Info(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_UTRA_UE_RX_TX_TimeDifferenceType2Info, OMA_LPPe_OTDOA_UTRA_UE_RX_TX_TimeDifferenceType2Info_sequence);

  return offset;
}


static const per_sequence_t T_fdd_03_sequence[] = {
  { &hf_lppe_referenceCellIdentity, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info },
  { &hf_lppe_ue_RX_TX_TimeDifferenceType2Info, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_UE_RX_TX_TimeDifferenceType2Info },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_fdd_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_fdd_03, T_fdd_03_sequence);

  return offset;
}


static const per_sequence_t T_tdd_03_sequence[] = {
  { &hf_lppe_cellAndChannelIdentity, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_CellAndChannelIdentity },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_tdd_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_tdd_03, T_tdd_03_sequence);

  return offset;
}


static const value_string lppe_T_modeSpecificInfoMeas_vals[] = {
  {   0, "fdd" },
  {   1, "tdd" },
  { 0, NULL }
};

static const per_choice_t T_modeSpecificInfoMeas_choice[] = {
  {   0, &hf_lppe_fdd_03         , ASN1_NO_EXTENSIONS     , dissect_lppe_T_fdd_03 },
  {   1, &hf_lppe_tdd_03         , ASN1_NO_EXTENSIONS     , dissect_lppe_T_tdd_03 },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_T_modeSpecificInfoMeas(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_T_modeSpecificInfoMeas, T_modeSpecificInfoMeas_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t T_fdd_04_sequence[] = {
  { &hf_lppe_neighborIdentity_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info },
  { &hf_lppe_ue_RX_TX_timeDifferenceType2Info, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_UTRA_UE_RX_TX_TimeDifferenceType2Info },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_fdd_04(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_fdd_04, T_fdd_04_sequence);

  return offset;
}


static const per_sequence_t T_tdd_04_sequence[] = {
  { &hf_lppe_cellAndChannelIdentity, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_UTRA_CellAndChannelIdentity },
  { &hf_lppe_uarfcn         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lpp_ARFCN_ValueUTRA },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_tdd_04(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_tdd_04, T_tdd_04_sequence);

  return offset;
}


static const value_string lppe_T_modeSpecificInfo_03_vals[] = {
  {   0, "fdd" },
  {   1, "tdd" },
  { 0, NULL }
};

static const per_choice_t T_modeSpecificInfo_03_choice[] = {
  {   0, &hf_lppe_fdd_04         , ASN1_NO_EXTENSIONS     , dissect_lppe_T_fdd_04 },
  {   1, &hf_lppe_tdd_04         , ASN1_NO_EXTENSIONS     , dissect_lppe_T_tdd_04 },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_T_modeSpecificInfo_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_T_modeSpecificInfo_03, T_modeSpecificInfo_03_choice,
                                 NULL);

  return offset;
}



static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_SFN_SFN_ObsTimeDifference2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 65535U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_UTRA_Neighbor_sequence[] = {
  { &hf_lppe_modeSpecificInfo_03, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_modeSpecificInfo_03 },
  { &hf_lppe_neighborQuality, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_NeighborQuality },
  { &hf_lppe_sfn_sfn_ObsTimeDifference2, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_SFN_SFN_ObsTimeDifference2 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_Neighbor(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_UTRA_Neighbor, OMA_LPPe_OTDOA_UTRA_Neighbor_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_UTRA_NeighborList_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_OTDOA_UTRA_NeighborList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_Neighbor },
};

static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_NeighborList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_OTDOA_UTRA_NeighborList, OMA_LPPe_OTDOA_UTRA_NeighborList_sequence_of,
                                                  1, utra_maxCellMeas, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_UTRA_Measurement_sequence[] = {
  { &hf_lppe_sfn            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_4095 },
  { &hf_lppe_modeSpecificInfoMeas, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_modeSpecificInfoMeas },
  { &hf_lppe_neighborList   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_UTRA_NeighborList },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_Measurement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_UTRA_Measurement, OMA_LPPe_OTDOA_UTRA_Measurement_sequence);

  return offset;
}


static const value_string lppe_T_nonUniqueCellID_vals[] = {
  {   0, "primaryScramblingCode" },
  {   1, "cellParametersId" },
  { 0, NULL }
};

static const per_choice_t T_nonUniqueCellID_choice[] = {
  {   0, &hf_lppe_primaryScramblingCode, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_OTDOA_UTRA_PrimaryScramblingCode },
  {   1, &hf_lppe_cellParametersId, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_OTDOA_UTRA_CellParametersID },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_T_nonUniqueCellID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_T_nonUniqueCellID, T_nonUniqueCellID_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_UTRA_TimeStampData_sequence[] = {
  { &hf_lppe_sfn            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_4095 },
  { &hf_lppe_utraCellGlobalID, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_CellGlobalIdEUTRA_AndUTRA },
  { &hf_lppe_frequencyInfo  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_UTRA_FrequencyInfo },
  { &hf_lppe_nonUniqueCellID, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_nonUniqueCellID },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_TimeStampData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_UTRA_TimeStampData, OMA_LPPe_OTDOA_UTRA_TimeStampData_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_OTDOA_UTRA_ProvideLocationInformation_sequence[] = {
  { &hf_lppe_otdoaUtraMeasurement, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_UTRA_Measurement },
  { &hf_lppe_otdoaUtraError , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_UTRA_Error },
  { &hf_lppe_timeStampData  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_UTRA_TimeStampData },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_OTDOA_UTRA_ProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_OTDOA_UTRA_ProvideLocationInformation, OMA_LPPe_OTDOA_UTRA_ProvideLocationInformation_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_LTE_LocationInformation_sequence[] = {
  { &hf_lppe_lpp_ECID_SignalMeasurementInformation, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_ECID_SignalMeasurementInformation },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_LTE_LocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_LTE_LocationInformation, OMA_LPPe_ECID_LTE_LocationInformation_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_LTE_LocationInformationList_sequence[] = {
  { &hf_lppe_ecid_LTE_LocationInformation, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_LTE_LocationInformation },
  { &hf_lppe_relativeTimeStamp, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_65535 },
  { &hf_lppe_servingFlag    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_LTE_LocationInformationList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_LTE_LocationInformationList, OMA_LPPe_ECID_LTE_LocationInformationList_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_maxLTEECIDSize_OF_OMA_LPPe_ECID_LTE_LocationInformationList_sequence_of[1] = {
  { &hf_lppe_ecid_LTE_CombinedLocationInformation_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_LTE_LocationInformationList },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_maxLTEECIDSize_OF_OMA_LPPe_ECID_LTE_LocationInformationList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_maxLTEECIDSize_OF_OMA_LPPe_ECID_LTE_LocationInformationList, SEQUENCE_SIZE_1_maxLTEECIDSize_OF_OMA_LPPe_ECID_LTE_LocationInformationList_sequence_of,
                                                  1, maxLTEECIDSize, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_LTE_ProvideLocationInformation_sequence[] = {
  { &hf_lppe_ecid_LTE_CombinedLocationInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_SEQUENCE_SIZE_1_maxLTEECIDSize_OF_OMA_LPPe_ECID_LTE_LocationInformationList },
  { &hf_lppe_ecid_LTE_Error , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_LTE_Error },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_LTE_ProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_LTE_ProvideLocationInformation, OMA_LPPe_ECID_LTE_ProvideLocationInformation_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_NMR_GERAN_item_sequence[] = {
  { &hf_lppe_cellNonUniqueIDGERAN, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_CellNonUniqueIDGERAN },
  { &hf_lppe_cellLocalIDGERAN, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_CellLocalIdGERAN },
  { &hf_lppe_rxLevel        , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_63 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_NMR_GERAN_item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_NMR_GERAN_item, OMA_LPPe_NMR_GERAN_item_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_NMR_GERAN_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_NMR_GERAN_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_NMR_GERAN_item },
};

static int
dissect_lppe_OMA_LPPe_NMR_GERAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_NMR_GERAN, OMA_LPPe_NMR_GERAN_sequence_of,
                                                  1, 15, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_GSM_LocationInformation_sequence[] = {
  { &hf_lppe_cellGlobalIdGERAN, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_CellGlobalIdGERAN },
  { &hf_lppe_rxLevel        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_63 },
  { &hf_lppe_tA             , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_255 },
  { &hf_lppe_nMR_GERAN      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_NMR_GERAN },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_GSM_LocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_GSM_LocationInformation, OMA_LPPe_ECID_GSM_LocationInformation_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_GSM_LocationInformationList_sequence[] = {
  { &hf_lppe_ecid_GSM_LocationInformation, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_GSM_LocationInformation },
  { &hf_lppe_relativeTimeStamp, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_65535 },
  { &hf_lppe_servingFlag    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_GSM_LocationInformationList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_GSM_LocationInformationList, OMA_LPPe_ECID_GSM_LocationInformationList_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_maxGSMECIDSize_OF_OMA_LPPe_ECID_GSM_LocationInformationList_sequence_of[1] = {
  { &hf_lppe_ecid_GSM_CombinedLocationInformation_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_GSM_LocationInformationList },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_maxGSMECIDSize_OF_OMA_LPPe_ECID_GSM_LocationInformationList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_maxGSMECIDSize_OF_OMA_LPPe_ECID_GSM_LocationInformationList, SEQUENCE_SIZE_1_maxGSMECIDSize_OF_OMA_LPPe_ECID_GSM_LocationInformationList_sequence_of,
                                                  1, maxGSMECIDSize, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_GSM_ProvideLocationInformation_sequence[] = {
  { &hf_lppe_ecid_GSM_CombinedLocationInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_SEQUENCE_SIZE_1_maxGSMECIDSize_OF_OMA_LPPe_ECID_GSM_LocationInformationList },
  { &hf_lppe_ecid_GSM_Error , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_GSM_Error },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_GSM_ProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_GSM_ProvideLocationInformation, OMA_LPPe_ECID_GSM_ProvideLocationInformation_sequence);

  return offset;
}



static int
dissect_lppe_OMA_LPPe_ECID_UTRA_CarrierRSSI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 127U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_OMA_LPPe_ECID_UTRA_CPICH_Ec_N0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 63U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_OMA_LPPe_ECID_UTRA_CPICH_RSCP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 127U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_OMA_LPPe_ECID_UTRA_Pathloss(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            46U, 173U, NULL, FALSE);

  return offset;
}


static const per_sequence_t T_fdd_06_sequence[] = {
  { &hf_lppe_primaryCPICH_Info, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_PrimaryScramblingCode },
  { &hf_lppe_cpich_Ec_N0    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_UTRA_CPICH_Ec_N0 },
  { &hf_lppe_cpich_RSCP     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_UTRA_CPICH_RSCP },
  { &hf_lppe_pathloss       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_UTRA_Pathloss },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_fdd_06(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_fdd_06, T_fdd_06_sequence);

  return offset;
}



static int
dissect_lppe_OMA_LPPe_ECID_UTRA_PrimaryCCPCH_RSCP(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 127U, NULL, FALSE);

  return offset;
}


static const per_sequence_t T_tdd_06_sequence[] = {
  { &hf_lppe_cellParametersID, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_OTDOA_UTRA_CellParametersID },
  { &hf_lppe_primaryCCPCH_RSCP, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_UTRA_PrimaryCCPCH_RSCP },
  { &hf_lppe_pathloss       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_UTRA_Pathloss },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_tdd_06(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_tdd_06, T_tdd_06_sequence);

  return offset;
}


static const value_string lppe_T_modeSpecificInfo_05_vals[] = {
  {   0, "fdd" },
  {   1, "tdd" },
  { 0, NULL }
};

static const per_choice_t T_modeSpecificInfo_05_choice[] = {
  {   0, &hf_lppe_fdd_07         , ASN1_NO_EXTENSIONS     , dissect_lppe_T_fdd_06 },
  {   1, &hf_lppe_tdd_07         , ASN1_NO_EXTENSIONS     , dissect_lppe_T_tdd_06 },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_T_modeSpecificInfo_05(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_T_modeSpecificInfo_05, T_modeSpecificInfo_05_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_UTRA_CellMeasuredResults_sequence[] = {
  { &hf_lppe_cellIdentity_02, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_BIT_STRING_SIZE_32 },
  { &hf_lppe_modeSpecificInfo_06, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_modeSpecificInfo_05 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_UTRA_CellMeasuredResults(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_UTRA_CellMeasuredResults, OMA_LPPe_ECID_UTRA_CellMeasuredResults_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_UTRA_CellMeasuredResultsList_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_ECID_UTRA_CellMeasuredResultsList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_UTRA_CellMeasuredResults },
};

static int
dissect_lppe_OMA_LPPe_ECID_UTRA_CellMeasuredResultsList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_ECID_UTRA_CellMeasuredResultsList, OMA_LPPe_ECID_UTRA_CellMeasuredResultsList_sequence_of,
                                                  1, utra_maxCellMeas, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_UTRA_MeasuredResults_sequence[] = {
  { &hf_lppe_frequencyInfo  , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_UTRA_FrequencyInfo },
  { &hf_lppe_utra_CarrierRSSI, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_UTRA_CarrierRSSI },
  { &hf_lppe_cellMeasuredResultsList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_UTRA_CellMeasuredResultsList },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_UTRA_MeasuredResults(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_UTRA_MeasuredResults, OMA_LPPe_ECID_UTRA_MeasuredResults_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_UTRA_MeasuredResultsList_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_ECID_UTRA_MeasuredResultsList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_UTRA_MeasuredResults },
};

static int
dissect_lppe_OMA_LPPe_ECID_UTRA_MeasuredResultsList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_ECID_UTRA_MeasuredResultsList, OMA_LPPe_ECID_UTRA_MeasuredResultsList_sequence_of,
                                                  1, maxFreq, FALSE);

  return offset;
}


static const value_string lppe_OMA_LPPe_ECID_UTRA_TAResolution_vals[] = {
  {   0, "res1-0chip" },
  {   1, "res0-5chip" },
  {   2, "res0-125chip" },
  { 0, NULL }
};


static int
dissect_lppe_OMA_LPPe_ECID_UTRA_TAResolution(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}


static const value_string lppe_OMA_LPPe_ECID_UTRA_ChipRate_vals[] = {
  {   0, "tdd128" },
  {   1, "tdd384" },
  {   2, "tdd768" },
  { 0, NULL }
};


static int
dissect_lppe_OMA_LPPe_ECID_UTRA_ChipRate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_UTRA_UTRATimingAdvance_sequence[] = {
  { &hf_lppe_tA_01          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_8191 },
  { &hf_lppe_tAResolution   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_UTRA_TAResolution },
  { &hf_lppe_chipRate       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_UTRA_ChipRate },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_UTRA_UTRATimingAdvance(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_UTRA_UTRATimingAdvance, OMA_LPPe_ECID_UTRA_UTRATimingAdvance_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_UTRA_LocationInformation_sequence[] = {
  { &hf_lppe_cellGlobalIdUTRA, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_CellGlobalIdEUTRA_AndUTRA },
  { &hf_lppe_frequencyInfo  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_UTRA_FrequencyInfo },
  { &hf_lppe_primaryScramblingCode, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_UTRA_PrimaryScramblingCode },
  { &hf_lppe_measuredResultsList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_UTRA_MeasuredResultsList },
  { &hf_lppe_cellParametersId, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_UTRA_CellParametersID },
  { &hf_lppe_utratimingAdvance, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_UTRA_UTRATimingAdvance },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_UTRA_LocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_UTRA_LocationInformation, OMA_LPPe_ECID_UTRA_LocationInformation_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_UTRA_LocationInformationList_sequence[] = {
  { &hf_lppe_ecid_utra_LocationInformation, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_UTRA_LocationInformation },
  { &hf_lppe_relativeTimeStamp, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_65535 },
  { &hf_lppe_servingFlag    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_UTRA_LocationInformationList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_UTRA_LocationInformationList, OMA_LPPe_ECID_UTRA_LocationInformationList_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_maxECIDUTRASize_OF_OMA_LPPe_ECID_UTRA_LocationInformationList_sequence_of[1] = {
  { &hf_lppe_ecid_UTRA_CombinedLocationInformation_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_UTRA_LocationInformationList },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_maxECIDUTRASize_OF_OMA_LPPe_ECID_UTRA_LocationInformationList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_maxECIDUTRASize_OF_OMA_LPPe_ECID_UTRA_LocationInformationList, SEQUENCE_SIZE_1_maxECIDUTRASize_OF_OMA_LPPe_ECID_UTRA_LocationInformationList_sequence_of,
                                                  1, maxECIDUTRASize, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_UTRA_ProvideLocationInformation_sequence[] = {
  { &hf_lppe_ecid_UTRA_CombinedLocationInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_SEQUENCE_SIZE_1_maxECIDUTRASize_OF_OMA_LPPe_ECID_UTRA_LocationInformationList },
  { &hf_lppe_ecid_Error     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_UTRA_Error },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_UTRA_ProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_UTRA_ProvideLocationInformation, OMA_LPPe_ECID_UTRA_ProvideLocationInformation_sequence);

  return offset;
}



static int
dissect_lppe_OCTET_STRING_SIZE_1_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
                                       1, 32, FALSE, NULL);

  return offset;
}


static const value_string lppe_OMA_LPPe_WLAN_AP_PHY_Type_vals[] = {
  {   0, "unknown" },
  {   1, "any" },
  {   2, "fhss" },
  {   3, "dsss" },
  {   4, "irbaseband" },
  {   5, "ofdm" },
  {   6, "hrdsss" },
  {   7, "erp" },
  {   8, "ht" },
  {   9, "ihv" },
  { 0, NULL }
};


static int
dissect_lppe_OMA_LPPe_WLAN_AP_PHY_Type(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     10, NULL, TRUE, 0, NULL);

  return offset;
}



static int
dissect_lppe_INTEGER_0_256(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 256U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_0_16777215(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 16777215U, NULL, FALSE);

  return offset;
}


static const value_string lppe_OMA_LPPe_WLAN_RTDUnits_vals[] = {
  {   0, "microseconds" },
  {   1, "hundredsofnanoseconds" },
  {   2, "tensofnanoseconds" },
  {   3, "nanoseconds" },
  {   4, "tenthsofnanoseconds" },
  { 0, NULL }
};


static int
dissect_lppe_OMA_LPPe_WLAN_RTDUnits(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     5, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_WLAN_RTD_sequence[] = {
  { &hf_lppe_rTDValue       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_16777215 },
  { &hf_lppe_rTDUnits       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_WLAN_RTDUnits },
  { &hf_lppe_rTDAccuracy    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_255 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_WLAN_RTD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_WLAN_RTD, OMA_LPPe_WLAN_RTD_sequence);

  return offset;
}



static int
dissect_lppe_BIT_STRING_SIZE_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     6, 6, FALSE, NULL, 0, NULL, NULL);

  return offset;
}



static int
dissect_lppe_BIT_STRING_SIZE_34(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     34, 34, FALSE, NULL, 0, NULL, NULL);

  return offset;
}



static int
dissect_lppe_BIT_STRING_SIZE_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     4, 4, FALSE, NULL, 0, NULL, NULL);

  return offset;
}



static int
dissect_lppe_BIT_STRING_SIZE_30(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     30, 30, FALSE, NULL, 0, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_WLAN_LocationDataLCI_sequence[] = {
  { &hf_lppe_latitudeResolution, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_6 },
  { &hf_lppe_oma_LPPe_WLAN_LocationDataLCI_latitude, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_34 },
  { &hf_lppe_longitudeResolution, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_6 },
  { &hf_lppe_oma_LPPe_WLAN_LocationDataLCI_longitude, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_34 },
  { &hf_lppe_altitudeType   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_4 },
  { &hf_lppe_altitudeResolution, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_6 },
  { &hf_lppe_oma_LPPe_WLAN_LocationDataLCI_altitude, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_30 },
  { &hf_lppe_datum          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_8 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_WLAN_LocationDataLCI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_WLAN_LocationDataLCI, OMA_LPPe_WLAN_LocationDataLCI_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_WLAN_ReportedLocation_sequence[] = {
  { &hf_lppe_locationDataLCI, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_WLAN_LocationDataLCI },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_WLAN_ReportedLocation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_WLAN_ReportedLocation, OMA_LPPe_WLAN_ReportedLocation_sequence);

  return offset;
}



static int
dissect_lppe_INTEGER_0_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 1U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_WLAN_AP_LocationInformation_sequence[] = {
  { &hf_lppe_apMACAddress   , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_WLAN_AP_ID },
  { &hf_lppe_apSSID         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OCTET_STRING_SIZE_1_32 },
  { &hf_lppe_apSignaltoNoise, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M127_128 },
  { &hf_lppe_apDeviceType   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_WLAN_AP_Type },
  { &hf_lppe_apPHYtype      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_WLAN_AP_PHY_Type },
  { &hf_lppe_apSignalStrength, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M127_128 },
  { &hf_lppe_apChannelFrequency, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_256 },
  { &hf_lppe_apRoundTripDelay, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_WLAN_RTD },
  { &hf_lppe_ueTransmitPower, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M127_128 },
  { &hf_lppe_ueAntennaGain  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M127_128 },
  { &hf_lppe_apReportedLocation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_WLAN_ReportedLocation },
  { &hf_lppe_apTransmitPower, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_INTEGER_M127_128 },
  { &hf_lppe_apAntennaGain  , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_INTEGER_M127_128 },
  { &hf_lppe_ueSignaltoNoise, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_INTEGER_M127_128 },
  { &hf_lppe_ueSignalStrength, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_INTEGER_M127_128 },
  { &hf_lppe_apSignalStrengthDelta, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_1 },
  { &hf_lppe_ueSignalStrengthDelta, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_1 },
  { &hf_lppe_apSignaltoNoiseDelta, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_1 },
  { &hf_lppe_ueSignaltoNoiseDelta, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_1 },
  { &hf_lppe_operatingClass , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_255 },
  { &hf_lppe_ueMacAddress   , ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_BIT_STRING_SIZE_48 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_WLAN_AP_LocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_WLAN_AP_LocationInformation, OMA_LPPe_WLAN_AP_LocationInformation_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_WLAN_AP_LocationInformationList_sequence[] = {
  { &hf_lppe_wlan_AP_LocationInformation, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_WLAN_AP_LocationInformation },
  { &hf_lppe_relativeTimeStamp, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_65535 },
  { &hf_lppe_servingFlag    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_WLAN_AP_LocationInformationList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_WLAN_AP_LocationInformationList, OMA_LPPe_WLAN_AP_LocationInformationList_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_maxWLANAPSize_OF_OMA_LPPe_WLAN_AP_LocationInformationList_sequence_of[1] = {
  { &hf_lppe_wlan_AP_CombinedLocationInformation_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_WLAN_AP_LocationInformationList },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_maxWLANAPSize_OF_OMA_LPPe_WLAN_AP_LocationInformationList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_maxWLANAPSize_OF_OMA_LPPe_WLAN_AP_LocationInformationList, SEQUENCE_SIZE_1_maxWLANAPSize_OF_OMA_LPPe_WLAN_AP_LocationInformationList_sequence_of,
                                                  1, maxWLANAPSize, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_WLAN_AP_ProvideLocationInformation_sequence[] = {
  { &hf_lppe_wlan_AP_CombinedLocationInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_SEQUENCE_SIZE_1_maxWLANAPSize_OF_OMA_LPPe_WLAN_AP_LocationInformationList },
  { &hf_lppe_wlan_AP_Error  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_WLAN_AP_Error },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_WLAN_AP_ProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_WLAN_AP_ProvideLocationInformation, OMA_LPPe_WLAN_AP_ProvideLocationInformation_sequence);

  return offset;
}



static int
dissect_lppe_BIT_STRING_SIZE_24(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     24, 24, FALSE, NULL, 0, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_WiMax_WimaxBsID_sequence[] = {
  { &hf_lppe_bsID_MSB       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_BIT_STRING_SIZE_24 },
  { &hf_lppe_bsID_LSB       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BIT_STRING_SIZE_24 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_WiMax_WimaxBsID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_WiMax_WimaxBsID, OMA_LPPe_ECID_WiMax_WimaxBsID_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_WiMax_WimaxRTD_sequence[] = {
  { &hf_lppe_rTD            , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_65535 },
  { &hf_lppe_rTDstd         , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_1023 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_WiMax_WimaxRTD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_WiMax_WimaxRTD, OMA_LPPe_ECID_WiMax_WimaxRTD_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_WiMax_WimaxNMR_sequence[] = {
  { &hf_lppe_wimaxBsID      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_WiMax_WimaxBsID },
  { &hf_lppe_relDelay       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M32768_32767 },
  { &hf_lppe_relDelaystd    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_1023 },
  { &hf_lppe_rSSI           , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_255 },
  { &hf_lppe_rSSIstd        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_63 },
  { &hf_lppe_bSTxPower      , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_255 },
  { &hf_lppe_cINR           , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_255 },
  { &hf_lppe_cINRstd        , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_63 },
  { &hf_lppe_bSLocation     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_WLAN_ReportedLocation },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_WiMax_WimaxNMR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_WiMax_WimaxNMR, OMA_LPPe_ECID_WiMax_WimaxNMR_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_WiMax_WimaxNMRList_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_ECID_WiMax_WimaxNMRList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_WiMax_WimaxNMR },
};

static int
dissect_lppe_OMA_LPPe_ECID_WiMax_WimaxNMRList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_ECID_WiMax_WimaxNMRList, OMA_LPPe_ECID_WiMax_WimaxNMRList_sequence_of,
                                                  1, maxWimaxBSMeas, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_WiMax_LocationInformation_sequence[] = {
  { &hf_lppe_wimaxBsID      , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_WiMax_WimaxBsID },
  { &hf_lppe_wimaxRTD       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_WiMax_WimaxRTD },
  { &hf_lppe_wimaxNMRList   , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_WiMax_WimaxNMRList },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_WiMax_LocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_WiMax_LocationInformation, OMA_LPPe_ECID_WiMax_LocationInformation_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_WiMax_LocationInformationList_sequence[] = {
  { &hf_lppe_ecid_wimax_LocationInformation, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_WiMax_LocationInformation },
  { &hf_lppe_relativeTimeStamp, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_65535 },
  { &hf_lppe_servingFlag    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_BOOLEAN },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_WiMax_LocationInformationList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_WiMax_LocationInformationList, OMA_LPPe_ECID_WiMax_LocationInformationList_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_maxWiMaxECIDSize_OF_OMA_LPPe_ECID_WiMax_LocationInformationList_sequence_of[1] = {
  { &hf_lppe_ecid_wimax_CombinedLocationInformation_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_ECID_WiMax_LocationInformationList },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_maxWiMaxECIDSize_OF_OMA_LPPe_ECID_WiMax_LocationInformationList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_maxWiMaxECIDSize_OF_OMA_LPPe_ECID_WiMax_LocationInformationList, SEQUENCE_SIZE_1_maxWiMaxECIDSize_OF_OMA_LPPe_ECID_WiMax_LocationInformationList_sequence_of,
                                                  1, maxWiMaxECIDSize, FALSE);

  return offset;
}


static const value_string lppe_T_cause_14_vals[] = {
  {   0, "undefined" },
  { 0, NULL }
};


static int
dissect_lppe_T_cause_14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     1, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_WiMax_LocationServerErrorCauses_sequence[] = {
  { &hf_lppe_cause_14       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause_14 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_WiMax_LocationServerErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_WiMax_LocationServerErrorCauses, OMA_LPPe_ECID_WiMax_LocationServerErrorCauses_sequence);

  return offset;
}


static const value_string lppe_T_cause_15_vals[] = {
  {   0, "undefined" },
  {   1, "requestedMeasurementsNotAvailable" },
  {   2, "notAllrequestedMeasurementsPossible" },
  { 0, NULL }
};


static int
dissect_lppe_T_cause_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_WiMax_TargetDeviceErrorCauses_sequence[] = {
  { &hf_lppe_cause_15       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_cause_15 },
  { &hf_lppe_rTDMeasurementNotPossible, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_rTDstdMeasurementNotPossible, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_nMRMeasurementNotPossible, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_nMRrelDelayMeasurementNotPossible, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_nMRrelDelaystdMeasurementNotPossible, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_nMRrSSIMeasurementNotPossible, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_nMRrSSIstdMeasurementNotPossible, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_nMRbSTxPowerMeasurementNotPossible, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_nMRcINRMeasurementNotPossible, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_nMRcINRstdMeasurementNotPossible, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_nMRbSLocationNotAvailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_non_servingMeasurementsNotAvailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { &hf_lppe_historicMeasurementsNotAvailable, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_NULL },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_WiMax_TargetDeviceErrorCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_WiMax_TargetDeviceErrorCauses, OMA_LPPe_ECID_WiMax_TargetDeviceErrorCauses_sequence);

  return offset;
}


static const value_string lppe_OMA_LPPe_ECID_WiMax_Error_vals[] = {
  {   0, "locationServerErrorCauses" },
  {   1, "targetDeviceErrorCauses" },
  { 0, NULL }
};

static const per_choice_t OMA_LPPe_ECID_WiMax_Error_choice[] = {
  {   0, &hf_lppe_locationServerErrorCauses_07, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_ECID_WiMax_LocationServerErrorCauses },
  {   1, &hf_lppe_targetDeviceErrorCauses_07, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_ECID_WiMax_TargetDeviceErrorCauses },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_WiMax_Error(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_OMA_LPPe_ECID_WiMax_Error, OMA_LPPe_ECID_WiMax_Error_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_ECID_WiMax_ProvideLocationInformation_sequence[] = {
  { &hf_lppe_ecid_wimax_CombinedLocationInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_SEQUENCE_SIZE_1_maxWiMaxECIDSize_OF_OMA_LPPe_ECID_WiMax_LocationInformationList },
  { &hf_lppe_ecid_wimax_Error, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_WiMax_Error },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ECID_WiMax_ProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ECID_WiMax_ProvideLocationInformation, OMA_LPPe_ECID_WiMax_ProvideLocationInformation_sequence);

  return offset;
}


static const value_string lppe_T_primaryMotionState_vals[] = {
  {   0, "unknown" },
  {   1, "stationary" },
  {   2, "pedestrian" },
  {   3, "running" },
  {   4, "cycling" },
  {   5, "car" },
  {   6, "train" },
  {   7, "aeroplane" },
  {   8, "boat" },
  {   9, "fidgeting" },
  { 0, NULL }
};


static int
dissect_lppe_T_primaryMotionState(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     10, NULL, TRUE, 0, NULL);

  return offset;
}


static int * const T_secondaryMotionState_bits[] = {
  &hf_lppe_T_secondaryMotionState_stationary,
  &hf_lppe_T_secondaryMotionState_pedestrian,
  &hf_lppe_T_secondaryMotionState_running,
  &hf_lppe_T_secondaryMotionState_cycling,
  &hf_lppe_T_secondaryMotionState_car,
  &hf_lppe_T_secondaryMotionState_train,
  &hf_lppe_T_secondaryMotionState_aeroplane,
  &hf_lppe_T_secondaryMotionState_boat,
  &hf_lppe_T_secondaryMotionState_fidgeting,
  NULL
};

static int
dissect_lppe_T_secondaryMotionState(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index,
                                     1, 16, FALSE, T_secondaryMotionState_bits, 9, NULL, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_Sensor_MotionStateElement_sequence[] = {
  { &hf_lppe_primaryMotionState, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_T_primaryMotionState },
  { &hf_lppe_confidence     , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_99 },
  { &hf_lppe_secondaryMotionState, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_secondaryMotionState },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_Sensor_MotionStateElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_Sensor_MotionStateElement, OMA_LPPe_Sensor_MotionStateElement_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_Sensor_MotionStateList_sequence_of[1] = {
  { &hf_lppe_OMA_LPPe_Sensor_MotionStateList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_Sensor_MotionStateElement },
};

static int
dissect_lppe_OMA_LPPe_Sensor_MotionStateList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_OMA_LPPe_Sensor_MotionStateList, OMA_LPPe_Sensor_MotionStateList_sequence_of,
                                                  1, 8, FALSE);

  return offset;
}


static const value_string lppe_T_motionStateError_vals[] = {
  {   0, "primaryMotionStateNotAvailable" },
  {   1, "primaryMotionStateNotSupported" },
  { 0, NULL }
};


static int
dissect_lppe_T_motionStateError(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     2, NULL, TRUE, 0, NULL);

  return offset;
}


static const value_string lppe_T_secondaryMotionStateError_vals[] = {
  {   0, "secondaryMotionStateNotAvailable" },
  {   1, "secondaryMotionStateNotSupported" },
  { 0, NULL }
};


static int
dissect_lppe_T_secondaryMotionStateError(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     2, NULL, TRUE, 0, NULL);

  return offset;
}


static const value_string lppe_T_atmosphericPressureError_vals[] = {
  {   0, "pressureNotAvailable" },
  {   1, "pressureNotSupported" },
  { 0, NULL }
};


static int
dissect_lppe_T_atmosphericPressureError(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     2, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_Sensor_TargetError_sequence[] = {
  { &hf_lppe_motionStateError, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_motionStateError },
  { &hf_lppe_secondaryMotionStateError, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_secondaryMotionStateError },
  { &hf_lppe_atmosphericPressureError, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_T_atmosphericPressureError },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_Sensor_TargetError(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_Sensor_TargetError, OMA_LPPe_Sensor_TargetError_sequence);

  return offset;
}


static const value_string lppe_OMA_LPPe_Sensor_Error_vals[] = {
  {   0, "targetError" },
  { 0, NULL }
};

static const per_choice_t OMA_LPPe_Sensor_Error_choice[] = {
  {   0, &hf_lppe_targetError    , ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_Sensor_TargetError },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_Sensor_Error(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_OMA_LPPe_Sensor_Error, OMA_LPPe_Sensor_Error_choice,
                                 NULL);

  return offset;
}



static int
dissect_lppe_INTEGER_30000_115000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            30000U, 115000U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_M5000_5000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            -5000, 5000U, NULL, FALSE);

  return offset;
}


static const per_sequence_t T_uncertainty_sequence[] = {
  { &hf_lppe_range          , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_0_1000 },
  { &hf_lppe_confidence_01  , ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_1_100 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_uncertainty(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_uncertainty, T_uncertainty_sequence);

  return offset;
}



static int
dissect_lppe_INTEGER_M100_150(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            -100, 150U, NULL, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_PressureMeasurement_sequence[] = {
  { &hf_lppe_sensorMeasurement, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_30000_115000 },
  { &hf_lppe_adjustment     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M5000_5000 },
  { &hf_lppe_uncertainty_01 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_uncertainty },
  { &hf_lppe_temperature_01 , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M100_150 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_PressureMeasurement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_PressureMeasurement, OMA_LPPe_PressureMeasurement_sequence);

  return offset;
}



static int
dissect_lppe_INTEGER_0_2000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            0U, 2000U, NULL, FALSE);

  return offset;
}



static int
dissect_lppe_INTEGER_5_40(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
                                                            5U, 40U, NULL, FALSE);

  return offset;
}


static const per_sequence_t PressureStats_sequence[] = {
  { &hf_lppe_sensorMeanPressure, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_30000_115000 },
  { &hf_lppe_sensorStddevPressure, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_2000 },
  { &hf_lppe_duration_04    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_INTEGER_5_40 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_PressureStats(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_PressureStats, PressureStats_sequence);

  return offset;
}



static int
dissect_lppe_UTCTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_VisibleString(tvb, offset, actx, tree, hf_index,
                                        NO_BOUND, NO_BOUND, FALSE,
                                        NULL);

  return offset;
}


static const per_sequence_t CalibrationPoints_item_sequence[] = {
  { &hf_lppe_pressure_01    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_PressureMeasurement },
  { &hf_lppe_time           , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_UTCTime },
  { &hf_lppe_location       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lpp_EllipsoidPointWithAltitudeAndUncertaintyEllipsoid },
  { &hf_lppe_motionState    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_Sensor_MotionStateList },
  { &hf_lppe_velocity       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lpp_Velocity },
  { &hf_lppe_locationSource , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_LocationSource },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_CalibrationPoints_item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_CalibrationPoints_item, CalibrationPoints_item_sequence);

  return offset;
}


static const per_sequence_t CalibrationPoints_sequence_of[1] = {
  { &hf_lppe_CalibrationPoints_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_CalibrationPoints_item },
};

static int
dissect_lppe_CalibrationPoints(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_CalibrationPoints, CalibrationPoints_sequence_of,
                                                  1, 10, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_AtmosphericPressure_sequence[] = {
  { &hf_lppe_pressureMeasurement, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_PressureMeasurement },
  { &hf_lppe_pressureStats  , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_PressureStats },
  { &hf_lppe_calibrationPoints, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_CalibrationPoints },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AtmosphericPressure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AtmosphericPressure, OMA_LPPe_AtmosphericPressure_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_Sensor_ProvideLocationInformation_sequence[] = {
  { &hf_lppe_motionStateList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_Sensor_MotionStateList },
  { &hf_lppe_sensorError    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_Sensor_Error },
  { &hf_lppe_atmosphericPressure, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AtmosphericPressure },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_Sensor_ProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_Sensor_ProvideLocationInformation, OMA_LPPe_Sensor_ProvideLocationInformation_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_srnMeasurementElement_sequence[] = {
  { &hf_lppe_relativeTimeStamp_01, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_0_1000 },
  { &hf_lppe_rssi           , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_INTEGER_M128_127 },
  { &hf_lppe_rtd            , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_WLAN_RTD },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_srnMeasurementElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_srnMeasurementElement, OMA_LPPe_SRN_srnMeasurementElement_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_srnMeasurementElement_sequence_of[1] = {
  { &hf_lppe_measurementList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_srnMeasurementElement },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_srnMeasurementElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_srnMeasurementElement, SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_srnMeasurementElement_sequence_of,
                                                  1, 64, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_MeasurementElement_sequence[] = {
  { &hf_lppe_srnID          , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_SRNid },
  { &hf_lppe_srnCategory    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_SRN_Category },
  { &hf_lppe_srnGroupID     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_SRN_SRNgroupUniqueID },
  { &hf_lppe_measurementList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_srnMeasurementElement },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_MeasurementElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_MeasurementElement, OMA_LPPe_SRN_MeasurementElement_sequence);

  return offset;
}


static const per_sequence_t SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_MeasurementElement_sequence_of[1] = {
  { &hf_lppe_srnMeasurementList_item, ASN1_NO_EXTENSIONS     , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_SRN_MeasurementElement },
};

static int
dissect_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_MeasurementElement(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
                                                  ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_MeasurementElement, SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_MeasurementElement_sequence_of,
                                                  1, 64, FALSE);

  return offset;
}


static const per_sequence_t OMA_LPPe_SRN_ProvideLocationInformation_sequence[] = {
  { &hf_lppe_srnMeasurementList, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_MeasurementElement },
  { &hf_lppe_srnError       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_SRN_Error },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_SRN_ProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_SRN_ProvideLocationInformation, OMA_LPPe_SRN_ProvideLocationInformation_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_ProvideLocationInformation_sequence[] = {
  { &hf_lppe_commonIEsProvideLocationInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_CommonIEsProvideLocationInformation },
  { &hf_lppe_agnss_ProvideLocationInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_ProvideLocationInformation },
  { &hf_lppe_otdoa_ProvideLocationInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_ProvideLocationInformation },
  { &hf_lppe_eotd_ProvideLocationInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_EOTD_ProvideLocationInformation },
  { &hf_lppe_otdoa_utra_ProvideLocationInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_OTDOA_UTRA_ProvideLocationInformation },
  { &hf_lppe_ecid_lte_ProvideLocationInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_LTE_ProvideLocationInformation },
  { &hf_lppe_ecid_gsm_ProvideLocationInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_GSM_ProvideLocationInformation },
  { &hf_lppe_ecid_utra_ProvideLocationInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_UTRA_ProvideLocationInformation },
  { &hf_lppe_wlan_ap_ProvideLocationInformastion, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_WLAN_AP_ProvideLocationInformation },
  { &hf_lppe_ecid_wimax_ProvideLocationInformastion, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_ECID_WiMax_ProvideLocationInformation },
  { &hf_lppe_sensor_ProvideLocationInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_Sensor_ProvideLocationInformation },
  { &hf_lppe_srn_ProvideLocationInformation, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_SRN_ProvideLocationInformation },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_ProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_ProvideLocationInformation, OMA_LPPe_ProvideLocationInformation_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_CommonIEsError_sequence[] = {
  { NULL, ASN1_EXTENSION_ROOT, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_CommonIEsError(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_CommonIEsError, OMA_LPPe_CommonIEsError_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_Error_sequence[] = {
  { &hf_lppe_commonIEsError , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_CommonIEsError },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_Error(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_Error, OMA_LPPe_Error_sequence);

  return offset;
}


static const value_string lppe_T_abortCause_vals[] = {
  {   0, "periodicADsessionStop" },
  {   1, "periodicADprocedureNotSupported" },
  {   2, "periodicADprocedureNotAccepted" },
  {   3, "periodicLocInfoSessionStop" },
  {   4, "periodicLocInfoProcedureNotSupported" },
  {   5, "periodicLocInfoProcedureNotAccepted" },
  { 0, NULL }
};


static int
dissect_lppe_T_abortCause(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     6, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_CommonIEsAbort_sequence[] = {
  { &hf_lppe_abortCause     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_abortCause },
  { &hf_lppe_periodicSessionIDtoAbort, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OCTET_STRING_SIZE_4 },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_CommonIEsAbort(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_CommonIEsAbort, OMA_LPPe_CommonIEsAbort_sequence);

  return offset;
}


static const value_string lppe_T_ccpAbort_vals[] = {
  {   0, "undefined" },
  {   1, "ccpNotSupported" },
  {   2, "ccpNotSupportedForProvidedSignals" },
  { 0, NULL }
};


static int
dissect_lppe_T_ccpAbort(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}


static const value_string lppe_T_waIonoAbort_vals[] = {
  {   0, "undefined" },
  {   1, "waIonoNotSupported" },
  {   2, "waIonoNotSupportedForProvidedGNSSs" },
  { 0, NULL }
};


static int
dissect_lppe_T_waIonoAbort(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
                                     3, NULL, TRUE, 0, NULL);

  return offset;
}


static const per_sequence_t T_targetDeviceAbortCauses_sequence[] = {
  { &hf_lppe_ccpAbort       , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_ccpAbort },
  { &hf_lppe_waIonoAbort    , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_waIonoAbort },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_T_targetDeviceAbortCauses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_T_targetDeviceAbortCauses, T_targetDeviceAbortCauses_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_AGNSS_Abort_sequence[] = {
  { &hf_lppe_targetDeviceAbortCauses, ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_T_targetDeviceAbortCauses },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_AGNSS_Abort(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_AGNSS_Abort, OMA_LPPe_AGNSS_Abort_sequence);

  return offset;
}


static const per_sequence_t OMA_LPPe_Abort_sequence[] = {
  { &hf_lppe_commonIEsAbort , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_CommonIEsAbort },
  { &hf_lppe_agnssAbort     , ASN1_EXTENSION_ROOT    , ASN1_OPTIONAL    , dissect_lppe_OMA_LPPe_AGNSS_Abort },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_Abort(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_Abort, OMA_LPPe_Abort_sequence);

  return offset;
}


static const value_string lppe_OMA_LPPe_MessageExtensionBody_vals[] = {
  {   0, "requestCapabilities" },
  {   1, "provideCapabilities" },
  {   2, "requestAssistanceData" },
  {   3, "provideAssistanceData" },
  {   4, "requestLocationInformation" },
  {   5, "provideLocationInformation" },
  {   6, "error" },
  {   7, "abort" },
  { 0, NULL }
};

static const per_choice_t OMA_LPPe_MessageExtensionBody_choice[] = {
  {   0, &hf_lppe_requestCapabilities, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_RequestCapabilities },
  {   1, &hf_lppe_provideCapabilities, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_ProvideCapabilities },
  {   2, &hf_lppe_requestAssistanceData, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_RequestAssistanceData },
  {   3, &hf_lppe_provideAssistanceData, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_ProvideAssistanceData },
  {   4, &hf_lppe_requestLocationInformation, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_RequestLocationInformation },
  {   5, &hf_lppe_provideLocationInformation, ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_ProvideLocationInformation },
  {   6, &hf_lppe_error          , ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_Error },
  {   7, &hf_lppe_abort          , ASN1_EXTENSION_ROOT    , dissect_lppe_OMA_LPPe_Abort },
  { 0, NULL, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_MessageExtensionBody(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
  offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
                                 ett_lppe_OMA_LPPe_MessageExtensionBody, OMA_LPPe_MessageExtensionBody_choice,
                                 NULL);

  return offset;
}


static const per_sequence_t OMA_LPPe_MessageExtension_sequence[] = {
  { &hf_lppe_lppeCompatibilityLevel, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_LPPeCompatibilityLevel },
  { &hf_lppe_lppeVersion    , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_LPPeVersion },
  { &hf_lppe_lppeMode       , ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_LPPeMode },
  { &hf_lppe_messageExtensionBody, ASN1_EXTENSION_ROOT    , ASN1_NOT_OPTIONAL, dissect_lppe_OMA_LPPe_MessageExtensionBody },
  { NULL, 0, 0, NULL }
};

static int
dissect_lppe_OMA_LPPe_MessageExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {

  proto_tree_add_item(tree, proto_lppe, tvb, 0, -1, ENC_NA);

  col_append_sep_str(actx->pinfo->cinfo, COL_PROTOCOL, "/", "LPPe");

  offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
                                   ett_lppe_OMA_LPPe_MessageExtension, OMA_LPPe_MessageExtension_sequence);

  return offset;
}

/*--- PDUs ---*/

static int dissect_OMA_LPPe_MessageExtension_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
  int offset = 0;
  asn1_ctx_t asn1_ctx;
  asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo);
  offset = dissect_lppe_OMA_LPPe_MessageExtension(tvb, offset, &asn1_ctx, tree, hf_lppe_OMA_LPPe_MessageExtension_PDU);
  offset += 7; offset >>= 3;
  return offset;
}



/*--- proto_register_lpp -------------------------------------------*/
void proto_register_lppe(void) {

  /* List of fields */
  static hf_register_info hf[] = {

    { &hf_lppe_OMA_LPPe_MessageExtension_PDU,
      { "OMA-LPPe-MessageExtension", "lppe.OMA_LPPe_MessageExtension_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_lppeCompatibilityLevel,
      { "lppeCompatibilityLevel", "lppe.lppeCompatibilityLevel",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_LPPeCompatibilityLevel", HFILL }},
    { &hf_lppe_lppeVersion,
      { "lppeVersion", "lppe.lppeVersion_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_LPPeVersion", HFILL }},
    { &hf_lppe_lppeMode,
      { "lppeMode", "lppe.lppeMode",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_LPPeMode_vals), 0,
        "OMA_LPPe_LPPeMode", HFILL }},
    { &hf_lppe_messageExtensionBody,
      { "messageExtensionBody", "lppe.messageExtensionBody",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_MessageExtensionBody_vals), 0,
        "OMA_LPPe_MessageExtensionBody", HFILL }},
    { &hf_lppe_majorVersion,
      { "majorVersion", "lppe.majorVersion",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_255", HFILL }},
    { &hf_lppe_minorVersion,
      { "minorVersion", "lppe.minorVersion",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_255", HFILL }},
    { &hf_lppe_requestCapabilities,
      { "requestCapabilities", "lppe.requestCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_RequestCapabilities", HFILL }},
    { &hf_lppe_provideCapabilities,
      { "provideCapabilities", "lppe.provideCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ProvideCapabilities", HFILL }},
    { &hf_lppe_requestAssistanceData,
      { "requestAssistanceData", "lppe.requestAssistanceData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_RequestAssistanceData", HFILL }},
    { &hf_lppe_provideAssistanceData,
      { "provideAssistanceData", "lppe.provideAssistanceData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ProvideAssistanceData", HFILL }},
    { &hf_lppe_requestLocationInformation,
      { "requestLocationInformation", "lppe.requestLocationInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_RequestLocationInformation", HFILL }},
    { &hf_lppe_provideLocationInformation,
      { "provideLocationInformation", "lppe.provideLocationInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ProvideLocationInformation", HFILL }},
    { &hf_lppe_error,
      { "error", "lppe.error_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_Error", HFILL }},
    { &hf_lppe_abort,
      { "abort", "lppe.abort_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_Abort", HFILL }},
    { &hf_lppe_commonIEsRequestCapabilities,
      { "commonIEsRequestCapabilities", "lppe.commonIEsRequestCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_CommonIEsRequestCapabilities", HFILL }},
    { &hf_lppe_agnss_RequestCapabilities,
      { "agnss-RequestCapabilities", "lppe.agnss_RequestCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_RequestCapabilities", HFILL }},
    { &hf_lppe_otdoa_RequestCapabilities,
      { "otdoa-RequestCapabilities", "lppe.otdoa_RequestCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_RequestCapabilities", HFILL }},
    { &hf_lppe_eotd_RequestCapabilities,
      { "eotd-RequestCapabilities", "lppe.eotd_RequestCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_EOTD_RequestCapabilities", HFILL }},
    { &hf_lppe_otdoa_utra_RequestCapabilities,
      { "otdoa-utra-RequestCapabilities", "lppe.otdoa_utra_RequestCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_RequestCapabilities", HFILL }},
    { &hf_lppe_ecid_lte_RequestCapabilities,
      { "ecid-lte-RequestCapabilities", "lppe.ecid_lte_RequestCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_LTE_RequestCapabilities", HFILL }},
    { &hf_lppe_ecid_gsm_RequestCapabilities,
      { "ecid-gsm-RequestCapabilities", "lppe.ecid_gsm_RequestCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_GSM_RequestCapabilities", HFILL }},
    { &hf_lppe_ecid_utra_RequestCapabilities,
      { "ecid-utra-RequestCapabilities", "lppe.ecid_utra_RequestCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_UTRA_RequestCapabilities", HFILL }},
    { &hf_lppe_wlan_ap_RequestCapabilities,
      { "wlan-ap-RequestCapabilities", "lppe.wlan_ap_RequestCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_WLAN_AP_RequestCapabilities", HFILL }},
    { &hf_lppe_ecid_wimax_RequestCapabilities,
      { "ecid-wimax-RequestCapabilities", "lppe.ecid_wimax_RequestCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_WiMax_RequestCapabilities", HFILL }},
    { &hf_lppe_sensor_RequestCapabilities,
      { "sensor-RequestCapabilities", "lppe.sensor_RequestCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_Sensor_RequestCapabilities", HFILL }},
    { &hf_lppe_srn_RequestCapabilities,
      { "srn-RequestCapabilities", "lppe.srn_RequestCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SRN_RequestCapabilities", HFILL }},
    { &hf_lppe_commonIEsProvideCapabilities,
      { "commonIEsProvideCapabilities", "lppe.commonIEsProvideCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_CommonIEsProvideCapabilities", HFILL }},
    { &hf_lppe_agnss_ProvideCapabilities,
      { "agnss-ProvideCapabilities", "lppe.agnss_ProvideCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_ProvideCapabilities", HFILL }},
    { &hf_lppe_otdoa_ProvideCapabilities,
      { "otdoa-ProvideCapabilities", "lppe.otdoa_ProvideCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_ProvideCapabilities", HFILL }},
    { &hf_lppe_eotd_ProvideCapabilities,
      { "eotd-ProvideCapabilities", "lppe.eotd_ProvideCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_EOTD_ProvideCapabilities", HFILL }},
    { &hf_lppe_otdoa_utra_ProvideCapabilities,
      { "otdoa-utra-ProvideCapabilities", "lppe.otdoa_utra_ProvideCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_ProvideCapabilities", HFILL }},
    { &hf_lppe_ecid_lte_ProvideCapabilities,
      { "ecid-lte-ProvideCapabilities", "lppe.ecid_lte_ProvideCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_LTE_ProvideCapabilities", HFILL }},
    { &hf_lppe_ecid_gsm_ProvideCapabilities,
      { "ecid-gsm-ProvideCapabilities", "lppe.ecid_gsm_ProvideCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_GSM_ProvideCapabilities", HFILL }},
    { &hf_lppe_ecid_utra_ProvideCapabilities,
      { "ecid-utra-ProvideCapabilities", "lppe.ecid_utra_ProvideCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_UTRA_ProvideCapabilities", HFILL }},
    { &hf_lppe_wlan_ap_ProvideCapabilities,
      { "wlan-ap-ProvideCapabilities", "lppe.wlan_ap_ProvideCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_WLAN_AP_ProvideCapabilities", HFILL }},
    { &hf_lppe_ecid_wimax_ProvideCapabilities,
      { "ecid-wimax-ProvideCapabilities", "lppe.ecid_wimax_ProvideCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_WiMax_ProvideCapabilities", HFILL }},
    { &hf_lppe_sensor_ProvideCapabilities,
      { "sensor-ProvideCapabilities", "lppe.sensor_ProvideCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_Sensor_ProvideCapabilities", HFILL }},
    { &hf_lppe_srn_ProvideCapabilities,
      { "srn-ProvideCapabilities", "lppe.srn_ProvideCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SRN_ProvideCapabilities", HFILL }},
    { &hf_lppe_commonIEsRequestAssistanceData,
      { "commonIEsRequestAssistanceData", "lppe.commonIEsRequestAssistanceData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_CommonIEsRequestAssistanceData", HFILL }},
    { &hf_lppe_agnss_RequestAssistanceData,
      { "agnss-RequestAssistanceData", "lppe.agnss_RequestAssistanceData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_RequestAssistanceData", HFILL }},
    { &hf_lppe_otdoa_RequestAssistanceData,
      { "otdoa-RequestAssistanceData", "lppe.otdoa_RequestAssistanceData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_RequestAssistanceData", HFILL }},
    { &hf_lppe_eotd_RequestAssistanceData,
      { "eotd-RequestAssistanceData", "lppe.eotd_RequestAssistanceData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_EOTD_RequestAssistanceData", HFILL }},
    { &hf_lppe_otdoa_utra_RequestAssistanceData,
      { "otdoa-utra-RequestAssistanceData", "lppe.otdoa_utra_RequestAssistanceData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_RequestAssistanceData", HFILL }},
    { &hf_lppe_ecid_lte_RequestAssistanceData,
      { "ecid-lte-RequestAssistanceData", "lppe.ecid_lte_RequestAssistanceData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_LTE_RequestAssistanceData", HFILL }},
    { &hf_lppe_ecid_gsm_RequestAssistanceData,
      { "ecid-gsm-RequestAssistanceData", "lppe.ecid_gsm_RequestAssistanceData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_GSM_RequestAssistanceData", HFILL }},
    { &hf_lppe_ecid_utra_RequestAssistanceData,
      { "ecid-utra-RequestAssistanceData", "lppe.ecid_utra_RequestAssistanceData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_UTRA_RequestAssistanceData", HFILL }},
    { &hf_lppe_wlan_ap_RequestAssistanceData,
      { "wlan-ap-RequestAssistanceData", "lppe.wlan_ap_RequestAssistanceData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_WLAN_AP_RequestAssistanceData", HFILL }},
    { &hf_lppe_sensor_RequestAssistanceData,
      { "sensor-RequestAssistanceData", "lppe.sensor_RequestAssistanceData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_Sensor_RequestAssistanceData", HFILL }},
    { &hf_lppe_srn_RequestAssistanceData,
      { "srn-RequestAssistanceData", "lppe.srn_RequestAssistanceData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SRN_RequestAssistanceData", HFILL }},
    { &hf_lppe_commonIEsProvideAssistanceData,
      { "commonIEsProvideAssistanceData", "lppe.commonIEsProvideAssistanceData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_CommonIEsProvideAssistanceData", HFILL }},
    { &hf_lppe_agnss_ProvideAssistanceData,
      { "agnss-ProvideAssistanceData", "lppe.agnss_ProvideAssistanceData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_ProvideAssistanceData", HFILL }},
    { &hf_lppe_otdoa_ProvideAssistanceData,
      { "otdoa-ProvideAssistanceData", "lppe.otdoa_ProvideAssistanceData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_ProvideAssistanceData", HFILL }},
    { &hf_lppe_eotd_ProvideAssistanceData,
      { "eotd-ProvideAssistanceData", "lppe.eotd_ProvideAssistanceData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_EOTD_ProvideAssistanceData", HFILL }},
    { &hf_lppe_otdoa_utra_ProvideAssistanceData,
      { "otdoa-utra-ProvideAssistanceData", "lppe.otdoa_utra_ProvideAssistanceData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_ProvideAssistanceData", HFILL }},
    { &hf_lppe_ecid_lte_ProvideAssistanceData,
      { "ecid-lte-ProvideAssistanceData", "lppe.ecid_lte_ProvideAssistanceData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_LTE_ProvideAssistanceData", HFILL }},
    { &hf_lppe_ecid_gsm_ProvideAssistanceData,
      { "ecid-gsm-ProvideAssistanceData", "lppe.ecid_gsm_ProvideAssistanceData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_GSM_ProvideAssistanceData", HFILL }},
    { &hf_lppe_ecid_utra_ProvideAssistanceData,
      { "ecid-utra-ProvideAssistanceData", "lppe.ecid_utra_ProvideAssistanceData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_UTRA_ProvideAssistanceData", HFILL }},
    { &hf_lppe_wlan_ap_ProvideAssistanceData,
      { "wlan-ap-ProvideAssistanceData", "lppe.wlan_ap_ProvideAssistanceData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_WLAN_AP_ProvideAssistanceData", HFILL }},
    { &hf_lppe_sensor_ProvideAssistanceData,
      { "sensor-ProvideAssistanceData", "lppe.sensor_ProvideAssistanceData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_Sensor_ProvideAssistanceData", HFILL }},
    { &hf_lppe_srn_ProvideAssistanceData,
      { "srn-ProvideAssistanceData", "lppe.srn_ProvideAssistanceData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SRN_ProvideAssistanceData", HFILL }},
    { &hf_lppe_commonIEsRequestLocationInformation,
      { "commonIEsRequestLocationInformation", "lppe.commonIEsRequestLocationInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_CommonIEsRequestLocationInformation", HFILL }},
    { &hf_lppe_agnss_RequestLocationInformation,
      { "agnss-RequestLocationInformation", "lppe.agnss_RequestLocationInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_RequestLocationInformation", HFILL }},
    { &hf_lppe_otdoa_RequestLocationInformation,
      { "otdoa-RequestLocationInformation", "lppe.otdoa_RequestLocationInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_RequestLocationInformation", HFILL }},
    { &hf_lppe_eotd_RequestLocationInformation,
      { "eotd-RequestLocationInformation", "lppe.eotd_RequestLocationInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_EOTD_RequestLocationInformation", HFILL }},
    { &hf_lppe_otdoa_utra_RequestLocationInformation,
      { "otdoa-utra-RequestLocationInformation", "lppe.otdoa_utra_RequestLocationInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_RequestLocationInformation", HFILL }},
    { &hf_lppe_ecid_lte_RequestLocationInformation,
      { "ecid-lte-RequestLocationInformation", "lppe.ecid_lte_RequestLocationInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_LTE_RequestLocationInformation", HFILL }},
    { &hf_lppe_ecid_gsm_RequestLocationInformation,
      { "ecid-gsm-RequestLocationInformation", "lppe.ecid_gsm_RequestLocationInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_GSM_RequestLocationInformation", HFILL }},
    { &hf_lppe_ecid_utra_RequestLocationInformation,
      { "ecid-utra-RequestLocationInformation", "lppe.ecid_utra_RequestLocationInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_UTRA_RequestLocationInformation", HFILL }},
    { &hf_lppe_wlan_ap_RequestLocationInformation,
      { "wlan-ap-RequestLocationInformation", "lppe.wlan_ap_RequestLocationInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_WLAN_AP_RequestLocationInformation", HFILL }},
    { &hf_lppe_ecid_wimax_RequestLocationInformation,
      { "ecid-wimax-RequestLocationInformation", "lppe.ecid_wimax_RequestLocationInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_WiMax_RequestLocationInformation", HFILL }},
    { &hf_lppe_sensor_RequestLocationInformation,
      { "sensor-RequestLocationInformation", "lppe.sensor_RequestLocationInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_Sensor_RequestLocationInformation", HFILL }},
    { &hf_lppe_srn_RequestLocationInformation,
      { "srn-RequestLocationInformation", "lppe.srn_RequestLocationInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SRN_RequestLocationInformation", HFILL }},
    { &hf_lppe_commonIEsProvideLocationInformation,
      { "commonIEsProvideLocationInformation", "lppe.commonIEsProvideLocationInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_CommonIEsProvideLocationInformation", HFILL }},
    { &hf_lppe_agnss_ProvideLocationInformation,
      { "agnss-ProvideLocationInformation", "lppe.agnss_ProvideLocationInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_ProvideLocationInformation", HFILL }},
    { &hf_lppe_otdoa_ProvideLocationInformation,
      { "otdoa-ProvideLocationInformation", "lppe.otdoa_ProvideLocationInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_ProvideLocationInformation", HFILL }},
    { &hf_lppe_eotd_ProvideLocationInformation,
      { "eotd-ProvideLocationInformation", "lppe.eotd_ProvideLocationInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_EOTD_ProvideLocationInformation", HFILL }},
    { &hf_lppe_otdoa_utra_ProvideLocationInformation,
      { "otdoa-utra-ProvideLocationInformation", "lppe.otdoa_utra_ProvideLocationInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_ProvideLocationInformation", HFILL }},
    { &hf_lppe_ecid_lte_ProvideLocationInformation,
      { "ecid-lte-ProvideLocationInformation", "lppe.ecid_lte_ProvideLocationInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_LTE_ProvideLocationInformation", HFILL }},
    { &hf_lppe_ecid_gsm_ProvideLocationInformation,
      { "ecid-gsm-ProvideLocationInformation", "lppe.ecid_gsm_ProvideLocationInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_GSM_ProvideLocationInformation", HFILL }},
    { &hf_lppe_ecid_utra_ProvideLocationInformation,
      { "ecid-utra-ProvideLocationInformation", "lppe.ecid_utra_ProvideLocationInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_UTRA_ProvideLocationInformation", HFILL }},
    { &hf_lppe_wlan_ap_ProvideLocationInformastion,
      { "wlan-ap-ProvideLocationInformastion", "lppe.wlan_ap_ProvideLocationInformastion_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_WLAN_AP_ProvideLocationInformation", HFILL }},
    { &hf_lppe_ecid_wimax_ProvideLocationInformastion,
      { "ecid-wimax-ProvideLocationInformastion", "lppe.ecid_wimax_ProvideLocationInformastion_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_WiMax_ProvideLocationInformation", HFILL }},
    { &hf_lppe_sensor_ProvideLocationInformation,
      { "sensor-ProvideLocationInformation", "lppe.sensor_ProvideLocationInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_Sensor_ProvideLocationInformation", HFILL }},
    { &hf_lppe_srn_ProvideLocationInformation,
      { "srn-ProvideLocationInformation", "lppe.srn_ProvideLocationInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SRN_ProvideLocationInformation", HFILL }},
    { &hf_lppe_commonIEsAbort,
      { "commonIEsAbort", "lppe.commonIEsAbort_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_CommonIEsAbort", HFILL }},
    { &hf_lppe_agnssAbort,
      { "agnssAbort", "lppe.agnssAbort_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_Abort", HFILL }},
    { &hf_lppe_commonIEsError,
      { "commonIEsError", "lppe.commonIEsError_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_CommonIEsError", HFILL }},
    { &hf_lppe_dataSerialNumber,
      { "dataSerialNumber", "lppe.dataSerialNumber",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_4294967295", HFILL }},
    { &hf_lppe_containerID,
      { "containerID", "lppe.containerID",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_65535", HFILL }},
    { &hf_lppe_OMA_LPPe_AssistanceContainerProvideList_item,
      { "OMA-LPPe-AssistanceContainerProvide", "lppe.OMA_LPPe_AssistanceContainerProvide_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_dataIdentifier,
      { "dataIdentifier", "lppe.dataIdentifier_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_VendorOrOperatorAssistanceDataIdentifier", HFILL }},
    { &hf_lppe_checkOrUpdateOrError,
      { "checkOrUpdateOrError", "lppe.checkOrUpdateOrError",
        FT_UINT32, BASE_DEC, VALS(lppe_T_checkOrUpdateOrError_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_dataResult,
      { "dataResult", "lppe.dataResult",
        FT_UINT32, BASE_DEC, VALS(lppe_T_dataResult_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_simulationResult,
      { "simulationResult", "lppe.simulationResult",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_5000", HFILL }},
    { &hf_lppe_data,
      { "data", "lppe.data_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AssistanceContainerData", HFILL }},
    { &hf_lppe_errorCode,
      { "errorCode", "lppe.errorCode_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AssistanceContainerProvideError", HFILL }},
    { &hf_lppe_dataSerialNumber_01,
      { "dataSerialNumber", "lppe.dataSerialNumber_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AssistanceContainer_DataSerialNumber", HFILL }},
    { &hf_lppe_data_01,
      { "data", "lppe.data",
        FT_BYTES, BASE_NONE, NULL, 0,
        "OCTET_STRING", HFILL }},
    { &hf_lppe_validityPeriod,
      { "validityPeriod", "lppe.validityPeriod_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ValidityPeriod", HFILL }},
    { &hf_lppe_validityArea,
      { "validityArea", "lppe.validityArea_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ValidityArea", HFILL }},
    { &hf_lppe_serverError,
      { "serverError", "lppe.serverError",
        FT_UINT32, BASE_DEC, VALS(lppe_T_serverError_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_OMA_LPPe_AssistanceContainerRequestList_item,
      { "OMA-LPPe-AssistanceContainerRequest", "lppe.OMA_LPPe_AssistanceContainerRequest_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_simulatedReq,
      { "simulatedReq", "lppe.simulatedReq",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_checkOrUpdateReq,
      { "checkOrUpdateReq", "lppe.checkOrUpdateReq_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AssistanceContainerCheckOrUpdateReq", HFILL }},
    { &hf_lppe_validityTimeRequest,
      { "validityTimeRequest", "lppe.validityTimeRequest_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ValidityPeriod", HFILL }},
    { &hf_lppe_proprietaryRequestParameters,
      { "proprietaryRequestParameters", "lppe.proprietaryRequestParameters",
        FT_BYTES, BASE_NONE, NULL, 0,
        "OCTET_STRING", HFILL }},
    { &hf_lppe_checkLatest,
      { "checkLatest", "lppe.checkLatest",
        FT_UINT32, BASE_DEC, VALS(lppe_T_checkLatest_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_locationAreaCode,
      { "locationAreaCode", "lppe.locationAreaCode",
        FT_BYTES, BASE_NONE, NULL, 0,
        "BIT_STRING_SIZE_16", HFILL }},
    { &hf_lppe_cellIdentity,
      { "cellIdentity", "lppe.cellIdentity",
        FT_BYTES, BASE_NONE, NULL, 0,
        "BIT_STRING_SIZE_16", HFILL }},
    { &hf_lppe_bsic,
      { "bsic", "lppe.bsic",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_63", HFILL }},
    { &hf_lppe_bcch,
      { "bcch", "lppe.bcch",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_1023", HFILL }},
    { &hf_lppe_countryCode,
      { "countryCode", "lppe.countryCode",
        FT_BYTES, BASE_NONE, NULL, 0,
        "OCTET_STRING_SIZE_2", HFILL }},
    { &hf_lppe_civicAddressElementList,
      { "civicAddressElementList", "lppe.civicAddressElementList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_CivicAddressElementList", HFILL }},
    { &hf_lppe_OMA_LPPe_CivicAddressElementList_item,
      { "OMA-LPPe-CivicAddressElement", "lppe.OMA_LPPe_CivicAddressElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_caType,
      { "caType", "lppe.caType",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_511", HFILL }},
    { &hf_lppe_caValue,
      { "caValue", "lppe.caValue",
        FT_BYTES, BASE_NONE, NULL, 0,
        "OCTET_STRING_SIZE_1_256", HFILL }},
    { &hf_lppe_civicLocation,
      { "civicLocation", "lppe.civicLocation",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_duration,
      { "duration", "lppe.duration",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_63", HFILL }},
    { &hf_lppe_durationLSB,
      { "durationLSB", "lppe.durationLSB",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_89", HFILL }},
    { &hf_lppe_latitude,
      { "latitude", "lppe.latitude",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M2147483648_2147483647", HFILL }},
    { &hf_lppe_longitude,
      { "longitude", "lppe.longitude",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M2147483648_2147483647", HFILL }},
    { &hf_lppe_cep,
      { "cep", "lppe.cep",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_255", HFILL }},
    { &hf_lppe_uncertainty_semimajor,
      { "uncertainty-semimajor", "lppe.uncertainty_semimajor",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_255", HFILL }},
    { &hf_lppe_uncertainty_semiminor,
      { "uncertainty-semiminor", "lppe.uncertainty_semiminor",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_255", HFILL }},
    { &hf_lppe_offset_angle,
      { "offset-angle", "lppe.offset_angle",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_179", HFILL }},
    { &hf_lppe_confidenceHorizontal,
      { "confidenceHorizontal", "lppe.confidenceHorizontal",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_99", HFILL }},
    { &hf_lppe_altitude,
      { "altitude", "lppe.altitude",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M64000_1280000", HFILL }},
    { &hf_lppe_uncertainty_altitude,
      { "uncertainty-altitude", "lppe.uncertainty_altitude",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_255", HFILL }},
    { &hf_lppe_confidenceVertical,
      { "confidenceVertical", "lppe.confidenceVertical",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_99", HFILL }},
    { &hf_lppe_extUncertRange,
      { "extUncertRange", "lppe.extUncertRange",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_enu_origin,
      { "enu-origin", "lppe.enu_origin_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_HighAccuracy3Dposition", HFILL }},
    { &hf_lppe_east_component,
      { "east-component", "lppe.east_component",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_511", HFILL }},
    { &hf_lppe_negative_sign_east,
      { "negative-sign-east", "lppe.negative_sign_east_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_north_component,
      { "north-component", "lppe.north_component",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_511", HFILL }},
    { &hf_lppe_negative_sign_north,
      { "negative-sign-north", "lppe.negative_sign_north_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_up_component,
      { "up-component", "lppe.up_component",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_511", HFILL }},
    { &hf_lppe_negative_sign_up,
      { "negative-sign-up", "lppe.negative_sign_up_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_uncertainty_up_component,
      { "uncertainty-up-component", "lppe.uncertainty_up_component",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_255", HFILL }},
    { &hf_lppe_confidenceUp,
      { "confidenceUp", "lppe.confidenceUp",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_99", HFILL }},
    { &hf_lppe_vendorOrOperatorID,
      { "vendorOrOperatorID", "lppe.vendorOrOperatorID",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_VendorOrOperatorID_vals), 0,
        "OMA_LPPe_VendorOrOperatorID", HFILL }},
    { &hf_lppe_locationInformationContainerDataList,
      { "locationInformationContainerDataList", "lppe.locationInformationContainerDataList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_LocationInformationContainerDataList", HFILL }},
    { &hf_lppe_OMA_LPPe_LocationInformationContainerDataList_item,
      { "OMA-LPPe-LocationInformationContainerData", "lppe.OMA_LPPe_LocationInformationContainerData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_containerID_01,
      { "containerID", "lppe.containerID_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_LocationInformationContainerID", HFILL }},
    { &hf_lppe_containerData,
      { "containerData", "lppe.containerData",
        FT_BYTES, BASE_NONE, NULL, 0,
        "OCTET_STRING", HFILL }},
    { &hf_lppe_locationInformationContainerRequestList,
      { "locationInformationContainerRequestList", "lppe.locationInformationContainerRequestList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_LocationInformationContainerRequestList", HFILL }},
    { &hf_lppe_OMA_LPPe_LocationInformationContainerRequestList_item,
      { "OMA-LPPe-LocationInformationContainerRequestItem", "lppe.OMA_LPPe_LocationInformationContainerRequestItem_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_additionalInformation,
      { "additionalInformation", "lppe.additionalInformation",
        FT_BYTES, BASE_NONE, NULL, 0,
        "OCTET_STRING", HFILL }},
    { &hf_lppe_dataID,
      { "dataID", "lppe.dataID_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AssistanceContainerID", HFILL }},
    { &hf_lppe_mapReference,
      { "mapReference", "lppe.mapReference",
        FT_BYTES, BASE_NONE, NULL, 0,
        "OCTET_STRING_SIZE_1_64", HFILL }},
    { &hf_lppe_mapSize,
      { "mapSize", "lppe.mapSize",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_5000", HFILL }},
    { &hf_lppe_eulerAngles,
      { "eulerAngles", "lppe.eulerAngles_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_alpha,
      { "alpha", "lppe.alpha",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_359", HFILL }},
    { &hf_lppe_beta,
      { "beta", "lppe.beta",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_180", HFILL }},
    { &hf_lppe_gamma,
      { "gamma", "lppe.gamma",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_359", HFILL }},
    { &hf_lppe_referencePointUniqueID,
      { "referencePointUniqueID", "lppe.referencePointUniqueID_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ReferencePointUniqueID", HFILL }},
    { &hf_lppe_referencePointGeographicLocation,
      { "referencePointGeographicLocation", "lppe.referencePointGeographicLocation",
        FT_UINT32, BASE_DEC, VALS(lppe_T_referencePointGeographicLocation_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_location3D,
      { "location3D", "lppe.location3D_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "EllipsoidPointWithAltitude", HFILL }},
    { &hf_lppe_location3DwithUncertainty,
      { "location3DwithUncertainty", "lppe.location3DwithUncertainty_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "EllipsoidPointWithAltitudeAndUncertaintyEllipsoid", HFILL }},
    { &hf_lppe_locationwithhighaccuracy,
      { "locationwithhighaccuracy", "lppe.locationwithhighaccuracy_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_HighAccuracy3Dposition", HFILL }},
    { &hf_lppe_referencePointCivicLocation,
      { "referencePointCivicLocation", "lppe.referencePointCivicLocation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_CivicLocation", HFILL }},
    { &hf_lppe_referencePointFloorLevel,
      { "referencePointFloorLevel", "lppe.referencePointFloorLevel",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M20_235", HFILL }},
    { &hf_lppe_relatedReferencePoints,
      { "relatedReferencePoints", "lppe.relatedReferencePoints",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointRelationship", HFILL }},
    { &hf_lppe_relatedReferencePoints_item,
      { "OMA-LPPe-ReferencePointRelationship", "lppe.OMA_LPPe_ReferencePointRelationship_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_mapDataInformation,
      { "mapDataInformation", "lppe.mapDataInformation",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_MapDataInformation", HFILL }},
    { &hf_lppe_OMA_LPPe_MapDataInformation_item,
      { "OMA-LPPe-MapDataReferenceElement", "lppe.OMA_LPPe_MapDataReferenceElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_mapDataUrl_choice,
      { "mapDataUrl", "lppe.mapDataUrl_choice",
        FT_UINT32, BASE_DEC, VALS(lppe_T_mapDataUrl_choice_vals), 0,
        "T_mapDataUrl_choice", HFILL }},
    { &hf_lppe_mapDataUrl,
      { "mapDataUrl", "lppe.mapDataUrl",
        FT_STRING, BASE_NONE, NULL, 0,
        "OMA_LPPe_Uri", HFILL }},
    { &hf_lppe_mapDataRef,
      { "mapDataRef", "lppe.mapDataRef_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_MapDataReference", HFILL }},
    { &hf_lppe_mapProvider,
      { "mapProvider", "lppe.mapProvider",
        FT_UINT32, BASE_DEC, VALS(lppe_T_mapProvider_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_sameAsRefPointProvider,
      { "sameAsRefPointProvider", "lppe.sameAsRefPointProvider_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_notSameAsRefPointProvider,
      { "notSameAsRefPointProvider", "lppe.notSameAsRefPointProvider",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_VendorOrOperatorID_vals), 0,
        "OMA_LPPe_VendorOrOperatorID", HFILL }},
    { &hf_lppe_mapAssociation,
      { "mapAssociation", "lppe.mapAssociation",
        FT_UINT32, BASE_DEC, VALS(lppe_T_mapAssociation_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_referencePointUniqueID_01,
      { "referencePointUniqueID", "lppe.referencePointUniqueID_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_otherID,
      { "otherID", "lppe.otherID",
        FT_STRING, BASE_NONE, NULL, 0,
        "VisibleString_SIZE_1_64", HFILL }},
    { &hf_lppe_mapOffset,
      { "mapOffset", "lppe.mapOffset_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_RelativeLocation", HFILL }},
    { &hf_lppe_origin,
      { "origin", "lppe.origin_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_mapHorizontalOrientation,
      { "mapHorizontalOrientation", "lppe.mapHorizontalOrientation",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_359", HFILL }},
    { &hf_lppe_relativeLocation,
      { "relativeLocation", "lppe.relativeLocation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_RelativeLocation", HFILL }},
    { &hf_lppe_providerID,
      { "providerID", "lppe.providerID",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_VendorOrOperatorID_vals), 0,
        "OMA_LPPe_VendorOrOperatorID", HFILL }},
    { &hf_lppe_providerAssignedID,
      { "providerAssignedID", "lppe.providerAssignedID",
        FT_BYTES, BASE_NONE, NULL, 0,
        "OCTET_STRING", HFILL }},
    { &hf_lppe_version,
      { "version", "lppe.version",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_64", HFILL }},
    { &hf_lppe_units,
      { "units", "lppe.units",
        FT_UINT32, BASE_DEC, VALS(lppe_T_units_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_arc_second_units,
      { "arc-second-units", "lppe.arc_second_units",
        FT_UINT32, BASE_DEC, VALS(lppe_T_arc_second_units_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_relativeNorth,
      { "relativeNorth", "lppe.relativeNorth",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M524288_524287", HFILL }},
    { &hf_lppe_relativeEast,
      { "relativeEast", "lppe.relativeEast",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M524288_524287", HFILL }},
    { &hf_lppe_relativeAltitude,
      { "relativeAltitude", "lppe.relativeAltitude_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_RelativeAltitude", HFILL }},
    { &hf_lppe_horizontalUncertainty,
      { "horizontalUncertainty", "lppe.horizontalUncertainty_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_HorizontalUncertaintyAndConfidence", HFILL }},
    { &hf_lppe_uncShape,
      { "uncShape", "lppe.uncShape",
        FT_UINT32, BASE_DEC, VALS(lppe_T_uncShape_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_circle,
      { "circle", "lppe.circle",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_127", HFILL }},
    { &hf_lppe_ellipse,
      { "ellipse", "lppe.ellipse_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_semimajor,
      { "semimajor", "lppe.semimajor",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_127", HFILL }},
    { &hf_lppe_semiminor,
      { "semiminor", "lppe.semiminor",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_127", HFILL }},
    { &hf_lppe_offsetAngle,
      { "offsetAngle", "lppe.offsetAngle",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_179", HFILL }},
    { &hf_lppe_confidence,
      { "confidence", "lppe.confidence",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_99", HFILL }},
    { &hf_lppe_geodeticRelativeAltitude,
      { "geodeticRelativeAltitude", "lppe.geodeticRelativeAltitude_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_GeodeticRelativeAltitude", HFILL }},
    { &hf_lppe_civicRelativeAltitude,
      { "civicRelativeAltitude", "lppe.civicRelativeAltitude_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_CivicRelativeAltitude", HFILL }},
    { &hf_lppe_geodetic_height_depth,
      { "geodetic-height-depth", "lppe.geodetic_height_depth",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M32768_32767", HFILL }},
    { &hf_lppe_geodetic_uncertainty_and_confidence,
      { "geodetic-uncertainty-and-confidence", "lppe.geodetic_uncertainty_and_confidence_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_GeodeticUncertaintyAndConfidence", HFILL }},
    { &hf_lppe_uncertainty,
      { "uncertainty", "lppe.uncertainty",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_127", HFILL }},
    { &hf_lppe_civic_floors,
      { "civic-floors", "lppe.civic_floors",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M255_256", HFILL }},
    { &hf_lppe_civic_uncertainty_and_confidence,
      { "civic-uncertainty-and-confidence", "lppe.civic_uncertainty_and_confidence_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_CivicUncertaintyAndConfidence", HFILL }},
    { &hf_lppe_provider_ID,
      { "provider-ID", "lppe.provider_ID",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_VendorOrOperatorID_vals), 0,
        "OMA_LPPe_VendorOrOperatorID", HFILL }},
    { &hf_lppe_server_ID,
      { "server-ID", "lppe.server_ID",
        FT_BYTES, BASE_NONE, NULL, 0,
        "OCTET_STRING_SIZE_4", HFILL }},
    { &hf_lppe_session_ID,
      { "session-ID", "lppe.session_ID",
        FT_BYTES, BASE_NONE, NULL, 0,
        "OCTET_STRING_SIZE_4", HFILL }},
    { &hf_lppe_regionSizeInv,
      { "regionSizeInv", "lppe.regionSizeInv",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_255", HFILL }},
    { &hf_lppe_areaWidth,
      { "areaWidth", "lppe.areaWidth",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_2_9180", HFILL }},
    { &hf_lppe_codedLatOfNWCorner,
      { "codedLatOfNWCorner", "lppe.codedLatOfNWCorner",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_4589", HFILL }},
    { &hf_lppe_codedLonOfNWCorner,
      { "codedLonOfNWCorner", "lppe.codedLonOfNWCorner",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_9179", HFILL }},
    { &hf_lppe_rleList,
      { "rleList", "lppe.rleList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_RleList", HFILL }},
    { &hf_lppe_OMA_LPPe_RleList_item,
      { "OMA-LPPe-RleList item", "lppe.OMA_LPPe_RleList_item",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_255", HFILL }},
    { &hf_lppe_beginTime,
      { "beginTime", "lppe.beginTime_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "GNSS_SystemTime", HFILL }},
    { &hf_lppe_beginTimeAlt,
      { "beginTimeAlt", "lppe.beginTimeAlt",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_2881", HFILL }},
    { &hf_lppe_duration_01,
      { "duration", "lppe.duration",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_2881", HFILL }},
    { &hf_lppe_assistanceDataID,
      { "assistanceDataID", "lppe.assistanceDataID_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AssistanceContainerID", HFILL }},
    { &hf_lppe_standard_VendorOrOperatorID,
      { "standard-VendorOrOperatorID", "lppe.standard_VendorOrOperatorID",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_1024", HFILL }},
    { &hf_lppe_nonStandard_VendorOrOperatorID,
      { "nonStandard-VendorOrOperatorID", "lppe.nonStandard_VendorOrOperatorID_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_NonStandard_VendorOrOperatorID", HFILL }},
    { &hf_lppe_encodedID,
      { "encodedID", "lppe.encodedID",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_65535", HFILL }},
    { &hf_lppe_visibleIdentification,
      { "visibleIdentification", "lppe.visibleIdentification",
        FT_STRING, BASE_NONE, NULL, 0,
        "OMA_LPPe_CharArray", HFILL }},
    { &hf_lppe_apMacAddress,
      { "apMacAddress", "lppe.apMacAddress",
        FT_BYTES, BASE_NONE, NULL, 0,
        "BIT_STRING_SIZE_48", HFILL }},
    { &hf_lppe_truncation,
      { "truncation", "lppe.truncation",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M127_128", HFILL }},
    { &hf_lppe_areaType,
      { "areaType", "lppe.areaType",
        FT_UINT32, BASE_DEC, VALS(lppe_T_areaType_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_componentList,
      { "componentList", "lppe.componentList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_16_OF_OMA_LPPe_WLANFemtoCoverageAreaElement", HFILL }},
    { &hf_lppe_componentList_item,
      { "OMA-LPPe-WLANFemtoCoverageAreaElement", "lppe.OMA_LPPe_WLANFemtoCoverageAreaElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_refPointAndArea,
      { "refPointAndArea", "lppe.refPointAndArea_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_referenceLocation,
      { "referenceLocation", "lppe.referenceLocation",
        FT_UINT32, BASE_DEC, VALS(lppe_T_referenceLocation_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_referencePoint,
      { "referencePoint", "lppe.referencePoint_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ReferencePointUniqueID", HFILL }},
    { &hf_lppe_locationAndArea,
      { "locationAndArea", "lppe.locationAndArea_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_RelativeLocation", HFILL }},
    { &hf_lppe_type,
      { "type", "lppe.type",
        FT_UINT32, BASE_DEC, VALS(lppe_T_type_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_weight,
      { "weight", "lppe.weight",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_100", HFILL }},
    { &hf_lppe_iP_Address_RequestCapabilities,
      { "iP-Address-RequestCapabilities", "lppe.iP_Address_RequestCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_IP_Address_RequestCapabilities", HFILL }},
    { &hf_lppe_assistanceContainerSupportReq,
      { "assistanceContainerSupportReq", "lppe.assistanceContainerSupportReq_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AssistanceContainerSupportReq", HFILL }},
    { &hf_lppe_locationInformationContainerSupportReq,
      { "locationInformationContainerSupportReq", "lppe.locationInformationContainerSupportReq_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_LocationInformationContainerSupportReq", HFILL }},
    { &hf_lppe_relativeLocationChange_RequestCapabilities,
      { "relativeLocationChange-RequestCapabilities", "lppe.relativeLocationChange_RequestCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_RelativeLocationChange_RequestCapabilities", HFILL }},
    { &hf_lppe_highAccuracyFormatCapabilitiesReq,
      { "highAccuracyFormatCapabilitiesReq", "lppe.highAccuracyFormatCapabilitiesReq_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_HighAccuracyFormatCapabilitiesReq", HFILL }},
    { &hf_lppe_segmentedAssistanceData_ReqCapabilities,
      { "segmentedAssistanceData-ReqCapabilities", "lppe.segmentedAssistanceData_ReqCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SegmentedAssistanceData_ReqCapabilities", HFILL }},
    { &hf_lppe_referencePointCapabilitiesReq,
      { "referencePointCapabilitiesReq", "lppe.referencePointCapabilitiesReq_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ReferencePointCapabilitiesReq", HFILL }},
    { &hf_lppe_scheduledLocation_RequestCapabilities,
      { "scheduledLocation-RequestCapabilities", "lppe.scheduledLocation_RequestCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ScheduledLocation_RequestCapabilities", HFILL }},
    { &hf_lppe_accessCapabilitiesReq,
      { "accessCapabilitiesReq", "lppe.accessCapabilitiesReq_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AccessCapabilitiesReq", HFILL }},
    { &hf_lppe_segmentedLocationInformation_ReqCapabilities,
      { "segmentedLocationInformation-ReqCapabilities", "lppe.segmentedLocationInformation_ReqCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SegmentedLocationInformation_ReqCapabilities", HFILL }},
    { &hf_lppe_vendorOrOperatorIDList,
      { "vendorOrOperatorIDList", "lppe.vendorOrOperatorIDList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_VendorOrOperatorIDList", HFILL }},
    { &hf_lppe_OMA_LPPe_VendorOrOperatorIDList_item,
      { "OMA-LPPe-VendorOrOperatorID", "lppe.OMA_LPPe_VendorOrOperatorID",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_VendorOrOperatorID_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_referencePointProviderSupportListReq,
      { "referencePointProviderSupportListReq", "lppe.referencePointProviderSupportListReq",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_128_OF_OMA_LPPe_VendorOrOperatorID", HFILL }},
    { &hf_lppe_referencePointProviderSupportListReq_item,
      { "OMA-LPPe-VendorOrOperatorID", "lppe.OMA_LPPe_VendorOrOperatorID",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_VendorOrOperatorID_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_iP_Address_Capabilities,
      { "iP-Address-Capabilities", "lppe.iP_Address_Capabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_IP_Address_Capabilities", HFILL }},
    { &hf_lppe_assistanceContainerSupport,
      { "assistanceContainerSupport", "lppe.assistanceContainerSupport",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_AssistanceContainerSupport", HFILL }},
    { &hf_lppe_locationInformationContainerSupport,
      { "locationInformationContainerSupport", "lppe.locationInformationContainerSupport",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_LocationInformationContainerSupport", HFILL }},
    { &hf_lppe_relativeLocationChange_Capabilities,
      { "relativeLocationChange-Capabilities", "lppe.relativeLocationChange_Capabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_RelativeLocationChange_Capabilities", HFILL }},
    { &hf_lppe_highAccuracyFormatCapabilities,
      { "highAccuracyFormatCapabilities", "lppe.highAccuracyFormatCapabilities",
        FT_BYTES, BASE_NONE, NULL, 0,
        "OMA_LPPe_HighAccuracyFormatCapabilities", HFILL }},
    { &hf_lppe_segmentedAssistanceData_ProvideCapabs,
      { "segmentedAssistanceData-ProvideCapabs", "lppe.segmentedAssistanceData_ProvideCapabs_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SegmentedAssistanceData_ProvideCapabs", HFILL }},
    { &hf_lppe_referencePointCapabilities,
      { "referencePointCapabilities", "lppe.referencePointCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ReferencePointCapabilities", HFILL }},
    { &hf_lppe_scheduledLocation_Capabilities,
      { "scheduledLocation-Capabilities", "lppe.scheduledLocation_Capabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ScheduledLocation_Capabilities", HFILL }},
    { &hf_lppe_accessCapabilities,
      { "accessCapabilities", "lppe.accessCapabilities_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AccessCapabilities", HFILL }},
    { &hf_lppe_segmentedLocationInformation_ProvideCapabs,
      { "segmentedLocationInformation-ProvideCapabs", "lppe.segmentedLocationInformation_ProvideCapabs_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SegmentedLocationInformation_ProvideCapabs", HFILL }},
    { &hf_lppe_iP_Address_support,
      { "iP-Address-support", "lppe.iP_Address_support",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_OMA_LPPe_AssistanceContainerSupport_item,
      { "OMA-LPPe-VendorOrOperatorAssistanceContainerList", "lppe.OMA_LPPe_VendorOrOperatorAssistanceContainerList_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_assistanceContainerList,
      { "assistanceContainerList", "lppe.assistanceContainerList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_AssistanceContainerList", HFILL }},
    { &hf_lppe_OMA_LPPe_AssistanceContainerList_item,
      { "OMA-LPPe-AssistanceContainerID", "lppe.OMA_LPPe_AssistanceContainerID_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_OMA_LPPe_LocationInformationContainerSupport_item,
      { "OMA-LPPe-VendorOrOperatorLocationInformationContainerList", "lppe.OMA_LPPe_VendorOrOperatorLocationInformationContainerList_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_locationInformationContainerList,
      { "locationInformationContainerList", "lppe.locationInformationContainerList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_LocationInformationContainerList", HFILL }},
    { &hf_lppe_OMA_LPPe_LocationInformationContainerList_item,
      { "OMA-LPPe-LocationInformationContainerID", "lppe.OMA_LPPe_LocationInformationContainerID_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_numberOfChanges,
      { "numberOfChanges", "lppe.numberOfChanges",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_5", HFILL }},
    { &hf_lppe_maxSegments,
      { "maxSegments", "lppe.maxSegments",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_2_4096", HFILL }},
    { &hf_lppe_maxSize,
      { "maxSize", "lppe.maxSize",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_5000", HFILL }},
    { &hf_lppe_minSize,
      { "minSize", "lppe.minSize",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_5000", HFILL }},
    { &hf_lppe_resume,
      { "resume", "lppe.resume_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_relativeLocationReportingSupport,
      { "relativeLocationReportingSupport", "lppe.relativeLocationReportingSupport",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_referencePointProviderSupportList,
      { "referencePointProviderSupportList", "lppe.referencePointProviderSupportList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_128_OF_OMA_LPPe_ReferencePointProviderSupportElement", HFILL }},
    { &hf_lppe_referencePointProviderSupportList_item,
      { "OMA-LPPe-ReferencePointProviderSupportElement", "lppe.OMA_LPPe_ReferencePointProviderSupportElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_referencePointProvider,
      { "referencePointProvider", "lppe.referencePointProvider",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_VendorOrOperatorID_vals), 0,
        "OMA_LPPe_VendorOrOperatorID", HFILL }},
    { &hf_lppe_mapDataSupport,
      { "mapDataSupport", "lppe.mapDataSupport_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_mapDataFormat,
      { "mapDataFormat", "lppe.mapDataFormat",
        FT_BYTES, BASE_NONE, NULL, 0,
        "OCTET_STRING", HFILL }},
    { &hf_lppe_minimumWindow,
      { "minimumWindow", "lppe.minimumWindow",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_1024", HFILL }},
    { &hf_lppe_gnssTimeReference,
      { "gnssTimeReference", "lppe.gnssTimeReference_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "GNSS_ID_Bitmap", HFILL }},
    { &hf_lppe_networkTimeReference,
      { "networkTimeReference", "lppe.networkTimeReference",
        FT_UINT32, BASE_DEC, VALS(lppe_T_networkTimeReference_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_accessTypeUnknown,
      { "accessTypeUnknown", "lppe.accessTypeUnknown_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_fixedAccessTypes,
      { "fixedAccessTypes", "lppe.fixedAccessTypes",
        FT_BYTES, BASE_NONE, NULL, 0,
        "OMA_LPPe_FixedAccessTypes", HFILL }},
    { &hf_lppe_wirelessAccessTypes,
      { "wirelessAccessTypes", "lppe.wirelessAccessTypes",
        FT_BYTES, BASE_NONE, NULL, 0,
        "OMA_LPPe_WirelessAccessTypes", HFILL }},
    { &hf_lppe_approximate_location,
      { "approximate-location", "lppe.approximate_location_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "EllipsoidPointWithAltitudeAndUncertaintyEllipsoid", HFILL }},
    { &hf_lppe_assistanceContainerRequestList,
      { "assistanceContainerRequestList", "lppe.assistanceContainerRequestList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_AssistanceContainerRequestList", HFILL }},
    { &hf_lppe_requestPeriodicADwithUpdate,
      { "requestPeriodicADwithUpdate", "lppe.requestPeriodicADwithUpdate_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_RequestPeriodicADwithUpdate", HFILL }},
    { &hf_lppe_segmentedADpreference,
      { "segmentedADpreference", "lppe.segmentedADpreference",
        FT_UINT32, BASE_DEC, VALS(lppe_T_segmentedADpreference_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_segmentedADResume,
      { "segmentedADResume", "lppe.segmentedADResume_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SegmentedADResume", HFILL }},
    { &hf_lppe_referencePointAssistanceReq,
      { "referencePointAssistanceReq", "lppe.referencePointAssistanceReq_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ReferencePointAssistanceReq", HFILL }},
    { &hf_lppe_periodicAD_session_ID,
      { "periodicAD-session-ID", "lppe.periodicAD_session_ID",
        FT_BYTES, BASE_NONE, NULL, 0,
        "OCTET_STRING_SIZE_4", HFILL }},
    { &hf_lppe_typeOfADRequest,
      { "typeOfADRequest", "lppe.typeOfADRequest",
        FT_UINT32, BASE_DEC, VALS(lppe_TypeOfADRequest_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_segmentedAD_session_ID,
      { "segmentedAD-session-ID", "lppe.segmentedAD_session_ID_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_Session_ID", HFILL }},
    { &hf_lppe_next_segment_number,
      { "next-segment-number", "lppe.next_segment_number",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_4096", HFILL }},
    { &hf_lppe_referencePointReq,
      { "referencePointReq", "lppe.referencePointReq",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_16_OF_OMA_LPPe_ReferencePointAssistanceReqElement", HFILL }},
    { &hf_lppe_referencePointReq_item,
      { "OMA-LPPe-ReferencePointAssistanceReqElement", "lppe.OMA_LPPe_ReferencePointAssistanceReqElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_mapDataReq,
      { "mapDataReq", "lppe.mapDataReq",
        FT_BYTES, BASE_NONE, NULL, 0,
        "OCTET_STRING", HFILL }},
    { &hf_lppe_assistanceContainerList_01,
      { "assistanceContainerList", "lppe.assistanceContainerList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_AssistanceContainerProvideList", HFILL }},
    { &hf_lppe_providePeriodicADwithUpdate,
      { "providePeriodicADwithUpdate", "lppe.providePeriodicADwithUpdate_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ProvidePeriodicADwithUpdate", HFILL }},
    { &hf_lppe_segmentedADTransfer,
      { "segmentedADTransfer", "lppe.segmentedADTransfer_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SegmentedADTransfer", HFILL }},
    { &hf_lppe_default_reference_point,
      { "default-reference-point", "lppe.default_reference_point_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ReferencePoint", HFILL }},
    { &hf_lppe_typeOfADProvide,
      { "typeOfADProvide", "lppe.typeOfADProvide",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_TypeOfADProvide_vals), 0,
        "OMA_LPPe_TypeOfADProvide", HFILL }},
    { &hf_lppe_segment_number,
      { "segment-number", "lppe.segment_number",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_4096", HFILL }},
    { &hf_lppe_iP_Address_Request,
      { "iP-Address-Request", "lppe.iP_Address_Request_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_IP_Address_Request", HFILL }},
    { &hf_lppe_locationInformationContainerRequest,
      { "locationInformationContainerRequest", "lppe.locationInformationContainerRequest_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_LocationInformationContainerRequest", HFILL }},
    { &hf_lppe_requestPeriodicLocInfoWithUpdate,
      { "requestPeriodicLocInfoWithUpdate", "lppe.requestPeriodicLocInfoWithUpdate_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_RequestPeriodicLocInfoWithUpdate", HFILL }},
    { &hf_lppe_relativeLocationChange_Request,
      { "relativeLocationChange-Request", "lppe.relativeLocationChange_Request_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_RelativeLocationChange_Request", HFILL }},
    { &hf_lppe_localPositionRequest,
      { "localPositionRequest", "lppe.localPositionRequest_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_LocalPositionRequest", HFILL }},
    { &hf_lppe_scheduledLocation_Request,
      { "scheduledLocation-Request", "lppe.scheduledLocation_Request_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ScheduledLocation_Request", HFILL }},
    { &hf_lppe_accessTypeRequest,
      { "accessTypeRequest", "lppe.accessTypeRequest_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AccessTypeRequest", HFILL }},
    { &hf_lppe_segmentedLIpreference,
      { "segmentedLIpreference", "lppe.segmentedLIpreference",
        FT_UINT32, BASE_DEC, VALS(lppe_T_segmentedLIpreference_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_segmentedLIResume,
      { "segmentedLIResume", "lppe.segmentedLIResume_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SegmentedLIResume", HFILL }},
    { &hf_lppe_civicLocation_Request,
      { "civicLocation-Request", "lppe.civicLocation_Request_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_CivicLocation_Request", HFILL }},
    { &hf_lppe_typeOfLocInfoRequest,
      { "typeOfLocInfoRequest", "lppe.typeOfLocInfoRequest",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_TypeOfLocInfoRequest_vals), 0,
        "OMA_LPPe_TypeOfLocInfoRequest", HFILL }},
    { &hf_lppe_typeOfRequest,
      { "typeOfRequest", "lppe.typeOfRequest",
        FT_UINT32, BASE_DEC, VALS(lppe_T_typeOfRequest_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_referencePointReq_01,
      { "referencePointReq", "lppe.referencePointReq",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointUniqueID", HFILL }},
    { &hf_lppe_referencePointReq_item_01,
      { "OMA-LPPe-ReferencePointUniqueID", "lppe.OMA_LPPe_ReferencePointUniqueID_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_gnssTime,
      { "gnssTime", "lppe.gnssTime_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "GNSS_SystemTime", HFILL }},
    { &hf_lppe_networkTime,
      { "networkTime", "lppe.networkTime_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_relativeTime,
      { "relativeTime", "lppe.relativeTime",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_1024", HFILL }},
    { &hf_lppe_windowSize,
      { "windowSize", "lppe.windowSize",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_1024", HFILL }},
    { &hf_lppe_segmentedLI_session_ID,
      { "segmentedLI-session-ID", "lppe.segmentedLI_session_ID",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_256", HFILL }},
    { &hf_lppe_format,
      { "format", "lppe.format",
        FT_UINT32, BASE_DEC, VALS(lppe_T_format_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_highAccuracy3Dposition,
      { "highAccuracy3Dposition", "lppe.highAccuracy3Dposition_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_HighAccuracy3Dposition", HFILL }},
    { &hf_lppe_localPosition,
      { "localPosition", "lppe.localPosition_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_LocalPosition", HFILL }},
    { &hf_lppe_highAccuracy3Dvelocity,
      { "highAccuracy3Dvelocity", "lppe.highAccuracy3Dvelocity_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_HighAccuracy3Dvelocity", HFILL }},
    { &hf_lppe_iP_Address_List,
      { "iP-Address-List", "lppe.iP_Address_List",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_IP_Address_List", HFILL }},
    { &hf_lppe_locationInformationContainer,
      { "locationInformationContainer", "lppe.locationInformationContainer_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_LocationInformationContainer", HFILL }},
    { &hf_lppe_providePeriodicLocInfoWithUpdate,
      { "providePeriodicLocInfoWithUpdate", "lppe.providePeriodicLocInfoWithUpdate_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ProvidePeriodicLocInfowithUpdate", HFILL }},
    { &hf_lppe_relativeLocationChangeList,
      { "relativeLocationChangeList", "lppe.relativeLocationChangeList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_RelativeLocationChangeList", HFILL }},
    { &hf_lppe_scheduledLocation,
      { "scheduledLocation", "lppe.scheduledLocation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ScheduledLocation", HFILL }},
    { &hf_lppe_accessTypes,
      { "accessTypes", "lppe.accessTypes_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AccessTypes", HFILL }},
    { &hf_lppe_segmentedLITransfer,
      { "segmentedLITransfer", "lppe.segmentedLITransfer_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SegmentedLITransfer", HFILL }},
    { &hf_lppe_locationInformationTimeStamp,
      { "locationInformationTimeStamp", "lppe.locationInformationTimeStamp",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_TimeStamp_vals), 0,
        "OMA_LPPe_TimeStamp", HFILL }},
    { &hf_lppe_locationSource,
      { "locationSource", "lppe.locationSource_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_LocationSource", HFILL }},
    { &hf_lppe_civicLocation_pidf_lo,
      { "civicLocation-pidf-lo", "lppe.civicLocation_pidf_lo_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_CivicLocation_pidf_lo", HFILL }},
    { &hf_lppe_subjectLocation,
      { "subjectLocation", "lppe.subjectLocation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_RelativeLocation", HFILL }},
    { &hf_lppe_OMA_LPPe_IP_Address_List_item,
      { "OMA-LPPe-IP-Address", "lppe.OMA_LPPe_IP_Address_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_local_IP_Address,
      { "local-IP-Address", "lppe.local_IP_Address",
        FT_UINT32, BASE_DEC, VALS(lppe_T_local_IP_Address_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_iPv4,
      { "iPv4", "lppe.iPv4",
        FT_BYTES, BASE_NONE, NULL, 0,
        "BIT_STRING_SIZE_32", HFILL }},
    { &hf_lppe_iPv6,
      { "iPv6", "lppe.iPv6",
        FT_BYTES, BASE_NONE, NULL, 0,
        "BIT_STRING_SIZE_128", HFILL }},
    { &hf_lppe_bearer,
      { "bearer", "lppe.bearer",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_Bearer_vals), 0,
        "OMA_LPPe_Bearer", HFILL }},
    { &hf_lppe_nat,
      { "nat", "lppe.nat",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_typeOfLocInfoProvide,
      { "typeOfLocInfoProvide", "lppe.typeOfLocInfoProvide",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_TypeOfLocInfoProvide_vals), 0,
        "OMA_LPPe_TypeOfLocInfoProvide", HFILL }},
    { &hf_lppe_OMA_LPPe_RelativeLocationChangeList_item,
      { "OMA-LPPe-RelativeLocationChange", "lppe.OMA_LPPe_RelativeLocationChange_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_relativeTime_01,
      { "relativeTime", "lppe.relativeTime",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_65535", HFILL }},
    { &hf_lppe_transactionID,
      { "transactionID", "lppe.transactionID",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_255", HFILL }},
    { &hf_lppe_disposition,
      { "disposition", "lppe.disposition",
        FT_UINT32, BASE_DEC, VALS(lppe_T_disposition_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_actualWindow,
      { "actualWindow", "lppe.actualWindow_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_start,
      { "start", "lppe.start",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M512_511", HFILL }},
    { &hf_lppe_duration_02,
      { "duration", "lppe.duration",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_2047", HFILL }},
    { &hf_lppe_relativeTime_02,
      { "relativeTime", "lppe.relativeTime",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_1024", HFILL }},
    { &hf_lppe_agnss,
      { "agnss", "lppe.agnss_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_otdoa,
      { "otdoa", "lppe.otdoa_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_eotd,
      { "eotd", "lppe.eotd_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_otdoaUTRA,
      { "otdoaUTRA", "lppe.otdoaUTRA_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ecidLTE,
      { "ecidLTE", "lppe.ecidLTE_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ecidGSM,
      { "ecidGSM", "lppe.ecidGSM_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ecidUTRA,
      { "ecidUTRA", "lppe.ecidUTRA_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_wlanAP,
      { "wlanAP", "lppe.wlanAP_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_srn,
      { "srn", "lppe.srn_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_sensors,
      { "sensors", "lppe.sensors_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_nr_dl_tdoa,
      { "nr-dl-tdoa", "lppe.nr_dl_tdoa_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_nr_dl_aod,
      { "nr-dl-aod", "lppe.nr_dl_aod_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ecidNR,
      { "ecidNR", "lppe.ecidNR_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_bt,
      { "bt", "lppe.bt_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_mbs,
      { "mbs", "lppe.mbs_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_baro_sensor,
      { "baro-sensor", "lppe.baro_sensor_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_motion_sensor,
      { "motion-sensor", "lppe.motion_sensor_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_abortCause,
      { "abortCause", "lppe.abortCause",
        FT_UINT32, BASE_DEC, VALS(lppe_T_abortCause_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_periodicSessionIDtoAbort,
      { "periodicSessionIDtoAbort", "lppe.periodicSessionIDtoAbort",
        FT_BYTES, BASE_NONE, NULL, 0,
        "OCTET_STRING_SIZE_4", HFILL }},
    { &hf_lppe_commonAssistData,
      { "commonAssistData", "lppe.commonAssistData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_CommonAssistData", HFILL }},
    { &hf_lppe_genericAssistData,
      { "genericAssistData", "lppe.genericAssistData",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_AGNSS_GenericAssistData", HFILL }},
    { &hf_lppe_error_01,
      { "error", "lppe.error",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_AGNSS_Error_vals), 0,
        "OMA_LPPe_AGNSS_Error", HFILL }},
    { &hf_lppe_ionosphericModel,
      { "ionosphericModel", "lppe.ionosphericModel",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_AGNSS_IonosphericModel_vals), 0,
        "OMA_LPPe_AGNSS_IonosphericModel", HFILL }},
    { &hf_lppe_troposphereModel,
      { "troposphereModel", "lppe.troposphereModel_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_TroposphereModel", HFILL }},
    { &hf_lppe_altitudeAssistance,
      { "altitudeAssistance", "lppe.altitudeAssistance",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_AGNSS_AltitudeAssistanceList", HFILL }},
    { &hf_lppe_solarRadiation,
      { "solarRadiation", "lppe.solarRadiation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_SolarRadiation", HFILL }},
    { &hf_lppe_ccpAssistCommonProvide,
      { "ccpAssistCommonProvide", "lppe.ccpAssistCommonProvide",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_AGNSS_CCPassistCommonProvide_vals), 0,
        "OMA_LPPe_AGNSS_CCPassistCommonProvide", HFILL }},
    { &hf_lppe_OMA_LPPe_AGNSS_GenericAssistData_item,
      { "OMA-LPPe-AGNSS-GenericAssistDataElement", "lppe.OMA_LPPe_AGNSS_GenericAssistDataElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_gnss_ID,
      { "gnss-ID", "lppe.gnss_ID_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_wideAreaIonoSurfacePerSVlist,
      { "wideAreaIonoSurfacePerSVlist", "lppe.wideAreaIonoSurfacePerSVlist",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVlist", HFILL }},
    { &hf_lppe_mechanicsForAllSVs,
      { "mechanicsForAllSVs", "lppe.mechanicsForAllSVs",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_AGNSS_MechanicsForAllSVs", HFILL }},
    { &hf_lppe_dcbsForAllSVs,
      { "dcbsForAllSVs", "lppe.dcbsForAllSVs",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_AGNSS_DCBsForAllSVs", HFILL }},
    { &hf_lppe_navModelDegradationModel,
      { "navModelDegradationModel", "lppe.navModelDegradationModel",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_AGNSS_NavModelDegradationModelList", HFILL }},
    { &hf_lppe_ccpAssistProvide,
      { "ccpAssistProvide", "lppe.ccpAssistProvide",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_AGNSS_CCPassistGenericProvide", HFILL }},
    { &hf_lppe_navModelList,
      { "navModelList", "lppe.navModelList_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_NavModelList", HFILL }},
    { &hf_lppe_staticModels,
      { "staticModels", "lppe.staticModels_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_localKlobucharModelList,
      { "localKlobucharModelList", "lppe.localKlobucharModelList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_AGNSS_LocalKlobucharModelList", HFILL }},
    { &hf_lppe_ionoStormIndication,
      { "ionoStormIndication", "lppe.ionoStormIndication_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_IonoStormIndication", HFILL }},
    { &hf_lppe_waIono,
      { "waIono", "lppe.waIono",
        FT_UINT32, BASE_DEC, VALS(lppe_T_waIono_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_controlParameters,
      { "controlParameters", "lppe.controlParameters_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersProvide", HFILL }},
    { &hf_lppe_commonProvide,
      { "commonProvide", "lppe.commonProvide_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_WideAreaIonoSurfaceCommon", HFILL }},
    { &hf_lppe_OMA_LPPe_AGNSS_LocalKlobucharModelList_item,
      { "OMA-LPPe-AGNSS-LocalKlobucharModelElement", "lppe.OMA_LPPe_AGNSS_LocalKlobucharModelElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_klobucharModel,
      { "klobucharModel", "lppe.klobucharModel",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalKlobucharModel", HFILL }},
    { &hf_lppe_klobucharModel_item,
      { "OMA-LPPe-AGNSS-LocalKlobucharModel", "lppe.OMA_LPPe_AGNSS_LocalKlobucharModel_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_alfa0,
      { "alfa0", "lppe.alfa0",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M128_127", HFILL }},
    { &hf_lppe_alfa1,
      { "alfa1", "lppe.alfa1",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M128_127", HFILL }},
    { &hf_lppe_alfa2,
      { "alfa2", "lppe.alfa2",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M128_127", HFILL }},
    { &hf_lppe_alfa3,
      { "alfa3", "lppe.alfa3",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M128_127", HFILL }},
    { &hf_lppe_beta0,
      { "beta0", "lppe.beta0",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M128_127", HFILL }},
    { &hf_lppe_beta1,
      { "beta1", "lppe.beta1",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M128_127", HFILL }},
    { &hf_lppe_beta2,
      { "beta2", "lppe.beta2",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M128_127", HFILL }},
    { &hf_lppe_beta3,
      { "beta3", "lppe.beta3",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M128_127", HFILL }},
    { &hf_lppe_area,
      { "area", "lppe.area_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ValidityArea", HFILL }},
    { &hf_lppe_stormList,
      { "stormList", "lppe.stormList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_AGNSS_StormList", HFILL }},
    { &hf_lppe_OMA_LPPe_AGNSS_StormList_item,
      { "OMA-LPPe-AGNSS-StormElement", "lppe.OMA_LPPe_AGNSS_StormElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_rleListIono,
      { "rleListIono", "lppe.rleListIono",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_AGNSS_RleListIono", HFILL }},
    { &hf_lppe_OMA_LPPe_AGNSS_RleListIono_item,
      { "OMA-LPPe-AGNSS-RleIonoElement", "lppe.OMA_LPPe_AGNSS_RleIonoElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_regionCount,
      { "regionCount", "lppe.regionCount",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_255", HFILL }},
    { &hf_lppe_ionoIndex,
      { "ionoIndex", "lppe.ionoIndex",
        FT_UINT32, BASE_DEC, VALS(lppe_T_ionoIndex_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_noaaScales,
      { "noaaScales", "lppe.noaaScales",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_AGNSS_NoaaScales_vals), 0,
        "OMA_LPPe_AGNSS_NoaaScales", HFILL }},
    { &hf_lppe_duration_03,
      { "duration", "lppe.duration_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_Duration", HFILL }},
    { &hf_lppe_rate,
      { "rate", "lppe.rate",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_64", HFILL }},
    { &hf_lppe_referencePosition,
      { "referencePosition", "lppe.referencePosition_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "Ellipsoid_Point", HFILL }},
    { &hf_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVlist_item,
      { "OMA-LPPe-AGNSS-WideAreaIonoSurfacePerSVelement", "lppe.OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVelement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_svID,
      { "svID", "lppe.svID_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "SV_ID", HFILL }},
    { &hf_lppe_a0,
      { "a0", "lppe.a0",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_8191", HFILL }},
    { &hf_lppe_e1,
      { "e1", "lppe.e1",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M4096_4095", HFILL }},
    { &hf_lppe_n1,
      { "n1", "lppe.n1",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M4096_4095", HFILL }},
    { &hf_lppe_e2,
      { "e2", "lppe.e2",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M4096_4095", HFILL }},
    { &hf_lppe_n2,
      { "n2", "lppe.n2",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M4096_4095", HFILL }},
    { &hf_lppe_en,
      { "en", "lppe.en",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M4096_4095", HFILL }},
    { &hf_lppe_troposphereDelayList,
      { "troposphereDelayList", "lppe.troposphereDelayList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_AGNSS_LocalTroposphereDelayList", HFILL }},
    { &hf_lppe_surfaceParametersList,
      { "surfaceParametersList", "lppe.surfaceParametersList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_AGNSS_LocalSurfaceParametersList", HFILL }},
    { &hf_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayList_item,
      { "OMA-LPPe-AGNSS-LocalTroposphereDelayAreaElement", "lppe.OMA_LPPe_AGNSS_LocalTroposphereDelayAreaElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_refAltitude,
      { "refAltitude", "lppe.refAltitude",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M1000_8192", HFILL }},
    { &hf_lppe_gradientReferencePosition,
      { "gradientReferencePosition", "lppe.gradientReferencePosition_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "Ellipsoid_Point", HFILL }},
    { &hf_lppe_delayList,
      { "delayList", "lppe.delayList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement", HFILL }},
    { &hf_lppe_delayList_item,
      { "OMA-LPPe-AGNSS-LocalTroposphereDelayTimeElement", "lppe.OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_zh0,
      { "zh0", "lppe.zh0",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_4095", HFILL }},
    { &hf_lppe_eh,
      { "eh", "lppe.eh",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_4095", HFILL }},
    { &hf_lppe_zw0,
      { "zw0", "lppe.zw0",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_4095", HFILL }},
    { &hf_lppe_ew,
      { "ew", "lppe.ew",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_4095", HFILL }},
    { &hf_lppe_gN,
      { "gN", "lppe.gN",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M8192_8191", HFILL }},
    { &hf_lppe_gE,
      { "gE", "lppe.gE",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M8192_8191", HFILL }},
    { &hf_lppe_mappingFunctionParameters,
      { "mappingFunctionParameters", "lppe.mappingFunctionParameters_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_MappingFunctionParameters", HFILL }},
    { &hf_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersList_item,
      { "OMA-LPPe-AGNSS-LocalSurfaceParametersAreaElement", "lppe.OMA_LPPe_AGNSS_LocalSurfaceParametersAreaElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_parameterList,
      { "parameterList", "lppe.parameterList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement", HFILL }},
    { &hf_lppe_parameterList_item,
      { "OMA-LPPe-AGNSS-LocalSurfaceParametersTimeElement", "lppe.OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_pressure,
      { "pressure", "lppe.pressure",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M1024_1023", HFILL }},
    { &hf_lppe_pressureRate,
      { "pressureRate", "lppe.pressureRate",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M128_127", HFILL }},
    { &hf_lppe_gN_pressure,
      { "gN-pressure", "lppe.gN_pressure",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M128_127", HFILL }},
    { &hf_lppe_gE_pressure,
      { "gE-pressure", "lppe.gE_pressure",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M128_127", HFILL }},
    { &hf_lppe_temperature,
      { "temperature", "lppe.temperature",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M64_63", HFILL }},
    { &hf_lppe_temperatureRate,
      { "temperatureRate", "lppe.temperatureRate",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M16_16", HFILL }},
    { &hf_lppe_gN_temperature,
      { "gN-temperature", "lppe.gN_temperature",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M8_7", HFILL }},
    { &hf_lppe_gE_temperature,
      { "gE-temperature", "lppe.gE_temperature",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M8_7", HFILL }},
    { &hf_lppe_ah,
      { "ah", "lppe.ah",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_16383", HFILL }},
    { &hf_lppe_bh,
      { "bh", "lppe.bh",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_16383", HFILL }},
    { &hf_lppe_ch,
      { "ch", "lppe.ch",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_16383", HFILL }},
    { &hf_lppe_aw,
      { "aw", "lppe.aw",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_16383", HFILL }},
    { &hf_lppe_bw,
      { "bw", "lppe.bw",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_16383", HFILL }},
    { &hf_lppe_cw,
      { "cw", "lppe.cw",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_16383", HFILL }},
    { &hf_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceList_item,
      { "OMA-LPPe-AGNSS-AltitudeAssistanceAreaElement", "lppe.OMA_LPPe_AGNSS_AltitudeAssistanceAreaElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_gradientReferencePosition_01,
      { "gradientReferencePosition", "lppe.gradientReferencePosition_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "EllipsoidPointWithAltitudeAndUncertaintyEllipsoid", HFILL }},
    { &hf_lppe_pressureAssistanceList,
      { "pressureAssistanceList", "lppe.pressureAssistanceList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_PressureAssistanceElement", HFILL }},
    { &hf_lppe_pressureAssistanceList_item,
      { "OMA-LPPe-AGNSS-PressureAssistanceElement", "lppe.OMA_LPPe_AGNSS_PressureAssistanceElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_gN_01,
      { "gN", "lppe.gN",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M128_127", HFILL }},
    { &hf_lppe_gE_01,
      { "gE", "lppe.gE",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M128_127", HFILL }},
    { &hf_lppe_solarRadiation_01,
      { "solarRadiation", "lppe.solarRadiation",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1000_2000", HFILL }},
    { &hf_lppe_OMA_LPPe_AGNSS_MechanicsForAllSVs_item,
      { "OMA-LPPe-AGNSS-MechanicsElement", "lppe.OMA_LPPe_AGNSS_MechanicsElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_svid,
      { "svid", "lppe.svid_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "SV_ID", HFILL }},
    { &hf_lppe_mass,
      { "mass", "lppe.mass",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_4095", HFILL }},
    { &hf_lppe_effectiveReflectivityArea,
      { "effectiveReflectivityArea", "lppe.effectiveReflectivityArea",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_511", HFILL }},
    { &hf_lppe_pco,
      { "pco", "lppe.pco_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_PCOelement", HFILL }},
    { &hf_lppe_svInfo,
      { "svInfo", "lppe.svInfo_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_svType,
      { "svType", "lppe.svType",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_AGNSS_SVtype_vals), 0,
        "OMA_LPPe_AGNSS_SVtype", HFILL }},
    { &hf_lppe_svNumber,
      { "svNumber", "lppe.svNumber",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_1000", HFILL }},
    { &hf_lppe_xOffsetSBF,
      { "xOffsetSBF", "lppe.xOffsetSBF",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M30000_30000", HFILL }},
    { &hf_lppe_yOffsetSBF,
      { "yOffsetSBF", "lppe.yOffsetSBF",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M30000_30000", HFILL }},
    { &hf_lppe_zOffsetSBF,
      { "zOffsetSBF", "lppe.zOffsetSBF",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M30000_30000", HFILL }},
    { &hf_lppe_OMA_LPPe_AGNSS_DCBsForAllSVs_item,
      { "OMA-LPPe-AGNSS-DCBlistElement", "lppe.OMA_LPPe_AGNSS_DCBlistElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_reference,
      { "reference", "lppe.reference_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_signal,
      { "signal", "lppe.signal_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "GNSS_SignalID", HFILL }},
    { &hf_lppe_pd,
      { "pd", "lppe.pd",
        FT_UINT32, BASE_DEC, VALS(lppe_T_pd_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_dcbList,
      { "dcbList", "lppe.dcbList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_AGNSS_DCBlist", HFILL }},
    { &hf_lppe_OMA_LPPe_AGNSS_DCBlist_item,
      { "OMA-LPPe-AGNSS-DCBelement", "lppe.OMA_LPPe_AGNSS_DCBelement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_pd_01,
      { "pd", "lppe.pd",
        FT_UINT32, BASE_DEC, VALS(lppe_T_pd_01_vals), 0,
        "T_pd_01", HFILL }},
    { &hf_lppe_dcb,
      { "dcb", "lppe.dcb",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M4096_4095", HFILL }},
    { &hf_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelList_item,
      { "OMA-LPPe-AGNSS-NavModelDegradationModelElement", "lppe.OMA_LPPe_AGNSS_NavModelDegradationModelElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_clockDegradationModel,
      { "clockDegradationModel", "lppe.clockDegradationModel_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_ClockModelDegradationModel", HFILL }},
    { &hf_lppe_orbitDegradationModel,
      { "orbitDegradationModel", "lppe.orbitDegradationModel_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_OrbitModelDegradationModel", HFILL }},
    { &hf_lppe_clockRMS0,
      { "clockRMS0", "lppe.clockRMS0",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_31", HFILL }},
    { &hf_lppe_clockRMS1,
      { "clockRMS1", "lppe.clockRMS1",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_7", HFILL }},
    { &hf_lppe_orbitRMS0,
      { "orbitRMS0", "lppe.orbitRMS0",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_31", HFILL }},
    { &hf_lppe_orbitRMS1,
      { "orbitRMS1", "lppe.orbitRMS1",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_7", HFILL }},
    { &hf_lppe_ccpProvideCommonParameters,
      { "ccpProvideCommonParameters", "lppe.ccpProvideCommonParameters_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_CCPprovideCommonParameters", HFILL }},
    { &hf_lppe_ccpProvideControlParameters,
      { "ccpProvideControlParameters", "lppe.ccpProvideControlParameters_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_CCPprovideControlParameters", HFILL }},
    { &hf_lppe_ccpReferenceTime,
      { "ccpReferenceTime", "lppe.ccpReferenceTime_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "GNSS_SystemTime", HFILL }},
    { &hf_lppe_ccpSupportArea,
      { "ccpSupportArea", "lppe.ccpSupportArea_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_CCPsupportArea", HFILL }},
    { &hf_lppe_ccpNeighborList,
      { "ccpNeighborList", "lppe.ccpNeighborList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_AGNSS_CCPreferenceStationList", HFILL }},
    { &hf_lppe_ccpReferenceStationList,
      { "ccpReferenceStationList", "lppe.ccpReferenceStationList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_AGNSS_CCPreferenceStationList", HFILL }},
    { &hf_lppe_areaDescription,
      { "areaDescription", "lppe.areaDescription_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ValidityArea", HFILL }},
    { &hf_lppe_signalSupport,
      { "signalSupport", "lppe.signalSupport",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPsignalSupport", HFILL }},
    { &hf_lppe_signalSupport_item,
      { "OMA-LPPe-AGNSS-CCPsignalSupport", "lppe.OMA_LPPe_AGNSS_CCPsignalSupport_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_gnss,
      { "gnss", "lppe.gnss_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "GNSS_ID", HFILL }},
    { &hf_lppe_signals,
      { "signals", "lppe.signals_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "GNSS_SignalIDs", HFILL }},
    { &hf_lppe_OMA_LPPe_AGNSS_CCPreferenceStationList_item,
      { "OMA-LPPe-AGNSS-CCPreferenceStationElement", "lppe.OMA_LPPe_AGNSS_CCPreferenceStationElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_referenceStationID,
      { "referenceStationID", "lppe.referenceStationID_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_CCPreferenceStationID", HFILL }},
    { &hf_lppe_referenceStationLocation,
      { "referenceStationLocation", "lppe.referenceStationLocation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_HighAccuracy3Dposition", HFILL }},
    { &hf_lppe_antennaDescription,
      { "antennaDescription", "lppe.antennaDescription_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_AntennaDescription", HFILL }},
    { &hf_lppe_OMA_LPPe_AGNSS_CCPassistGenericProvide_item,
      { "OMA-LPPe-AGNSS-CCPassistGenericProvideElement", "lppe.OMA_LPPe_AGNSS_CCPassistGenericProvideElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ccpPerSignalList,
      { "ccpPerSignalList", "lppe.ccpPerSignalList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPperSignalElement", HFILL }},
    { &hf_lppe_ccpPerSignalList_item,
      { "OMA-LPPe-AGNSS-CCPperSignalElement", "lppe.OMA_LPPe_AGNSS_CCPperSignalElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_signal_ID,
      { "signal-ID", "lppe.signal_ID_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "GNSS_SignalID", HFILL }},
    { &hf_lppe_ccpPerSVlist,
      { "ccpPerSVlist", "lppe.ccpPerSVlist",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_CCPperSVelement", HFILL }},
    { &hf_lppe_ccpPerSVlist_item,
      { "OMA-LPPe-AGNSS-CCPperSVelement", "lppe.OMA_LPPe_AGNSS_CCPperSVelement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_integerCodePhase,
      { "integerCodePhase", "lppe.integerCodePhase",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_255", HFILL }},
    { &hf_lppe_codePhase,
      { "codePhase", "lppe.codePhase",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_14989622", HFILL }},
    { &hf_lppe_codePhaseError,
      { "codePhaseError", "lppe.codePhaseError",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_AGNSS_CodePhaseError_vals), 0,
        "OMA_LPPe_AGNSS_CodePhaseError", HFILL }},
    { &hf_lppe_phaseRangeDelta,
      { "phaseRangeDelta", "lppe.phaseRangeDelta",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M524288_524287", HFILL }},
    { &hf_lppe_phaseRangeRMSerror,
      { "phaseRangeRMSerror", "lppe.phaseRangeRMSerror",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_127", HFILL }},
    { &hf_lppe_lockIndicator,
      { "lockIndicator", "lppe.lockIndicator",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_codePhaseRMSError,
      { "codePhaseRMSError", "lppe.codePhaseRMSError",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_63", HFILL }},
    { &hf_lppe_cnr,
      { "cnr", "lppe.cnr",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_255", HFILL }},
    { &hf_lppe_coordinateBased,
      { "coordinateBased", "lppe.coordinateBased_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_NavModel_CoordinateBased", HFILL }},
    { &hf_lppe_fixedInterval,
      { "fixedInterval", "lppe.fixedInterval_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_interval,
      { "interval", "lppe.interval",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_30", HFILL }},
    { &hf_lppe_bases,
      { "bases", "lppe.bases_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_baseForPosVel,
      { "baseForPosVel", "lppe.baseForPosVel",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M100000000_100000000", HFILL }},
    { &hf_lppe_baseForCcRate,
      { "baseForCcRate", "lppe.baseForCcRate_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_NavModel_BigNumber", HFILL }},
    { &hf_lppe_referencedTo,
      { "referencedTo", "lppe.referencedTo",
        FT_UINT32, BASE_DEC, VALS(lppe_T_referencedTo_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_pointList,
      { "pointList", "lppe.pointList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_97_OF_OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement", HFILL }},
    { &hf_lppe_pointList_item,
      { "OMA-LPPe-AGNSS-NavModel-CoordinateBasedElement", "lppe.OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_time_of_record,
      { "time-of-record", "lppe.time_of_record_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "GNSS_SystemTime", HFILL }},
    { &hf_lppe_svIdList,
      { "svIdList", "lppe.svIdList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_NavModel_PVTelement", HFILL }},
    { &hf_lppe_svIdList_item,
      { "OMA-LPPe-AGNSS-NavModel-PVTelement", "lppe.OMA_LPPe_AGNSS_NavModel_PVTelement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_svClockOffset,
      { "svClockOffset", "lppe.svClockOffset_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_NavModel_BigNumber", HFILL }},
    { &hf_lppe_ecefPositionX,
      { "ecefPositionX", "lppe.ecefPositionX_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_NavModel_BigNumber", HFILL }},
    { &hf_lppe_ecefPositionY,
      { "ecefPositionY", "lppe.ecefPositionY_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_NavModel_BigNumber", HFILL }},
    { &hf_lppe_ecefPositionZ,
      { "ecefPositionZ", "lppe.ecefPositionZ_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_NavModel_BigNumber", HFILL }},
    { &hf_lppe_clockPosSTD,
      { "clockPosSTD", "lppe.clockPosSTD_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_NavModel_STDmatrix", HFILL }},
    { &hf_lppe_rateRecord,
      { "rateRecord", "lppe.rateRecord_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_svClockRate,
      { "svClockRate", "lppe.svClockRate_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_NavModel_BigNumber", HFILL }},
    { &hf_lppe_ecefVelocityX,
      { "ecefVelocityX", "lppe.ecefVelocityX_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_NavModel_BigNumber", HFILL }},
    { &hf_lppe_ecefVelocityY,
      { "ecefVelocityY", "lppe.ecefVelocityY_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_NavModel_BigNumber", HFILL }},
    { &hf_lppe_ecefVelocityZ,
      { "ecefVelocityZ", "lppe.ecefVelocityZ_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_NavModel_BigNumber", HFILL }},
    { &hf_lppe_clockRateVelSTD,
      { "clockRateVelSTD", "lppe.clockRateVelSTD_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_NavModel_STDmatrix", HFILL }},
    { &hf_lppe_msb,
      { "msb", "lppe.msb",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M1000000000_1000000000", HFILL }},
    { &hf_lppe_lsb,
      { "lsb", "lppe.lsb",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_100", HFILL }},
    { &hf_lppe_e11,
      { "e11", "lppe.e11",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_1000", HFILL }},
    { &hf_lppe_e22,
      { "e22", "lppe.e22",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_1000", HFILL }},
    { &hf_lppe_e33,
      { "e33", "lppe.e33",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_1000", HFILL }},
    { &hf_lppe_e44,
      { "e44", "lppe.e44",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_1000000", HFILL }},
    { &hf_lppe_e12,
      { "e12", "lppe.e12",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_10000000", HFILL }},
    { &hf_lppe_e13,
      { "e13", "lppe.e13",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_10000000", HFILL }},
    { &hf_lppe_e14,
      { "e14", "lppe.e14",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_10000000", HFILL }},
    { &hf_lppe_e23,
      { "e23", "lppe.e23",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_10000000", HFILL }},
    { &hf_lppe_e24,
      { "e24", "lppe.e24",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_10000000", HFILL }},
    { &hf_lppe_e34,
      { "e34", "lppe.e34",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_10000000", HFILL }},
    { &hf_lppe_commonAssistDataReq,
      { "commonAssistDataReq", "lppe.commonAssistDataReq_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_CommonAssistanceDataReq", HFILL }},
    { &hf_lppe_genericAssistDataReq,
      { "genericAssistDataReq", "lppe.genericAssistDataReq",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_AGNSS_GenericAssistanceDataReq", HFILL }},
    { &hf_lppe_ionosphericModelReq,
      { "ionosphericModelReq", "lppe.ionosphericModelReq",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_AGNSS_IonosphericModelReq_vals), 0,
        "OMA_LPPe_AGNSS_IonosphericModelReq", HFILL }},
    { &hf_lppe_troposphereModelReq,
      { "troposphereModelReq", "lppe.troposphereModelReq_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_TroposphereModelReq", HFILL }},
    { &hf_lppe_altitudeAssistanceReq,
      { "altitudeAssistanceReq", "lppe.altitudeAssistanceReq_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_AltitudeAssistanceReq", HFILL }},
    { &hf_lppe_solarRadiationRequest,
      { "solarRadiationRequest", "lppe.solarRadiationRequest_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_SolarRadiationReq", HFILL }},
    { &hf_lppe_ccpRequestControlParameters,
      { "ccpRequestControlParameters", "lppe.ccpRequestControlParameters_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_CCPrequestControlParameters", HFILL }},
    { &hf_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataReq_item,
      { "OMA-LPPe-AGNSS-GenericAssistDataReqElement", "lppe.OMA_LPPe_AGNSS_GenericAssistDataReqElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_waIonoSurfaceReq,
      { "waIonoSurfaceReq", "lppe.waIonoSurfaceReq_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_WaIonoSurfaceRequest", HFILL }},
    { &hf_lppe_mechanicsReq,
      { "mechanicsReq", "lppe.mechanicsReq_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_MechanicsReq", HFILL }},
    { &hf_lppe_dcbReq,
      { "dcbReq", "lppe.dcbReq_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_DCBreq", HFILL }},
    { &hf_lppe_navModelDegradationModelReq,
      { "navModelDegradationModelReq", "lppe.navModelDegradationModelReq_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_NavModelDegradationModelReq", HFILL }},
    { &hf_lppe_ccpAssistGenericReq,
      { "ccpAssistGenericReq", "lppe.ccpAssistGenericReq_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_CCPassistGenericReq", HFILL }},
    { &hf_lppe_navigationModelReq,
      { "navigationModelReq", "lppe.navigationModelReq_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_NavigationModelReq", HFILL }},
    { &hf_lppe_staticModels_01,
      { "staticModels", "lppe.staticModels_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "T_staticModels_01", HFILL }},
    { &hf_lppe_ionoreq,
      { "ionoreq", "lppe.ionoreq",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_requestBeginTime,
      { "requestBeginTime", "lppe.requestBeginTime_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "GNSS_SystemTime", HFILL }},
    { &hf_lppe_periodicModels,
      { "periodicModels", "lppe.periodicModels_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_waIonoSurface,
      { "waIonoSurface", "lppe.waIonoSurface_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersRequest", HFILL }},
    { &hf_lppe_troposphereModelReq_01,
      { "troposphereModelReq", "lppe.troposphereModelReq",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_supportForMultipleGridPoints,
      { "supportForMultipleGridPoints", "lppe.supportForMultipleGridPoints",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_reference_01,
      { "reference", "lppe.reference_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "T_reference_01", HFILL }},
    { &hf_lppe_pd_02,
      { "pd", "lppe.pd",
        FT_UINT32, BASE_DEC, VALS(lppe_T_pd_02_vals), 0,
        "T_pd_02", HFILL }},
    { &hf_lppe_massRequest,
      { "massRequest", "lppe.massRequest",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_effectiveReflectivityAreaRequest,
      { "effectiveReflectivityAreaRequest", "lppe.effectiveReflectivityAreaRequest",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_pcoRequest,
      { "pcoRequest", "lppe.pcoRequest",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_svInfoRequest,
      { "svInfoRequest", "lppe.svInfoRequest",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ccpSupportAreaRequest,
      { "ccpSupportAreaRequest", "lppe.ccpSupportAreaRequest_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ccpNeighborListRequest,
      { "ccpNeighborListRequest", "lppe.ccpNeighborListRequest_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ccpCommonRequest,
      { "ccpCommonRequest", "lppe.ccpCommonRequest_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_refStation,
      { "refStation", "lppe.refStation",
        FT_UINT32, BASE_DEC, VALS(lppe_T_refStation_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_posBasedReferenceStationRequest,
      { "posBasedReferenceStationRequest", "lppe.posBasedReferenceStationRequest_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_requestedReferenceStationLocation,
      { "requestedReferenceStationLocation", "lppe.requestedReferenceStationLocation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_HighAccuracy3Dposition", HFILL }},
    { &hf_lppe_qor,
      { "qor", "lppe.qor",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_AGNSS_QoR_vals), 0,
        "OMA_LPPe_AGNSS_QoR", HFILL }},
    { &hf_lppe_idBasedReferenceStationRequest,
      { "idBasedReferenceStationRequest", "lppe.idBasedReferenceStationRequest",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_AGNSS_ReferenceStationIDlist", HFILL }},
    { &hf_lppe_referenceStationKillList,
      { "referenceStationKillList", "lppe.referenceStationKillList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_AGNSS_ReferenceStationIDlist", HFILL }},
    { &hf_lppe_OMA_LPPe_AGNSS_ReferenceStationIDlist_item,
      { "OMA-LPPe-AGNSS-CCPreferenceStationID", "lppe.OMA_LPPe_AGNSS_CCPreferenceStationID_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ccpAssist_SignalsReq,
      { "ccpAssist-SignalsReq", "lppe.ccpAssist_SignalsReq_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "GNSS_SignalIDs", HFILL }},
    { &hf_lppe_navModelID_PrefList,
      { "navModelID-PrefList", "lppe.navModelID_PrefList",
        FT_UINT32, BASE_DEC, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_navModelID_PrefList_item,
      { "navModelID-PrefList item", "lppe.navModelID_PrefList_item",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_8", HFILL }},
    { &hf_lppe_highAccuracyReferenceTime,
      { "highAccuracyReferenceTime", "lppe.highAccuracyReferenceTime_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "GNSS_SystemTime", HFILL }},
    { &hf_lppe_highAccuracyMeasurements,
      { "highAccuracyMeasurements", "lppe.highAccuracyMeasurements",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_AGNSS_HAgnssProvide_vals), 0,
        "OMA_LPPe_AGNSS_HAgnssProvide", HFILL }},
    { &hf_lppe_ionosphereMeasurements,
      { "ionosphereMeasurements", "lppe.ionosphereMeasurements_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_IonosphereMeasurements", HFILL }},
    { &hf_lppe_localSurfaceMeasurements,
      { "localSurfaceMeasurements", "lppe.localSurfaceMeasurements_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_LocalSurfaceMeasurements", HFILL }},
    { &hf_lppe_controlParameters_01,
      { "controlParameters", "lppe.controlParameters_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_measurements,
      { "measurements", "lppe.measurements_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_position,
      { "position", "lppe.position_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "EllipsoidPointWithAltitudeAndUncertaintyEllipsoid", HFILL }},
    { &hf_lppe_referenceTime,
      { "referenceTime", "lppe.referenceTime_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "GNSS_SystemTime", HFILL }},
    { &hf_lppe_localPressure,
      { "localPressure", "lppe.localPressure_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_pressureUncertainty,
      { "pressureUncertainty", "lppe.pressureUncertainty",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_127", HFILL }},
    { &hf_lppe_antennaOrientation,
      { "antennaOrientation", "lppe.antennaOrientation",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_Orientation_vals), 0,
        "OMA_LPPe_Orientation", HFILL }},
    { &hf_lppe_signalMeasurements,
      { "signalMeasurements", "lppe.signalMeasurements",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssMeasurementElement", HFILL }},
    { &hf_lppe_signalMeasurements_item,
      { "OMA-LPPe-AGNSS-HAgnssMeasurementElement", "lppe.OMA_LPPe_AGNSS_HAgnssMeasurementElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_haGNSSperSignalList,
      { "haGNSSperSignalList", "lppe.haGNSSperSignalList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_8_OF_OMA_LPPe_HAgnssPerSignalElement", HFILL }},
    { &hf_lppe_haGNSSperSignalList_item,
      { "OMA-LPPe-HAgnssPerSignalElement", "lppe.OMA_LPPe_HAgnssPerSignalElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_haGNSSperSVlist,
      { "haGNSSperSVlist", "lppe.haGNSSperSVlist",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_64_OF_OMA_LPPe_HAgnssPerSVelement", HFILL }},
    { &hf_lppe_haGNSSperSVlist_item,
      { "OMA-LPPe-HAgnssPerSVelement", "lppe.OMA_LPPe_HAgnssPerSVelement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_multipathDetection,
      { "multipathDetection", "lppe.multipathDetection",
        FT_UINT32, BASE_DEC, VALS(lppe_T_multipathDetection_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_adr,
      { "adr", "lppe.adr",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_536870911", HFILL }},
    { &hf_lppe_adrRMSerror,
      { "adrRMSerror", "lppe.adrRMSerror",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_127", HFILL }},
    { &hf_lppe_tecPerSV,
      { "tecPerSV", "lppe.tecPerSV",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_AGNSS_TECPerSV", HFILL }},
    { &hf_lppe_tecAtZenith,
      { "tecAtZenith", "lppe.tecAtZenith_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_TECAtZenith", HFILL }},
    { &hf_lppe_OMA_LPPe_AGNSS_TECPerSV_item,
      { "OMA-LPPe-AGNSS-TECPerSVElement", "lppe.OMA_LPPe_AGNSS_TECPerSVElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_azimuth,
      { "azimuth", "lppe.azimuth",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_359", HFILL }},
    { &hf_lppe_elevation,
      { "elevation", "lppe.elevation",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_90", HFILL }},
    { &hf_lppe_tecValue,
      { "tecValue", "lppe.tecValue",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_511", HFILL }},
    { &hf_lppe_tecUncertainty,
      { "tecUncertainty", "lppe.tecUncertainty",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_63", HFILL }},
    { &hf_lppe_tecValueAtZenith,
      { "tecValueAtZenith", "lppe.tecValueAtZenith",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_511", HFILL }},
    { &hf_lppe_tecUncertaintyAtZenith,
      { "tecUncertaintyAtZenith", "lppe.tecUncertaintyAtZenith",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_63", HFILL }},
    { &hf_lppe_temperatureMeasurement,
      { "temperatureMeasurement", "lppe.temperatureMeasurement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_temperatureUncertainty,
      { "temperatureUncertainty", "lppe.temperatureUncertainty",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_7", HFILL }},
    { &hf_lppe_positioningInstructions,
      { "positioningInstructions", "lppe.positioningInstructions_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_PositioningInstructions", HFILL }},
    { &hf_lppe_ionosphereMeasurementsReq,
      { "ionosphereMeasurementsReq", "lppe.ionosphereMeasurementsReq",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_localSurfaceMeasurementReq,
      { "localSurfaceMeasurementReq", "lppe.localSurfaceMeasurementReq_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_LocalSurfaceMeasurementReq", HFILL }},
    { &hf_lppe_highAccuracyMethodRequested,
      { "highAccuracyMethodRequested", "lppe.highAccuracyMethodRequested",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_haGNSSreq,
      { "haGNSSreq", "lppe.haGNSSreq_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_HAgnssRequestControlParameters", HFILL }},
    { &hf_lppe_rate_01,
      { "rate", "lppe.rate",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_63", HFILL }},
    { &hf_lppe_antennaInformationReq,
      { "antennaInformationReq", "lppe.antennaInformationReq",
        FT_UINT32, BASE_DEC, VALS(lppe_T_antennaInformationReq_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_pressureInformationReq,
      { "pressureInformationReq", "lppe.pressureInformationReq",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_signalReqList,
      { "signalReqList", "lppe.signalReqList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssSignalReqElement", HFILL }},
    { &hf_lppe_signalReqList_item,
      { "OMA-LPPe-AGNSS-HAgnssSignalReqElement", "lppe.OMA_LPPe_AGNSS_HAgnssSignalReqElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_gnssID,
      { "gnssID", "lppe.gnssID_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "GNSS_ID", HFILL }},
    { &hf_lppe_assistanceDataSupportList,
      { "assistanceDataSupportList", "lppe.assistanceDataSupportList_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_AssistanceDataSupportList", HFILL }},
    { &hf_lppe_environmentObservationSupportList,
      { "environmentObservationSupportList", "lppe.environmentObservationSupportList_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_EnvironmentObservationSupportList", HFILL }},
    { &hf_lppe_haGNSSsupport,
      { "haGNSSsupport", "lppe.haGNSSsupport_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_HAgnssSupport", HFILL }},
    { &hf_lppe_commonAssistanceDataSupport,
      { "commonAssistanceDataSupport", "lppe.commonAssistanceDataSupport_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_CommonAssistanceDataSupport", HFILL }},
    { &hf_lppe_genericAssistanceDataSupport,
      { "genericAssistanceDataSupport", "lppe.genericAssistanceDataSupport",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_AGNSS_GenericAssistanceDataSupport", HFILL }},
    { &hf_lppe_ionosphereMeasurementSupport,
      { "ionosphereMeasurementSupport", "lppe.ionosphereMeasurementSupport",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_pressureMeasurementSupported,
      { "pressureMeasurementSupported", "lppe.pressureMeasurementSupported",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_temperatureMeasurementSupported,
      { "temperatureMeasurementSupported", "lppe.temperatureMeasurementSupported",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ionosphericModelSupport,
      { "ionosphericModelSupport", "lppe.ionosphericModelSupport_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_IonosphericModelSupport", HFILL }},
    { &hf_lppe_troposphereModelSupport,
      { "troposphereModelSupport", "lppe.troposphereModelSupport_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_TroposphereModelSupport", HFILL }},
    { &hf_lppe_altitudeAssistanceSupport,
      { "altitudeAssistanceSupport", "lppe.altitudeAssistanceSupport_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_AltitudeAssistanceSupport", HFILL }},
    { &hf_lppe_solarRadiationSupport,
      { "solarRadiationSupport", "lppe.solarRadiationSupport_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_SolarRadiationSupport", HFILL }},
    { &hf_lppe_ccpSupport,
      { "ccpSupport", "lppe.ccpSupport_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_CCPsupport", HFILL }},
    { &hf_lppe_ionoModel,
      { "ionoModel", "lppe.ionoModel",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_tropoModel,
      { "tropoModel", "lppe.tropoModel",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_supportAreaAssistanceSupported,
      { "supportAreaAssistanceSupported", "lppe.supportAreaAssistanceSupported",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_multiReferenceStationSupported,
      { "multiReferenceStationSupported", "lppe.multiReferenceStationSupported",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataSupport_item,
      { "OMA-LPPe-AGNSS-GenericAssistDataSupportElement", "lppe.OMA_LPPe_AGNSS_GenericAssistDataSupportElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_mechnanicsSupport,
      { "mechnanicsSupport", "lppe.mechnanicsSupport_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_MechanicsSupport", HFILL }},
    { &hf_lppe_dcbSupport,
      { "dcbSupport", "lppe.dcbSupport_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_DCBsupport", HFILL }},
    { &hf_lppe_navModelAccuracyModelDegradationSupport,
      { "navModelAccuracyModelDegradationSupport", "lppe.navModelAccuracyModelDegradationSupport_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_NavModelAccuracyModelDegradationSupport", HFILL }},
    { &hf_lppe_ccpAssistanceSuppport,
      { "ccpAssistanceSuppport", "lppe.ccpAssistanceSuppport_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "GNSS_SignalIDs", HFILL }},
    { &hf_lppe_navModelSupport,
      { "navModelSupport", "lppe.navModelSupport_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_NavModelSupport", HFILL }},
    { &hf_lppe_navModelSupport_01,
      { "navModelSupport", "lppe.navModelSupport",
        FT_UINT32, BASE_DEC, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_navModelSupport_item,
      { "navModelSupport item", "lppe.navModelSupport_item",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_8", HFILL }},
    { &hf_lppe_modeSupport,
      { "modeSupport", "lppe.modeSupport",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_haGNSSpressureInformationSupport,
      { "haGNSSpressureInformationSupport", "lppe.haGNSSpressureInformationSupport",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_haGNSSantennaInformationSupport,
      { "haGNSSantennaInformationSupport", "lppe.haGNSSantennaInformationSupport",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_haGNSSperGNSSsupport,
      { "haGNSSperGNSSsupport", "lppe.haGNSSperGNSSsupport",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_HAgnssPerGNSSsupport", HFILL }},
    { &hf_lppe_haGNSSperGNSSsupport_item,
      { "OMA-LPPe-AGNSS-HAgnssPerGNSSsupport", "lppe.OMA_LPPe_AGNSS_HAgnssPerGNSSsupport_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_haGNSSsignalSupport,
      { "haGNSSsignalSupport", "lppe.haGNSSsignalSupport_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "GNSS_SignalIDs", HFILL }},
    { &hf_lppe_assistanceDataSupportListReq,
      { "assistanceDataSupportListReq", "lppe.assistanceDataSupportListReq_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_environmentObservationSupportListReq,
      { "environmentObservationSupportListReq", "lppe.environmentObservationSupportListReq_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_haGNSSsupportReq,
      { "haGNSSsupportReq", "lppe.haGNSSsupportReq_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_agnss_locationServerErrorCauses,
      { "agnss-locationServerErrorCauses", "lppe.agnss_locationServerErrorCauses_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_LocationServerErrorCauses", HFILL }},
    { &hf_lppe_agnss_targetDeviceErrorCauses,
      { "agnss-targetDeviceErrorCauses", "lppe.agnss_targetDeviceErrorCauses_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AGNSS_TargetDeviceErrorCauses", HFILL }},
    { &hf_lppe_waIonoErrorCauses,
      { "waIonoErrorCauses", "lppe.waIonoErrorCauses",
        FT_UINT32, BASE_DEC, VALS(lppe_T_waIonoErrorCauses_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_ccpErrorCauses,
      { "ccpErrorCauses", "lppe.ccpErrorCauses",
        FT_UINT32, BASE_DEC, VALS(lppe_T_ccpErrorCauses_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_highAccuracyErrorCauses,
      { "highAccuracyErrorCauses", "lppe.highAccuracyErrorCauses",
        FT_UINT32, BASE_DEC, VALS(lppe_T_highAccuracyErrorCauses_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_ionosphereMeasurementErrorCauses,
      { "ionosphereMeasurementErrorCauses", "lppe.ionosphereMeasurementErrorCauses",
        FT_UINT32, BASE_DEC, VALS(lppe_T_ionosphereMeasurementErrorCauses_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_environmentObservationErrorCauses,
      { "environmentObservationErrorCauses", "lppe.environmentObservationErrorCauses",
        FT_UINT32, BASE_DEC, VALS(lppe_T_environmentObservationErrorCauses_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_haGNSSerrorCauses,
      { "haGNSSerrorCauses", "lppe.haGNSSerrorCauses",
        FT_UINT32, BASE_DEC, VALS(lppe_T_haGNSSerrorCauses_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_stationID,
      { "stationID", "lppe.stationID",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_65535", HFILL }},
    { &hf_lppe_antennaDescription_01,
      { "antennaDescription", "lppe.antennaDescription",
        FT_UINT32, BASE_DEC, VALS(lppe_T_antennaDescription_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_igsAntennaName,
      { "igsAntennaName", "lppe.igsAntennaName",
        FT_STRING, BASE_NONE, NULL, 0,
        "OMA_LPPe_CharArray", HFILL }},
    { &hf_lppe_proprietaryName,
      { "proprietaryName", "lppe.proprietaryName",
        FT_STRING, BASE_NONE, NULL, 0,
        "OMA_LPPe_CharArray", HFILL }},
    { &hf_lppe_antennaSetupID,
      { "antennaSetupID", "lppe.antennaSetupID",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_255", HFILL }},
    { &hf_lppe_antennaSerialNumber,
      { "antennaSerialNumber", "lppe.antennaSerialNumber",
        FT_STRING, BASE_NONE, NULL, 0,
        "OMA_LPPe_CharArray", HFILL }},
    { &hf_lppe_targetDeviceAbortCauses,
      { "targetDeviceAbortCauses", "lppe.targetDeviceAbortCauses_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ccpAbort,
      { "ccpAbort", "lppe.ccpAbort",
        FT_UINT32, BASE_DEC, VALS(lppe_T_ccpAbort_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_waIonoAbort,
      { "waIonoAbort", "lppe.waIonoAbort",
        FT_UINT32, BASE_DEC, VALS(lppe_T_waIonoAbort_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_otdoa_ReferenceCellInfo,
      { "otdoa-ReferenceCellInfo", "lppe.otdoa_ReferenceCellInfo_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_ReferenceCellInfo", HFILL }},
    { &hf_lppe_otdoa_NeighbourCellInfo,
      { "otdoa-NeighbourCellInfo", "lppe.otdoa_NeighbourCellInfo",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_OTDOA_NeighbourCellInfoList", HFILL }},
    { &hf_lppe_otdoa_Error,
      { "otdoa-Error", "lppe.otdoa_Error",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_OTDOA_Error_vals), 0,
        "OMA_LPPe_OTDOA_Error", HFILL }},
    { &hf_lppe_referenceCellInfo,
      { "referenceCellInfo", "lppe.referenceCellInfo_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OTDOA_ReferenceCellInfo", HFILL }},
    { &hf_lppe_positionCalculationInfoRef,
      { "positionCalculationInfoRef", "lppe.positionCalculationInfoRef_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_PositionCalculationInfoRef", HFILL }},
    { &hf_lppe_systemFrameNumber,
      { "systemFrameNumber", "lppe.systemFrameNumber",
        FT_BYTES, BASE_NONE, NULL, 0,
        "BIT_STRING_SIZE_10", HFILL }},
    { &hf_lppe_rtdReferenceStd,
      { "rtdReferenceStd", "lppe.rtdReferenceStd_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_RTDquality", HFILL }},
    { &hf_lppe_cellLocation,
      { "cellLocation", "lppe.cellLocation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_reference_point,
      { "reference-point", "lppe.reference_point_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ReferencePoint", HFILL }},
    { &hf_lppe_relative_location,
      { "relative-location", "lppe.relative_location_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_RelativeLocation", HFILL }},
    { &hf_lppe_femtoCellInfo,
      { "femtoCellInfo", "lppe.femtoCellInfo_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_location_reliability,
      { "location-reliability", "lppe.location_reliability",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_100", HFILL }},
    { &hf_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoList_item,
      { "OMA-LPPe-OTDOA-NeighbourFreqCellInfoList", "lppe.OMA_LPPe_OTDOA_NeighbourFreqCellInfoList_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_neighbourCellInfoList_eNB,
      { "neighbourCellInfoList-eNB", "lppe.neighbourCellInfoList_eNB",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB", HFILL }},
    { &hf_lppe_neighbourCellInfoList_eNB_item,
      { "OMA-LPPe-OTDOA-NeighbourCellInfoElement-eNB", "lppe.OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_neighbourCellInfoList_HeNB,
      { "neighbourCellInfoList-HeNB", "lppe.neighbourCellInfoList_HeNB",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB", HFILL }},
    { &hf_lppe_neighbourCellInfoList_HeNB_item,
      { "OMA-LPPe-OTDOA-NeighbourCellInfoElement-HeNB", "lppe.OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_relative_Location,
      { "relative-Location", "lppe.relative_Location_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_RelativeLocation", HFILL }},
    { &hf_lppe_otdoa_eNB_CellDataList,
      { "otdoa-eNB-CellDataList", "lppe.otdoa_eNB_CellDataList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_OTDOA_CellData", HFILL }},
    { &hf_lppe_otdoa_eNB_CellDataList_item,
      { "OMA-LPPe-OTDOA-CellData", "lppe.OMA_LPPe_OTDOA_CellData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_otdoa_HeNB_CellDataList,
      { "otdoa-HeNB-CellDataList", "lppe.otdoa_HeNB_CellDataList_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_CellData", HFILL }},
    { &hf_lppe_otdoa_NeighbourCellInfoElement,
      { "otdoa-NeighbourCellInfoElement", "lppe.otdoa_NeighbourCellInfoElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_rtdInfo,
      { "rtdInfo", "lppe.rtdInfo_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_subframeOffset,
      { "subframeOffset", "lppe.subframeOffset",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_10229", HFILL }},
    { &hf_lppe_fineRTD,
      { "fineRTD", "lppe.fineRTD",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_99999", HFILL }},
    { &hf_lppe_fineRTDstd,
      { "fineRTDstd", "lppe.fineRTDstd_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_RTDquality", HFILL }},
    { &hf_lppe_fineRTDdriftRate,
      { "fineRTDdriftRate", "lppe.fineRTDdriftRate",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M100_100", HFILL }},
    { &hf_lppe_resolution,
      { "resolution", "lppe.resolution",
        FT_UINT32, BASE_DEC, VALS(lppe_T_resolution_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_quality,
      { "quality", "lppe.quality",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_127", HFILL }},
    { &hf_lppe_lteCell,
      { "lteCell", "lppe.lteCell_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_physCellId,
      { "physCellId", "lppe.physCellId",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_503", HFILL }},
    { &hf_lppe_eARFCN,
      { "eARFCN", "lppe.eARFCN",
        FT_UINT32, BASE_DEC, NULL, 0,
        "ARFCN_ValueEUTRA", HFILL }},
    { &hf_lppe_ecgi,
      { "ecgi", "lppe.ecgi_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "CellGlobalIdEUTRA_AndUTRA", HFILL }},
    { &hf_lppe_eARFCN_ext,
      { "eARFCN-ext", "lppe.eARFCN_ext",
        FT_UINT32, BASE_DEC, NULL, 0,
        "ARFCN_ValueEUTRA_v9a0", HFILL }},
    { &hf_lppe_requestedCells,
      { "requestedCells", "lppe.requestedCells",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_otdoaLocationInformation,
      { "otdoaLocationInformation", "lppe.otdoaLocationInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_LocationInformation", HFILL }},
    { &hf_lppe_otdoaError,
      { "otdoaError", "lppe.otdoaError",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_OTDOA_Error_vals), 0,
        "OMA_LPPe_OTDOA_Error", HFILL }},
    { &hf_lppe_cellGlobalId,
      { "cellGlobalId", "lppe.cellGlobalId_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "CellGlobalIdEUTRA_AndUTRA", HFILL }},
    { &hf_lppe_assistanceAvailability,
      { "assistanceAvailability", "lppe.assistanceAvailability",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_eNodeB_AD_sup,
      { "eNodeB-AD-sup", "lppe.eNodeB_AD_sup_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_home_eNodeB_AD_sup,
      { "home-eNodeB-AD-sup", "lppe.home_eNodeB_AD_sup_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_locationServerErrorCauses,
      { "locationServerErrorCauses", "lppe.locationServerErrorCauses_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_LocationServerErrorCauses", HFILL }},
    { &hf_lppe_targetDeviceErrorCauses,
      { "targetDeviceErrorCauses", "lppe.targetDeviceErrorCauses_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_TargetDeviceErrorCauses", HFILL }},
    { &hf_lppe_cause,
      { "cause", "lppe.cause",
        FT_UINT32, BASE_DEC, VALS(lppe_T_cause_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_cause_01,
      { "cause", "lppe.cause",
        FT_UINT32, BASE_DEC, VALS(lppe_T_cause_01_vals), 0,
        "T_cause_01", HFILL }},
    { &hf_lppe_referenceBTS,
      { "referenceBTS", "lppe.referenceBTS_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_EOTD_ReferenceBTSForAssistance", HFILL }},
    { &hf_lppe_msrAssistDataList,
      { "msrAssistDataList", "lppe.msrAssistDataList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_EOTD_MsrAssistDataList", HFILL }},
    { &hf_lppe_systemInfoAssistDataList,
      { "systemInfoAssistDataList", "lppe.systemInfoAssistDataList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_EOTD_SystemInfoAssistDataList", HFILL }},
    { &hf_lppe_eotdError,
      { "eotdError", "lppe.eotdError",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_EOTD_Error_vals), 0,
        "OMA_LPPe_EOTD_Error", HFILL }},
    { &hf_lppe_bsicAndCarrier,
      { "bsicAndCarrier", "lppe.bsicAndCarrier_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_CellNonUniqueIDGERAN", HFILL }},
    { &hf_lppe_timeSlotScheme,
      { "timeSlotScheme", "lppe.timeSlotScheme",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_EOTD_TimeSlotScheme_vals), 0,
        "OMA_LPPe_EOTD_TimeSlotScheme", HFILL }},
    { &hf_lppe_btsPosition,
      { "btsPosition", "lppe.btsPosition",
        FT_UINT32, BASE_DEC, VALS(lppe_T_btsPosition_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_ellipsoidPoint,
      { "ellipsoidPoint", "lppe.ellipsoidPoint_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "Ellipsoid_Point", HFILL }},
    { &hf_lppe_ellipsoidPointWithAltitudeAndUncertaintyEllipsoid,
      { "ellipsoidPointWithAltitudeAndUncertaintyEllipsoid", "lppe.ellipsoidPointWithAltitudeAndUncertaintyEllipsoid_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_OMA_LPPe_EOTD_MsrAssistDataList_item,
      { "OMA-LPPe-EOTD-MsrAssistBTS", "lppe.OMA_LPPe_EOTD_MsrAssistBTS_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_multiFrameOffset,
      { "multiFrameOffset", "lppe.multiFrameOffset",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_EOTD_MultiFrameOffset", HFILL }},
    { &hf_lppe_roughRTD,
      { "roughRTD", "lppe.roughRTD",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_EOTD_RoughRTD", HFILL }},
    { &hf_lppe_expectedOTD,
      { "expectedOTD", "lppe.expectedOTD_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_EOTD_ExpectedOTD", HFILL }},
    { &hf_lppe_calcAssistanceBTS,
      { "calcAssistanceBTS", "lppe.calcAssistanceBTS_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_EOTD_CalcAssistanceBTS", HFILL }},
    { &hf_lppe_OMA_LPPe_EOTD_SystemInfoAssistDataList_item,
      { "OMA-LPPe-EOTD-SystemInfoAssistBTS", "lppe.OMA_LPPe_EOTD_SystemInfoAssistBTS",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_EOTD_SystemInfoAssistBTS_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_notPresent,
      { "notPresent", "lppe.notPresent_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_present,
      { "present", "lppe.present_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_EOTD_AssistBTSData", HFILL }},
    { &hf_lppe_fineRTD_01,
      { "fineRTD", "lppe.fineRTD",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_EOTD_FineRTD", HFILL }},
    { &hf_lppe_relativePos,
      { "relativePos", "lppe.relativePos_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_EOTD_relativePos", HFILL }},
    { &hf_lppe_relativeNorth_01,
      { "relativeNorth", "lppe.relativeNorth",
        FT_INT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_EOTD_RelDistance", HFILL }},
    { &hf_lppe_relativeEast_01,
      { "relativeEast", "lppe.relativeEast",
        FT_INT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_EOTD_RelDistance", HFILL }},
    { &hf_lppe_relativeAlt,
      { "relativeAlt", "lppe.relativeAlt",
        FT_INT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_EOTD_RelativeAlt", HFILL }},
    { &hf_lppe_eotdAssistanceReq,
      { "eotdAssistanceReq", "lppe.eotdAssistanceReq",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_eotdMsrElement,
      { "eotdMsrElement", "lppe.eotdMsrElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_EOTD_MsrElement", HFILL }},
    { &hf_lppe_refFrameNumber,
      { "refFrameNumber", "lppe.refFrameNumber",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_42431", HFILL }},
    { &hf_lppe_referenceTimeSlot,
      { "referenceTimeSlot", "lppe.referenceTimeSlot",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_EOTD_ModuloTimeSlot", HFILL }},
    { &hf_lppe_toaMeasurementsOfRef,
      { "toaMeasurementsOfRef", "lppe.toaMeasurementsOfRef_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_EOTD_TOA_MeasurementsOfRef", HFILL }},
    { &hf_lppe_stdResolution,
      { "stdResolution", "lppe.stdResolution",
        FT_BYTES, BASE_NONE, NULL, 0,
        "BIT_STRING_SIZE_2", HFILL }},
    { &hf_lppe_taCorrection,
      { "taCorrection", "lppe.taCorrection",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_960", HFILL }},
    { &hf_lppe_otd_FirstSetMsrs,
      { "otd-FirstSetMsrs", "lppe.otd_FirstSetMsrs",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_15_OF_OMA_LPPe_EOTD_MeasurementWithID", HFILL }},
    { &hf_lppe_otd_FirstSetMsrs_item,
      { "OMA-LPPe-EOTD-MeasurementWithID", "lppe.OMA_LPPe_EOTD_MeasurementWithID_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_refQuality,
      { "refQuality", "lppe.refQuality",
        FT_BYTES, BASE_NONE, NULL, 0,
        "BIT_STRING_SIZE_5", HFILL }},
    { &hf_lppe_numOfMeasurements,
      { "numOfMeasurements", "lppe.numOfMeasurements",
        FT_BYTES, BASE_NONE, NULL, 0,
        "BIT_STRING_SIZE_3", HFILL }},
    { &hf_lppe_neighborIdentity,
      { "neighborIdentity", "lppe.neighborIdentity",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_EOTD_NeighborIdentity_vals), 0,
        "OMA_LPPe_EOTD_NeighborIdentity", HFILL }},
    { &hf_lppe_nborTimeSlot,
      { "nborTimeSlot", "lppe.nborTimeSlot",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_EOTD_ModuloTimeSlot", HFILL }},
    { &hf_lppe_eotdQuality,
      { "eotdQuality", "lppe.eotdQuality_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_EOTD_EOTDQuality", HFILL }},
    { &hf_lppe_otdValue,
      { "otdValue", "lppe.otdValue",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_EOTD_OTDValue", HFILL }},
    { &hf_lppe_ci,
      { "ci", "lppe.ci",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_EOTD_CellID", HFILL }},
    { &hf_lppe_multiFrameCarrier,
      { "multiFrameCarrier", "lppe.multiFrameCarrier_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_EOTD_MultiFrameCarrier", HFILL }},
    { &hf_lppe_requestIndex,
      { "requestIndex", "lppe.requestIndex",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_EOTD_RequestIndex", HFILL }},
    { &hf_lppe_systemInfoIndex,
      { "systemInfoIndex", "lppe.systemInfoIndex",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_EOTD_SystemInfoIndex", HFILL }},
    { &hf_lppe_ciAndLac,
      { "ciAndLac", "lppe.ciAndLac_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_CellLocalIdGERAN", HFILL }},
    { &hf_lppe_nbrOfMeasurements,
      { "nbrOfMeasurements", "lppe.nbrOfMeasurements",
        FT_BYTES, BASE_NONE, NULL, 0,
        "BIT_STRING_SIZE_3", HFILL }},
    { &hf_lppe_stdOfEOTD,
      { "stdOfEOTD", "lppe.stdOfEOTD",
        FT_BYTES, BASE_NONE, NULL, 0,
        "BIT_STRING_SIZE_5", HFILL }},
    { &hf_lppe_bcchCarrier,
      { "bcchCarrier", "lppe.bcchCarrier",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_EOTD_BCCHCarrier", HFILL }},
    { &hf_lppe_eotdSupport,
      { "eotdSupport", "lppe.eotdSupport",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_locationServerErrorCauses_01,
      { "locationServerErrorCauses", "lppe.locationServerErrorCauses_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_EOTD_LocationServerErrorCauses", HFILL }},
    { &hf_lppe_targetDeviceErrorCauses_01,
      { "targetDeviceErrorCauses", "lppe.targetDeviceErrorCauses_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_EOTD_TargetDeviceErrorCauses", HFILL }},
    { &hf_lppe_cause_02,
      { "cause", "lppe.cause",
        FT_UINT32, BASE_DEC, VALS(lppe_T_cause_02_vals), 0,
        "T_cause_02", HFILL }},
    { &hf_lppe_cause_03,
      { "cause", "lppe.cause",
        FT_UINT32, BASE_DEC, VALS(lppe_T_cause_03_vals), 0,
        "T_cause_03", HFILL }},
    { &hf_lppe_expectedOTD_01,
      { "expectedOTD", "lppe.expectedOTD",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_1250", HFILL }},
    { &hf_lppe_expOTDUncertainty,
      { "expOTDUncertainty", "lppe.expOTDUncertainty",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_7", HFILL }},
    { &hf_lppe_referenceCellInfo_01,
      { "referenceCellInfo", "lppe.referenceCellInfo_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_ReferenceCellInfo", HFILL }},
    { &hf_lppe_neigborCellList,
      { "neigborCellList", "lppe.neigborCellList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_NeighborCellList", HFILL }},
    { &hf_lppe_otdoaUtraError,
      { "otdoaUtraError", "lppe.otdoaUtraError",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_OTDOA_UTRA_Error_vals), 0,
        "OMA_LPPe_OTDOA_UTRA_Error", HFILL }},
    { &hf_lppe_sfn,
      { "sfn", "lppe.sfn",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_4095", HFILL }},
    { &hf_lppe_modeSpecificInfo,
      { "modeSpecificInfo", "lppe.modeSpecificInfo",
        FT_UINT32, BASE_DEC, VALS(lppe_T_modeSpecificInfo_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_fdd,
      { "fdd", "lppe.fdd_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_primaryCPICH_info,
      { "primaryCPICH-info", "lppe.primaryCPICH_info_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info", HFILL }},
    { &hf_lppe_tdd,
      { "tdd", "lppe.tdd_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_cellAndChannelIdentity,
      { "cellAndChannelIdentity", "lppe.cellAndChannelIdentity_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_CellAndChannelIdentity", HFILL }},
    { &hf_lppe_frequencyInfo,
      { "frequencyInfo", "lppe.frequencyInfo_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_UTRA_FrequencyInfo", HFILL }},
    { &hf_lppe_refPosAssist,
      { "refPosAssist", "lppe.refPosAssist_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_RefPosAssist", HFILL }},
    { &hf_lppe_ipdl_parameters,
      { "ipdl-parameters", "lppe.ipdl_parameters_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_IPDL_Parameters", HFILL }},
    { &hf_lppe_cellPosition,
      { "cellPosition", "lppe.cellPosition",
        FT_UINT32, BASE_DEC, VALS(lppe_T_cellPosition_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_ellipsoidPointWithAltitude,
      { "ellipsoidPointWithAltitude", "lppe.ellipsoidPointWithAltitude_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_roundTripTime,
      { "roundTripTime", "lppe.roundTripTime",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_32766", HFILL }},
    { &hf_lppe_roundTripTimeExtension,
      { "roundTripTimeExtension", "lppe.roundTripTimeExtension",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_70274", HFILL }},
    { &hf_lppe_OMA_LPPe_OTDOA_UTRA_NeighborCellList_item,
      { "OMA-LPPe-OTDOA-UTRA-NeighborCellInfo", "lppe.OMA_LPPe_OTDOA_UTRA_NeighborCellInfo_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_modeSpecificInfo_01,
      { "modeSpecificInfo", "lppe.modeSpecificInfo",
        FT_UINT32, BASE_DEC, VALS(lppe_T_modeSpecificInfo_01_vals), 0,
        "T_modeSpecificInfo_01", HFILL }},
    { &hf_lppe_fdd_01,
      { "fdd", "lppe.fdd_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "T_fdd_01", HFILL }},
    { &hf_lppe_tdd_01,
      { "tdd", "lppe.tdd_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "T_tdd_01", HFILL }},
    { &hf_lppe_sfn_SFN_relTimeDifference,
      { "sfn-SFN-relTimeDifference", "lppe.sfn_SFN_relTimeDifference_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_SFN_SFN_RelTimeDifference1", HFILL }},
    { &hf_lppe_sfn_offsetValidity,
      { "sfn-offsetValidity", "lppe.sfn_offsetValidity",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_OTDOA_UTRA_SFN_OffsetValidity_vals), 0,
        "OMA_LPPe_OTDOA_UTRA_SFN_OffsetValidity", HFILL }},
    { &hf_lppe_sfn_SFN_drift,
      { "sfn-SFN-drift", "lppe.sfn_SFN_drift",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_OTDOA_UTRA_SFN_SFN_Drift_vals), 0,
        "OMA_LPPe_OTDOA_UTRA_SFN_SFN_Drift", HFILL }},
    { &hf_lppe_searchWindowSize,
      { "searchWindowSize", "lppe.searchWindowSize",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_OTDOA_UTRA_SearchWindowSize_vals), 0,
        "OMA_LPPe_OTDOA_UTRA_SearchWindowSize", HFILL }},
    { &hf_lppe_positioningAssistance,
      { "positioningAssistance", "lppe.positioningAssistance_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_PositioningAssistance", HFILL }},
    { &hf_lppe_sfn_offset,
      { "sfn-offset", "lppe.sfn_offset",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_4095", HFILL }},
    { &hf_lppe_sfn_sfn_relTimeDifference,
      { "sfn-sfn-relTimeDifference", "lppe.sfn_sfn_relTimeDifference",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_38399", HFILL }},
    { &hf_lppe_relativeNorth_02,
      { "relativeNorth", "lppe.relativeNorth",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M20000_20000", HFILL }},
    { &hf_lppe_relativeEast_02,
      { "relativeEast", "lppe.relativeEast",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M20000_20000", HFILL }},
    { &hf_lppe_relativeAltitude_01,
      { "relativeAltitude", "lppe.relativeAltitude",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M4000_4000", HFILL }},
    { &hf_lppe_fineSFN_SFN,
      { "fineSFN-SFN", "lppe.fineSFN_SFN",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_fineSFN_SFN", HFILL }},
    { &hf_lppe_modeSpecificInfo_02,
      { "modeSpecificInfo", "lppe.modeSpecificInfo",
        FT_UINT32, BASE_DEC, VALS(lppe_T_modeSpecificInfo_02_vals), 0,
        "T_modeSpecificInfo_02", HFILL }},
    { &hf_lppe_fdd_02,
      { "fdd", "lppe.fdd_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "T_fdd_02", HFILL }},
    { &hf_lppe_ip_spacing,
      { "ip-spacing", "lppe.ip_spacing",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_OTDOA_UTRA_IP_Spacing_vals), 0,
        "OMA_LPPe_OTDOA_UTRA_IP_Spacing", HFILL }},
    { &hf_lppe_ip_length,
      { "ip-length", "lppe.ip_length",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_OTDOA_UTRA_IP_Length_vals), 0,
        "OMA_LPPe_OTDOA_UTRA_IP_Length", HFILL }},
    { &hf_lppe_ip_Offset,
      { "ip-Offset", "lppe.ip_Offset",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_9", HFILL }},
    { &hf_lppe_seed,
      { "seed", "lppe.seed",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_63", HFILL }},
    { &hf_lppe_burstModeParameters,
      { "burstModeParameters", "lppe.burstModeParameters_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_BurstModeParameters", HFILL }},
    { &hf_lppe_tdd_02,
      { "tdd", "lppe.tdd_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "T_tdd_02", HFILL }},
    { &hf_lppe_ip_spacing_tdd,
      { "ip-spacing-tdd", "lppe.ip_spacing_tdd",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_OTDOA_UTRA_IP_Spacing_TDD_vals), 0,
        "OMA_LPPe_OTDOA_UTRA_IP_Spacing_TDD", HFILL }},
    { &hf_lppe_ip_slot,
      { "ip-slot", "lppe.ip_slot",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_14", HFILL }},
    { &hf_lppe_ip_start,
      { "ip-start", "lppe.ip_start",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_4095", HFILL }},
    { &hf_lppe_ip_PCCPCH,
      { "ip-PCCPCH", "lppe.ip_PCCPCH",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_IP_PCCPCH", HFILL }},
    { &hf_lppe_burstStart,
      { "burstStart", "lppe.burstStart",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_15", HFILL }},
    { &hf_lppe_burstLength,
      { "burstLength", "lppe.burstLength",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_10_25", HFILL }},
    { &hf_lppe_burstFreq,
      { "burstFreq", "lppe.burstFreq",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_16", HFILL }},
    { &hf_lppe_otdoaUtraAssistanceReq,
      { "otdoaUtraAssistanceReq", "lppe.otdoaUtraAssistanceReq",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_otdoaUtraMeasurement,
      { "otdoaUtraMeasurement", "lppe.otdoaUtraMeasurement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_Measurement", HFILL }},
    { &hf_lppe_timeStampData,
      { "timeStampData", "lppe.timeStampData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_TimeStampData", HFILL }},
    { &hf_lppe_modeSpecificInfoMeas,
      { "modeSpecificInfoMeas", "lppe.modeSpecificInfoMeas",
        FT_UINT32, BASE_DEC, VALS(lppe_T_modeSpecificInfoMeas_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_fdd_03,
      { "fdd", "lppe.fdd_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "T_fdd_03", HFILL }},
    { &hf_lppe_referenceCellIdentity,
      { "referenceCellIdentity", "lppe.referenceCellIdentity_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info", HFILL }},
    { &hf_lppe_ue_RX_TX_TimeDifferenceType2Info,
      { "ue-RX-TX-TimeDifferenceType2Info", "lppe.ue_RX_TX_TimeDifferenceType2Info_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_UE_RX_TX_TimeDifferenceType2Info", HFILL }},
    { &hf_lppe_tdd_03,
      { "tdd", "lppe.tdd_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "T_tdd_03", HFILL }},
    { &hf_lppe_neighborList,
      { "neighborList", "lppe.neighborList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_NeighborList", HFILL }},
    { &hf_lppe_ue_RX_TX_timeDifferenceType2,
      { "ue-RX-TX-timeDifferenceType2", "lppe.ue_RX_TX_timeDifferenceType2",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_TimeDifferenceType2", HFILL }},
    { &hf_lppe_neighborQuality,
      { "neighborQuality", "lppe.neighborQuality_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_NeighborQuality", HFILL }},
    { &hf_lppe_OMA_LPPe_OTDOA_UTRA_NeighborList_item,
      { "OMA-LPPe-OTDOA-UTRA-Neighbor", "lppe.OMA_LPPe_OTDOA_UTRA_Neighbor_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_modeSpecificInfo_03,
      { "modeSpecificInfo", "lppe.modeSpecificInfo",
        FT_UINT32, BASE_DEC, VALS(lppe_T_modeSpecificInfo_03_vals), 0,
        "T_modeSpecificInfo_03", HFILL }},
    { &hf_lppe_fdd_04,
      { "fdd", "lppe.fdd_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "T_fdd_04", HFILL }},
    { &hf_lppe_neighborIdentity_01,
      { "neighborIdentity", "lppe.neighborIdentity_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info", HFILL }},
    { &hf_lppe_ue_RX_TX_timeDifferenceType2Info,
      { "ue-RX-TX-timeDifferenceType2Info", "lppe.ue_RX_TX_timeDifferenceType2Info_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_UE_RX_TX_TimeDifferenceType2Info", HFILL }},
    { &hf_lppe_tdd_04,
      { "tdd", "lppe.tdd_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "T_tdd_04", HFILL }},
    { &hf_lppe_uarfcn,
      { "uarfcn", "lppe.uarfcn",
        FT_UINT32, BASE_DEC, NULL, 0,
        "ARFCN_ValueUTRA", HFILL }},
    { &hf_lppe_sfn_sfn_ObsTimeDifference2,
      { "sfn-sfn-ObsTimeDifference2", "lppe.sfn_sfn_ObsTimeDifference2",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_SFN_SFN_ObsTimeDifference2", HFILL }},
    { &hf_lppe_quality_01,
      { "quality", "lppe.quality_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_Quality", HFILL }},
    { &hf_lppe_numberOfOTDOA_Measurements,
      { "numberOfOTDOA-Measurements", "lppe.numberOfOTDOA_Measurements",
        FT_BYTES, BASE_NONE, NULL, 0,
        "BIT_STRING_SIZE_3", HFILL }},
    { &hf_lppe_stdOfOTDOA_Measurements,
      { "stdOfOTDOA-Measurements", "lppe.stdOfOTDOA_Measurements",
        FT_BYTES, BASE_NONE, NULL, 0,
        "BIT_STRING_SIZE_5", HFILL }},
    { &hf_lppe_utraCellGlobalID,
      { "utraCellGlobalID", "lppe.utraCellGlobalID_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "CellGlobalIdEUTRA_AndUTRA", HFILL }},
    { &hf_lppe_nonUniqueCellID,
      { "nonUniqueCellID", "lppe.nonUniqueCellID",
        FT_UINT32, BASE_DEC, VALS(lppe_T_nonUniqueCellID_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_primaryScramblingCode,
      { "primaryScramblingCode", "lppe.primaryScramblingCode",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_PrimaryScramblingCode", HFILL }},
    { &hf_lppe_cellParametersId,
      { "cellParametersId", "lppe.cellParametersId",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_CellParametersID", HFILL }},
    { &hf_lppe_ueBasedSupported,
      { "ueBasedSupported", "lppe.ueBasedSupported",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ueAssistedSupported,
      { "ueAssistedSupported", "lppe.ueAssistedSupported",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ipdlSupported,
      { "ipdlSupported", "lppe.ipdlSupported",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_locationServerErrorCauses_02,
      { "locationServerErrorCauses", "lppe.locationServerErrorCauses_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_LocationServerErrorCauses", HFILL }},
    { &hf_lppe_targetDeviceErrorCauses_02,
      { "targetDeviceErrorCauses", "lppe.targetDeviceErrorCauses_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_TargetDeviceErrorCauses", HFILL }},
    { &hf_lppe_cause_04,
      { "cause", "lppe.cause",
        FT_UINT32, BASE_DEC, VALS(lppe_T_cause_04_vals), 0,
        "T_cause_04", HFILL }},
    { &hf_lppe_cause_05,
      { "cause", "lppe.cause",
        FT_UINT32, BASE_DEC, VALS(lppe_T_cause_05_vals), 0,
        "T_cause_05", HFILL }},
    { &hf_lppe_burstType,
      { "burstType", "lppe.burstType",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_OTDOA_UTRA_BurstType_vals), 0,
        "OMA_LPPe_OTDOA_UTRA_BurstType", HFILL }},
    { &hf_lppe_midambleShift,
      { "midambleShift", "lppe.midambleShift",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_MidambleShiftLong", HFILL }},
    { &hf_lppe_timeslot,
      { "timeslot", "lppe.timeslot",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_TimeSlotNumber", HFILL }},
    { &hf_lppe_cellParametersID,
      { "cellParametersID", "lppe.cellParametersID",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_CellParametersID", HFILL }},
    { &hf_lppe_ecid_LTE_NetworkData,
      { "ecid-LTE-NetworkData", "lppe.ecid_LTE_NetworkData",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_maxLTENetworks_OF_OMA_LPPe_ECID_LTE_NetworkData", HFILL }},
    { &hf_lppe_ecid_LTE_NetworkData_item,
      { "OMA-LPPe-ECID-LTE-NetworkData", "lppe.OMA_LPPe_ECID_LTE_NetworkData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ecid_LTE_Error,
      { "ecid-LTE-Error", "lppe.ecid_LTE_Error",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_ECID_LTE_Error_vals), 0,
        "OMA_LPPe_ECID_LTE_Error", HFILL }},
    { &hf_lppe_plmn_Identity,
      { "plmn-Identity", "lppe.plmn_Identity_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_mcc,
      { "mcc", "lppe.mcc",
        FT_UINT32, BASE_DEC, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_mcc_item,
      { "mcc item", "lppe.mcc_item",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_9", HFILL }},
    { &hf_lppe_mnc,
      { "mnc", "lppe.mnc",
        FT_UINT32, BASE_DEC, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_mnc_item,
      { "mnc item", "lppe.mnc_item",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_9", HFILL }},
    { &hf_lppe_multiple_PLMNs,
      { "multiple-PLMNs", "lppe.multiple_PLMNs",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_reference_location,
      { "reference-location", "lppe.reference_location_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ReferencePoint", HFILL }},
    { &hf_lppe_ecid_lte_eNodeB_list,
      { "ecid-lte-eNodeB-list", "lppe.ecid_lte_eNodeB_list",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_ECID_LTE_eNodeBData", HFILL }},
    { &hf_lppe_ecid_lte_eNodeB_list_item,
      { "OMA-LPPe-ECID-LTE-eNodeBData", "lppe.OMA_LPPe_ECID_LTE_eNodeBData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ecid_lte_HeNB_list,
      { "ecid-lte-HeNB-list", "lppe.ecid_lte_HeNB_list",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_ECID_LTE_HeNBData", HFILL }},
    { &hf_lppe_ecid_lte_HeNB_list_item,
      { "OMA-LPPe-ECID-LTE-HeNBData", "lppe.OMA_LPPe_ECID_LTE_HeNBData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ecid_lte_eNodeB_CellData,
      { "ecid-lte-eNodeB-CellData", "lppe.ecid_lte_eNodeB_CellData",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_ECID_LTE_CellData", HFILL }},
    { &hf_lppe_ecid_lte_eNodeB_CellData_item,
      { "OMA-LPPe-ECID-LTE-CellData", "lppe.OMA_LPPe_ECID_LTE_CellData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_coverageArea,
      { "coverageArea", "lppe.coverageArea_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_WLANFemtoCoverageArea", HFILL }},
    { &hf_lppe_ecid_lte_HeNB_CellData,
      { "ecid-lte-HeNB-CellData", "lppe.ecid_lte_HeNB_CellData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_LTE_CellData", HFILL }},
    { &hf_lppe_cellIdentity_01,
      { "cellIdentity", "lppe.cellIdentity",
        FT_BYTES, BASE_NONE, NULL, 0,
        "BIT_STRING_SIZE_28", HFILL }},
    { &hf_lppe_dl_CarrierFreq,
      { "dl-CarrierFreq", "lppe.dl_CarrierFreq",
        FT_UINT32, BASE_DEC, NULL, 0,
        "ARFCN_ValueEUTRA", HFILL }},
    { &hf_lppe_rs_transmit_power,
      { "rs-transmit-power", "lppe.rs_transmit_power",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M127_128", HFILL }},
    { &hf_lppe_antennaPortConfig,
      { "antennaPortConfig", "lppe.antennaPortConfig",
        FT_UINT32, BASE_DEC, VALS(lppe_T_antennaPortConfig_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_antenna_gain,
      { "antenna-gain", "lppe.antenna_gain",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M127_128", HFILL }},
    { &hf_lppe_beam_width,
      { "beam-width", "lppe.beam_width",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_360", HFILL }},
    { &hf_lppe_transmit_direction,
      { "transmit-direction", "lppe.transmit_direction",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_360", HFILL }},
    { &hf_lppe_frequency_accuracy,
      { "frequency-accuracy", "lppe.frequency_accuracy",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_100", HFILL }},
    { &hf_lppe_dl_CarrierFreq_ext,
      { "dl-CarrierFreq-ext", "lppe.dl_CarrierFreq_ext",
        FT_UINT32, BASE_DEC, NULL, 0,
        "ARFCN_ValueEUTRA_v9a0", HFILL }},
    { &hf_lppe_eNBrequestedAD,
      { "eNBrequestedAD", "lppe.eNBrequestedAD",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_heNBrequestedAD,
      { "heNBrequestedAD", "lppe.heNBrequestedAD",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ecid_LTE_CombinedLocationInformation,
      { "ecid-LTE-CombinedLocationInformation", "lppe.ecid_LTE_CombinedLocationInformation",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_maxLTEECIDSize_OF_OMA_LPPe_ECID_LTE_LocationInformationList", HFILL }},
    { &hf_lppe_ecid_LTE_CombinedLocationInformation_item,
      { "OMA-LPPe-ECID-LTE-LocationInformationList", "lppe.OMA_LPPe_ECID_LTE_LocationInformationList_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ecid_LTE_LocationInformation,
      { "ecid-LTE-LocationInformation", "lppe.ecid_LTE_LocationInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_LTE_LocationInformation", HFILL }},
    { &hf_lppe_relativeTimeStamp,
      { "relativeTimeStamp", "lppe.relativeTimeStamp",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_65535", HFILL }},
    { &hf_lppe_servingFlag,
      { "servingFlag", "lppe.servingFlag",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_lpp_ECID_SignalMeasurementInformation,
      { "lpp-ECID-SignalMeasurementInformation", "lppe.lpp_ECID_SignalMeasurementInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "ECID_SignalMeasurementInformation", HFILL }},
    { &hf_lppe_requestedMeasurements,
      { "requestedMeasurements", "lppe.requestedMeasurements",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ecid_lte_MeasSupported,
      { "ecid-lte-MeasSupported", "lppe.ecid_lte_MeasSupported",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ecid_lte_eNodeB_ADSupported,
      { "ecid-lte-eNodeB-ADSupported", "lppe.ecid_lte_eNodeB_ADSupported",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ecid_utra_HeNB_ADSupported,
      { "ecid-utra-HeNB-ADSupported", "lppe.ecid_utra_HeNB_ADSupported",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_locationServerErrorCauses_03,
      { "locationServerErrorCauses", "lppe.locationServerErrorCauses_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_LTE_LocationServerErrorCauses", HFILL }},
    { &hf_lppe_targetDeviceErrorCauses_03,
      { "targetDeviceErrorCauses", "lppe.targetDeviceErrorCauses_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_LTE_TargetDeviceErrorCauses", HFILL }},
    { &hf_lppe_cause_06,
      { "cause", "lppe.cause",
        FT_UINT32, BASE_DEC, VALS(lppe_T_cause_06_vals), 0,
        "T_cause_06", HFILL }},
    { &hf_lppe_eNodeBMandatoryDataUnavailable,
      { "eNodeBMandatoryDataUnavailable", "lppe.eNodeBMandatoryDataUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_eNodeBLocationsUnavailable,
      { "eNodeBLocationsUnavailable", "lppe.eNodeBLocationsUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_eNodeBcellTransmitPowerUnavailable,
      { "eNodeBcellTransmitPowerUnavailable", "lppe.eNodeBcellTransmitPowerUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_eNodeBcellAntennaPortConfigUnavailable,
      { "eNodeBcellAntennaPortConfigUnavailable", "lppe.eNodeBcellAntennaPortConfigUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_eNodeBcallAntennaGainUnavailable,
      { "eNodeBcallAntennaGainUnavailable", "lppe.eNodeBcallAntennaGainUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_eNodeBcellBeamWidthUnavailable,
      { "eNodeBcellBeamWidthUnavailable", "lppe.eNodeBcellBeamWidthUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_eNodeBcellTransmitDirectionUnavailable,
      { "eNodeBcellTransmitDirectionUnavailable", "lppe.eNodeBcellTransmitDirectionUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_eNodeBcellFrequencyAccuracyUnavailable,
      { "eNodeBcellFrequencyAccuracyUnavailable", "lppe.eNodeBcellFrequencyAccuracyUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_eNodeBnonservingADUnavailable,
      { "eNodeBnonservingADUnavailable", "lppe.eNodeBnonservingADUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_heNBMandatoryDataUnavailable,
      { "heNBMandatoryDataUnavailable", "lppe.heNBMandatoryDataUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_heNBLocationUnavailable,
      { "heNBLocationUnavailable", "lppe.heNBLocationUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_heNBLocationReliabilityUnavailable,
      { "heNBLocationReliabilityUnavailable", "lppe.heNBLocationReliabilityUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_heNBcellTransmitPowerUnavailable,
      { "heNBcellTransmitPowerUnavailable", "lppe.heNBcellTransmitPowerUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_heNBcellAntennaPortConfigUnavailable,
      { "heNBcellAntennaPortConfigUnavailable", "lppe.heNBcellAntennaPortConfigUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_heNBcellFrequencyAccuracyUnavailable,
      { "heNBcellFrequencyAccuracyUnavailable", "lppe.heNBcellFrequencyAccuracyUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_heNBCoverageAreaUnavailable,
      { "heNBCoverageAreaUnavailable", "lppe.heNBCoverageAreaUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_heNBnonservingADUnavailable,
      { "heNBnonservingADUnavailable", "lppe.heNBnonservingADUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_cause_07,
      { "cause", "lppe.cause",
        FT_UINT32, BASE_DEC, VALS(lppe_T_cause_07_vals), 0,
        "T_cause_07", HFILL }},
    { &hf_lppe_rsrpMeasurementNotPossible,
      { "rsrpMeasurementNotPossible", "lppe.rsrpMeasurementNotPossible_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_rsrqMeasurementNotPossible,
      { "rsrqMeasurementNotPossible", "lppe.rsrqMeasurementNotPossible_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ueRxTxMeasurementNotPossible,
      { "ueRxTxMeasurementNotPossible", "lppe.ueRxTxMeasurementNotPossible_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_non_servingMeasurementsNotAvailable,
      { "non-servingMeasurementsNotAvailable", "lppe.non_servingMeasurementsNotAvailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_historicMeasurementsNotAvailable,
      { "historicMeasurementsNotAvailable", "lppe.historicMeasurementsNotAvailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ecid_gsm_NetworkData,
      { "ecid-gsm-NetworkData", "lppe.ecid_gsm_NetworkData",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_maxGSMNetworks_OF_OMA_LPPe_ECID_GSM_NetworkData", HFILL }},
    { &hf_lppe_ecid_gsm_NetworkData_item,
      { "OMA-LPPe-ECID-GSM-NetworkData", "lppe.OMA_LPPe_ECID_GSM_NetworkData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ecid_gsm_Error,
      { "ecid-gsm-Error", "lppe.ecid_gsm_Error",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_ECID_GSM_Error_vals), 0,
        "OMA_LPPe_ECID_GSM_Error", HFILL }},
    { &hf_lppe_plmn_Identity_01,
      { "plmn-Identity", "lppe.plmn_Identity_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "T_plmn_Identity_01", HFILL }},
    { &hf_lppe_mcc_01,
      { "mcc", "lppe.mcc",
        FT_UINT32, BASE_DEC, NULL, 0,
        "T_mcc_01", HFILL }},
    { &hf_lppe_mnc_01,
      { "mnc", "lppe.mnc",
        FT_UINT32, BASE_DEC, NULL, 0,
        "T_mnc_01", HFILL }},
    { &hf_lppe_base_station_list,
      { "base-station-list", "lppe.base_station_list",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_maxGSMBaseStations_OF_OMA_LPPe_ECID_GSM_BaseStationData", HFILL }},
    { &hf_lppe_base_station_list_item,
      { "OMA-LPPe-ECID-GSM-BaseStationData", "lppe.OMA_LPPe_ECID_GSM_BaseStationData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ecid_gsm_CellData,
      { "ecid-gsm-CellData", "lppe.ecid_gsm_CellData",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_maxGSMCells_OF_OMA_LPPe_ECID_GSM_CellData", HFILL }},
    { &hf_lppe_ecid_gsm_CellData_item,
      { "OMA-LPPe-ECID-GSM-CellData", "lppe.OMA_LPPe_ECID_GSM_CellData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_cellNonUniqueIDGERAN,
      { "cellNonUniqueIDGERAN", "lppe.cellNonUniqueIDGERAN_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_CellNonUniqueIDGERAN", HFILL }},
    { &hf_lppe_cellLocalIDGERAN,
      { "cellLocalIDGERAN", "lppe.cellLocalIDGERAN_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_CellLocalIdGERAN", HFILL }},
    { &hf_lppe_transmit_power,
      { "transmit-power", "lppe.transmit_power",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M127_128", HFILL }},
    { &hf_lppe_requestedAD,
      { "requestedAD", "lppe.requestedAD",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ecid_GSM_CombinedLocationInformation,
      { "ecid-GSM-CombinedLocationInformation", "lppe.ecid_GSM_CombinedLocationInformation",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_maxGSMECIDSize_OF_OMA_LPPe_ECID_GSM_LocationInformationList", HFILL }},
    { &hf_lppe_ecid_GSM_CombinedLocationInformation_item,
      { "OMA-LPPe-ECID-GSM-LocationInformationList", "lppe.OMA_LPPe_ECID_GSM_LocationInformationList_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ecid_GSM_Error,
      { "ecid-GSM-Error", "lppe.ecid_GSM_Error",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_ECID_GSM_Error_vals), 0,
        "OMA_LPPe_ECID_GSM_Error", HFILL }},
    { &hf_lppe_ecid_GSM_LocationInformation,
      { "ecid-GSM-LocationInformation", "lppe.ecid_GSM_LocationInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_GSM_LocationInformation", HFILL }},
    { &hf_lppe_cellGlobalIdGERAN,
      { "cellGlobalIdGERAN", "lppe.cellGlobalIdGERAN_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_rxLevel,
      { "rxLevel", "lppe.rxLevel",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_63", HFILL }},
    { &hf_lppe_tA,
      { "tA", "lppe.tA",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_255", HFILL }},
    { &hf_lppe_nMR_GERAN,
      { "nMR-GERAN", "lppe.nMR_GERAN",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_NMR_GERAN", HFILL }},
    { &hf_lppe_OMA_LPPe_NMR_GERAN_item,
      { "OMA-LPPe-NMR-GERAN item", "lppe.OMA_LPPe_NMR_GERAN_item_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_requestedMeasurements_01,
      { "requestedMeasurements", "lppe.requestedMeasurements",
        FT_BYTES, BASE_NONE, NULL, 0,
        "T_requestedMeasurements_01", HFILL }},
    { &hf_lppe_ecid_gsm_MeasSupported,
      { "ecid-gsm-MeasSupported", "lppe.ecid_gsm_MeasSupported",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ecid_gsm_ADSupported,
      { "ecid-gsm-ADSupported", "lppe.ecid_gsm_ADSupported",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_locationServerErrorCauses_04,
      { "locationServerErrorCauses", "lppe.locationServerErrorCauses_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_GSM_LocationServerErrorCauses", HFILL }},
    { &hf_lppe_targetDeviceErrorCauses_04,
      { "targetDeviceErrorCauses", "lppe.targetDeviceErrorCauses_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_GSM_TargetDeviceErrorCauses", HFILL }},
    { &hf_lppe_cause_08,
      { "cause", "lppe.cause",
        FT_UINT32, BASE_DEC, VALS(lppe_T_cause_08_vals), 0,
        "T_cause_08", HFILL }},
    { &hf_lppe_mandatoryDataUnavailable,
      { "mandatoryDataUnavailable", "lppe.mandatoryDataUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_bsLocationsUnavailable,
      { "bsLocationsUnavailable", "lppe.bsLocationsUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_cellTransmitPowerUnavailable,
      { "cellTransmitPowerUnavailable", "lppe.cellTransmitPowerUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_callAntennaGainUnavailable,
      { "callAntennaGainUnavailable", "lppe.callAntennaGainUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_cellBeamWidthUnavailable,
      { "cellBeamWidthUnavailable", "lppe.cellBeamWidthUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_cellTransmitDirectionUnavailable,
      { "cellTransmitDirectionUnavailable", "lppe.cellTransmitDirectionUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_cellFrequencyAccuracyUnavailable,
      { "cellFrequencyAccuracyUnavailable", "lppe.cellFrequencyAccuracyUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_nonservingADUnavailable,
      { "nonservingADUnavailable", "lppe.nonservingADUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_cause_09,
      { "cause", "lppe.cause",
        FT_UINT32, BASE_DEC, VALS(lppe_T_cause_09_vals), 0,
        "T_cause_09", HFILL }},
    { &hf_lppe_rxLevelMeasurementNotPossible,
      { "rxLevelMeasurementNotPossible", "lppe.rxLevelMeasurementNotPossible_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_taMeasurementNotPossible,
      { "taMeasurementNotPossible", "lppe.taMeasurementNotPossible_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_nMRMeasurementNotPossible,
      { "nMRMeasurementNotPossible", "lppe.nMRMeasurementNotPossible_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ecid_UTRA_NetworkData,
      { "ecid-UTRA-NetworkData", "lppe.ecid_UTRA_NetworkData",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_maxUTRANetworks_OF_OMA_LPPe_ECID_UTRA_NetworkData", HFILL }},
    { &hf_lppe_ecid_UTRA_NetworkData_item,
      { "OMA-LPPe-ECID-UTRA-NetworkData", "lppe.OMA_LPPe_ECID_UTRA_NetworkData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ecid_UTRA_Error,
      { "ecid-UTRA-Error", "lppe.ecid_UTRA_Error",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_ECID_UTRA_Error_vals), 0,
        "OMA_LPPe_ECID_UTRA_Error", HFILL }},
    { &hf_lppe_plmn_Identity_02,
      { "plmn-Identity", "lppe.plmn_Identity_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "T_plmn_Identity_02", HFILL }},
    { &hf_lppe_mcc_02,
      { "mcc", "lppe.mcc",
        FT_UINT32, BASE_DEC, NULL, 0,
        "T_mcc_02", HFILL }},
    { &hf_lppe_mnc_02,
      { "mnc", "lppe.mnc",
        FT_UINT32, BASE_DEC, NULL, 0,
        "T_mnc_02", HFILL }},
    { &hf_lppe_ecid_utra_nodeB_list,
      { "ecid-utra-nodeB-list", "lppe.ecid_utra_nodeB_list",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_maxUTRAnodeBs_OF_OMA_LPPe_ECID_UTRA_NodeBData", HFILL }},
    { &hf_lppe_ecid_utra_nodeB_list_item,
      { "OMA-LPPe-ECID-UTRA-NodeBData", "lppe.OMA_LPPe_ECID_UTRA_NodeBData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ecid_utra_HNB_list,
      { "ecid-utra-HNB-list", "lppe.ecid_utra_HNB_list",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_maxUTRAHNBs_OF_OMA_LPPe_ECID_UTRA_HNBData", HFILL }},
    { &hf_lppe_ecid_utra_HNB_list_item,
      { "OMA-LPPe-ECID-UTRA-HNBData", "lppe.OMA_LPPe_ECID_UTRA_HNBData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ecid_utra_nodeB_CellData,
      { "ecid-utra-nodeB-CellData", "lppe.ecid_utra_nodeB_CellData",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_maxUTRAMacroCells_OF_OMA_LPPe_ECID_UTRA_CellData", HFILL }},
    { &hf_lppe_ecid_utra_nodeB_CellData_item,
      { "OMA-LPPe-ECID-UTRA-CellData", "lppe.OMA_LPPe_ECID_UTRA_CellData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ecid_utra_HNB_CellData,
      { "ecid-utra-HNB-CellData", "lppe.ecid_utra_HNB_CellData_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_UTRA_CellData", HFILL }},
    { &hf_lppe_cellIdentity_02,
      { "cellIdentity", "lppe.cellIdentity",
        FT_BYTES, BASE_NONE, NULL, 0,
        "BIT_STRING_SIZE_32", HFILL }},
    { &hf_lppe_modeSpecificInfo_04,
      { "modeSpecificInfo", "lppe.modeSpecificInfo",
        FT_UINT32, BASE_DEC, VALS(lppe_T_modeSpecificInfo_04_vals), 0,
        "T_modeSpecificInfo_04", HFILL }},
    { &hf_lppe_fdd_05,
      { "fdd", "lppe.fdd_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "T_fdd_05", HFILL }},
    { &hf_lppe_primaryCPICH_Scrambling_Code,
      { "primaryCPICH-Scrambling-Code", "lppe.primaryCPICH_Scrambling_Code",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_PrimaryScramblingCode", HFILL }},
    { &hf_lppe_primaryCPICH_Tx_Power,
      { "primaryCPICH-Tx-Power", "lppe.primaryCPICH_Tx_Power",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M127_128", HFILL }},
    { &hf_lppe_uarfcn_dl,
      { "uarfcn-dl", "lppe.uarfcn_dl",
        FT_UINT32, BASE_DEC, NULL, 0,
        "ARFCN_ValueUTRA", HFILL }},
    { &hf_lppe_tdd_05,
      { "tdd", "lppe.tdd_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "T_tdd_05", HFILL }},
    { &hf_lppe_primaryCCPCH_Tx_Power,
      { "primaryCCPCH-Tx-Power", "lppe.primaryCCPCH_Tx_Power",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M127_128", HFILL }},
    { &hf_lppe_uarfcn_nt,
      { "uarfcn-nt", "lppe.uarfcn_nt",
        FT_UINT32, BASE_DEC, NULL, 0,
        "ARFCN_ValueUTRA", HFILL }},
    { &hf_lppe_nBrequestedAD,
      { "nBrequestedAD", "lppe.nBrequestedAD",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_hNBrequestedAD,
      { "hNBrequestedAD", "lppe.hNBrequestedAD",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ecid_UTRA_CombinedLocationInformation,
      { "ecid-UTRA-CombinedLocationInformation", "lppe.ecid_UTRA_CombinedLocationInformation",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_maxECIDUTRASize_OF_OMA_LPPe_ECID_UTRA_LocationInformationList", HFILL }},
    { &hf_lppe_ecid_UTRA_CombinedLocationInformation_item,
      { "OMA-LPPe-ECID-UTRA-LocationInformationList", "lppe.OMA_LPPe_ECID_UTRA_LocationInformationList_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ecid_Error,
      { "ecid-Error", "lppe.ecid_Error",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_ECID_UTRA_Error_vals), 0,
        "OMA_LPPe_ECID_UTRA_Error", HFILL }},
    { &hf_lppe_ecid_utra_LocationInformation,
      { "ecid-utra-LocationInformation", "lppe.ecid_utra_LocationInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_UTRA_LocationInformation", HFILL }},
    { &hf_lppe_cellGlobalIdUTRA,
      { "cellGlobalIdUTRA", "lppe.cellGlobalIdUTRA_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "CellGlobalIdEUTRA_AndUTRA", HFILL }},
    { &hf_lppe_measuredResultsList,
      { "measuredResultsList", "lppe.measuredResultsList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_ECID_UTRA_MeasuredResultsList", HFILL }},
    { &hf_lppe_utratimingAdvance,
      { "utratimingAdvance", "lppe.utratimingAdvance_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_UTRA_UTRATimingAdvance", HFILL }},
    { &hf_lppe_tA_01,
      { "tA", "lppe.tA",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_8191", HFILL }},
    { &hf_lppe_tAResolution,
      { "tAResolution", "lppe.tAResolution",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_ECID_UTRA_TAResolution_vals), 0,
        "OMA_LPPe_ECID_UTRA_TAResolution", HFILL }},
    { &hf_lppe_chipRate,
      { "chipRate", "lppe.chipRate",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_ECID_UTRA_ChipRate_vals), 0,
        "OMA_LPPe_ECID_UTRA_ChipRate", HFILL }},
    { &hf_lppe_modeSpecificInfo_05,
      { "modeSpecificInfo", "lppe.modeSpecificInfo",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_UTRA_ModeSpecificInfo_vals), 0,
        "OMA_LPPe_UTRA_ModeSpecificInfo", HFILL }},
    { &hf_lppe_fdd_06,
      { "fdd", "lppe.fdd_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_UTRA_FrequencyInfoFDD", HFILL }},
    { &hf_lppe_tdd_06,
      { "tdd", "lppe.tdd_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_UTRA_FrequencyInfoTDD", HFILL }},
    { &hf_lppe_uarfcn_UL,
      { "uarfcn-UL", "lppe.uarfcn_UL",
        FT_UINT32, BASE_DEC, NULL, 0,
        "ARFCN_ValueUTRA", HFILL }},
    { &hf_lppe_uarfcn_DL,
      { "uarfcn-DL", "lppe.uarfcn_DL",
        FT_UINT32, BASE_DEC, NULL, 0,
        "ARFCN_ValueUTRA", HFILL }},
    { &hf_lppe_uarfcn_Nt,
      { "uarfcn-Nt", "lppe.uarfcn_Nt",
        FT_UINT32, BASE_DEC, NULL, 0,
        "ARFCN_ValueUTRA", HFILL }},
    { &hf_lppe_OMA_LPPe_ECID_UTRA_MeasuredResultsList_item,
      { "OMA-LPPe-ECID-UTRA-MeasuredResults", "lppe.OMA_LPPe_ECID_UTRA_MeasuredResults_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_utra_CarrierRSSI,
      { "utra-CarrierRSSI", "lppe.utra_CarrierRSSI",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_ECID_UTRA_CarrierRSSI", HFILL }},
    { &hf_lppe_cellMeasuredResultsList,
      { "cellMeasuredResultsList", "lppe.cellMeasuredResultsList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_ECID_UTRA_CellMeasuredResultsList", HFILL }},
    { &hf_lppe_OMA_LPPe_ECID_UTRA_CellMeasuredResultsList_item,
      { "OMA-LPPe-ECID-UTRA-CellMeasuredResults", "lppe.OMA_LPPe_ECID_UTRA_CellMeasuredResults_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_modeSpecificInfo_06,
      { "modeSpecificInfo", "lppe.modeSpecificInfo",
        FT_UINT32, BASE_DEC, VALS(lppe_T_modeSpecificInfo_05_vals), 0,
        "T_modeSpecificInfo_05", HFILL }},
    { &hf_lppe_fdd_07,
      { "fdd", "lppe.fdd_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "T_fdd_06", HFILL }},
    { &hf_lppe_primaryCPICH_Info,
      { "primaryCPICH-Info", "lppe.primaryCPICH_Info",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_OTDOA_UTRA_PrimaryScramblingCode", HFILL }},
    { &hf_lppe_cpich_Ec_N0,
      { "cpich-Ec-N0", "lppe.cpich_Ec_N0",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_ECID_UTRA_CPICH_Ec_N0", HFILL }},
    { &hf_lppe_cpich_RSCP,
      { "cpich-RSCP", "lppe.cpich_RSCP",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_ECID_UTRA_CPICH_RSCP", HFILL }},
    { &hf_lppe_pathloss,
      { "pathloss", "lppe.pathloss",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_ECID_UTRA_Pathloss", HFILL }},
    { &hf_lppe_tdd_07,
      { "tdd", "lppe.tdd_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "T_tdd_06", HFILL }},
    { &hf_lppe_primaryCCPCH_RSCP,
      { "primaryCCPCH-RSCP", "lppe.primaryCCPCH_RSCP",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_ECID_UTRA_PrimaryCCPCH_RSCP", HFILL }},
    { &hf_lppe_requestedMeasurements_02,
      { "requestedMeasurements", "lppe.requestedMeasurements",
        FT_BYTES, BASE_NONE, NULL, 0,
        "T_requestedMeasurements_02", HFILL }},
    { &hf_lppe_ecid_utra_MeasSupported,
      { "ecid-utra-MeasSupported", "lppe.ecid_utra_MeasSupported",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ecid_utra_nodeB_ADSupported,
      { "ecid-utra-nodeB-ADSupported", "lppe.ecid_utra_nodeB_ADSupported",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ecid_utra_HNB_ADSupported,
      { "ecid-utra-HNB-ADSupported", "lppe.ecid_utra_HNB_ADSupported",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_locationServerErrorCauses_05,
      { "locationServerErrorCauses", "lppe.locationServerErrorCauses_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_UTRA_LocationServerErrorCauses", HFILL }},
    { &hf_lppe_targetDeviceErrorCauses_05,
      { "targetDeviceErrorCauses", "lppe.targetDeviceErrorCauses_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_UTRA_TargetDeviceErrorCauses", HFILL }},
    { &hf_lppe_cause_10,
      { "cause", "lppe.cause",
        FT_UINT32, BASE_DEC, VALS(lppe_T_cause_10_vals), 0,
        "T_cause_10", HFILL }},
    { &hf_lppe_nodeBMandatoryDataUnavailable,
      { "nodeBMandatoryDataUnavailable", "lppe.nodeBMandatoryDataUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_nodeBLocationUnavailable,
      { "nodeBLocationUnavailable", "lppe.nodeBLocationUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_nodeBcellTransmitPowerUnavailable,
      { "nodeBcellTransmitPowerUnavailable", "lppe.nodeBcellTransmitPowerUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_nodeBcallAntennaGainUnavailable,
      { "nodeBcallAntennaGainUnavailable", "lppe.nodeBcallAntennaGainUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_nodeBcellBeamWidthUnavailable,
      { "nodeBcellBeamWidthUnavailable", "lppe.nodeBcellBeamWidthUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_nodeBcellTransmitDirectionUnavailable,
      { "nodeBcellTransmitDirectionUnavailable", "lppe.nodeBcellTransmitDirectionUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_nodeBcellFrequencyAccuracyUnavailable,
      { "nodeBcellFrequencyAccuracyUnavailable", "lppe.nodeBcellFrequencyAccuracyUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_nodeBnonservingADUnavailable,
      { "nodeBnonservingADUnavailable", "lppe.nodeBnonservingADUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_hNBMandatoryDataUnavailable,
      { "hNBMandatoryDataUnavailable", "lppe.hNBMandatoryDataUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_hNBLocationUnavailable,
      { "hNBLocationUnavailable", "lppe.hNBLocationUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_hNBLocationReliabilityUnavailable,
      { "hNBLocationReliabilityUnavailable", "lppe.hNBLocationReliabilityUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_hNBcellTransmitPowerUnavailable,
      { "hNBcellTransmitPowerUnavailable", "lppe.hNBcellTransmitPowerUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_hNBcellFrequencyAccuracyUnavailable,
      { "hNBcellFrequencyAccuracyUnavailable", "lppe.hNBcellFrequencyAccuracyUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_hNBCoverageAreaUnavailable,
      { "hNBCoverageAreaUnavailable", "lppe.hNBCoverageAreaUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_hNBnonservingADUnavailable,
      { "hNBnonservingADUnavailable", "lppe.hNBnonservingADUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_cause_11,
      { "cause", "lppe.cause",
        FT_UINT32, BASE_DEC, VALS(lppe_T_cause_11_vals), 0,
        "T_cause_11", HFILL }},
    { &hf_lppe_mRLMeasurementsNotPossible,
      { "mRLMeasurementsNotPossible", "lppe.mRLMeasurementsNotPossible_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_tdd_timingAdvanceMeasurementNotPossible,
      { "tdd-timingAdvanceMeasurementNotPossible", "lppe.tdd_timingAdvanceMeasurementNotPossible_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_mRL_utra_CarrierRSSIMeasurementNotPossible,
      { "mRL-utra-CarrierRSSIMeasurementNotPossible", "lppe.mRL_utra_CarrierRSSIMeasurementNotPossible_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_mRL_FDD_cpich_Ec_N0MeasurementNotPossible,
      { "mRL-FDD-cpich-Ec-N0MeasurementNotPossible", "lppe.mRL_FDD_cpich_Ec_N0MeasurementNotPossible_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_mRL_FDD_cpich_RSCPMeasurementNotPossible,
      { "mRL-FDD-cpich-RSCPMeasurementNotPossible", "lppe.mRL_FDD_cpich_RSCPMeasurementNotPossible_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_mRL_FDD_pathlossMeasurementNotPossible,
      { "mRL-FDD-pathlossMeasurementNotPossible", "lppe.mRL_FDD_pathlossMeasurementNotPossible_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_mRL_TDD_primaryCCPCH_RSCPMeasurementNotPossible,
      { "mRL-TDD-primaryCCPCH-RSCPMeasurementNotPossible", "lppe.mRL_TDD_primaryCCPCH_RSCPMeasurementNotPossible_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_mRL_TDD_pathlossMeasurementNotPossible,
      { "mRL-TDD-pathlossMeasurementNotPossible", "lppe.mRL_TDD_pathlossMeasurementNotPossible_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_wlan_DataSet,
      { "wlan-DataSet", "lppe.wlan_DataSet",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_maxWLANDataSets_OF_OMA_LPPe_WLAN_DataSet", HFILL }},
    { &hf_lppe_wlan_DataSet_item,
      { "OMA-LPPe-WLAN-DataSet", "lppe.OMA_LPPe_WLAN_DataSet_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_wlan_AP_Error,
      { "wlan-AP-Error", "lppe.wlan_AP_Error",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_WLAN_AP_Error_vals), 0,
        "OMA_LPPe_WLAN_AP_Error", HFILL }},
    { &hf_lppe_plmn_Identity_03,
      { "plmn-Identity", "lppe.plmn_Identity_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "T_plmn_Identity_03", HFILL }},
    { &hf_lppe_mcc_03,
      { "mcc", "lppe.mcc",
        FT_UINT32, BASE_DEC, NULL, 0,
        "T_mcc_03", HFILL }},
    { &hf_lppe_mnc_03,
      { "mnc", "lppe.mnc",
        FT_UINT32, BASE_DEC, NULL, 0,
        "T_mnc_03", HFILL }},
    { &hf_lppe_supported_channels_11a,
      { "supported-channels-11a", "lppe.supported_channels_11a_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_supported_channels_11bg,
      { "supported-channels-11bg", "lppe.supported_channels_11bg_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_wlan_ap_list,
      { "wlan-ap-list", "lppe.wlan_ap_list",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_maxWLANAPs_OF_OMA_LPPe_WLAN_AP_Data", HFILL }},
    { &hf_lppe_wlan_ap_list_item,
      { "OMA-LPPe-WLAN-AP-Data", "lppe.OMA_LPPe_WLAN_AP_Data_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ch34,
      { "ch34", "lppe.ch34",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ch36,
      { "ch36", "lppe.ch36",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ch38,
      { "ch38", "lppe.ch38",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ch40,
      { "ch40", "lppe.ch40",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ch42,
      { "ch42", "lppe.ch42",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ch44,
      { "ch44", "lppe.ch44",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ch46,
      { "ch46", "lppe.ch46",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ch48,
      { "ch48", "lppe.ch48",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ch52,
      { "ch52", "lppe.ch52",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ch56,
      { "ch56", "lppe.ch56",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ch60,
      { "ch60", "lppe.ch60",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ch64,
      { "ch64", "lppe.ch64",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ch149,
      { "ch149", "lppe.ch149",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ch153,
      { "ch153", "lppe.ch153",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ch157,
      { "ch157", "lppe.ch157",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ch161,
      { "ch161", "lppe.ch161",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ch1,
      { "ch1", "lppe.ch1",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ch2,
      { "ch2", "lppe.ch2",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ch3,
      { "ch3", "lppe.ch3",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ch4,
      { "ch4", "lppe.ch4",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ch5,
      { "ch5", "lppe.ch5",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ch6,
      { "ch6", "lppe.ch6",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ch7,
      { "ch7", "lppe.ch7",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ch8,
      { "ch8", "lppe.ch8",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ch9,
      { "ch9", "lppe.ch9",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ch10,
      { "ch10", "lppe.ch10",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ch11,
      { "ch11", "lppe.ch11",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ch12,
      { "ch12", "lppe.ch12",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ch13,
      { "ch13", "lppe.ch13",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_ch14,
      { "ch14", "lppe.ch14",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_wlan_ap_id,
      { "wlan-ap-id", "lppe.wlan_ap_id_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_WLAN_AP_ID", HFILL }},
    { &hf_lppe_wlan_ap_Type_Data,
      { "wlan-ap-Type-Data", "lppe.wlan_ap_Type_Data",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_maxWLANTypes_OF_OMA_LPPe_WLAN_AP_Type_Data", HFILL }},
    { &hf_lppe_wlan_ap_Type_Data_item,
      { "OMA-LPPe-WLAN-AP-Type-Data", "lppe.OMA_LPPe_WLAN_AP_Type_Data_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_wlan_AP_Type,
      { "wlan-AP-Type", "lppe.wlan_AP_Type",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_WLAN_AP_Type_vals), 0,
        "OMA_LPPe_WLAN_AP_Type", HFILL }},
    { &hf_lppe_requestedAD_01,
      { "requestedAD", "lppe.requestedAD",
        FT_BYTES, BASE_NONE, NULL, 0,
        "T_requestedAD_01", HFILL }},
    { &hf_lppe_requestedAPTypes,
      { "requestedAPTypes", "lppe.requestedAPTypes",
        FT_BYTES, BASE_NONE, NULL, 0,
        "OMA_LPPe_WLAN_AP_Type_List", HFILL }},
    { &hf_lppe_wlan_AP_CombinedLocationInformation,
      { "wlan-AP-CombinedLocationInformation", "lppe.wlan_AP_CombinedLocationInformation",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_maxWLANAPSize_OF_OMA_LPPe_WLAN_AP_LocationInformationList", HFILL }},
    { &hf_lppe_wlan_AP_CombinedLocationInformation_item,
      { "OMA-LPPe-WLAN-AP-LocationInformationList", "lppe.OMA_LPPe_WLAN_AP_LocationInformationList_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_wlan_AP_LocationInformation,
      { "wlan-AP-LocationInformation", "lppe.wlan_AP_LocationInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_WLAN_AP_LocationInformation", HFILL }},
    { &hf_lppe_apMACAddress,
      { "apMACAddress", "lppe.apMACAddress_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_WLAN_AP_ID", HFILL }},
    { &hf_lppe_apSSID,
      { "apSSID", "lppe.apSSID",
        FT_BYTES, BASE_NONE, NULL, 0,
        "OCTET_STRING_SIZE_1_32", HFILL }},
    { &hf_lppe_apSignaltoNoise,
      { "apSignaltoNoise", "lppe.apSignaltoNoise",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M127_128", HFILL }},
    { &hf_lppe_apDeviceType,
      { "apDeviceType", "lppe.apDeviceType",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_WLAN_AP_Type_vals), 0,
        "OMA_LPPe_WLAN_AP_Type", HFILL }},
    { &hf_lppe_apPHYtype,
      { "apPHYtype", "lppe.apPHYtype",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_WLAN_AP_PHY_Type_vals), 0,
        "OMA_LPPe_WLAN_AP_PHY_Type", HFILL }},
    { &hf_lppe_apSignalStrength,
      { "apSignalStrength", "lppe.apSignalStrength",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M127_128", HFILL }},
    { &hf_lppe_apChannelFrequency,
      { "apChannelFrequency", "lppe.apChannelFrequency",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_256", HFILL }},
    { &hf_lppe_apRoundTripDelay,
      { "apRoundTripDelay", "lppe.apRoundTripDelay_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_WLAN_RTD", HFILL }},
    { &hf_lppe_ueTransmitPower,
      { "ueTransmitPower", "lppe.ueTransmitPower",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M127_128", HFILL }},
    { &hf_lppe_ueAntennaGain,
      { "ueAntennaGain", "lppe.ueAntennaGain",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M127_128", HFILL }},
    { &hf_lppe_apReportedLocation,
      { "apReportedLocation", "lppe.apReportedLocation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_WLAN_ReportedLocation", HFILL }},
    { &hf_lppe_apTransmitPower,
      { "apTransmitPower", "lppe.apTransmitPower",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M127_128", HFILL }},
    { &hf_lppe_apAntennaGain,
      { "apAntennaGain", "lppe.apAntennaGain",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M127_128", HFILL }},
    { &hf_lppe_ueSignaltoNoise,
      { "ueSignaltoNoise", "lppe.ueSignaltoNoise",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M127_128", HFILL }},
    { &hf_lppe_ueSignalStrength,
      { "ueSignalStrength", "lppe.ueSignalStrength",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M127_128", HFILL }},
    { &hf_lppe_apSignalStrengthDelta,
      { "apSignalStrengthDelta", "lppe.apSignalStrengthDelta",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_1", HFILL }},
    { &hf_lppe_ueSignalStrengthDelta,
      { "ueSignalStrengthDelta", "lppe.ueSignalStrengthDelta",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_1", HFILL }},
    { &hf_lppe_apSignaltoNoiseDelta,
      { "apSignaltoNoiseDelta", "lppe.apSignaltoNoiseDelta",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_1", HFILL }},
    { &hf_lppe_ueSignaltoNoiseDelta,
      { "ueSignaltoNoiseDelta", "lppe.ueSignaltoNoiseDelta",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_1", HFILL }},
    { &hf_lppe_operatingClass,
      { "operatingClass", "lppe.operatingClass",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_255", HFILL }},
    { &hf_lppe_ueMacAddress,
      { "ueMacAddress", "lppe.ueMacAddress",
        FT_BYTES, BASE_NONE, NULL, 0,
        "BIT_STRING_SIZE_48", HFILL }},
    { &hf_lppe_rTDValue,
      { "rTDValue", "lppe.rTDValue",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_16777215", HFILL }},
    { &hf_lppe_rTDUnits,
      { "rTDUnits", "lppe.rTDUnits",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_WLAN_RTDUnits_vals), 0,
        "OMA_LPPe_WLAN_RTDUnits", HFILL }},
    { &hf_lppe_rTDAccuracy,
      { "rTDAccuracy", "lppe.rTDAccuracy",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_255", HFILL }},
    { &hf_lppe_locationDataLCI,
      { "locationDataLCI", "lppe.locationDataLCI_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_WLAN_LocationDataLCI", HFILL }},
    { &hf_lppe_latitudeResolution,
      { "latitudeResolution", "lppe.latitudeResolution",
        FT_BYTES, BASE_NONE, NULL, 0,
        "BIT_STRING_SIZE_6", HFILL }},
    { &hf_lppe_oma_LPPe_WLAN_LocationDataLCI_latitude,
      { "latitude", "lppe.oMA-LPPe-WLAN-LocationDataLCI.latitude",
        FT_BYTES, BASE_NONE, NULL, 0,
        "BIT_STRING_SIZE_34", HFILL }},
    { &hf_lppe_longitudeResolution,
      { "longitudeResolution", "lppe.longitudeResolution",
        FT_BYTES, BASE_NONE, NULL, 0,
        "BIT_STRING_SIZE_6", HFILL }},
    { &hf_lppe_oma_LPPe_WLAN_LocationDataLCI_longitude,
      { "longitude", "lppe.oMA-LPPe-WLAN-LocationDataLCI.longitude",
        FT_BYTES, BASE_NONE, NULL, 0,
        "BIT_STRING_SIZE_34", HFILL }},
    { &hf_lppe_altitudeType,
      { "altitudeType", "lppe.altitudeType",
        FT_BYTES, BASE_NONE, NULL, 0,
        "BIT_STRING_SIZE_4", HFILL }},
    { &hf_lppe_altitudeResolution,
      { "altitudeResolution", "lppe.altitudeResolution",
        FT_BYTES, BASE_NONE, NULL, 0,
        "BIT_STRING_SIZE_6", HFILL }},
    { &hf_lppe_oma_LPPe_WLAN_LocationDataLCI_altitude,
      { "altitude", "lppe.oMA-LPPe-WLAN-LocationDataLCI.altitude",
        FT_BYTES, BASE_NONE, NULL, 0,
        "BIT_STRING_SIZE_30", HFILL }},
    { &hf_lppe_datum,
      { "datum", "lppe.datum",
        FT_BYTES, BASE_NONE, NULL, 0,
        "BIT_STRING_SIZE_8", HFILL }},
    { &hf_lppe_requestedMeasurements_03,
      { "requestedMeasurements", "lppe.requestedMeasurements",
        FT_BYTES, BASE_NONE, NULL, 0,
        "T_requestedMeasurements_03", HFILL }},
    { &hf_lppe_additionalRequestedMeasurements,
      { "additionalRequestedMeasurements", "lppe.additionalRequestedMeasurements",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_wlan_ecid_MeasSupported,
      { "wlan-ecid-MeasSupported", "lppe.wlan_ecid_MeasSupported",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_wlan_types_Supported,
      { "wlan-types-Supported", "lppe.wlan_types_Supported",
        FT_BYTES, BASE_NONE, NULL, 0,
        "OMA_LPPe_WLAN_AP_Type_List", HFILL }},
    { &hf_lppe_ap_Capability,
      { "ap-Capability", "lppe.ap_Capability_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_WLAN_AP_Capability", HFILL }},
    { &hf_lppe_wlan_ap_ADSupported,
      { "wlan-ap-ADSupported", "lppe.wlan_ap_ADSupported",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_additional_wlan_ecid_MeasSupported,
      { "additional-wlan-ecid-MeasSupported", "lppe.additional_wlan_ecid_MeasSupported",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_apTypes,
      { "apTypes", "lppe.apTypes",
        FT_BYTES, BASE_NONE, NULL, 0,
        "OMA_LPPe_WLAN_AP_Type_List", HFILL }},
    { &hf_lppe_locationServerErrorCauses_06,
      { "locationServerErrorCauses", "lppe.locationServerErrorCauses_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_WLAN_AP_LocationServerErrorCauses", HFILL }},
    { &hf_lppe_targetDeviceErrorCauses_06,
      { "targetDeviceErrorCauses", "lppe.targetDeviceErrorCauses_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_WLAN_AP_TargetDeviceErrorCauses", HFILL }},
    { &hf_lppe_cause_12,
      { "cause", "lppe.cause",
        FT_UINT32, BASE_DEC, VALS(lppe_T_cause_12_vals), 0,
        "T_cause_12", HFILL }},
    { &hf_lppe_apMandatoryDataUnavailable,
      { "apMandatoryDataUnavailable", "lppe.apMandatoryDataUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_apLocationsUnavailable,
      { "apLocationsUnavailable", "lppe.apLocationsUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_apLocationReliabilityUnavailable,
      { "apLocationReliabilityUnavailable", "lppe.apLocationReliabilityUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_apTransmitPowerUnavailable,
      { "apTransmitPowerUnavailable", "lppe.apTransmitPowerUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_apAntennaGainUnavailable,
      { "apAntennaGainUnavailable", "lppe.apAntennaGainUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_apCoverageAreaUnavailable,
      { "apCoverageAreaUnavailable", "lppe.apCoverageAreaUnavailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_apTPNotAvailable,
      { "apTPNotAvailable", "lppe.apTPNotAvailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_apAGNotAvailable,
      { "apAGNotAvailable", "lppe.apAGNotAvailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ueSNNotAvailable,
      { "ueSNNotAvailable", "lppe.ueSNNotAvailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ueRSSINotAvailable,
      { "ueRSSINotAvailable", "lppe.ueRSSINotAvailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ocNotAvailable,
      { "ocNotAvailable", "lppe.ocNotAvailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_cause_13,
      { "cause", "lppe.cause",
        FT_UINT32, BASE_DEC, VALS(lppe_T_cause_13_vals), 0,
        "T_cause_13", HFILL }},
    { &hf_lppe_apSSIDnotAvailable,
      { "apSSIDnotAvailable", "lppe.apSSIDnotAvailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_apSNMeasurementNotPossible,
      { "apSNMeasurementNotPossible", "lppe.apSNMeasurementNotPossible_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_apDevTypeNotAvailable,
      { "apDevTypeNotAvailable", "lppe.apDevTypeNotAvailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_apPhyTypeNotAvailable,
      { "apPhyTypeNotAvailable", "lppe.apPhyTypeNotAvailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_apRSSIMeasurementNotPossible,
      { "apRSSIMeasurementNotPossible", "lppe.apRSSIMeasurementNotPossible_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_apChanFreqNotAvailable,
      { "apChanFreqNotAvailable", "lppe.apChanFreqNotAvailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_apRTDMeasurementNotPossible,
      { "apRTDMeasurementNotPossible", "lppe.apRTDMeasurementNotPossible_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ueTPNotAvailable,
      { "ueTPNotAvailable", "lppe.ueTPNotAvailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ueAGNotAvailable,
      { "ueAGNotAvailable", "lppe.ueAGNotAvailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_apRecLocNotAvailable,
      { "apRecLocNotAvailable", "lppe.apRecLocNotAvailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ueMACAddressNotAvailable,
      { "ueMACAddressNotAvailable", "lppe.ueMACAddressNotAvailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ecid_wimax_CombinedLocationInformation,
      { "ecid-wimax-CombinedLocationInformation", "lppe.ecid_wimax_CombinedLocationInformation",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_maxWiMaxECIDSize_OF_OMA_LPPe_ECID_WiMax_LocationInformationList", HFILL }},
    { &hf_lppe_ecid_wimax_CombinedLocationInformation_item,
      { "OMA-LPPe-ECID-WiMax-LocationInformationList", "lppe.OMA_LPPe_ECID_WiMax_LocationInformationList_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_ecid_wimax_Error,
      { "ecid-wimax-Error", "lppe.ecid_wimax_Error",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_ECID_WiMax_Error_vals), 0,
        "OMA_LPPe_ECID_WiMax_Error", HFILL }},
    { &hf_lppe_ecid_wimax_LocationInformation,
      { "ecid-wimax-LocationInformation", "lppe.ecid_wimax_LocationInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_WiMax_LocationInformation", HFILL }},
    { &hf_lppe_wimaxBsID,
      { "wimaxBsID", "lppe.wimaxBsID_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_WiMax_WimaxBsID", HFILL }},
    { &hf_lppe_wimaxRTD,
      { "wimaxRTD", "lppe.wimaxRTD_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_WiMax_WimaxRTD", HFILL }},
    { &hf_lppe_wimaxNMRList,
      { "wimaxNMRList", "lppe.wimaxNMRList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_ECID_WiMax_WimaxNMRList", HFILL }},
    { &hf_lppe_bsID_MSB,
      { "bsID-MSB", "lppe.bsID_MSB",
        FT_BYTES, BASE_NONE, NULL, 0,
        "BIT_STRING_SIZE_24", HFILL }},
    { &hf_lppe_bsID_LSB,
      { "bsID-LSB", "lppe.bsID_LSB",
        FT_BYTES, BASE_NONE, NULL, 0,
        "BIT_STRING_SIZE_24", HFILL }},
    { &hf_lppe_rTD,
      { "rTD", "lppe.rTD",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_65535", HFILL }},
    { &hf_lppe_rTDstd,
      { "rTDstd", "lppe.rTDstd",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_1023", HFILL }},
    { &hf_lppe_OMA_LPPe_ECID_WiMax_WimaxNMRList_item,
      { "OMA-LPPe-ECID-WiMax-WimaxNMR", "lppe.OMA_LPPe_ECID_WiMax_WimaxNMR_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_relDelay,
      { "relDelay", "lppe.relDelay",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M32768_32767", HFILL }},
    { &hf_lppe_relDelaystd,
      { "relDelaystd", "lppe.relDelaystd",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_1023", HFILL }},
    { &hf_lppe_rSSI,
      { "rSSI", "lppe.rSSI",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_255", HFILL }},
    { &hf_lppe_rSSIstd,
      { "rSSIstd", "lppe.rSSIstd",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_63", HFILL }},
    { &hf_lppe_bSTxPower,
      { "bSTxPower", "lppe.bSTxPower",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_255", HFILL }},
    { &hf_lppe_cINR,
      { "cINR", "lppe.cINR",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_255", HFILL }},
    { &hf_lppe_cINRstd,
      { "cINRstd", "lppe.cINRstd",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_63", HFILL }},
    { &hf_lppe_bSLocation,
      { "bSLocation", "lppe.bSLocation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_WLAN_ReportedLocation", HFILL }},
    { &hf_lppe_requestedMeasurements_04,
      { "requestedMeasurements", "lppe.requestedMeasurements",
        FT_BYTES, BASE_NONE, NULL, 0,
        "T_requestedMeasurements_04", HFILL }},
    { &hf_lppe_ecid_wimax_MeasSupported,
      { "ecid-wimax-MeasSupported", "lppe.ecid_wimax_MeasSupported",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_locationServerErrorCauses_07,
      { "locationServerErrorCauses", "lppe.locationServerErrorCauses_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_WiMax_LocationServerErrorCauses", HFILL }},
    { &hf_lppe_targetDeviceErrorCauses_07,
      { "targetDeviceErrorCauses", "lppe.targetDeviceErrorCauses_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ECID_WiMax_TargetDeviceErrorCauses", HFILL }},
    { &hf_lppe_cause_14,
      { "cause", "lppe.cause",
        FT_UINT32, BASE_DEC, VALS(lppe_T_cause_14_vals), 0,
        "T_cause_14", HFILL }},
    { &hf_lppe_cause_15,
      { "cause", "lppe.cause",
        FT_UINT32, BASE_DEC, VALS(lppe_T_cause_15_vals), 0,
        "T_cause_15", HFILL }},
    { &hf_lppe_rTDMeasurementNotPossible,
      { "rTDMeasurementNotPossible", "lppe.rTDMeasurementNotPossible_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_rTDstdMeasurementNotPossible,
      { "rTDstdMeasurementNotPossible", "lppe.rTDstdMeasurementNotPossible_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_nMRrelDelayMeasurementNotPossible,
      { "nMRrelDelayMeasurementNotPossible", "lppe.nMRrelDelayMeasurementNotPossible_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_nMRrelDelaystdMeasurementNotPossible,
      { "nMRrelDelaystdMeasurementNotPossible", "lppe.nMRrelDelaystdMeasurementNotPossible_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_nMRrSSIMeasurementNotPossible,
      { "nMRrSSIMeasurementNotPossible", "lppe.nMRrSSIMeasurementNotPossible_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_nMRrSSIstdMeasurementNotPossible,
      { "nMRrSSIstdMeasurementNotPossible", "lppe.nMRrSSIstdMeasurementNotPossible_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_nMRbSTxPowerMeasurementNotPossible,
      { "nMRbSTxPowerMeasurementNotPossible", "lppe.nMRbSTxPowerMeasurementNotPossible_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_nMRcINRMeasurementNotPossible,
      { "nMRcINRMeasurementNotPossible", "lppe.nMRcINRMeasurementNotPossible_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_nMRcINRstdMeasurementNotPossible,
      { "nMRcINRstdMeasurementNotPossible", "lppe.nMRcINRstdMeasurementNotPossible_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_nMRbSLocationNotAvailable,
      { "nMRbSLocationNotAvailable", "lppe.nMRbSLocationNotAvailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_atmosphericPressureAD,
      { "atmosphericPressureAD", "lppe.atmosphericPressureAD_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AtmosphericPressureAD", HFILL }},
    { &hf_lppe_referencePressure,
      { "referencePressure", "lppe.referencePressure",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M20000_10000", HFILL }},
    { &hf_lppe_period,
      { "period", "lppe.period_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_pressureValidityPeriod,
      { "pressureValidityPeriod", "lppe.pressureValidityPeriod_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ValidityPeriod", HFILL }},
    { &hf_lppe_referencePressureRate,
      { "referencePressureRate", "lppe.referencePressureRate",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M128_127", HFILL }},
    { &hf_lppe_area_01,
      { "area", "lppe.area_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_pressureValidityArea,
      { "pressureValidityArea", "lppe.pressureValidityArea_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_PressureValidityArea", HFILL }},
    { &hf_lppe_centerPoint,
      { "centerPoint", "lppe.centerPoint_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "Ellipsoid_Point", HFILL }},
    { &hf_lppe_validityAreaWidth,
      { "validityAreaWidth", "lppe.validityAreaWidth",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_128", HFILL }},
    { &hf_lppe_validityAreaHeight,
      { "validityAreaHeight", "lppe.validityAreaHeight",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_128", HFILL }},
    { &hf_lppe_pressureSensorAD,
      { "pressureSensorAD", "lppe.pressureSensorAD_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_PressureSensorAD", HFILL }},
    { &hf_lppe_motionStateList,
      { "motionStateList", "lppe.motionStateList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_Sensor_MotionStateList", HFILL }},
    { &hf_lppe_sensorError,
      { "sensorError", "lppe.sensorError",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_Sensor_Error_vals), 0,
        "OMA_LPPe_Sensor_Error", HFILL }},
    { &hf_lppe_atmosphericPressure,
      { "atmosphericPressure", "lppe.atmosphericPressure_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AtmosphericPressure", HFILL }},
    { &hf_lppe_OMA_LPPe_Sensor_MotionStateList_item,
      { "OMA-LPPe-Sensor-MotionStateElement", "lppe.OMA_LPPe_Sensor_MotionStateElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_primaryMotionState,
      { "primaryMotionState", "lppe.primaryMotionState",
        FT_UINT32, BASE_DEC, VALS(lppe_T_primaryMotionState_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_secondaryMotionState,
      { "secondaryMotionState", "lppe.secondaryMotionState",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_pressureMeasurement,
      { "pressureMeasurement", "lppe.pressureMeasurement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_PressureMeasurement", HFILL }},
    { &hf_lppe_pressureStats,
      { "pressureStats", "lppe.pressureStats_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_calibrationPoints,
      { "calibrationPoints", "lppe.calibrationPoints",
        FT_UINT32, BASE_DEC, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_sensorMeanPressure,
      { "sensorMeanPressure", "lppe.sensorMeanPressure",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_30000_115000", HFILL }},
    { &hf_lppe_sensorStddevPressure,
      { "sensorStddevPressure", "lppe.sensorStddevPressure",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_2000", HFILL }},
    { &hf_lppe_duration_04,
      { "duration", "lppe.duration",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_5_40", HFILL }},
    { &hf_lppe_CalibrationPoints_item,
      { "CalibrationPoints item", "lppe.CalibrationPoints_item_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_pressure_01,
      { "pressure", "lppe.pressure_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_PressureMeasurement", HFILL }},
    { &hf_lppe_time,
      { "time", "lppe.time",
        FT_STRING, BASE_NONE, NULL, 0,
        "UTCTime", HFILL }},
    { &hf_lppe_location,
      { "location", "lppe.location_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "EllipsoidPointWithAltitudeAndUncertaintyEllipsoid", HFILL }},
    { &hf_lppe_motionState,
      { "motionState", "lppe.motionState",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_Sensor_MotionStateList", HFILL }},
    { &hf_lppe_velocity,
      { "velocity", "lppe.velocity",
        FT_UINT32, BASE_DEC, VALS(lpp_Velocity_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_sensorMeasurement,
      { "sensorMeasurement", "lppe.sensorMeasurement",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_30000_115000", HFILL }},
    { &hf_lppe_adjustment,
      { "adjustment", "lppe.adjustment",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M5000_5000", HFILL }},
    { &hf_lppe_uncertainty_01,
      { "uncertainty", "lppe.uncertainty_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_range,
      { "range", "lppe.range",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_1000", HFILL }},
    { &hf_lppe_confidence_01,
      { "confidence", "lppe.confidence",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_100", HFILL }},
    { &hf_lppe_temperature_01,
      { "temperature", "lppe.temperature",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M100_150", HFILL }},
    { &hf_lppe_motionStateReq,
      { "motionStateReq", "lppe.motionStateReq_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_Sensor_MotionStateRequest", HFILL }},
    { &hf_lppe_atmosphericPressureReq,
      { "atmosphericPressureReq", "lppe.atmosphericPressureReq_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_AtmosphericPressureRequest", HFILL }},
    { &hf_lppe_secondaryMotionStateRequest,
      { "secondaryMotionStateRequest", "lppe.secondaryMotionStateRequest_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_motionStateSupport,
      { "motionStateSupport", "lppe.motionStateSupport_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_secondarySupport,
      { "secondarySupport", "lppe.secondarySupport_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_atmosphericPressureADSupport,
      { "atmosphericPressureADSupport", "lppe.atmosphericPressureADSupport_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_atmosphericPressureSupport,
      { "atmosphericPressureSupport", "lppe.atmosphericPressureSupport_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_targetError,
      { "targetError", "lppe.targetError_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_Sensor_TargetError", HFILL }},
    { &hf_lppe_motionStateError,
      { "motionStateError", "lppe.motionStateError",
        FT_UINT32, BASE_DEC, VALS(lppe_T_motionStateError_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_secondaryMotionStateError,
      { "secondaryMotionStateError", "lppe.secondaryMotionStateError",
        FT_UINT32, BASE_DEC, VALS(lppe_T_secondaryMotionStateError_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_atmosphericPressureError,
      { "atmosphericPressureError", "lppe.atmosphericPressureError",
        FT_UINT32, BASE_DEC, VALS(lppe_T_atmosphericPressureError_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_srnGroup,
      { "srnGroup", "lppe.srnGroup",
        FT_UINT32, BASE_DEC, VALS(lppe_T_srnGroup_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_srnGroupList,
      { "srnGroupList", "lppe.srnGroupList_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SRN_SRNgroupList", HFILL }},
    { &hf_lppe_srnGroupUpdateResponse,
      { "srnGroupUpdateResponse", "lppe.srnGroupUpdateResponse",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_SRN_SRNgroupUpdateResponse", HFILL }},
    { &hf_lppe_antennaPattern,
      { "antennaPattern", "lppe.antennaPattern",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_SRN_AntennaPattern", HFILL }},
    { &hf_lppe_srnError,
      { "srnError", "lppe.srnError",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_SRN_Error_vals), 0,
        "OMA_LPPe_SRN_Error", HFILL }},
    { &hf_lppe_incompleteFlag,
      { "incompleteFlag", "lppe.incompleteFlag",
        FT_BOOLEAN, BASE_NONE, NULL, 0,
        "BOOLEAN", HFILL }},
    { &hf_lppe_defaultReferencePoint,
      { "defaultReferencePoint", "lppe.defaultReferencePoint_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ReferencePoint", HFILL }},
    { &hf_lppe_groupList,
      { "groupList", "lppe.groupList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_SRNgroup", HFILL }},
    { &hf_lppe_groupList_item,
      { "OMA-LPPe-SRN-SRNgroup", "lppe.OMA_LPPe_SRN_SRNgroup_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_srnGroupID,
      { "srnGroupID", "lppe.srnGroupID_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SRN_SRNgroupUniqueID", HFILL }},
    { &hf_lppe_defaultSRNtype,
      { "defaultSRNtype", "lppe.defaultSRNtype_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SRN_SRNtype", HFILL }},
    { &hf_lppe_referencePoint_01,
      { "referencePoint", "lppe.referencePoint_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ReferencePoint", HFILL }},
    { &hf_lppe_globalOrientation,
      { "globalOrientation", "lppe.globalOrientation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_srnsInGroupList,
      { "srnsInGroupList", "lppe.srnsInGroupList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNinfo", HFILL }},
    { &hf_lppe_srnsInGroupList_item,
      { "OMA-LPPe-SRN-SRNinfo", "lppe.OMA_LPPe_SRN_SRNinfo_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_srnID,
      { "srnID", "lppe.srnID_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SRN_SRNid", HFILL }},
    { &hf_lppe_srnType,
      { "srnType", "lppe.srnType_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SRN_SRNtype", HFILL }},
    { &hf_lppe_relativePosition,
      { "relativePosition", "lppe.relativePosition_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_RelativeLocation", HFILL }},
    { &hf_lppe_orientation,
      { "orientation", "lppe.orientation",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_Orientation_vals), 0,
        "OMA_LPPe_Orientation", HFILL }},
    { &hf_lppe_OMA_LPPe_SRN_SRNgroupUpdateResponse_item,
      { "OMA-LPPe-SRN-SRNgroupUpdateResponseElement", "lppe.OMA_LPPe_SRN_SRNgroupUpdateResponseElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_targetDataValidity,
      { "targetDataValidity", "lppe.targetDataValidity",
        FT_UINT32, BASE_DEC, VALS(lppe_T_targetDataValidity_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_updatedSRNgroup,
      { "updatedSRNgroup", "lppe.updatedSRNgroup_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SRN_SRNgroup", HFILL }},
    { &hf_lppe_OMA_LPPe_SRN_AntennaPattern_item,
      { "OMA-LPPe-SRN-AntennaPatternElement", "lppe.OMA_LPPe_SRN_AntennaPatternElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_identification,
      { "identification", "lppe.identification_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_vendorOrOperator,
      { "vendorOrOperator", "lppe.vendorOrOperator",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_VendorOrOperatorID_vals), 0,
        "OMA_LPPe_VendorOrOperatorID", HFILL }},
    { &hf_lppe_antennaPatternID,
      { "antennaPatternID", "lppe.antennaPatternID",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_65535", HFILL }},
    { &hf_lppe_antennaData,
      { "antennaData", "lppe.antennaData",
        FT_UINT32, BASE_DEC, VALS(lppe_T_antennaData_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_antennaPattern_01,
      { "antennaPattern", "lppe.antennaPattern_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SRN_AntennaPatternForChannels", HFILL }},
    { &hf_lppe_antennaContainer,
      { "antennaContainer", "lppe.antennaContainer",
        FT_BYTES, BASE_NONE, NULL, 0,
        "OCTET_STRING", HFILL }},
    { &hf_lppe_evenGrid,
      { "evenGrid", "lppe.evenGrid_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_inAzimuth,
      { "inAzimuth", "lppe.inAzimuth",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_200", HFILL }},
    { &hf_lppe_inElevation,
      { "inElevation", "lppe.inElevation",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_150", HFILL }},
    { &hf_lppe_patternList,
      { "patternList", "lppe.patternList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_maxChannels_OF_OMA_LPPe_SRN_ChannelResponse", HFILL }},
    { &hf_lppe_patternList_item,
      { "OMA-LPPe-SRN-ChannelResponse", "lppe.OMA_LPPe_SRN_ChannelResponse_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_channelNumber,
      { "channelNumber", "lppe.channelNumber",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_1_maxChannels", HFILL }},
    { &hf_lppe_responseInElevation,
      { "responseInElevation", "lppe.responseInElevation",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_7_901_OF_OMA_LPPe_SRN_ResponseInElevation", HFILL }},
    { &hf_lppe_responseInElevation_item,
      { "OMA-LPPe-SRN-ResponseInElevation", "lppe.OMA_LPPe_SRN_ResponseInElevation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_elevation_01,
      { "elevation", "lppe.elevation",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_900", HFILL }},
    { &hf_lppe_responseInAzimuth,
      { "responseInAzimuth", "lppe.responseInAzimuth",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_18_3601_OF_OMA_LPPe_SRN_ResponseInAzimuth", HFILL }},
    { &hf_lppe_responseInAzimuth_item,
      { "OMA-LPPe-SRN-ResponseInAzimuth", "lppe.OMA_LPPe_SRN_ResponseInAzimuth_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_azimuth_01,
      { "azimuth", "lppe.azimuth",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_3599", HFILL }},
    { &hf_lppe_response,
      { "response", "lppe.response_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_ComplexNumber", HFILL }},
    { &hf_lppe_amplitude,
      { "amplitude", "lppe.amplitude",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_1000", HFILL }},
    { &hf_lppe_phase,
      { "phase", "lppe.phase",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M1800_1799", HFILL }},
    { &hf_lppe_srnGroup_01,
      { "srnGroup", "lppe.srnGroup",
        FT_UINT32, BASE_DEC, VALS(lppe_T_srnGroup_01_vals), 0,
        "T_srnGroup_01", HFILL }},
    { &hf_lppe_srnGroupRequest,
      { "srnGroupRequest", "lppe.srnGroupRequest_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SRN_SRNgroupRequest", HFILL }},
    { &hf_lppe_srnGroupUpdateRequest,
      { "srnGroupUpdateRequest", "lppe.srnGroupUpdateRequest",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_SRN_SRNgroupUpdateRequest", HFILL }},
    { &hf_lppe_antennaPatternRequest,
      { "antennaPatternRequest", "lppe.antennaPatternRequest",
        FT_UINT32, BASE_DEC, NULL, 0,
        "OMA_LPPe_SRN_AntennaPatternRequest", HFILL }},
    { &hf_lppe_doNotProvideList,
      { "doNotProvideList", "lppe.doNotProvideList_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SRN_SRNProvideList", HFILL }},
    { &hf_lppe_doProvideList,
      { "doProvideList", "lppe.doProvideList_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SRN_SRNProvideList", HFILL }},
    { &hf_lppe_groupList_01,
      { "groupList", "lppe.groupList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_256_OF_OMA_LPPe_SRN_SRNgroupUniqueID", HFILL }},
    { &hf_lppe_groupList_item_01,
      { "OMA-LPPe-SRN-SRNgroupUniqueID", "lppe.OMA_LPPe_SRN_SRNgroupUniqueID_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_categoryList,
      { "categoryList", "lppe.categoryList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_Category", HFILL }},
    { &hf_lppe_categoryList_item,
      { "OMA-LPPe-SRN-Category", "lppe.OMA_LPPe_SRN_Category_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_OMA_LPPe_SRN_SRNgroupUpdateRequest_item,
      { "OMA-LPPe-SRN-SRNgroupUpdateRequestElement", "lppe.OMA_LPPe_SRN_SRNgroupUpdateRequestElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_provideIndicationOnly,
      { "provideIndicationOnly", "lppe.provideIndicationOnly_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_inTheGroup,
      { "inTheGroup", "lppe.inTheGroup",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNid", HFILL }},
    { &hf_lppe_inTheGroup_item,
      { "OMA-LPPe-SRN-SRNid", "lppe.OMA_LPPe_SRN_SRNid_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_OMA_LPPe_SRN_AntennaPatternRequest_item,
      { "OMA-LPPe-SRN-AntennaPatternRequestElement", "lppe.OMA_LPPe_SRN_AntennaPatternRequestElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_antennaPatternID_01,
      { "antennaPatternID", "lppe.antennaPatternID_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_srnMeasurementList,
      { "srnMeasurementList", "lppe.srnMeasurementList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_MeasurementElement", HFILL }},
    { &hf_lppe_srnMeasurementList_item,
      { "OMA-LPPe-SRN-MeasurementElement", "lppe.OMA_LPPe_SRN_MeasurementElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_srnCategory,
      { "srnCategory", "lppe.srnCategory_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SRN_Category", HFILL }},
    { &hf_lppe_measurementList,
      { "measurementList", "lppe.measurementList",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_srnMeasurementElement", HFILL }},
    { &hf_lppe_measurementList_item,
      { "OMA-LPPe-SRN-srnMeasurementElement", "lppe.OMA_LPPe_SRN_srnMeasurementElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_relativeTimeStamp_01,
      { "relativeTimeStamp", "lppe.relativeTimeStamp",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_1000", HFILL }},
    { &hf_lppe_rssi,
      { "rssi", "lppe.rssi",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M128_127", HFILL }},
    { &hf_lppe_rtd,
      { "rtd", "lppe.rtd_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_WLAN_RTD", HFILL }},
    { &hf_lppe_requestInfo,
      { "requestInfo", "lppe.requestInfo",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ReqLocInfo_Category", HFILL }},
    { &hf_lppe_requestInfo_item,
      { "OMA-LPPe-SRN-ReqLocInfo-Category", "lppe.OMA_LPPe_SRN_ReqLocInfo_Category_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_category,
      { "category", "lppe.category_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SRN_Category", HFILL }},
    { &hf_lppe_multipleMeasurements,
      { "multipleMeasurements", "lppe.multipleMeasurements",
        FT_UINT32, BASE_DEC, VALS(lppe_T_multipleMeasurements_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_allowedMeasurements,
      { "allowedMeasurements", "lppe.allowedMeasurements_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SRN_MeasurementMask", HFILL }},
    { &hf_lppe_historicMeasurementsRequested,
      { "historicMeasurementsRequested", "lppe.historicMeasurementsRequested_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_capabilitiesPerSRNCategory,
      { "capabilitiesPerSRNCategory", "lppe.capabilitiesPerSRNCategory",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ProvideCapabilitiesElement", HFILL }},
    { &hf_lppe_capabilitiesPerSRNCategory_item,
      { "OMA-LPPe-SRN-ProvideCapabilitiesElement", "lppe.OMA_LPPe_SRN_ProvideCapabilitiesElement_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_supportedMeasurements,
      { "supportedMeasurements", "lppe.supportedMeasurements_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SRN_MeasurementMask", HFILL }},
    { &hf_lppe_supportedAssistanceData,
      { "supportedAssistanceData", "lppe.supportedAssistanceData",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_historicMeasurementsSupported,
      { "historicMeasurementsSupported", "lppe.historicMeasurementsSupported_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_capabilitiesRequestedFor,
      { "capabilitiesRequestedFor", "lppe.capabilitiesRequestedFor",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_Category", HFILL }},
    { &hf_lppe_capabilitiesRequestedFor_item,
      { "OMA-LPPe-SRN-Category", "lppe.OMA_LPPe_SRN_Category_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_srnLocationServerErrorCauses,
      { "srnLocationServerErrorCauses", "lppe.srnLocationServerErrorCauses_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SRN_LocationServerErrorCauses", HFILL }},
    { &hf_lppe_srnTargetDeviceErrorCauses,
      { "srnTargetDeviceErrorCauses", "lppe.srnTargetDeviceErrorCauses_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SRN_TargetDeviceErrorCauses", HFILL }},
    { &hf_lppe_groupErrors,
      { "groupErrors", "lppe.groupErrors",
        FT_UINT32, BASE_DEC, VALS(lppe_T_groupErrors_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_groupUpdateErrors,
      { "groupUpdateErrors", "lppe.groupUpdateErrors",
        FT_UINT32, BASE_DEC, VALS(lppe_T_groupUpdateErrors_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_srnAntennaErrors,
      { "srnAntennaErrors", "lppe.srnAntennaErrors",
        FT_UINT32, BASE_DEC, VALS(lppe_T_srnAntennaErrors_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_srnErrorsPerCategory,
      { "srnErrorsPerCategory", "lppe.srnErrorsPerCategory",
        FT_UINT32, BASE_DEC, NULL, 0,
        "SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_TargetDeviceError", HFILL }},
    { &hf_lppe_srnErrorsPerCategory_item,
      { "OMA-LPPe-SRN-TargetDeviceError", "lppe.OMA_LPPe_SRN_TargetDeviceError_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_srnErrors,
      { "srnErrors", "lppe.srnErrors",
        FT_UINT32, BASE_DEC, VALS(lppe_T_srnErrors_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_rssiNotAvailable,
      { "rssiNotAvailable", "lppe.rssiNotAvailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_rtdNotAvailable,
      { "rtdNotAvailable", "lppe.rtdNotAvailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_multipleSetsNotAvailable,
      { "multipleSetsNotAvailable", "lppe.multipleSetsNotAvailable_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_srnDataVersion,
      { "srnDataVersion", "lppe.srnDataVersion",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_4294967295", HFILL }},
    { &hf_lppe_srnERP,
      { "srnERP", "lppe.srnERP",
        FT_INT32, BASE_DEC, NULL, 0,
        "INTEGER_M300_500", HFILL }},
    { &hf_lppe_srnAntennaInfo,
      { "srnAntennaInfo", "lppe.srnAntennaInfo_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_switchingPatternID,
      { "switchingPatternID", "lppe.switchingPatternID",
        FT_UINT32, BASE_DEC, NULL, 0,
        "INTEGER_0_65535", HFILL }},
    { &hf_lppe_srnTechnologyType,
      { "srnTechnologyType", "lppe.srnTechnologyType_element",
        FT_NONE, BASE_NONE, NULL, 0,
        "OMA_LPPe_SRN_Technologies", HFILL }},
    { &hf_lppe_srnVendorInformation,
      { "srnVendorInformation", "lppe.srnVendorInformation_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_vendor,
      { "vendor", "lppe.vendor",
        FT_UINT32, BASE_DEC, VALS(lppe_OMA_LPPe_VendorOrOperatorID_vals), 0,
        "OMA_LPPe_VendorOrOperatorID", HFILL }},
    { &hf_lppe_vendorInfo,
      { "vendorInfo", "lppe.vendorInfo",
        FT_BYTES, BASE_NONE, NULL, 0,
        "OCTET_STRING", HFILL }},
    { &hf_lppe_srn_id,
      { "srn-id", "lppe.srn_id",
        FT_UINT32, BASE_DEC, VALS(lppe_T_srn_id_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_mac,
      { "mac", "lppe.mac",
        FT_BYTES, BASE_NONE, NULL, 0,
        "BIT_STRING_SIZE_48", HFILL }},
    { &hf_lppe_nfc,
      { "nfc", "lppe.nfc_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_manufacturer,
      { "manufacturer", "lppe.manufacturer",
        FT_BYTES, BASE_NONE, NULL, 0,
        "BIT_STRING_SIZE_8", HFILL }},
    { &hf_lppe_uniqueNumber,
      { "uniqueNumber", "lppe.uniqueNumber",
        FT_BYTES, BASE_NONE, NULL, 0,
        "BIT_STRING_SIZE_48", HFILL }},
    { &hf_lppe_mobileCode,
      { "mobileCode", "lppe.mobileCode_element",
        FT_NONE, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_registryID,
      { "registryID", "lppe.registryID",
        FT_BYTES, BASE_NONE, NULL, 0,
        "BIT_STRING_SIZE_12", HFILL }},
    { &hf_lppe_remainingPart,
      { "remainingPart", "lppe.remainingPart",
        FT_BYTES, BASE_NONE, NULL, 0,
        "OCTET_STRING_SIZE_1_16", HFILL }},
    { &hf_lppe_resolutionIdentifier,
      { "resolutionIdentifier", "lppe.resolutionIdentifier",
        FT_BYTES, BASE_NONE, NULL, 0,
        "OCTET_STRING_SIZE_1_18", HFILL }},
    { &hf_lppe_other,
      { "other", "lppe.other",
        FT_BYTES, BASE_NONE, NULL, 0,
        "OCTET_STRING", HFILL }},
    { &hf_lppe_srnTechnologies,
      { "srnTechnologies", "lppe.srnTechnologies",
        FT_UINT32, BASE_DEC, VALS(lppe_T_srnTechnologies_vals), 0,
        NULL, HFILL }},
    { &hf_lppe_srnMeasurements,
      { "srnMeasurements", "lppe.srnMeasurements",
        FT_BYTES, BASE_NONE, NULL, 0,
        NULL, HFILL }},
    { &hf_lppe_OMA_LPPe_FixedAccessTypes_cable,
      { "cable", "lppe.OMA.LPPe.FixedAccessTypes.cable",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_OMA_LPPe_FixedAccessTypes_dsl,
      { "dsl", "lppe.OMA.LPPe.FixedAccessTypes.dsl",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_OMA_LPPe_FixedAccessTypes_lan,
      { "lan", "lppe.OMA.LPPe.FixedAccessTypes.lan",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_OMA_LPPe_FixedAccessTypes_pstn,
      { "pstn", "lppe.OMA.LPPe.FixedAccessTypes.pstn",
        FT_BOOLEAN, 8, NULL, 0x10,
        NULL, HFILL }},
    { &hf_lppe_OMA_LPPe_FixedAccessTypes_other,
      { "other", "lppe.OMA.LPPe.FixedAccessTypes.other",
        FT_BOOLEAN, 8, NULL, 0x08,
        NULL, HFILL }},
    { &hf_lppe_OMA_LPPe_WirelessAccessTypes_gsm,
      { "gsm", "lppe.OMA.LPPe.WirelessAccessTypes.gsm",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_OMA_LPPe_WirelessAccessTypes_utra,
      { "utra", "lppe.OMA.LPPe.WirelessAccessTypes.utra",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_OMA_LPPe_WirelessAccessTypes_lte,
      { "lte", "lppe.OMA.LPPe.WirelessAccessTypes.lte",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_OMA_LPPe_WirelessAccessTypes_wimax,
      { "wimax", "lppe.OMA.LPPe.WirelessAccessTypes.wimax",
        FT_BOOLEAN, 8, NULL, 0x10,
        NULL, HFILL }},
    { &hf_lppe_OMA_LPPe_WirelessAccessTypes_wifi,
      { "wifi", "lppe.OMA.LPPe.WirelessAccessTypes.wifi",
        FT_BOOLEAN, 8, NULL, 0x08,
        NULL, HFILL }},
    { &hf_lppe_OMA_LPPe_WirelessAccessTypes_other,
      { "other", "lppe.OMA.LPPe.WirelessAccessTypes.other",
        FT_BOOLEAN, 8, NULL, 0x04,
        NULL, HFILL }},
    { &hf_lppe_OMA_LPPe_WirelessAccessTypes_nr,
      { "nr", "lppe.OMA.LPPe.WirelessAccessTypes.nr",
        FT_BOOLEAN, 8, NULL, 0x02,
        NULL, HFILL }},
    { &hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11a,
      { "ieee802-11a", "lppe.OMA.LPPe.WLAN.AP.Type.List.ieee802.11a",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11b,
      { "ieee802-11b", "lppe.OMA.LPPe.WLAN.AP.Type.List.ieee802.11b",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11g,
      { "ieee802-11g", "lppe.OMA.LPPe.WLAN.AP.Type.List.ieee802.11g",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11n,
      { "ieee802-11n", "lppe.OMA.LPPe.WLAN.AP.Type.List.ieee802.11n",
        FT_BOOLEAN, 8, NULL, 0x10,
        NULL, HFILL }},
    { &hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11ac,
      { "ieee802-11ac", "lppe.OMA.LPPe.WLAN.AP.Type.List.ieee802.11ac",
        FT_BOOLEAN, 8, NULL, 0x08,
        NULL, HFILL }},
    { &hf_lppe_OMA_LPPe_WLAN_AP_Type_List_ieee802_11ad,
      { "ieee802-11ad", "lppe.OMA.LPPe.WLAN.AP.Type.List.ieee802.11ad",
        FT_BOOLEAN, 8, NULL, 0x04,
        NULL, HFILL }},
    { &hf_lppe_T_iP_Address_support_iPv4,
      { "iPv4", "lppe.T.iP.Address.support.iPv4",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_iP_Address_support_iPv6,
      { "iPv6", "lppe.T.iP.Address.support.iPv6",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_iP_Address_support_nat,
      { "nat", "lppe.T.iP.Address.support.nat",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_OMA_LPPe_HighAccuracyFormatCapabilities_hAposition,
      { "hAposition", "lppe.OMA.LPPe.HighAccuracyFormatCapabilities.hAposition",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_OMA_LPPe_HighAccuracyFormatCapabilities_hAvelocity,
      { "hAvelocity", "lppe.OMA.LPPe.HighAccuracyFormatCapabilities.hAvelocity",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_OMA_LPPe_HighAccuracyFormatCapabilities_pidf_lo,
      { "pidf-lo", "lppe.OMA.LPPe.HighAccuracyFormatCapabilities.pidf.lo",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_T_relativeLocationReportingSupport_geo,
      { "geo", "lppe.T.relativeLocationReportingSupport.geo",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_relativeLocationReportingSupport_civic,
      { "civic", "lppe.T.relativeLocationReportingSupport.civic",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_relativeLocationReportingSupport_otherProviders,
      { "otherProviders", "lppe.T.relativeLocationReportingSupport.otherProviders",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_T_ionoreq_klobucharModel,
      { "klobucharModel", "lppe.T.ionoreq.klobucharModel",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_ionoreq_ionoStormWarning,
      { "ionoStormWarning", "lppe.T.ionoreq.ionoStormWarning",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_troposphereModelReq_delay,
      { "delay", "lppe.T.troposphereModelReq.delay",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_troposphereModelReq_surface,
      { "surface", "lppe.T.troposphereModelReq.surface",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_ionosphereMeasurementsReq_tecPerSV,
      { "tecPerSV", "lppe.T.ionosphereMeasurementsReq.tecPerSV",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_ionosphereMeasurementsReq_zenithTEC,
      { "zenithTEC", "lppe.T.ionosphereMeasurementsReq.zenithTEC",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_ionosphereMeasurementSupport_tecPerSVsupport,
      { "tecPerSVsupport", "lppe.T.ionosphereMeasurementSupport.tecPerSVsupport",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_ionosphereMeasurementSupport_zenithTecSupport,
      { "zenithTecSupport", "lppe.T.ionosphereMeasurementSupport.zenithTecSupport",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_ionoModel_localKlobuchar,
      { "localKlobuchar", "lppe.T.ionoModel.localKlobuchar",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_ionoModel_ionoStormWarning,
      { "ionoStormWarning", "lppe.T.ionoModel.ionoStormWarning",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_ionoModel_wideAreaIonoSurface,
      { "wideAreaIonoSurface", "lppe.T.ionoModel.wideAreaIonoSurface",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_T_tropoModel_localTroposphereDelay,
      { "localTroposphereDelay", "lppe.T.tropoModel.localTroposphereDelay",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_tropoModel_surfaceParameters,
      { "surfaceParameters", "lppe.T.tropoModel.surfaceParameters",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_modeSupport_ueBased,
      { "ueBased", "lppe.T.modeSupport.ueBased",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_modeSupport_ueAssisted,
      { "ueAssisted", "lppe.T.modeSupport.ueAssisted",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_haGNSSantennaInformationSupport_antennaDescriptionSupported,
      { "antennaDescriptionSupported", "lppe.T.haGNSSantennaInformationSupport.antennaDescriptionSupported",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_haGNSSantennaInformationSupport_antennaOrientationSupported,
      { "antennaOrientationSupported", "lppe.T.haGNSSantennaInformationSupport.antennaOrientationSupported",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_requestedCells_eNBs,
      { "eNBs", "lppe.T.requestedCells.eNBs",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_requestedCells_heNBs,
      { "heNBs", "lppe.T.requestedCells.heNBs",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_eotdAssistanceReq_ueAssisted,
      { "ueAssisted", "lppe.T.eotdAssistanceReq.ueAssisted",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_eotdAssistanceReq_ueBased,
      { "ueBased", "lppe.T.eotdAssistanceReq.ueBased",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_eotdSupport_ueBased,
      { "ueBased", "lppe.T.eotdSupport.ueBased",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_eotdSupport_ueAssisted,
      { "ueAssisted", "lppe.T.eotdSupport.ueAssisted",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_otdoaUtraAssistanceReq_ueAssisted,
      { "ueAssisted", "lppe.T.otdoaUtraAssistanceReq.ueAssisted",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_otdoaUtraAssistanceReq_ueBased,
      { "ueBased", "lppe.T.otdoaUtraAssistanceReq.ueBased",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_eNBrequestedAD_bslist,
      { "bslist", "lppe.T.eNBrequestedAD.bslist",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_eNBrequestedAD_bslocation,
      { "bslocation", "lppe.T.eNBrequestedAD.bslocation",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_eNBrequestedAD_transmit_power,
      { "transmit-power", "lppe.T.eNBrequestedAD.transmit.power",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_T_eNBrequestedAD_antennaPortConfig,
      { "antennaPortConfig", "lppe.T.eNBrequestedAD.antennaPortConfig",
        FT_BOOLEAN, 8, NULL, 0x10,
        NULL, HFILL }},
    { &hf_lppe_T_eNBrequestedAD_antenna_gain,
      { "antenna-gain", "lppe.T.eNBrequestedAD.antenna.gain",
        FT_BOOLEAN, 8, NULL, 0x08,
        NULL, HFILL }},
    { &hf_lppe_T_eNBrequestedAD_beam_width,
      { "beam-width", "lppe.T.eNBrequestedAD.beam.width",
        FT_BOOLEAN, 8, NULL, 0x04,
        NULL, HFILL }},
    { &hf_lppe_T_eNBrequestedAD_transmit_direction,
      { "transmit-direction", "lppe.T.eNBrequestedAD.transmit.direction",
        FT_BOOLEAN, 8, NULL, 0x02,
        NULL, HFILL }},
    { &hf_lppe_T_eNBrequestedAD_frequency_accuracy,
      { "frequency-accuracy", "lppe.T.eNBrequestedAD.frequency.accuracy",
        FT_BOOLEAN, 8, NULL, 0x01,
        NULL, HFILL }},
    { &hf_lppe_T_eNBrequestedAD_non_serving,
      { "non-serving", "lppe.T.eNBrequestedAD.non.serving",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_heNBrequestedAD_bslist,
      { "bslist", "lppe.T.heNBrequestedAD.bslist",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_heNBrequestedAD_bslocation,
      { "bslocation", "lppe.T.heNBrequestedAD.bslocation",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_heNBrequestedAD_locationreliability,
      { "locationreliability", "lppe.T.heNBrequestedAD.locationreliability",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_T_heNBrequestedAD_transmit_power,
      { "transmit-power", "lppe.T.heNBrequestedAD.transmit.power",
        FT_BOOLEAN, 8, NULL, 0x10,
        NULL, HFILL }},
    { &hf_lppe_T_heNBrequestedAD_antennaPortConfig,
      { "antennaPortConfig", "lppe.T.heNBrequestedAD.antennaPortConfig",
        FT_BOOLEAN, 8, NULL, 0x08,
        NULL, HFILL }},
    { &hf_lppe_T_heNBrequestedAD_frequency_accuracy,
      { "frequency-accuracy", "lppe.T.heNBrequestedAD.frequency.accuracy",
        FT_BOOLEAN, 8, NULL, 0x04,
        NULL, HFILL }},
    { &hf_lppe_T_heNBrequestedAD_coveragearea,
      { "coveragearea", "lppe.T.heNBrequestedAD.coveragearea",
        FT_BOOLEAN, 8, NULL, 0x02,
        NULL, HFILL }},
    { &hf_lppe_T_heNBrequestedAD_non_serving,
      { "non-serving", "lppe.T.heNBrequestedAD.non.serving",
        FT_BOOLEAN, 8, NULL, 0x01,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_rsrp,
      { "rsrp", "lppe.T.requestedMeasurements.rsrp",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_rsrq,
      { "rsrq", "lppe.T.requestedMeasurements.rsrq",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_ueRxTx,
      { "ueRxTx", "lppe.T.requestedMeasurements.ueRxTx",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_non_serving,
      { "non-serving", "lppe.T.requestedMeasurements.non.serving",
        FT_BOOLEAN, 8, NULL, 0x10,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_historic,
      { "historic", "lppe.T.requestedMeasurements.historic",
        FT_BOOLEAN, 8, NULL, 0x08,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_lte_MeasSupported_rsrp,
      { "rsrp", "lppe.T.ecid.lte.MeasSupported.rsrp",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_lte_MeasSupported_rsrq,
      { "rsrq", "lppe.T.ecid.lte.MeasSupported.rsrq",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_lte_MeasSupported_ueRxTx,
      { "ueRxTx", "lppe.T.ecid.lte.MeasSupported.ueRxTx",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_lte_MeasSupported_non_serving,
      { "non-serving", "lppe.T.ecid.lte.MeasSupported.non.serving",
        FT_BOOLEAN, 8, NULL, 0x10,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_lte_MeasSupported_historic,
      { "historic", "lppe.T.ecid.lte.MeasSupported.historic",
        FT_BOOLEAN, 8, NULL, 0x08,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_lte_eNodeB_ADSupported_bslist,
      { "bslist", "lppe.T.ecid.lte.eNodeB.ADSupported.bslist",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_lte_eNodeB_ADSupported_bslocation,
      { "bslocation", "lppe.T.ecid.lte.eNodeB.ADSupported.bslocation",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_lte_eNodeB_ADSupported_transmit_power,
      { "transmit-power", "lppe.T.ecid.lte.eNodeB.ADSupported.transmit.power",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_lte_eNodeB_ADSupported_antennaPortConfig,
      { "antennaPortConfig", "lppe.T.ecid.lte.eNodeB.ADSupported.antennaPortConfig",
        FT_BOOLEAN, 8, NULL, 0x10,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_lte_eNodeB_ADSupported_antenna_gain,
      { "antenna-gain", "lppe.T.ecid.lte.eNodeB.ADSupported.antenna.gain",
        FT_BOOLEAN, 8, NULL, 0x08,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_lte_eNodeB_ADSupported_beam_width,
      { "beam-width", "lppe.T.ecid.lte.eNodeB.ADSupported.beam.width",
        FT_BOOLEAN, 8, NULL, 0x04,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_lte_eNodeB_ADSupported_transmit_direction,
      { "transmit-direction", "lppe.T.ecid.lte.eNodeB.ADSupported.transmit.direction",
        FT_BOOLEAN, 8, NULL, 0x02,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_lte_eNodeB_ADSupported_frequency_accuracy,
      { "frequency-accuracy", "lppe.T.ecid.lte.eNodeB.ADSupported.frequency.accuracy",
        FT_BOOLEAN, 8, NULL, 0x01,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_lte_eNodeB_ADSupported_non_serving,
      { "non-serving", "lppe.T.ecid.lte.eNodeB.ADSupported.non.serving",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_HeNB_ADSupported_bslist,
      { "bslist", "lppe.T.ecid.utra.HeNB.ADSupported.bslist",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_HeNB_ADSupported_bslocation,
      { "bslocation", "lppe.T.ecid.utra.HeNB.ADSupported.bslocation",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_HeNB_ADSupported_locationreliability,
      { "locationreliability", "lppe.T.ecid.utra.HeNB.ADSupported.locationreliability",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_HeNB_ADSupported_transmit_power,
      { "transmit-power", "lppe.T.ecid.utra.HeNB.ADSupported.transmit.power",
        FT_BOOLEAN, 8, NULL, 0x10,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_HeNB_ADSupported_antennaPortConfig,
      { "antennaPortConfig", "lppe.T.ecid.utra.HeNB.ADSupported.antennaPortConfig",
        FT_BOOLEAN, 8, NULL, 0x08,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_HeNB_ADSupported_frequency_accuracy,
      { "frequency-accuracy", "lppe.T.ecid.utra.HeNB.ADSupported.frequency.accuracy",
        FT_BOOLEAN, 8, NULL, 0x04,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_HeNB_ADSupported_coveragearea,
      { "coveragearea", "lppe.T.ecid.utra.HeNB.ADSupported.coveragearea",
        FT_BOOLEAN, 8, NULL, 0x02,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_HeNB_ADSupported_non_serving,
      { "non-serving", "lppe.T.ecid.utra.HeNB.ADSupported.non.serving",
        FT_BOOLEAN, 8, NULL, 0x01,
        NULL, HFILL }},
    { &hf_lppe_T_requestedAD_bslist,
      { "bslist", "lppe.T.requestedAD.bslist",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_requestedAD_bslocation,
      { "bslocation", "lppe.T.requestedAD.bslocation",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_requestedAD_transmit_power,
      { "transmit-power", "lppe.T.requestedAD.transmit.power",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_T_requestedAD_antenna_gain,
      { "antenna-gain", "lppe.T.requestedAD.antenna.gain",
        FT_BOOLEAN, 8, NULL, 0x10,
        NULL, HFILL }},
    { &hf_lppe_T_requestedAD_beam_width,
      { "beam-width", "lppe.T.requestedAD.beam.width",
        FT_BOOLEAN, 8, NULL, 0x08,
        NULL, HFILL }},
    { &hf_lppe_T_requestedAD_transmit_direction,
      { "transmit-direction", "lppe.T.requestedAD.transmit.direction",
        FT_BOOLEAN, 8, NULL, 0x04,
        NULL, HFILL }},
    { &hf_lppe_T_requestedAD_frequency_accuracy,
      { "frequency-accuracy", "lppe.T.requestedAD.frequency.accuracy",
        FT_BOOLEAN, 8, NULL, 0x02,
        NULL, HFILL }},
    { &hf_lppe_T_requestedAD_non_serving,
      { "non-serving", "lppe.T.requestedAD.non.serving",
        FT_BOOLEAN, 8, NULL, 0x01,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_01_rxLevel,
      { "rxLevel", "lppe.T.requestedMeasurements.01.rxLevel",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_01_tA,
      { "tA", "lppe.T.requestedMeasurements.01.tA",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_01_nMR_GERAN,
      { "nMR-GERAN", "lppe.T.requestedMeasurements.01.nMR.GERAN",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_01_non_serving,
      { "non-serving", "lppe.T.requestedMeasurements.01.non.serving",
        FT_BOOLEAN, 8, NULL, 0x10,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_01_historic,
      { "historic", "lppe.T.requestedMeasurements.01.historic",
        FT_BOOLEAN, 8, NULL, 0x08,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_gsm_MeasSupported_rxLevel,
      { "rxLevel", "lppe.T.ecid.gsm.MeasSupported.rxLevel",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_gsm_MeasSupported_tA,
      { "tA", "lppe.T.ecid.gsm.MeasSupported.tA",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_gsm_MeasSupported_nMR_GERAN,
      { "nMR-GERAN", "lppe.T.ecid.gsm.MeasSupported.nMR.GERAN",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_gsm_MeasSupported_non_serving,
      { "non-serving", "lppe.T.ecid.gsm.MeasSupported.non.serving",
        FT_BOOLEAN, 8, NULL, 0x10,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_gsm_MeasSupported_historic,
      { "historic", "lppe.T.ecid.gsm.MeasSupported.historic",
        FT_BOOLEAN, 8, NULL, 0x08,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_gsm_ADSupported_bslist,
      { "bslist", "lppe.T.ecid.gsm.ADSupported.bslist",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_gsm_ADSupported_bslocation,
      { "bslocation", "lppe.T.ecid.gsm.ADSupported.bslocation",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_gsm_ADSupported_transmit_power,
      { "transmit-power", "lppe.T.ecid.gsm.ADSupported.transmit.power",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_gsm_ADSupported_antenna_gain,
      { "antenna-gain", "lppe.T.ecid.gsm.ADSupported.antenna.gain",
        FT_BOOLEAN, 8, NULL, 0x10,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_gsm_ADSupported_beam_width,
      { "beam-width", "lppe.T.ecid.gsm.ADSupported.beam.width",
        FT_BOOLEAN, 8, NULL, 0x08,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_gsm_ADSupported_transmit_direction,
      { "transmit-direction", "lppe.T.ecid.gsm.ADSupported.transmit.direction",
        FT_BOOLEAN, 8, NULL, 0x04,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_gsm_ADSupported_frequency_accuracy,
      { "frequency-accuracy", "lppe.T.ecid.gsm.ADSupported.frequency.accuracy",
        FT_BOOLEAN, 8, NULL, 0x02,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_gsm_ADSupported_non_serving,
      { "non-serving", "lppe.T.ecid.gsm.ADSupported.non.serving",
        FT_BOOLEAN, 8, NULL, 0x01,
        NULL, HFILL }},
    { &hf_lppe_T_nBrequestedAD_bslist,
      { "bslist", "lppe.T.nBrequestedAD.bslist",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_nBrequestedAD_bslocation,
      { "bslocation", "lppe.T.nBrequestedAD.bslocation",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_nBrequestedAD_transmit_power,
      { "transmit-power", "lppe.T.nBrequestedAD.transmit.power",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_T_nBrequestedAD_antenna_gain,
      { "antenna-gain", "lppe.T.nBrequestedAD.antenna.gain",
        FT_BOOLEAN, 8, NULL, 0x10,
        NULL, HFILL }},
    { &hf_lppe_T_nBrequestedAD_beam_width,
      { "beam-width", "lppe.T.nBrequestedAD.beam.width",
        FT_BOOLEAN, 8, NULL, 0x08,
        NULL, HFILL }},
    { &hf_lppe_T_nBrequestedAD_transmit_direction,
      { "transmit-direction", "lppe.T.nBrequestedAD.transmit.direction",
        FT_BOOLEAN, 8, NULL, 0x04,
        NULL, HFILL }},
    { &hf_lppe_T_nBrequestedAD_frequency_accuracy,
      { "frequency-accuracy", "lppe.T.nBrequestedAD.frequency.accuracy",
        FT_BOOLEAN, 8, NULL, 0x02,
        NULL, HFILL }},
    { &hf_lppe_T_nBrequestedAD_non_serving,
      { "non-serving", "lppe.T.nBrequestedAD.non.serving",
        FT_BOOLEAN, 8, NULL, 0x01,
        NULL, HFILL }},
    { &hf_lppe_T_hNBrequestedAD_bslist,
      { "bslist", "lppe.T.hNBrequestedAD.bslist",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_hNBrequestedAD_bslocation,
      { "bslocation", "lppe.T.hNBrequestedAD.bslocation",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_hNBrequestedAD_locationreliability,
      { "locationreliability", "lppe.T.hNBrequestedAD.locationreliability",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_T_hNBrequestedAD_transmit_power,
      { "transmit-power", "lppe.T.hNBrequestedAD.transmit.power",
        FT_BOOLEAN, 8, NULL, 0x10,
        NULL, HFILL }},
    { &hf_lppe_T_hNBrequestedAD_frequency_accuracy,
      { "frequency-accuracy", "lppe.T.hNBrequestedAD.frequency.accuracy",
        FT_BOOLEAN, 8, NULL, 0x08,
        NULL, HFILL }},
    { &hf_lppe_T_hNBrequestedAD_coveragearea,
      { "coveragearea", "lppe.T.hNBrequestedAD.coveragearea",
        FT_BOOLEAN, 8, NULL, 0x04,
        NULL, HFILL }},
    { &hf_lppe_T_hNBrequestedAD_non_serving,
      { "non-serving", "lppe.T.hNBrequestedAD.non.serving",
        FT_BOOLEAN, 8, NULL, 0x02,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_02_measuredResultsList,
      { "measuredResultsList", "lppe.T.requestedMeasurements.02.measuredResultsList",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_02_tdd_timingAdvance,
      { "tdd-timingAdvance", "lppe.T.requestedMeasurements.02.tdd.timingAdvance",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_02_mRL_utra_CarrierRSSI,
      { "mRL-utra-CarrierRSSI", "lppe.T.requestedMeasurements.02.mRL.utra.CarrierRSSI",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_02_mRL_FDD_cpich_Ec_N0,
      { "mRL-FDD-cpich-Ec-N0", "lppe.T.requestedMeasurements.02.mRL.FDD.cpich.Ec.N0",
        FT_BOOLEAN, 8, NULL, 0x10,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_02_mRL_FDD_cpich_RSCP,
      { "mRL-FDD-cpich-RSCP", "lppe.T.requestedMeasurements.02.mRL.FDD.cpich.RSCP",
        FT_BOOLEAN, 8, NULL, 0x08,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_02_mRL_FDD_pathloss,
      { "mRL-FDD-pathloss", "lppe.T.requestedMeasurements.02.mRL.FDD.pathloss",
        FT_BOOLEAN, 8, NULL, 0x04,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_02_mRL_TDD_primaryCCPCH_RSCP,
      { "mRL-TDD-primaryCCPCH-RSCP", "lppe.T.requestedMeasurements.02.mRL.TDD.primaryCCPCH.RSCP",
        FT_BOOLEAN, 8, NULL, 0x02,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_02_mRL_TDD_pathloss,
      { "mRL-TDD-pathloss", "lppe.T.requestedMeasurements.02.mRL.TDD.pathloss",
        FT_BOOLEAN, 8, NULL, 0x01,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_02_non_serving,
      { "non-serving", "lppe.T.requestedMeasurements.02.non.serving",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_02_historic,
      { "historic", "lppe.T.requestedMeasurements.02.historic",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_MeasSupported_measuredResultsList,
      { "measuredResultsList", "lppe.T.ecid.utra.MeasSupported.measuredResultsList",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_MeasSupported_tdd_timingAdvance,
      { "tdd-timingAdvance", "lppe.T.ecid.utra.MeasSupported.tdd.timingAdvance",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_MeasSupported_mRL_utra_CarrierRSSI,
      { "mRL-utra-CarrierRSSI", "lppe.T.ecid.utra.MeasSupported.mRL.utra.CarrierRSSI",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_MeasSupported_mRL_FDD_cpich_Ec_N0,
      { "mRL-FDD-cpich-Ec-N0", "lppe.T.ecid.utra.MeasSupported.mRL.FDD.cpich.Ec.N0",
        FT_BOOLEAN, 8, NULL, 0x10,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_MeasSupported_mRL_FDD_cpich_RSCP,
      { "mRL-FDD-cpich-RSCP", "lppe.T.ecid.utra.MeasSupported.mRL.FDD.cpich.RSCP",
        FT_BOOLEAN, 8, NULL, 0x08,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_MeasSupported_mRL_FDD_pathloss,
      { "mRL-FDD-pathloss", "lppe.T.ecid.utra.MeasSupported.mRL.FDD.pathloss",
        FT_BOOLEAN, 8, NULL, 0x04,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_MeasSupported_mRL_TDD_primaryCCPCH_RSCP,
      { "mRL-TDD-primaryCCPCH-RSCP", "lppe.T.ecid.utra.MeasSupported.mRL.TDD.primaryCCPCH.RSCP",
        FT_BOOLEAN, 8, NULL, 0x02,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_MeasSupported_mRL_TDD_pathloss,
      { "mRL-TDD-pathloss", "lppe.T.ecid.utra.MeasSupported.mRL.TDD.pathloss",
        FT_BOOLEAN, 8, NULL, 0x01,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_MeasSupported_non_serving,
      { "non-serving", "lppe.T.ecid.utra.MeasSupported.non.serving",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_MeasSupported_historic,
      { "historic", "lppe.T.ecid.utra.MeasSupported.historic",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_nodeB_ADSupported_bslist,
      { "bslist", "lppe.T.ecid.utra.nodeB.ADSupported.bslist",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_nodeB_ADSupported_bslocation,
      { "bslocation", "lppe.T.ecid.utra.nodeB.ADSupported.bslocation",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_nodeB_ADSupported_transmit_power,
      { "transmit-power", "lppe.T.ecid.utra.nodeB.ADSupported.transmit.power",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_nodeB_ADSupported_antenna_gain,
      { "antenna-gain", "lppe.T.ecid.utra.nodeB.ADSupported.antenna.gain",
        FT_BOOLEAN, 8, NULL, 0x10,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_nodeB_ADSupported_beam_width,
      { "beam-width", "lppe.T.ecid.utra.nodeB.ADSupported.beam.width",
        FT_BOOLEAN, 8, NULL, 0x08,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_nodeB_ADSupported_transmit_direction,
      { "transmit-direction", "lppe.T.ecid.utra.nodeB.ADSupported.transmit.direction",
        FT_BOOLEAN, 8, NULL, 0x04,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_nodeB_ADSupported_frequency_accuracy,
      { "frequency-accuracy", "lppe.T.ecid.utra.nodeB.ADSupported.frequency.accuracy",
        FT_BOOLEAN, 8, NULL, 0x02,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_nodeB_ADSupported_non_serving,
      { "non-serving", "lppe.T.ecid.utra.nodeB.ADSupported.non.serving",
        FT_BOOLEAN, 8, NULL, 0x01,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_HNB_ADSupported_bslist,
      { "bslist", "lppe.T.ecid.utra.HNB.ADSupported.bslist",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_HNB_ADSupported_bslocation,
      { "bslocation", "lppe.T.ecid.utra.HNB.ADSupported.bslocation",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_HNB_ADSupported_locationreliability,
      { "locationreliability", "lppe.T.ecid.utra.HNB.ADSupported.locationreliability",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_HNB_ADSupported_transmit_power,
      { "transmit-power", "lppe.T.ecid.utra.HNB.ADSupported.transmit.power",
        FT_BOOLEAN, 8, NULL, 0x10,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_HNB_ADSupported_frequency_accuracy,
      { "frequency-accuracy", "lppe.T.ecid.utra.HNB.ADSupported.frequency.accuracy",
        FT_BOOLEAN, 8, NULL, 0x08,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_HNB_ADSupported_coveragearea,
      { "coveragearea", "lppe.T.ecid.utra.HNB.ADSupported.coveragearea",
        FT_BOOLEAN, 8, NULL, 0x04,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_utra_HNB_ADSupported_non_serving,
      { "non-serving", "lppe.T.ecid.utra.HNB.ADSupported.non.serving",
        FT_BOOLEAN, 8, NULL, 0x02,
        NULL, HFILL }},
    { &hf_lppe_T_requestedAD_01_aplist,
      { "aplist", "lppe.T.requestedAD.01.aplist",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_requestedAD_01_aplocation,
      { "aplocation", "lppe.T.requestedAD.01.aplocation",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_requestedAD_01_locationreliability,
      { "locationreliability", "lppe.T.requestedAD.01.locationreliability",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_T_requestedAD_01_transmit_power,
      { "transmit-power", "lppe.T.requestedAD.01.transmit.power",
        FT_BOOLEAN, 8, NULL, 0x10,
        NULL, HFILL }},
    { &hf_lppe_T_requestedAD_01_antenna_gain,
      { "antenna-gain", "lppe.T.requestedAD.01.antenna.gain",
        FT_BOOLEAN, 8, NULL, 0x08,
        NULL, HFILL }},
    { &hf_lppe_T_requestedAD_01_coveragearea,
      { "coveragearea", "lppe.T.requestedAD.01.coveragearea",
        FT_BOOLEAN, 8, NULL, 0x04,
        NULL, HFILL }},
    { &hf_lppe_T_requestedAD_01_non_serving,
      { "non-serving", "lppe.T.requestedAD.01.non.serving",
        FT_BOOLEAN, 8, NULL, 0x02,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_03_apSSID,
      { "apSSID", "lppe.T.requestedMeasurements.03.apSSID",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_03_apSN,
      { "apSN", "lppe.T.requestedMeasurements.03.apSN",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_03_apDevType,
      { "apDevType", "lppe.T.requestedMeasurements.03.apDevType",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_03_apPhyType,
      { "apPhyType", "lppe.T.requestedMeasurements.03.apPhyType",
        FT_BOOLEAN, 8, NULL, 0x10,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_03_apRSSI,
      { "apRSSI", "lppe.T.requestedMeasurements.03.apRSSI",
        FT_BOOLEAN, 8, NULL, 0x08,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_03_apChanFreq,
      { "apChanFreq", "lppe.T.requestedMeasurements.03.apChanFreq",
        FT_BOOLEAN, 8, NULL, 0x04,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_03_apRTD,
      { "apRTD", "lppe.T.requestedMeasurements.03.apRTD",
        FT_BOOLEAN, 8, NULL, 0x02,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_03_ueTP,
      { "ueTP", "lppe.T.requestedMeasurements.03.ueTP",
        FT_BOOLEAN, 8, NULL, 0x01,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_03_ueAG,
      { "ueAG", "lppe.T.requestedMeasurements.03.ueAG",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_03_apRepLoc,
      { "apRepLoc", "lppe.T.requestedMeasurements.03.apRepLoc",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_03_non_serving,
      { "non-serving", "lppe.T.requestedMeasurements.03.non.serving",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_03_historic,
      { "historic", "lppe.T.requestedMeasurements.03.historic",
        FT_BOOLEAN, 8, NULL, 0x10,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_03_apTP,
      { "apTP", "lppe.T.requestedMeasurements.03.apTP",
        FT_BOOLEAN, 8, NULL, 0x08,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_03_apAG,
      { "apAG", "lppe.T.requestedMeasurements.03.apAG",
        FT_BOOLEAN, 8, NULL, 0x04,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_03_ueSN,
      { "ueSN", "lppe.T.requestedMeasurements.03.ueSN",
        FT_BOOLEAN, 8, NULL, 0x02,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_03_ueRSSI,
      { "ueRSSI", "lppe.T.requestedMeasurements.03.ueRSSI",
        FT_BOOLEAN, 8, NULL, 0x01,
        NULL, HFILL }},
    { &hf_lppe_T_additionalRequestedMeasurements_oc,
      { "oc", "lppe.T.additionalRequestedMeasurements.oc",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_additionalRequestedMeasurements_ueMacAddr,
      { "ueMacAddr", "lppe.T.additionalRequestedMeasurements.ueMacAddr",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_wlan_ecid_MeasSupported_apSSID,
      { "apSSID", "lppe.T.wlan.ecid.MeasSupported.apSSID",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_wlan_ecid_MeasSupported_apSN,
      { "apSN", "lppe.T.wlan.ecid.MeasSupported.apSN",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_wlan_ecid_MeasSupported_apDevType,
      { "apDevType", "lppe.T.wlan.ecid.MeasSupported.apDevType",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_T_wlan_ecid_MeasSupported_apPhyType,
      { "apPhyType", "lppe.T.wlan.ecid.MeasSupported.apPhyType",
        FT_BOOLEAN, 8, NULL, 0x10,
        NULL, HFILL }},
    { &hf_lppe_T_wlan_ecid_MeasSupported_apRSSI,
      { "apRSSI", "lppe.T.wlan.ecid.MeasSupported.apRSSI",
        FT_BOOLEAN, 8, NULL, 0x08,
        NULL, HFILL }},
    { &hf_lppe_T_wlan_ecid_MeasSupported_apChanFreq,
      { "apChanFreq", "lppe.T.wlan.ecid.MeasSupported.apChanFreq",
        FT_BOOLEAN, 8, NULL, 0x04,
        NULL, HFILL }},
    { &hf_lppe_T_wlan_ecid_MeasSupported_apRTD,
      { "apRTD", "lppe.T.wlan.ecid.MeasSupported.apRTD",
        FT_BOOLEAN, 8, NULL, 0x02,
        NULL, HFILL }},
    { &hf_lppe_T_wlan_ecid_MeasSupported_ueTP,
      { "ueTP", "lppe.T.wlan.ecid.MeasSupported.ueTP",
        FT_BOOLEAN, 8, NULL, 0x01,
        NULL, HFILL }},
    { &hf_lppe_T_wlan_ecid_MeasSupported_ueAG,
      { "ueAG", "lppe.T.wlan.ecid.MeasSupported.ueAG",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_wlan_ecid_MeasSupported_apRepLoc,
      { "apRepLoc", "lppe.T.wlan.ecid.MeasSupported.apRepLoc",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_wlan_ecid_MeasSupported_non_serving,
      { "non-serving", "lppe.T.wlan.ecid.MeasSupported.non.serving",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_T_wlan_ecid_MeasSupported_historic,
      { "historic", "lppe.T.wlan.ecid.MeasSupported.historic",
        FT_BOOLEAN, 8, NULL, 0x10,
        NULL, HFILL }},
    { &hf_lppe_T_wlan_ecid_MeasSupported_apTP,
      { "apTP", "lppe.T.wlan.ecid.MeasSupported.apTP",
        FT_BOOLEAN, 8, NULL, 0x08,
        NULL, HFILL }},
    { &hf_lppe_T_wlan_ecid_MeasSupported_apAG,
      { "apAG", "lppe.T.wlan.ecid.MeasSupported.apAG",
        FT_BOOLEAN, 8, NULL, 0x04,
        NULL, HFILL }},
    { &hf_lppe_T_wlan_ecid_MeasSupported_ueSN,
      { "ueSN", "lppe.T.wlan.ecid.MeasSupported.ueSN",
        FT_BOOLEAN, 8, NULL, 0x02,
        NULL, HFILL }},
    { &hf_lppe_T_wlan_ecid_MeasSupported_ueRSSI,
      { "ueRSSI", "lppe.T.wlan.ecid.MeasSupported.ueRSSI",
        FT_BOOLEAN, 8, NULL, 0x01,
        NULL, HFILL }},
    { &hf_lppe_T_wlan_ap_ADSupported_aplist,
      { "aplist", "lppe.T.wlan.ap.ADSupported.aplist",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_wlan_ap_ADSupported_aplocation,
      { "aplocation", "lppe.T.wlan.ap.ADSupported.aplocation",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_wlan_ap_ADSupported_locationreliability,
      { "locationreliability", "lppe.T.wlan.ap.ADSupported.locationreliability",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_T_wlan_ap_ADSupported_transmit_power,
      { "transmit-power", "lppe.T.wlan.ap.ADSupported.transmit.power",
        FT_BOOLEAN, 8, NULL, 0x10,
        NULL, HFILL }},
    { &hf_lppe_T_wlan_ap_ADSupported_antenna_gain,
      { "antenna-gain", "lppe.T.wlan.ap.ADSupported.antenna.gain",
        FT_BOOLEAN, 8, NULL, 0x08,
        NULL, HFILL }},
    { &hf_lppe_T_wlan_ap_ADSupported_coveragearea,
      { "coveragearea", "lppe.T.wlan.ap.ADSupported.coveragearea",
        FT_BOOLEAN, 8, NULL, 0x04,
        NULL, HFILL }},
    { &hf_lppe_T_wlan_ap_ADSupported_non_serving,
      { "non-serving", "lppe.T.wlan.ap.ADSupported.non.serving",
        FT_BOOLEAN, 8, NULL, 0x02,
        NULL, HFILL }},
    { &hf_lppe_T_additional_wlan_ecid_MeasSupported_oc,
      { "oc", "lppe.T.additional.wlan.ecid.MeasSupported.oc",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_additional_wlan_ecid_MeasSupported_ueMacAddr,
      { "ueMacAddr", "lppe.T.additional.wlan.ecid.MeasSupported.ueMacAddr",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_04_rTD,
      { "rTD", "lppe.T.requestedMeasurements.04.rTD",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_04_rTDstd,
      { "rTDstd", "lppe.T.requestedMeasurements.04.rTDstd",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_04_nMR,
      { "nMR", "lppe.T.requestedMeasurements.04.nMR",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_04_nMRrelDelay,
      { "nMRrelDelay", "lppe.T.requestedMeasurements.04.nMRrelDelay",
        FT_BOOLEAN, 8, NULL, 0x10,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_04_nMRrelDelaystd,
      { "nMRrelDelaystd", "lppe.T.requestedMeasurements.04.nMRrelDelaystd",
        FT_BOOLEAN, 8, NULL, 0x08,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_04_nMRrSSI,
      { "nMRrSSI", "lppe.T.requestedMeasurements.04.nMRrSSI",
        FT_BOOLEAN, 8, NULL, 0x04,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_04_nMRrSSIstd,
      { "nMRrSSIstd", "lppe.T.requestedMeasurements.04.nMRrSSIstd",
        FT_BOOLEAN, 8, NULL, 0x02,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_04_nMRbSTxPower,
      { "nMRbSTxPower", "lppe.T.requestedMeasurements.04.nMRbSTxPower",
        FT_BOOLEAN, 8, NULL, 0x01,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_04_nMRcINR,
      { "nMRcINR", "lppe.T.requestedMeasurements.04.nMRcINR",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_04_nMRcINRstd,
      { "nMRcINRstd", "lppe.T.requestedMeasurements.04.nMRcINRstd",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_04_nMRbSLocation,
      { "nMRbSLocation", "lppe.T.requestedMeasurements.04.nMRbSLocation",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_04_non_serving,
      { "non-serving", "lppe.T.requestedMeasurements.04.non.serving",
        FT_BOOLEAN, 8, NULL, 0x10,
        NULL, HFILL }},
    { &hf_lppe_T_requestedMeasurements_04_historic,
      { "historic", "lppe.T.requestedMeasurements.04.historic",
        FT_BOOLEAN, 8, NULL, 0x08,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_wimax_MeasSupported_rTD,
      { "rTD", "lppe.T.ecid.wimax.MeasSupported.rTD",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_wimax_MeasSupported_rTDstd,
      { "rTDstd", "lppe.T.ecid.wimax.MeasSupported.rTDstd",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_wimax_MeasSupported_nMR,
      { "nMR", "lppe.T.ecid.wimax.MeasSupported.nMR",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_wimax_MeasSupported_nMRrelDelay,
      { "nMRrelDelay", "lppe.T.ecid.wimax.MeasSupported.nMRrelDelay",
        FT_BOOLEAN, 8, NULL, 0x10,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_wimax_MeasSupported_nMRrelDelaystd,
      { "nMRrelDelaystd", "lppe.T.ecid.wimax.MeasSupported.nMRrelDelaystd",
        FT_BOOLEAN, 8, NULL, 0x08,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_wimax_MeasSupported_nMRrSSI,
      { "nMRrSSI", "lppe.T.ecid.wimax.MeasSupported.nMRrSSI",
        FT_BOOLEAN, 8, NULL, 0x04,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_wimax_MeasSupported_nMRrSSIstd,
      { "nMRrSSIstd", "lppe.T.ecid.wimax.MeasSupported.nMRrSSIstd",
        FT_BOOLEAN, 8, NULL, 0x02,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_wimax_MeasSupported_nMRbSTxPower,
      { "nMRbSTxPower", "lppe.T.ecid.wimax.MeasSupported.nMRbSTxPower",
        FT_BOOLEAN, 8, NULL, 0x01,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_wimax_MeasSupported_nMRcINR,
      { "nMRcINR", "lppe.T.ecid.wimax.MeasSupported.nMRcINR",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_wimax_MeasSupported_nMRcINRstd,
      { "nMRcINRstd", "lppe.T.ecid.wimax.MeasSupported.nMRcINRstd",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_wimax_MeasSupported_nMRbSLocation,
      { "nMRbSLocation", "lppe.T.ecid.wimax.MeasSupported.nMRbSLocation",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_wimax_MeasSupported_non_serving,
      { "non-serving", "lppe.T.ecid.wimax.MeasSupported.non.serving",
        FT_BOOLEAN, 8, NULL, 0x10,
        NULL, HFILL }},
    { &hf_lppe_T_ecid_wimax_MeasSupported_historic,
      { "historic", "lppe.T.ecid.wimax.MeasSupported.historic",
        FT_BOOLEAN, 8, NULL, 0x08,
        NULL, HFILL }},
    { &hf_lppe_T_secondaryMotionState_stationary,
      { "stationary", "lppe.T.secondaryMotionState.stationary",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_secondaryMotionState_pedestrian,
      { "pedestrian", "lppe.T.secondaryMotionState.pedestrian",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_secondaryMotionState_running,
      { "running", "lppe.T.secondaryMotionState.running",
        FT_BOOLEAN, 8, NULL, 0x20,
        NULL, HFILL }},
    { &hf_lppe_T_secondaryMotionState_cycling,
      { "cycling", "lppe.T.secondaryMotionState.cycling",
        FT_BOOLEAN, 8, NULL, 0x10,
        NULL, HFILL }},
    { &hf_lppe_T_secondaryMotionState_car,
      { "car", "lppe.T.secondaryMotionState.car",
        FT_BOOLEAN, 8, NULL, 0x08,
        NULL, HFILL }},
    { &hf_lppe_T_secondaryMotionState_train,
      { "train", "lppe.T.secondaryMotionState.train",
        FT_BOOLEAN, 8, NULL, 0x04,
        NULL, HFILL }},
    { &hf_lppe_T_secondaryMotionState_aeroplane,
      { "aeroplane", "lppe.T.secondaryMotionState.aeroplane",
        FT_BOOLEAN, 8, NULL, 0x02,
        NULL, HFILL }},
    { &hf_lppe_T_secondaryMotionState_boat,
      { "boat", "lppe.T.secondaryMotionState.boat",
        FT_BOOLEAN, 8, NULL, 0x01,
        NULL, HFILL }},
    { &hf_lppe_T_secondaryMotionState_fidgeting,
      { "fidgeting", "lppe.T.secondaryMotionState.fidgeting",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_supportedAssistanceData_srnGroup,
      { "srnGroup", "lppe.T.supportedAssistanceData.srnGroup",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_supportedAssistanceData_antennaPattern,
      { "antennaPattern", "lppe.T.supportedAssistanceData.antennaPattern",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
    { &hf_lppe_T_srnMeasurements_rssi,
      { "rssi", "lppe.T.srnMeasurements.rssi",
        FT_BOOLEAN, 8, NULL, 0x80,
        NULL, HFILL }},
    { &hf_lppe_T_srnMeasurements_rtd,
      { "rtd", "lppe.T.srnMeasurements.rtd",
        FT_BOOLEAN, 8, NULL, 0x40,
        NULL, HFILL }},
  };

  /* List of subtrees */
  static gint *ett[] = {
	  &ett_lppe,
      &ett_lppe_civicLocation,
    &ett_lppe_OMA_LPPe_MessageExtension,
    &ett_lppe_OMA_LPPe_LPPeVersion,
    &ett_lppe_OMA_LPPe_MessageExtensionBody,
    &ett_lppe_OMA_LPPe_RequestCapabilities,
    &ett_lppe_OMA_LPPe_ProvideCapabilities,
    &ett_lppe_OMA_LPPe_RequestAssistanceData,
    &ett_lppe_OMA_LPPe_ProvideAssistanceData,
    &ett_lppe_OMA_LPPe_RequestLocationInformation,
    &ett_lppe_OMA_LPPe_ProvideLocationInformation,
    &ett_lppe_OMA_LPPe_Abort,
    &ett_lppe_OMA_LPPe_Error,
    &ett_lppe_OMA_LPPe_AssistanceContainer_DataSerialNumber,
    &ett_lppe_OMA_LPPe_AssistanceContainerID,
    &ett_lppe_OMA_LPPe_AssistanceContainerProvideList,
    &ett_lppe_OMA_LPPe_AssistanceContainerProvide,
    &ett_lppe_T_dataResult,
    &ett_lppe_OMA_LPPe_AssistanceContainerData,
    &ett_lppe_OMA_LPPe_AssistanceContainerProvideError,
    &ett_lppe_OMA_LPPe_AssistanceContainerRequestList,
    &ett_lppe_OMA_LPPe_AssistanceContainerRequest,
    &ett_lppe_OMA_LPPe_AssistanceContainerCheckOrUpdateReq,
    &ett_lppe_OMA_LPPe_CellLocalIdGERAN,
    &ett_lppe_OMA_LPPe_CellNonUniqueIDGERAN,
    &ett_lppe_OMA_LPPe_CivicLocation,
    &ett_lppe_OMA_LPPe_CivicAddressElementList,
    &ett_lppe_OMA_LPPe_CivicAddressElement,
    &ett_lppe_OMA_LPPe_CivicLocation_pidf_lo,
    &ett_lppe_OMA_LPPe_Duration,
    &ett_lppe_OMA_LPPe_FixedAccessTypes,
    &ett_lppe_OMA_LPPe_HighAccuracy3Dposition,
    &ett_lppe_OMA_LPPe_HighAccuracy3Dvelocity,
    &ett_lppe_OMA_LPPe_LocationInformationContainerID,
    &ett_lppe_OMA_LPPe_LocationInformationContainer,
    &ett_lppe_OMA_LPPe_LocationInformationContainerDataList,
    &ett_lppe_OMA_LPPe_LocationInformationContainerData,
    &ett_lppe_OMA_LPPe_LocationInformationContainerRequest,
    &ett_lppe_OMA_LPPe_LocationInformationContainerRequestList,
    &ett_lppe_OMA_LPPe_LocationInformationContainerRequestItem,
    &ett_lppe_OMA_LPPe_MapDataReference,
    &ett_lppe_OMA_LPPe_Orientation,
    &ett_lppe_T_eulerAngles,
    &ett_lppe_OMA_LPPe_ReferencePoint,
    &ett_lppe_T_referencePointGeographicLocation,
    &ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointRelationship,
    &ett_lppe_OMA_LPPe_MapDataInformation,
    &ett_lppe_OMA_LPPe_MapDataReferenceElement,
    &ett_lppe_T_mapDataUrl_choice,
    &ett_lppe_T_mapProvider,
    &ett_lppe_T_mapAssociation,
    &ett_lppe_OMA_LPPe_ReferencePointRelationship,
    &ett_lppe_OMA_LPPe_ReferencePointUniqueID,
    &ett_lppe_OMA_LPPe_RelativeLocation,
    &ett_lppe_OMA_LPPe_HorizontalUncertaintyAndConfidence,
    &ett_lppe_T_uncShape,
    &ett_lppe_T_ellipse,
    &ett_lppe_OMA_LPPe_RelativeAltitude,
    &ett_lppe_OMA_LPPe_GeodeticRelativeAltitude,
    &ett_lppe_OMA_LPPe_GeodeticUncertaintyAndConfidence,
    &ett_lppe_OMA_LPPe_CivicRelativeAltitude,
    &ett_lppe_OMA_LPPe_CivicUncertaintyAndConfidence,
    &ett_lppe_OMA_LPPe_Session_ID,
    &ett_lppe_OMA_LPPe_ValidityArea,
    &ett_lppe_OMA_LPPe_RleList,
    &ett_lppe_OMA_LPPe_ValidityPeriod,
    &ett_lppe_OMA_LPPe_VendorOrOperatorAssistanceDataIdentifier,
    &ett_lppe_OMA_LPPe_VendorOrOperatorID,
    &ett_lppe_OMA_LPPe_NonStandard_VendorOrOperatorID,
    &ett_lppe_OMA_LPPe_WirelessAccessTypes,
    &ett_lppe_OMA_LPPe_WLAN_AP_ID,
    &ett_lppe_OMA_LPPe_WLAN_AP_Type_List,
    &ett_lppe_OMA_LPPe_WLANFemtoCoverageArea,
    &ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_WLANFemtoCoverageAreaElement,
    &ett_lppe_OMA_LPPe_WLANFemtoCoverageAreaElement,
    &ett_lppe_T_refPointAndArea,
    &ett_lppe_OMA_LPPe_CommonIEsRequestCapabilities,
    &ett_lppe_OMA_LPPe_IP_Address_RequestCapabilities,
    &ett_lppe_OMA_LPPe_AssistanceContainerSupportReq,
    &ett_lppe_OMA_LPPe_LocationInformationContainerSupportReq,
    &ett_lppe_OMA_LPPe_VendorOrOperatorIDList,
    &ett_lppe_OMA_LPPe_RelativeLocationChange_RequestCapabilities,
    &ett_lppe_OMA_LPPe_HighAccuracyFormatCapabilitiesReq,
    &ett_lppe_OMA_LPPe_SegmentedAssistanceData_ReqCapabilities,
    &ett_lppe_OMA_LPPe_ReferencePointCapabilitiesReq,
    &ett_lppe_SEQUENCE_SIZE_1_128_OF_OMA_LPPe_VendorOrOperatorID,
    &ett_lppe_OMA_LPPe_ScheduledLocation_RequestCapabilities,
    &ett_lppe_OMA_LPPe_AccessCapabilitiesReq,
    &ett_lppe_OMA_LPPe_SegmentedLocationInformation_ReqCapabilities,
    &ett_lppe_OMA_LPPe_CommonIEsProvideCapabilities,
    &ett_lppe_OMA_LPPe_IP_Address_Capabilities,
    &ett_lppe_T_iP_Address_support,
    &ett_lppe_OMA_LPPe_AssistanceContainerSupport,
    &ett_lppe_OMA_LPPe_VendorOrOperatorAssistanceContainerList,
    &ett_lppe_OMA_LPPe_AssistanceContainerList,
    &ett_lppe_OMA_LPPe_LocationInformationContainerSupport,
    &ett_lppe_OMA_LPPe_VendorOrOperatorLocationInformationContainerList,
    &ett_lppe_OMA_LPPe_LocationInformationContainerList,
    &ett_lppe_OMA_LPPe_RelativeLocationChange_Capabilities,
    &ett_lppe_OMA_LPPe_HighAccuracyFormatCapabilities,
    &ett_lppe_OMA_LPPe_SegmentedAssistanceData_ProvideCapabs,
    &ett_lppe_OMA_LPPe_ReferencePointCapabilities,
    &ett_lppe_T_relativeLocationReportingSupport,
    &ett_lppe_SEQUENCE_SIZE_1_128_OF_OMA_LPPe_ReferencePointProviderSupportElement,
    &ett_lppe_OMA_LPPe_ReferencePointProviderSupportElement,
    &ett_lppe_T_mapDataSupport,
    &ett_lppe_OMA_LPPe_ScheduledLocation_Capabilities,
    &ett_lppe_OMA_LPPe_AccessCapabilities,
    &ett_lppe_OMA_LPPe_SegmentedLocationInformation_ProvideCapabs,
    &ett_lppe_OMA_LPPe_CommonIEsRequestAssistanceData,
    &ett_lppe_OMA_LPPe_RequestPeriodicADwithUpdate,
    &ett_lppe_OMA_LPPe_SegmentedADResume,
    &ett_lppe_OMA_LPPe_ReferencePointAssistanceReq,
    &ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_ReferencePointAssistanceReqElement,
    &ett_lppe_OMA_LPPe_ReferencePointAssistanceReqElement,
    &ett_lppe_OMA_LPPe_CommonIEsProvideAssistanceData,
    &ett_lppe_OMA_LPPe_ProvidePeriodicADwithUpdate,
    &ett_lppe_OMA_LPPe_SegmentedADTransfer,
    &ett_lppe_OMA_LPPe_CommonIEsRequestLocationInformation,
    &ett_lppe_OMA_LPPe_IP_Address_Request,
    &ett_lppe_OMA_LPPe_RequestPeriodicLocInfoWithUpdate,
    &ett_lppe_OMA_LPPe_RelativeLocationChange_Request,
    &ett_lppe_OMA_LPPe_LocalPositionRequest,
    &ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_ReferencePointUniqueID,
    &ett_lppe_OMA_LPPe_ScheduledLocation_Request,
    &ett_lppe_OMA_LPPe_AccessTypeRequest,
    &ett_lppe_OMA_LPPe_SegmentedLIResume,
    &ett_lppe_OMA_LPPe_CivicLocation_Request,
    &ett_lppe_OMA_LPPe_CommonIEsProvideLocationInformation,
    &ett_lppe_OMA_LPPe_LocalPosition,
    &ett_lppe_OMA_LPPe_IP_Address_List,
    &ett_lppe_OMA_LPPe_IP_Address,
    &ett_lppe_T_local_IP_Address,
    &ett_lppe_OMA_LPPe_ProvidePeriodicLocInfowithUpdate,
    &ett_lppe_OMA_LPPe_RelativeLocationChangeList,
    &ett_lppe_OMA_LPPe_RelativeLocationChange,
    &ett_lppe_OMA_LPPe_ScheduledLocation,
    &ett_lppe_T_actualWindow,
    &ett_lppe_OMA_LPPe_AccessTypes,
    &ett_lppe_OMA_LPPe_SegmentedLITransfer,
    &ett_lppe_OMA_LPPe_TimeStamp,
    &ett_lppe_OMA_LPPe_LocationSource,
    &ett_lppe_OMA_LPPe_CommonIEsAbort,
    &ett_lppe_OMA_LPPe_CommonIEsError,
    &ett_lppe_OMA_LPPe_AGNSS_ProvideAssistanceData,
    &ett_lppe_OMA_LPPe_AGNSS_CommonAssistData,
    &ett_lppe_OMA_LPPe_AGNSS_GenericAssistData,
    &ett_lppe_OMA_LPPe_AGNSS_GenericAssistDataElement,
    &ett_lppe_OMA_LPPe_AGNSS_IonosphericModel,
    &ett_lppe_T_staticModels,
    &ett_lppe_T_waIono,
    &ett_lppe_OMA_LPPe_AGNSS_LocalKlobucharModelList,
    &ett_lppe_OMA_LPPe_AGNSS_LocalKlobucharModelElement,
    &ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalKlobucharModel,
    &ett_lppe_OMA_LPPe_AGNSS_LocalKlobucharModel,
    &ett_lppe_OMA_LPPe_AGNSS_IonoStormIndication,
    &ett_lppe_OMA_LPPe_AGNSS_StormList,
    &ett_lppe_OMA_LPPe_AGNSS_StormElement,
    &ett_lppe_OMA_LPPe_AGNSS_RleListIono,
    &ett_lppe_OMA_LPPe_AGNSS_RleIonoElement,
    &ett_lppe_T_ionoIndex,
    &ett_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersProvide,
    &ett_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfaceCommon,
    &ett_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVlist,
    &ett_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfacePerSVelement,
    &ett_lppe_OMA_LPPe_AGNSS_TroposphereModel,
    &ett_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayList,
    &ett_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayAreaElement,
    &ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement,
    &ett_lppe_OMA_LPPe_AGNSS_LocalTroposphereDelayTimeElement,
    &ett_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersList,
    &ett_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersAreaElement,
    &ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement,
    &ett_lppe_OMA_LPPe_AGNSS_LocalSurfaceParametersTimeElement,
    &ett_lppe_OMA_LPPe_AGNSS_MappingFunctionParameters,
    &ett_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceList,
    &ett_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceAreaElement,
    &ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_PressureAssistanceElement,
    &ett_lppe_OMA_LPPe_AGNSS_PressureAssistanceElement,
    &ett_lppe_OMA_LPPe_AGNSS_SolarRadiation,
    &ett_lppe_OMA_LPPe_AGNSS_MechanicsForAllSVs,
    &ett_lppe_OMA_LPPe_AGNSS_MechanicsElement,
    &ett_lppe_T_svInfo,
    &ett_lppe_OMA_LPPe_AGNSS_PCOelement,
    &ett_lppe_OMA_LPPe_AGNSS_DCBsForAllSVs,
    &ett_lppe_OMA_LPPe_AGNSS_DCBlistElement,
    &ett_lppe_T_reference,
    &ett_lppe_OMA_LPPe_AGNSS_DCBlist,
    &ett_lppe_OMA_LPPe_AGNSS_DCBelement,
    &ett_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelList,
    &ett_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelElement,
    &ett_lppe_OMA_LPPe_AGNSS_ClockModelDegradationModel,
    &ett_lppe_OMA_LPPe_AGNSS_OrbitModelDegradationModel,
    &ett_lppe_OMA_LPPe_AGNSS_CCPassistCommonProvide,
    &ett_lppe_OMA_LPPe_AGNSS_CCPprovideCommonParameters,
    &ett_lppe_OMA_LPPe_AGNSS_CCPprovideControlParameters,
    &ett_lppe_OMA_LPPe_AGNSS_CCPsupportArea,
    &ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPsignalSupport,
    &ett_lppe_OMA_LPPe_AGNSS_CCPsignalSupport,
    &ett_lppe_OMA_LPPe_AGNSS_CCPreferenceStationList,
    &ett_lppe_OMA_LPPe_AGNSS_CCPreferenceStationElement,
    &ett_lppe_OMA_LPPe_AGNSS_CCPassistGenericProvide,
    &ett_lppe_OMA_LPPe_AGNSS_CCPassistGenericProvideElement,
    &ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_CCPperSignalElement,
    &ett_lppe_OMA_LPPe_AGNSS_CCPperSignalElement,
    &ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_CCPperSVelement,
    &ett_lppe_OMA_LPPe_AGNSS_CCPperSVelement,
    &ett_lppe_OMA_LPPe_AGNSS_CodePhaseError,
    &ett_lppe_OMA_LPPe_AGNSS_NavModelList,
    &ett_lppe_OMA_LPPe_AGNSS_NavModel_CoordinateBased,
    &ett_lppe_T_fixedInterval,
    &ett_lppe_T_bases,
    &ett_lppe_SEQUENCE_SIZE_1_97_OF_OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement,
    &ett_lppe_OMA_LPPe_AGNSS_NavModel_CoordinateBasedElement,
    &ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_AGNSS_NavModel_PVTelement,
    &ett_lppe_OMA_LPPe_AGNSS_NavModel_PVTelement,
    &ett_lppe_T_rateRecord,
    &ett_lppe_OMA_LPPe_AGNSS_NavModel_BigNumber,
    &ett_lppe_OMA_LPPe_AGNSS_NavModel_STDmatrix,
    &ett_lppe_OMA_LPPe_AGNSS_RequestAssistanceData,
    &ett_lppe_OMA_LPPe_AGNSS_CommonAssistanceDataReq,
    &ett_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataReq,
    &ett_lppe_OMA_LPPe_AGNSS_GenericAssistDataReqElement,
    &ett_lppe_OMA_LPPe_AGNSS_IonosphericModelReq,
    &ett_lppe_T_staticModels_01,
    &ett_lppe_T_ionoreq,
    &ett_lppe_T_periodicModels,
    &ett_lppe_OMA_LPPe_AGNSS_WideAreaIonoSurfaceControlParametersRequest,
    &ett_lppe_OMA_LPPe_AGNSS_TroposphereModelReq,
    &ett_lppe_T_troposphereModelReq,
    &ett_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceReq,
    &ett_lppe_OMA_LPPe_AGNSS_SolarRadiationReq,
    &ett_lppe_OMA_LPPe_AGNSS_WaIonoSurfaceRequest,
    &ett_lppe_OMA_LPPe_AGNSS_NavModelDegradationModelReq,
    &ett_lppe_OMA_LPPe_AGNSS_DCBreq,
    &ett_lppe_T_reference_01,
    &ett_lppe_OMA_LPPe_AGNSS_MechanicsReq,
    &ett_lppe_OMA_LPPe_AGNSS_CCPrequestControlParameters,
    &ett_lppe_T_ccpCommonRequest,
    &ett_lppe_T_refStation,
    &ett_lppe_T_posBasedReferenceStationRequest,
    &ett_lppe_OMA_LPPe_AGNSS_ReferenceStationIDlist,
    &ett_lppe_OMA_LPPe_AGNSS_CCPassistGenericReq,
    &ett_lppe_OMA_LPPe_AGNSS_NavigationModelReq,
    &ett_lppe_T_navModelID_PrefList,
    &ett_lppe_OMA_LPPe_AGNSS_ProvideLocationInformation,
    &ett_lppe_OMA_LPPe_AGNSS_HAgnssProvide,
    &ett_lppe_T_controlParameters,
    &ett_lppe_T_measurements,
    &ett_lppe_T_localPressure,
    &ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssMeasurementElement,
    &ett_lppe_OMA_LPPe_AGNSS_HAgnssMeasurementElement,
    &ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_HAgnssPerSignalElement,
    &ett_lppe_OMA_LPPe_HAgnssPerSignalElement,
    &ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_HAgnssPerSVelement,
    &ett_lppe_OMA_LPPe_HAgnssPerSVelement,
    &ett_lppe_OMA_LPPe_AGNSS_IonosphereMeasurements,
    &ett_lppe_OMA_LPPe_AGNSS_TECPerSV,
    &ett_lppe_OMA_LPPe_AGNSS_TECPerSVElement,
    &ett_lppe_OMA_LPPe_AGNSS_TECAtZenith,
    &ett_lppe_OMA_LPPe_AGNSS_LocalSurfaceMeasurements,
    &ett_lppe_T_temperatureMeasurement,
    &ett_lppe_OMA_LPPe_AGNSS_RequestLocationInformation,
    &ett_lppe_T_ionosphereMeasurementsReq,
    &ett_lppe_OMA_LPPe_AGNSS_PositioningInstructions,
    &ett_lppe_OMA_LPPe_AGNSS_LocalSurfaceMeasurementReq,
    &ett_lppe_OMA_LPPe_AGNSS_HAgnssRequestControlParameters,
    &ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_AGNSS_HAgnssSignalReqElement,
    &ett_lppe_OMA_LPPe_AGNSS_HAgnssSignalReqElement,
    &ett_lppe_OMA_LPPe_AGNSS_ProvideCapabilities,
    &ett_lppe_OMA_LPPe_AGNSS_AssistanceDataSupportList,
    &ett_lppe_OMA_LPPe_AGNSS_EnvironmentObservationSupportList,
    &ett_lppe_T_ionosphereMeasurementSupport,
    &ett_lppe_OMA_LPPe_AGNSS_CommonAssistanceDataSupport,
    &ett_lppe_OMA_LPPe_AGNSS_IonosphericModelSupport,
    &ett_lppe_T_ionoModel,
    &ett_lppe_OMA_LPPe_AGNSS_TroposphereModelSupport,
    &ett_lppe_T_tropoModel,
    &ett_lppe_OMA_LPPe_AGNSS_AltitudeAssistanceSupport,
    &ett_lppe_OMA_LPPe_AGNSS_SolarRadiationSupport,
    &ett_lppe_OMA_LPPe_AGNSS_CCPsupport,
    &ett_lppe_OMA_LPPe_AGNSS_GenericAssistanceDataSupport,
    &ett_lppe_OMA_LPPe_AGNSS_GenericAssistDataSupportElement,
    &ett_lppe_OMA_LPPe_AGNSS_MechanicsSupport,
    &ett_lppe_OMA_LPPe_AGNSS_DCBsupport,
    &ett_lppe_OMA_LPPe_AGNSS_NavModelAccuracyModelDegradationSupport,
    &ett_lppe_OMA_LPPe_AGNSS_NavModelSupport,
    &ett_lppe_T_navModelSupport,
    &ett_lppe_OMA_LPPe_AGNSS_HAgnssSupport,
    &ett_lppe_T_modeSupport,
    &ett_lppe_T_haGNSSantennaInformationSupport,
    &ett_lppe_SEQUENCE_SIZE_1_8_OF_OMA_LPPe_AGNSS_HAgnssPerGNSSsupport,
    &ett_lppe_OMA_LPPe_AGNSS_HAgnssPerGNSSsupport,
    &ett_lppe_OMA_LPPe_AGNSS_RequestCapabilities,
    &ett_lppe_OMA_LPPe_AGNSS_Error,
    &ett_lppe_OMA_LPPe_AGNSS_LocationServerErrorCauses,
    &ett_lppe_OMA_LPPe_AGNSS_TargetDeviceErrorCauses,
    &ett_lppe_OMA_LPPe_AGNSS_CCPreferenceStationID,
    &ett_lppe_OMA_LPPe_AGNSS_AntennaDescription,
    &ett_lppe_T_antennaDescription,
    &ett_lppe_OMA_LPPe_AGNSS_Abort,
    &ett_lppe_T_targetDeviceAbortCauses,
    &ett_lppe_OMA_LPPe_OTDOA_ProvideAssistanceData,
    &ett_lppe_OMA_LPPe_OTDOA_ReferenceCellInfo,
    &ett_lppe_OMA_LPPe_OTDOA_PositionCalculationInfoRef,
    &ett_lppe_T_cellLocation,
    &ett_lppe_T_femtoCellInfo,
    &ett_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoList,
    &ett_lppe_OMA_LPPe_OTDOA_NeighbourFreqCellInfoList,
    &ett_lppe_SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB,
    &ett_lppe_SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB,
    &ett_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoElement_eNB,
    &ett_lppe_SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_OTDOA_CellData,
    &ett_lppe_OMA_LPPe_OTDOA_NeighbourCellInfoElement_HeNB,
    &ett_lppe_OMA_LPPe_OTDOA_CellData,
    &ett_lppe_T_rtdInfo,
    &ett_lppe_OMA_LPPe_OTDOA_RTDquality,
    &ett_lppe_OMA_LPPe_OTDOA_RequestAssistanceData,
    &ett_lppe_T_lteCell,
    &ett_lppe_T_requestedCells,
    &ett_lppe_OMA_LPPe_OTDOA_ProvideLocationInformation,
    &ett_lppe_OMA_LPPe_OTDOA_LocationInformation,
    &ett_lppe_OMA_LPPe_OTDOA_RequestLocationInformation,
    &ett_lppe_OMA_LPPe_OTDOA_ProvideCapabilities,
    &ett_lppe_T_eNodeB_AD_sup,
    &ett_lppe_T_home_eNodeB_AD_sup,
    &ett_lppe_OMA_LPPe_OTDOA_RequestCapabilities,
    &ett_lppe_OMA_LPPe_OTDOA_Error,
    &ett_lppe_OMA_LPPe_OTDOA_LocationServerErrorCauses,
    &ett_lppe_OMA_LPPe_OTDOA_TargetDeviceErrorCauses,
    &ett_lppe_OMA_LPPe_EOTD_ProvideAssistanceData,
    &ett_lppe_OMA_LPPe_EOTD_ReferenceBTSForAssistance,
    &ett_lppe_T_btsPosition,
    &ett_lppe_OMA_LPPe_EOTD_MsrAssistDataList,
    &ett_lppe_OMA_LPPe_EOTD_MsrAssistBTS,
    &ett_lppe_OMA_LPPe_EOTD_SystemInfoAssistDataList,
    &ett_lppe_OMA_LPPe_EOTD_SystemInfoAssistBTS,
    &ett_lppe_OMA_LPPe_EOTD_AssistBTSData,
    &ett_lppe_OMA_LPPe_EOTD_CalcAssistanceBTS,
    &ett_lppe_OMA_LPPe_EOTD_relativePos,
    &ett_lppe_OMA_LPPe_EOTD_RequestAssistanceData,
    &ett_lppe_T_eotdAssistanceReq,
    &ett_lppe_OMA_LPPe_EOTD_ProvideLocationInformation,
    &ett_lppe_OMA_LPPe_EOTD_MsrElement,
    &ett_lppe_SEQUENCE_SIZE_1_15_OF_OMA_LPPe_EOTD_MeasurementWithID,
    &ett_lppe_OMA_LPPe_EOTD_TOA_MeasurementsOfRef,
    &ett_lppe_OMA_LPPe_EOTD_MeasurementWithID,
    &ett_lppe_OMA_LPPe_EOTD_NeighborIdentity,
    &ett_lppe_OMA_LPPe_EOTD_EOTDQuality,
    &ett_lppe_OMA_LPPe_EOTD_MultiFrameCarrier,
    &ett_lppe_OMA_LPPe_EOTD_RequestLocationInformation,
    &ett_lppe_OMA_LPPe_EOTD_ProvideCapabilities,
    &ett_lppe_T_eotdSupport,
    &ett_lppe_OMA_LPPe_EOTD_RequestCapabilities,
    &ett_lppe_OMA_LPPe_EOTD_Error,
    &ett_lppe_OMA_LPPe_EOTD_LocationServerErrorCauses,
    &ett_lppe_OMA_LPPe_EOTD_TargetDeviceErrorCauses,
    &ett_lppe_OMA_LPPe_EOTD_ExpectedOTD,
    &ett_lppe_OMA_LPPe_OTDOA_UTRA_ProvideAssistanceData,
    &ett_lppe_OMA_LPPe_OTDOA_UTRA_ReferenceCellInfo,
    &ett_lppe_T_modeSpecificInfo,
    &ett_lppe_T_fdd,
    &ett_lppe_T_tdd,
    &ett_lppe_OMA_LPPe_OTDOA_UTRA_RefPosAssist,
    &ett_lppe_T_cellPosition,
    &ett_lppe_OMA_LPPe_OTDOA_UTRA_NeighborCellList,
    &ett_lppe_OMA_LPPe_OTDOA_UTRA_NeighborCellInfo,
    &ett_lppe_T_modeSpecificInfo_01,
    &ett_lppe_T_fdd_01,
    &ett_lppe_T_tdd_01,
    &ett_lppe_OMA_LPPe_OTDOA_UTRA_SFN_SFN_RelTimeDifference1,
    &ett_lppe_OMA_LPPe_OTDOA_UTRA_PositioningAssistance,
    &ett_lppe_OMA_LPPe_OTDOA_UTRA_IPDL_Parameters,
    &ett_lppe_T_modeSpecificInfo_02,
    &ett_lppe_T_fdd_02,
    &ett_lppe_T_tdd_02,
    &ett_lppe_OMA_LPPe_OTDOA_UTRA_BurstModeParameters,
    &ett_lppe_OMA_LPPe_OTDOA_UTRA_RequestAssistanceData,
    &ett_lppe_T_otdoaUtraAssistanceReq,
    &ett_lppe_OMA_LPPe_OTDOA_UTRA_ProvideLocationInformation,
    &ett_lppe_OMA_LPPe_OTDOA_UTRA_Measurement,
    &ett_lppe_T_modeSpecificInfoMeas,
    &ett_lppe_T_fdd_03,
    &ett_lppe_T_tdd_03,
    &ett_lppe_OMA_LPPe_OTDOA_UTRA_UE_RX_TX_TimeDifferenceType2Info,
    &ett_lppe_OMA_LPPe_OTDOA_UTRA_NeighborList,
    &ett_lppe_OMA_LPPe_OTDOA_UTRA_Neighbor,
    &ett_lppe_T_modeSpecificInfo_03,
    &ett_lppe_T_fdd_04,
    &ett_lppe_T_tdd_04,
    &ett_lppe_OMA_LPPe_OTDOA_UTRA_NeighborQuality,
    &ett_lppe_OMA_LPPe_OTDOA_UTRA_Quality,
    &ett_lppe_OMA_LPPe_OTDOA_UTRA_TimeStampData,
    &ett_lppe_T_nonUniqueCellID,
    &ett_lppe_OMA_LPPe_OTDOA_UTRA_RequestLocationInformation,
    &ett_lppe_OMA_LPPe_OTDOA_UTRA_ProvideCapabilities,
    &ett_lppe_OMA_LPPe_OTDOA_UTRA_RequestCapabilities,
    &ett_lppe_OMA_LPPe_OTDOA_UTRA_Error,
    &ett_lppe_OMA_LPPe_OTDOA_UTRA_LocationServerErrorCauses,
    &ett_lppe_OMA_LPPe_OTDOA_UTRA_TargetDeviceErrorCauses,
    &ett_lppe_OMA_LPPe_OTDOA_UTRA_PrimaryCPICH_Info,
    &ett_lppe_OMA_LPPe_OTDOA_UTRA_CellAndChannelIdentity,
    &ett_lppe_OMA_LPPe_ECID_LTE_ProvideAssistanceData,
    &ett_lppe_SEQUENCE_SIZE_1_maxLTENetworks_OF_OMA_LPPe_ECID_LTE_NetworkData,
    &ett_lppe_OMA_LPPe_ECID_LTE_NetworkData,
    &ett_lppe_T_plmn_Identity,
    &ett_lppe_T_mcc,
    &ett_lppe_T_mnc,
    &ett_lppe_SEQUENCE_SIZE_1_maxLTEeNBs_OF_OMA_LPPe_ECID_LTE_eNodeBData,
    &ett_lppe_SEQUENCE_SIZE_1_maxLTEHeNBs_OF_OMA_LPPe_ECID_LTE_HeNBData,
    &ett_lppe_OMA_LPPe_ECID_LTE_eNodeBData,
    &ett_lppe_SEQUENCE_SIZE_1_maxLTEMacroCells_OF_OMA_LPPe_ECID_LTE_CellData,
    &ett_lppe_OMA_LPPe_ECID_LTE_HeNBData,
    &ett_lppe_OMA_LPPe_ECID_LTE_CellData,
    &ett_lppe_OMA_LPPe_ECID_LTE_RequestAssistanceData,
    &ett_lppe_T_eNBrequestedAD,
    &ett_lppe_T_heNBrequestedAD,
    &ett_lppe_OMA_LPPe_ECID_LTE_ProvideLocationInformation,
    &ett_lppe_SEQUENCE_SIZE_1_maxLTEECIDSize_OF_OMA_LPPe_ECID_LTE_LocationInformationList,
    &ett_lppe_OMA_LPPe_ECID_LTE_LocationInformationList,
    &ett_lppe_OMA_LPPe_ECID_LTE_LocationInformation,
    &ett_lppe_OMA_LPPe_ECID_LTE_RequestLocationInformation,
    &ett_lppe_T_requestedMeasurements,
    &ett_lppe_OMA_LPPe_ECID_LTE_ProvideCapabilities,
    &ett_lppe_T_ecid_lte_MeasSupported,
    &ett_lppe_T_ecid_lte_eNodeB_ADSupported,
    &ett_lppe_T_ecid_utra_HeNB_ADSupported,
    &ett_lppe_OMA_LPPe_ECID_LTE_RequestCapabilities,
    &ett_lppe_OMA_LPPe_ECID_LTE_Error,
    &ett_lppe_OMA_LPPe_ECID_LTE_LocationServerErrorCauses,
    &ett_lppe_OMA_LPPe_ECID_LTE_TargetDeviceErrorCauses,
    &ett_lppe_OMA_LPPe_ECID_GSM_ProvideAssistanceData,
    &ett_lppe_SEQUENCE_SIZE_1_maxGSMNetworks_OF_OMA_LPPe_ECID_GSM_NetworkData,
    &ett_lppe_OMA_LPPe_ECID_GSM_NetworkData,
    &ett_lppe_T_plmn_Identity_01,
    &ett_lppe_T_mcc_01,
    &ett_lppe_T_mnc_01,
    &ett_lppe_SEQUENCE_SIZE_1_maxGSMBaseStations_OF_OMA_LPPe_ECID_GSM_BaseStationData,
    &ett_lppe_OMA_LPPe_ECID_GSM_BaseStationData,
    &ett_lppe_SEQUENCE_SIZE_1_maxGSMCells_OF_OMA_LPPe_ECID_GSM_CellData,
    &ett_lppe_OMA_LPPe_ECID_GSM_CellData,
    &ett_lppe_OMA_LPPe_ECID_GSM_RequestAssistanceData,
    &ett_lppe_T_requestedAD,
    &ett_lppe_OMA_LPPe_ECID_GSM_ProvideLocationInformation,
    &ett_lppe_SEQUENCE_SIZE_1_maxGSMECIDSize_OF_OMA_LPPe_ECID_GSM_LocationInformationList,
    &ett_lppe_OMA_LPPe_ECID_GSM_LocationInformationList,
    &ett_lppe_OMA_LPPe_ECID_GSM_LocationInformation,
    &ett_lppe_OMA_LPPe_NMR_GERAN,
    &ett_lppe_OMA_LPPe_NMR_GERAN_item,
    &ett_lppe_OMA_LPPe_ECID_GSM_RequestLocationInformation,
    &ett_lppe_T_requestedMeasurements_01,
    &ett_lppe_OMA_LPPe_ECID_GSM_ProvideCapabilities,
    &ett_lppe_T_ecid_gsm_MeasSupported,
    &ett_lppe_T_ecid_gsm_ADSupported,
    &ett_lppe_OMA_LPPe_ECID_GSM_RequestCapabilities,
    &ett_lppe_OMA_LPPe_ECID_GSM_Error,
    &ett_lppe_OMA_LPPe_ECID_GSM_LocationServerErrorCauses,
    &ett_lppe_OMA_LPPe_ECID_GSM_TargetDeviceErrorCauses,
    &ett_lppe_OMA_LPPe_ECID_UTRA_ProvideAssistanceData,
    &ett_lppe_SEQUENCE_SIZE_1_maxUTRANetworks_OF_OMA_LPPe_ECID_UTRA_NetworkData,
    &ett_lppe_OMA_LPPe_ECID_UTRA_NetworkData,
    &ett_lppe_T_plmn_Identity_02,
    &ett_lppe_T_mcc_02,
    &ett_lppe_T_mnc_02,
    &ett_lppe_SEQUENCE_SIZE_1_maxUTRAnodeBs_OF_OMA_LPPe_ECID_UTRA_NodeBData,
    &ett_lppe_SEQUENCE_SIZE_1_maxUTRAHNBs_OF_OMA_LPPe_ECID_UTRA_HNBData,
    &ett_lppe_OMA_LPPe_ECID_UTRA_NodeBData,
    &ett_lppe_SEQUENCE_SIZE_1_maxUTRAMacroCells_OF_OMA_LPPe_ECID_UTRA_CellData,
    &ett_lppe_OMA_LPPe_ECID_UTRA_HNBData,
    &ett_lppe_OMA_LPPe_ECID_UTRA_CellData,
    &ett_lppe_T_modeSpecificInfo_04,
    &ett_lppe_T_fdd_05,
    &ett_lppe_T_tdd_05,
    &ett_lppe_OMA_LPPe_ECID_UTRA_RequestAssistanceData,
    &ett_lppe_T_nBrequestedAD,
    &ett_lppe_T_hNBrequestedAD,
    &ett_lppe_OMA_LPPe_ECID_UTRA_ProvideLocationInformation,
    &ett_lppe_SEQUENCE_SIZE_1_maxECIDUTRASize_OF_OMA_LPPe_ECID_UTRA_LocationInformationList,
    &ett_lppe_OMA_LPPe_ECID_UTRA_LocationInformationList,
    &ett_lppe_OMA_LPPe_ECID_UTRA_LocationInformation,
    &ett_lppe_OMA_LPPe_ECID_UTRA_UTRATimingAdvance,
    &ett_lppe_OMA_LPPe_UTRA_FrequencyInfo,
    &ett_lppe_OMA_LPPe_UTRA_ModeSpecificInfo,
    &ett_lppe_OMA_LPPe_UTRA_FrequencyInfoFDD,
    &ett_lppe_OMA_LPPe_UTRA_FrequencyInfoTDD,
    &ett_lppe_OMA_LPPe_ECID_UTRA_MeasuredResultsList,
    &ett_lppe_OMA_LPPe_ECID_UTRA_MeasuredResults,
    &ett_lppe_OMA_LPPe_ECID_UTRA_CellMeasuredResultsList,
    &ett_lppe_OMA_LPPe_ECID_UTRA_CellMeasuredResults,
    &ett_lppe_T_modeSpecificInfo_05,
    &ett_lppe_T_fdd_06,
    &ett_lppe_T_tdd_06,
    &ett_lppe_OMA_LPPe_ECID_UTRA_RequestLocationInformation,
    &ett_lppe_T_requestedMeasurements_02,
    &ett_lppe_OMA_LPPe_ECID_UTRA_ProvideCapabilities,
    &ett_lppe_T_ecid_utra_MeasSupported,
    &ett_lppe_T_ecid_utra_nodeB_ADSupported,
    &ett_lppe_T_ecid_utra_HNB_ADSupported,
    &ett_lppe_OMA_LPPe_ECID_UTRA_RequestCapabilities,
    &ett_lppe_OMA_LPPe_ECID_UTRA_Error,
    &ett_lppe_OMA_LPPe_ECID_UTRA_LocationServerErrorCauses,
    &ett_lppe_OMA_LPPe_ECID_UTRA_TargetDeviceErrorCauses,
    &ett_lppe_OMA_LPPe_WLAN_AP_ProvideAssistanceData,
    &ett_lppe_SEQUENCE_SIZE_1_maxWLANDataSets_OF_OMA_LPPe_WLAN_DataSet,
    &ett_lppe_OMA_LPPe_WLAN_DataSet,
    &ett_lppe_T_plmn_Identity_03,
    &ett_lppe_T_mcc_03,
    &ett_lppe_T_mnc_03,
    &ett_lppe_SEQUENCE_SIZE_1_maxWLANAPs_OF_OMA_LPPe_WLAN_AP_Data,
    &ett_lppe_Supported_Channels_11a,
    &ett_lppe_Supported_Channels_11bg,
    &ett_lppe_OMA_LPPe_WLAN_AP_Data,
    &ett_lppe_SEQUENCE_SIZE_1_maxWLANTypes_OF_OMA_LPPe_WLAN_AP_Type_Data,
    &ett_lppe_OMA_LPPe_WLAN_AP_Type_Data,
    &ett_lppe_OMA_LPPe_WLAN_AP_RequestAssistanceData,
    &ett_lppe_T_requestedAD_01,
    &ett_lppe_OMA_LPPe_WLAN_AP_ProvideLocationInformation,
    &ett_lppe_SEQUENCE_SIZE_1_maxWLANAPSize_OF_OMA_LPPe_WLAN_AP_LocationInformationList,
    &ett_lppe_OMA_LPPe_WLAN_AP_LocationInformationList,
    &ett_lppe_OMA_LPPe_WLAN_AP_LocationInformation,
    &ett_lppe_OMA_LPPe_WLAN_RTD,
    &ett_lppe_OMA_LPPe_WLAN_ReportedLocation,
    &ett_lppe_OMA_LPPe_WLAN_LocationDataLCI,
    &ett_lppe_OMA_LPPe_WLAN_AP_RequestLocationInformation,
    &ett_lppe_T_requestedMeasurements_03,
    &ett_lppe_T_additionalRequestedMeasurements,
    &ett_lppe_OMA_LPPe_WLAN_AP_ProvideCapabilities,
    &ett_lppe_T_wlan_ecid_MeasSupported,
    &ett_lppe_T_wlan_ap_ADSupported,
    &ett_lppe_T_additional_wlan_ecid_MeasSupported,
    &ett_lppe_OMA_LPPe_WLAN_AP_Capability,
    &ett_lppe_OMA_LPPe_WLAN_AP_RequestCapabilities,
    &ett_lppe_OMA_LPPe_WLAN_AP_Error,
    &ett_lppe_OMA_LPPe_WLAN_AP_LocationServerErrorCauses,
    &ett_lppe_OMA_LPPe_WLAN_AP_TargetDeviceErrorCauses,
    &ett_lppe_OMA_LPPe_ECID_WiMax_ProvideLocationInformation,
    &ett_lppe_SEQUENCE_SIZE_1_maxWiMaxECIDSize_OF_OMA_LPPe_ECID_WiMax_LocationInformationList,
    &ett_lppe_OMA_LPPe_ECID_WiMax_LocationInformationList,
    &ett_lppe_OMA_LPPe_ECID_WiMax_LocationInformation,
    &ett_lppe_OMA_LPPe_ECID_WiMax_WimaxBsID,
    &ett_lppe_OMA_LPPe_ECID_WiMax_WimaxRTD,
    &ett_lppe_OMA_LPPe_ECID_WiMax_WimaxNMRList,
    &ett_lppe_OMA_LPPe_ECID_WiMax_WimaxNMR,
    &ett_lppe_OMA_LPPe_ECID_WiMax_RequestLocationInformation,
    &ett_lppe_T_requestedMeasurements_04,
    &ett_lppe_OMA_LPPe_ECID_WiMax_ProvideCapabilities,
    &ett_lppe_T_ecid_wimax_MeasSupported,
    &ett_lppe_OMA_LPPe_ECID_WiMax_RequestCapabilities,
    &ett_lppe_OMA_LPPe_ECID_WiMax_Error,
    &ett_lppe_OMA_LPPe_ECID_WiMax_LocationServerErrorCauses,
    &ett_lppe_OMA_LPPe_ECID_WiMax_TargetDeviceErrorCauses,
    &ett_lppe_OMA_LPPe_Sensor_ProvideAssistanceData,
    &ett_lppe_OMA_LPPe_AtmosphericPressureAD,
    &ett_lppe_T_period,
    &ett_lppe_T_area,
    &ett_lppe_OMA_LPPe_PressureValidityArea,
    &ett_lppe_OMA_LPPe_Sensor_RequestAssistanceData,
    &ett_lppe_OMA_LPPe_PressureSensorAD,
    &ett_lppe_OMA_LPPe_Sensor_ProvideLocationInformation,
    &ett_lppe_OMA_LPPe_Sensor_MotionStateList,
    &ett_lppe_OMA_LPPe_Sensor_MotionStateElement,
    &ett_lppe_T_secondaryMotionState,
    &ett_lppe_OMA_LPPe_AtmosphericPressure,
    &ett_lppe_PressureStats,
    &ett_lppe_CalibrationPoints,
    &ett_lppe_CalibrationPoints_item,
    &ett_lppe_OMA_LPPe_PressureMeasurement,
    &ett_lppe_T_uncertainty,
    &ett_lppe_OMA_LPPe_Sensor_RequestLocationInformation,
    &ett_lppe_OMA_LPPe_Sensor_MotionStateRequest,
    &ett_lppe_OMA_LPPe_AtmosphericPressureRequest,
    &ett_lppe_OMA_LPPe_Sensor_ProvideCapabilities,
    &ett_lppe_OMA_LPPe_Sensor_RequestCapabilities,
    &ett_lppe_OMA_LPPe_Sensor_Error,
    &ett_lppe_OMA_LPPe_Sensor_TargetError,
    &ett_lppe_OMA_LPPe_SRN_ProvideAssistanceData,
    &ett_lppe_T_srnGroup,
    &ett_lppe_OMA_LPPe_SRN_SRNgroupList,
    &ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_SRNgroup,
    &ett_lppe_OMA_LPPe_SRN_SRNgroup,
    &ett_lppe_SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNinfo,
    &ett_lppe_OMA_LPPe_SRN_SRNinfo,
    &ett_lppe_OMA_LPPe_SRN_SRNgroupUpdateResponse,
    &ett_lppe_OMA_LPPe_SRN_SRNgroupUpdateResponseElement,
    &ett_lppe_OMA_LPPe_SRN_AntennaPattern,
    &ett_lppe_OMA_LPPe_SRN_AntennaPatternElement,
    &ett_lppe_T_identification,
    &ett_lppe_T_antennaData,
    &ett_lppe_OMA_LPPe_SRN_AntennaPatternForChannels,
    &ett_lppe_T_evenGrid,
    &ett_lppe_SEQUENCE_SIZE_1_maxChannels_OF_OMA_LPPe_SRN_ChannelResponse,
    &ett_lppe_OMA_LPPe_SRN_ChannelResponse,
    &ett_lppe_SEQUENCE_SIZE_7_901_OF_OMA_LPPe_SRN_ResponseInElevation,
    &ett_lppe_OMA_LPPe_SRN_ResponseInElevation,
    &ett_lppe_SEQUENCE_SIZE_18_3601_OF_OMA_LPPe_SRN_ResponseInAzimuth,
    &ett_lppe_OMA_LPPe_SRN_ResponseInAzimuth,
    &ett_lppe_OMA_LPPe_ComplexNumber,
    &ett_lppe_OMA_LPPe_SRN_RequestAssistanceData,
    &ett_lppe_T_srnGroup_01,
    &ett_lppe_OMA_LPPe_SRN_SRNgroupRequest,
    &ett_lppe_OMA_LPPe_SRN_SRNProvideList,
    &ett_lppe_SEQUENCE_SIZE_1_256_OF_OMA_LPPe_SRN_SRNgroupUniqueID,
    &ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_Category,
    &ett_lppe_OMA_LPPe_SRN_SRNgroupUpdateRequest,
    &ett_lppe_OMA_LPPe_SRN_SRNgroupUpdateRequestElement,
    &ett_lppe_SEQUENCE_SIZE_1_1024_OF_OMA_LPPe_SRN_SRNid,
    &ett_lppe_OMA_LPPe_SRN_AntennaPatternRequest,
    &ett_lppe_OMA_LPPe_SRN_AntennaPatternRequestElement,
    &ett_lppe_T_antennaPatternID,
    &ett_lppe_OMA_LPPe_SRN_ProvideLocationInformation,
    &ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_MeasurementElement,
    &ett_lppe_OMA_LPPe_SRN_MeasurementElement,
    &ett_lppe_SEQUENCE_SIZE_1_64_OF_OMA_LPPe_SRN_srnMeasurementElement,
    &ett_lppe_OMA_LPPe_SRN_srnMeasurementElement,
    &ett_lppe_OMA_LPPe_SRN_RequestLocationInformation,
    &ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ReqLocInfo_Category,
    &ett_lppe_OMA_LPPe_SRN_ReqLocInfo_Category,
    &ett_lppe_OMA_LPPe_SRN_ProvideCapabilities,
    &ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_ProvideCapabilitiesElement,
    &ett_lppe_OMA_LPPe_SRN_ProvideCapabilitiesElement,
    &ett_lppe_T_supportedAssistanceData,
    &ett_lppe_OMA_LPPe_SRN_RequestCapabilities,
    &ett_lppe_OMA_LPPe_SRN_Error,
    &ett_lppe_OMA_LPPe_SRN_LocationServerErrorCauses,
    &ett_lppe_OMA_LPPe_SRN_TargetDeviceErrorCauses,
    &ett_lppe_SEQUENCE_SIZE_1_16_OF_OMA_LPPe_SRN_TargetDeviceError,
    &ett_lppe_OMA_LPPe_SRN_TargetDeviceError,
    &ett_lppe_OMA_LPPe_SRN_SRNgroupUniqueID,
    &ett_lppe_OMA_LPPe_SRN_SRNtype,
    &ett_lppe_T_srnAntennaInfo,
    &ett_lppe_OMA_LPPe_SRN_Category,
    &ett_lppe_T_srnVendorInformation,
    &ett_lppe_OMA_LPPe_SRN_SRNid,
    &ett_lppe_T_srn_id,
    &ett_lppe_T_nfc,
    &ett_lppe_T_mobileCode,
    &ett_lppe_OMA_LPPe_SRN_Technologies,
    &ett_lppe_OMA_LPPe_SRN_MeasurementMask,
    &ett_lppe_T_srnMeasurements,
  };


  /* Register protocol */
  proto_lppe = proto_register_protocol(PNAME, PSNAME, PFNAME);
  register_dissector("lppe", dissect_OMA_LPPe_MessageExtension_PDU, proto_lppe);

  /* Register fields and subtrees */
  proto_register_field_array(proto_lppe, hf, array_length(hf));
  proto_register_subtree_array(ett, array_length(ett));


}


/*--- proto_reg_handoff_lpp ---------------------------------------*/
void
proto_reg_handoff_lppe(void)
{
  xml_handle = find_dissector_add_dependency("xml", proto_lppe);
}


